Commit 570ebd96 authored by 杨硕's avatar 杨硕

简化项目

parent d016d7ea
...@@ -3,7 +3,8 @@ ENV = 'test' ...@@ -3,7 +3,8 @@ ENV = 'test'
# 测试环境 # 测试环境
# base api # base api
VUE_APP_BASE_API = 'http://192.144.239.97:20070/' # VUE_APP_BASE_API = 'http://192.144.239.97:20070/'
VUE_APP_BASE_API = 'http://192.144.239.97:20075/'
#workFlow链接地址 #workFlow链接地址
VUE_APP_WORKFLOW = 'http://zt.91isoft.com:10184/workFlow' VUE_APP_WORKFLOW = 'http://zt.91isoft.com:10184/workFlow'
#internal链接地址 #internal链接地址
......
This diff is collapsed.
<mxfile host="" modified="2020-06-25T03:38:29.625Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.46.1 Chrome/78.0.3904.130 Electron/7.3.1 Safari/537.36" etag="LN4JbzatNrx9H5U0_Zzp" version="13.1.3">
<diagram id="6hGFLwfOUW9BJ-s0fimq" name="业务流程">
<mxGraphModel dx="1144" dy="631" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1600" pageHeight="900" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="10" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="2" target="3">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="11" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="2" target="4">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="12" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="2" target="5">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="13" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="2" target="6">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="14" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="2" target="7">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="15" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.575;entryY=-0.026;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="2" target="8">
<mxGeometry relative="1" as="geometry"/>
</mxCell>
<mxCell id="2" value="业务管理页面" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="360" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="3" value="Menu动态生成" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="80" y="100" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="4" value="业务阶段查询、筛选、重置" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="240" y="100" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="5" value="功能按钮根据权限动态禁用" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="400" y="100" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="6" value="表格分页展示" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="560" y="100" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="7" value="操作按钮动态展示" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="720" y="100" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="8" value="所有的按钮功能以及二级页面" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="880" y="100" width="120" height="60" as="geometry"/>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
\ No newline at end of file
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<!-- 声明文档使用的字符编码 -->
<meta charset='utf-8'>
<!-- 优先使用 IE 最新版本和 Chrome -->
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<!-- 页面描述 -->
<meta name="description" content="不超过150个字符"/>
<!-- 页面关键词 -->
<meta name="keywords" content=""/>
<!-- 网页作者 -->
<meta name="wang" content="wang, comrade.wang.cn@gmail.com"/>
<!-- 搜索引擎抓取 -->
<meta name="robots" content="index,follow"/>
<!-- 为移动设备添加 viewport -->
<meta name="viewport" content="initial-scale=1, maximum-scale=3, minimum-scale=1, user-scalable=no">
<!-- `width=device-width` 会导致 iPhone 5 添加到主屏后以 WebApp 全屏模式打开页面时出现黑边 http://bigc.at/ios-webapp-viewport-meta.orz -->
<title>外出流程模板</title>
<!-- 引入element-ui样式 -->
<link
rel="stylesheet"
href="https://unpkg.com/element-ui@2.13.2/lib/theme-chalk/index.css"
/>
</head>
<body>
<div id="template-app">
<el-form ref="form" size="small" :model="form" label-width="120px">
<el-form-item label="申请人员">
<div> {{ username }} </div>
</el-form-item>
<el-form-item label="外出日期">
</el-form-item>
</el-form>
</div>
</body>
<!-- 引入版本为 2.6.11的vue文件 -->
<script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.11/vue.js"></script>
<!-- 引入组件库 -->
<script src="https://unpkg.com/element-ui@2.13.2/lib/index.js"></script>
<script>
const vm = new Vue({
el: '#template-app',
data() {
return {
// 表单对象
form: {},
// 用户名称
username: '文在寅'
}
}
})
</script>
</html>
This diff is collapsed.
<!-- {"fieldList":[{"key":"1-1","type":"input","name":"输入框","specialTag":"","ruleRegular":"","ruleApi":"","sortPriority":0,"value":"","placeholder":"请输入内容","column":24,"required":true,"showHeader":true,"becomeFilter":false},{"key":"1-2","type":"textarea","ruleRegular":"","sortPriority":0,"ruleApi":"","name":"文本域","specialTag":"","value":"","placeholder":"请输入内容","column":24,"required":true,"showHeader":true,"becomeFilter":false},{"key":"1-3","type":"select","name":"下拉框","specialTag":"","value":"","multiple":false,"placeholder":"输入提示","sortPriority":0,"column":24,"required":true,"optionMode":"static","options":[{"label":"选项1","value":"6bfd9c00-9faf"},{"label":"选项2","value":"e0baedb0-92e2"}],"optionApi":{"mode":"builtIn","builtIn":"","configOut":{"name":"","method":"get"}},"showHeader":true,"becomeFilter":false},{"key":"1-4","type":"checkbox","name":"多选框","value":[],"column":24,"specialTag":"","sortPriority":0,"required":false,"optionMode":"static","options":[{"label":"选项1","value":"4de92cf6-971f"},{"label":"选项2","value":"5c21bffe-957d"}],"optionApi":{"mode":"builtIn","builtIn":"","configOut":{"name":"","method":"get"}},"showHeader":false,"becomeFilter":false},{"key":"1-5","type":"radio","name":"单选框","value":"","specialTag":"","sortPriority":0,"column":24,"required":false,"optionMode":"static","options":[{"label":"选项1","value":"3491c82e-980c"},{"label":"选项2","value":"52cebbdb-94f6"}],"optionApi":{"mode":"builtIn","builtIn":"","configOut":{"name":"","method":"get"}},"showHeader":true,"becomeFilter":false},{"key":"1-6","type":"date","name":"日期选择框","value":"","column":24,"specialTag":"","placeholder":"请选择日期","required":false,"format":"yyyy-MM-dd","sortPriority":0,"dateFormat":"year","showHeader":true,"becomeFilter":false},{"key":"1-7","type":"time","name":"时间选择框","value":"","specialTag":"","column":24,"sortPriority":0,"placeholder":"请选择时间","required":false,"format":"HH:mm:ss","showHeader":true,"becomeFilter":false},{"type":"dateTime","value":"","name":"日期时间选择","specialTag":"","column":24,"placeholder":"请选择日期时间","key":"1-8","sortPriority":0,"required":false,"showHeader":true,"becomeFilter":false},{"key":"1-9","type":"dateRange","value":["2020-07-16","2020-07-24"],"specialTag":"","name":"日期范围选择","column":24,"sortPriority":0,"required":false,"startPlaceholder":"开始日期","endPlaceholder":"结束日期","format":"yyyy-MM-dd","showHeader":false,"becomeFilter":false}]} -->
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>模板html</title>
<!-- 引入element-ui样式 -->
<link
rel="stylesheet"
href="https://unpkg.com/element-ui@2.13.2/lib/theme-chalk/index.css"
/>
</head>
<body>
<div id="app">
<el-form
size="small"
ref="form"
:rules="rules"
:model="form"
label-width="80px"
>
<el-form-item label="模板名称" prop="name">
<el-input v-model="form.name" :maxlength="30"></el-input>
</el-form-item>
<el-form-item label="文本域" prop="textarea">
<el-input type="textarea" v-model="form.textarea"></el-input>
</el-form-item>
<el-form-item label="下拉框" prop="select">
<el-select v-model="form.select" placeholder="请选择活动区域">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-form-item>
<el-form-item label="多选框" prop="checkbox">
<el-checkbox-group v-model="form.checkbox">
<el-checkbox label="美食/餐厅线上活动" name="type"></el-checkbox>
<el-checkbox label="地推活动" name="type"></el-checkbox>
<el-checkbox label="线下主题活动" name="type"></el-checkbox>
<el-checkbox label="单纯品牌曝光" name="type"></el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item label="单选框" prop="radio">
<el-radio-group v-model="form.radio">
<el-radio label="选项1"></el-radio>
<el-radio label="选项2"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="日期选择" prop="date1">
<el-date-picker
type="date"
placeholder="选择日期"
v-model="form.date1"
style="width: 100%;"
></el-date-picker>
</el-form-item>
<el-form-item label="时间选择" prop="date2">
<el-time-picker
placeholder="选择时间"
v-model="form.date2"
style="width: 100%;"
></el-time-picker>
</el-form-item>
<el-form-item label="日期时间选择" prop="dateTimePicker">
<el-date-picker
v-model="form.dateTimePicker"
type="datetime"
placeholder="选择日期时间"
>
</el-date-picker>
</el-form-item>
<el-form-item label="日期范围选择" prop="date1">
<el-date-picker
v-model="form.date3"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm('form')"
>立即创建</el-button
>
<el-button @click="resetForm('form')">重置</el-button>
</el-form-item>
</el-form>
</div>
</body>
<!-- 引入版本为 2.6.11的vue文件 -->
<script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.11/vue.js"></script>
<!-- 引入组件库 -->
<script src="https://unpkg.com/element-ui@2.13.2/lib/index.js"></script>
<!-- axios支持 -->
<script src="https://cdn.bootcdn.net/ajax/libs/axios/0.19.2/axios.min.js"></script>
<script>
const vm = new Vue({
el: "#app",
data: function() {
return {
myMessage: "123123",
form: {
name: "",
textarea: "",
select: "",
date1: "",
date2: "",
dateTimePicker: "",
// 日期范围选择
date3: "",
checkbox: [],
resource: ""
},
rules: {
name: [
{ required: true, message: "请输入活动名称", trigger: "blur" },
{
min: 3,
max: 5,
message: "长度在 3 到 5 个字符",
trigger: "blur"
}
],
textarea: [
{ required: true, message: "请填写活动形式", trigger: "blur" }
],
select: [
{ required: true, message: "请选择活动区域", trigger: "change" }
],
checkbox: [
{
type: "array",
required: true,
message: "请至少选择一个活动性质",
trigger: "change"
}
],
radio: [
{ required: true, message: "请选择活动资源", trigger: "change" }
],
date1: [
{
type: "date",
required: true,
message: "请选择日期",
trigger: "change"
}
],
date2: [
{
type: "date",
required: true,
message: "请选择时间",
trigger: "change"
}
],
dateTimePicker: [
{
type: "date",
required: true,
message: "请选择时间",
trigger: "change"
}
]
}
};
},
created() {},
mounted() {
// 接受父页面发来的信息
window.addEventListener("message", event => {
var data = event.data;
const switchCmd = {
getFormJson: () => {
this.form = data.params.form;
},
onSubmit: () => {
this.submitForm();
}
};
switchCmd[data.cmd]();
});
},
methods: {
/**
* @author: jooey wong
* @description: 提交表单,验证表单 返回给父组件
* @param {type}
* @return:
*/
submitForm() {
let returnData = {
cmd: "iframeSubmit",
params: {
success: true,
data: null
}
};
this.$refs.form.validate(valid => {
if (valid) {
returnData.params.success = true;
returnData.params.data = this.form;
} else {
returnData.params.success = false;
}
// 向父vue页面发送信息
window.parent.postMessage(returnData, "*");
});
}
}
});
</script>
</html>
This diff is collapsed.
This diff is collapsed.
import request from '@/utils/request'
// 查询列表
export function listBanner(query) {
return request({
url: '/authority/system/banner/selbyname',
method: 'get',
params: query
})
}
export function deleteBanner(query) {
return request({
url: '/authority/system/banner/deletebanner?bannerId=' + query,
method: 'put'
})
}
// 新增
export function addBanner(data) {
return request({
url: '/authority/system/banner/insertBanner',
method: 'post',
data
})
}
// 修改
export function editBanner(data) {
return request({
url: '/authority/system/banner/updatebanner',
method: 'put',
data
})
}
// 查询角色列表
export function listRole(query) {
return request({
url: '/system/role/list',
method: 'get',
params: query
})
}
// export function queryInAdhibitions() {
// return request({
// url: '/authority/system/app/queryInAdhibitions/' + 'zt',
// method: 'get'
// })
// }
/*
* @Description: 王昕宇创建个人工作台和业务管理相关
* @version:
* @Author: jooey wong
* @Date: 2020-06-24 14:50:47
* @LastEditors: jooey wong
* @LastEditTime: 2020-06-24 15:02:55
*/
import request from '@/utils/request'
export const queryTodoListData = () => {
return request({
url: '/vue-admin-template/toDoTaskBypage',
method: 'get',
params: {
page: 1,
size: 10
}
})
}
/**
* @author: WangXinYu
* @describe 根据id查询模板及模板字段分组信息 (表头信息)
* @param {String} processId 模板Id
* @return:
**/
export const queryTemplateInfoByProcessId = processId => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `/wffield/selectTemplateInfoById`,
method: 'get',
params: {
processId: processId
}
})
}
/**
* @author: WangXinYu
* @describe 分页查询模板实例列表数据
* @param {String} curPage 当前页码
* @param {String} pageSize 页码数量
* @param {String} pageSize 页数
* @param {String} templateType
* @param {Object} form
* @return
**/
export const queryWfTaskFiedByPagination = params => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `/wftaskfieldhi/queryWfTaskFiedByPagination`,
method: 'get',
params: params
})
}
/**
* @author: WangXinYu
* @describe 根据id 单一删除模板数据
* @param {String} businessId
* @return:
**/
export const deleteInstanceById = businessId => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `/wfinstance/delete/${businessId}`,
method: 'delete'
})
}/**
* @author: WangXinYu
* @describe 根据id 单一逻辑删除模板数据
* @param {String} businessId
* @return:
**/
export const deleteLogicalInstanceById = businessId => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `/wfprocess/deleteLogical/${businessId}`,
method: 'PUT'
})
}
/*
* @Description: 流程页面
* @version:
* @Author: jooey wong
* @Date: 2020-07-14 15:00:45
* @LastEditors: jooey wong
* @LastEditTime: 2020-07-15 10:31:28
*/
import request from '@/utils/request'
/**
* @author: jooey wong
* @description: 查询审批历史记录
* @param {String} instanceId 实例流程Id,只有在点击提交之后才会生成
*/
export const queryWfTaskMess = instanceId => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `wftaskmess/queryWfTaskMesss`,
method: 'get',
params: {
instanceId: instanceId
}
})
}
/**
* @author: jooey wong
* @description: 获取第一节点模板
* @param processId
*/
export const getFirstTemplate = processId => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `wftemplate/getFirstTemplate`,
method: 'get',
params: {
processId
}
})
}
/**
* @author WangXinYu
* @Describe 提交节点 提交功能
* @param {String} processId 流程id
* @param {String} queryProcessCommitDtoList 传递的值
* @param {String} commitMessage 提交 驳回 通过
* @param {String} takeuserMes 指定审批人的信息
* @return
**/
export const onProcessSubmit = (
processId,
queryProcessCommitDtoList,
commitMessage,
takeuserMes
) => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `wfprocessfield/addAndStartProcessInstance`,
method: 'post',
data: {
processId,
queryProcessCommitDtoList,
commitMessage,
takeuserMes
}
})
}
/**
* @author: WangXinYu
* @describe: 审批节点 通过驳回
* @param: {String} instanceId 实例id
* @param: {String} userTaskId 任务id
* @param: {String} queryProcessCommitDtoList 模板表单数据
* @param: {String} commitMessage 提交 驳回 通过
* @return:
**/
export const completeTask = (
processId,
instanceId,
userTaskId,
queryProcessCommitDtoList,
commitMessage,
takeUserMes
) => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `wfinstance/complateTask`,
method: 'post',
data: {
processId,
instanceId,
userTaskId,
queryProcessCommitDtoList,
commitMessage,
takeUserMes
}
})
}
/**
* @author WangXinYu
* @describe 控制流程中通过和驳回的 按钮显示
* @param {String} taskId
* @param {String} processId
**/
export const getCommitBtns = (taskId, processId) => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `wfprocess/commitButton/${taskId}`,
method: 'get',
params: {
processId,
taskId
}
})
}
/**
* @author WangXinYu
* @describe 获取指定审批人功能
* @param {String} processId 流程ID
* @param {String} taskId 任务ID 提交是的时候没有任务ID 就传个 ‘’
**/
export const getRolesByInsId = (processId, taskId = '') => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `wfprocess/getRolesByinsId`,
method: 'get',
params: {
processId,
taskId
}
})
}
/**
* @author WangXinYu
* @describe 提交人 撤销功能
* @param {String} instanceId 实例id
* @param {String} taskId 任务id
* @param {String} remarks 备注
**/
export const revokeProcess = (instanceId, taskId, remarks) => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `wfprocess/repalce`,
method: 'post',
data: {
instanceId,
taskId,
remarks
}
})
}
/**
* @author WangXinYu
* @describe 审批人 拒绝操作
* @param {string} instanceId 实例Id
* @param {string} taskId 任务Id
* @param {string} remarks 意见
**/
export const rejectProcess = (instanceId, taskId, remarks) => {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
url: `wfprocess/return`,
method: 'post',
data: {
instanceId,
taskId,
remarks
}
})
}
/**
* @Description: /inuser/detail
* @author wanghaiying
* @date 2020/8/7
*/
export const queryInJurors = params => {
return request({
baseURL: process.env.VUE_APP_INTERNAL,
url: '/injuror/queryInJurors',
method: 'get',
params
})
}
/**
* @author WangXinYu
* @describe 员工加班费管理 -- 根据年月(yyyyMM) 查询加班信息
* @param {Object} param : month(yyyyMM)
**/
export const queryOverTimeWorks = param => {
return request({
baseURL: process.env.VUE_APP_INTERNAL,
url: '/inovertimework/queryInOvertimeWorks/' + param.month,
method: 'get'
})
}
/**
* @author WangXinYu
* @describe 工加班费管理 -- 更新补助信息
* @param { Array } inOvertimeWork
**/
export const updateOvertimePaySubsidy = inOvertimeWork => {
return request({
baseURL: process.env.VUE_APP_INTERNAL,
url: '/inovertimework/update',
method: 'put',
data: {
inOvertimeWorkStr: JSON.stringify(inOvertimeWork)
}
})
}
/**
* @Description: /inuser/detail
* @author wanghaiying
* @date 2020/8/7
*/
export const queryInJurorApplys = userId => {
return request({
baseURL: process.env.VUE_APP_INTERNAL,
url: '/injurorapply/queryInJurorApplys',
method: 'get',
params: userId
})
}
import request from '@/utils/request'
// 查询列表
export function listApi(query) {
return request({
url: '/authority/apiInfo/info/list',
method: 'get',
params: query
})
}
// 查询编号是否重复
export function chooseOnly(query) {
return request({
url: '/authority/apiInfo/info/chooseOnly',
method: 'get',
params: query
})
}
export function deleteApi(query) {
return request({
url: '/authority/apiInfo/info/removeById?businessId=' + query,
method: 'delete'
})
}
// 新增
export function addApi(data) {
return request({
url: '/authority/apiInfo/info/add',
method: 'post',
data: data
})
}
// 修改
export function editApi(data) {
return request({
url: '/authority/apiInfo/info/edit',
method: 'put',
data: data
})
}
// 导出
export function exportsExcel(data) {
return request({
url: '/authority/apiInfo/info/exportExcelApi',
method: 'get',
data: data,
responseType: 'blob'
})
}
// 下载
export function exportExcelEmpty(data) {
return request({
method: 'get',
url: '/authority/apiInfo/info/exportExcelEmpty',
responseType: 'blob',
data: data
})
}
// 导入
export function importExcel(data) {
return request({
method: 'post',
url: '/authority/apiInfo/info/importExcel',
headers: {
'Content-Type': 'multipart/form-data'
},
transformRequest: [(data) => {
return data
}],
data
})
}
import request from '@/utils/request'
export function getPayDocumentByType(params) {
return request({
baseURL: process.env.VUE_APP_WORKFLOW,
method: 'get',
url: '/wftaskfieldhi/getPaymentCondition',
params
})
}
export function getMenuList(params) {
return request({
url: '/sysmenu/list',
method: 'get',
params
})
}
// 查询人民陪审团的付款申请单
export function queryInJurorSubsidyDetail(params) {
return request({
baseURL: process.env.VUE_APP_INTERNAL,
url: '/injurorapply/queryInJurorSubsidyApplys',
method: 'get',
params
})
}
// 查询人民陪审团的付款申请单
export function getPayDomDetailInJuror(params) {
return request({
baseURL: process.env.VUE_APP_INTERNAL,
url: '/injurorapply/queryInJurorSubsidyDetail',
method: 'get',
params
})
}
// 查询人民陪审团的付款申请单
export function getSalaryStandards() {
return request({
baseURL: process.env.VUE_APP_INTERNAL,
url: '/insalarystandard/queryInSalaryStandards',
method: 'get'
})
}
import request from '@/utils/request'
// 获取路由
export const getRouters = () => {
return request({
url: '/auth/getRouters',
method: 'get'
// params: { path: '/zhongtai' }
})
}
import request from '@/utils/request'
// 查询列表
export function listMes(query) {
return request({
url: '/authority/message/instance/list',
method: 'get',
params: query
})
}
export function getInfo(token) {
return request({
url: '/vue-admin-template/user/info',
method: 'get',
params: { token }
})
}
export function logout() {
return request({
url: '/vue-admin-template/user/logout',
method: 'post'
})
}
import request from '@/utils/request'
// 查询列表
export function listMes(query) {
return request({
url: '/authority/message/instance/list',
method: 'get',
params: query
})
}
import request from '@/utils/request'
// 新增消息模板
export function addMessage(data) {
return request({
url: '/authority/messages',
method: 'post',
data
})
}
// 查询列表
export function listMes(query) {
return request({
url: '/authority/messages',
method: 'get',
params: query
})
}
// 查询详情
export function detailMes(id) {
return request({
url: `/authority/messages/${id}`,
method: 'get'
})
}
// 修改消息模板
export function editMessage(id, data) {
return request({
url: `/authority/messages/${id}`,
method: 'put',
data
})
}
// 删除根据id
export function deleteMes(id) {
return request({
url: `/authority/messages/${id}`,
method: 'delete'
})
}
// 批量删除根据id(逗号拼接)
export function deleteBatch(ids) {
return request({
url: `/authority/messages/${ids}`,
method: 'delete',
})
}
export function listUser(query) {
return request({
url: '/authority/system/user/list',
method: 'get',
params: query
})
}
// 起停消息
export function toggleMes(query) {
return request({
url: '/authority/message/template/changeOpenAndClose',
method: 'post',
params: query
})
}
// 验重编号
export function checkWeight(query) {
return request({
url: '/authority/message/template/checkNumberCodeUnique',
method: 'get',
params: query
})
}
export function getUsersBySelected(params) {
return request({
url: '/authority/system/user/getMessageUser',
methods: 'get',
params: params
})
}
import request from '@/utils/request'
// 查询列表
export function selectAppInformation(query) {
return request({
url: '/authority/system/app/selectAppInformation',
method: 'get',
params: query
})
}
export function deleteApp(query) {
return request({
url: '/authority/system/app/deleteApp?appId=' + query,
method: 'put'
})
}
// 新增
export function insertApp(data) {
return request({
url: '/authority/system/app/insertApp',
method: 'post',
params: data
})
}
// 修改
export function updateAppInformation(data) {
return request({
url: '/authority/system/app/updateAppInformation',
method: 'put',
params: data
})
}
// 修改状态
export function updateAppStatus(data) {
return request({
url: '/authority/system/app/updateAppStatus',
method: 'put',
params: data
})
}
// 重置密码
export function undateAppScrect(data) {
return request({
url: '/authority/system/app/undateAppScrect',
method: 'post',
params: data
})
}
export function selectAppNoUnique(no) {
return request({
url: '/authority/system/app/selectAppNoUnique',
method: 'post',
data: {
no
}
})
}
...@@ -105,3 +105,12 @@ export function delMenu(menuId) { ...@@ -105,3 +105,12 @@ export function delMenu(menuId) {
method: 'delete' method: 'delete'
}) })
} }
// 获取路由
export const getRouters = () => {
return request({
url: '/auth/getRouters',
method: 'get'
// params: { path: '/zhongtai' }
})
}
import request from '@/utils/request'
// 查询公告列表
export function listNotice(query) {
return request({
url: '/authority/system/notice/list',
method: 'get',
params: query
})
}
// 查询公告详细
export function getNotice(noticeId) {
return request({
url: '/authority/system/notice/' + noticeId,
method: 'get'
})
}
// 新增公告
export function addNotice(data) {
return request({
url: '/authority/system/notice',
method: 'post',
data: data
})
}
// 修改公告
export function updateNotice(data) {
return request({
url: '/authority/system/notice',
method: 'put',
data: data
})
}
// 删除公告
export function delNotice(noticeId) {
return request({
url: '/authority/system/notice/' + noticeId,
method: 'delete'
})
}
import request from '@/utils/request'
/**
* @Description: 查询职务接口
* @author fl
* @date 2020/9/9
*/
export function queryPostList(params) {
return request({
url: 'authority/system/post/postlist',
method: 'get',
params
})
}
import request from '@/utils/request'
/**
* @Description: 签章查询
* @author zmf
* @date 2020/11/6
*/
export function getSignList(query) {
return request({
url: '/authority/syssignature/querySysSignatureByPagination',
method: 'get',
params: query
})
}
/**
* @Description: 使用日志
* @author zmf
* @date 2020/11/6
*/
export function getLogList(query) {
return request({
url: '/authority/syssignatureuselog/querySysSignatureByPagination',
method: 'get',
params: query
})
}
/**
* @Description: 历史记录
* @author zmf
* @date 2020/11/7
*/
export function getHistoryList(query) {
return request({
url: '/authority/syssignature/querySysSignatureByChangePagination',
method: 'get',
params: query
})
}
/**
* @Description: 获取电子签章数据
* @author zmf
* @date 2020/11/7
*/
export function getSignDetail(signatureId) {
return request({
url: '/authority/syssignature/detail/' + signatureId,
method: 'get'
})
}
/**
* @Description: 查看使用人员
* @author zmf
* @date 2020/11/7
*/
export function getUserList(query) {
return request({
url: '/authority/syssignatureuser/querySysSignatureByPagination',
method: 'get',
params: query
})
}
/**
* @Description: 使用单据列表
* @author zmf
* @date 2020/11/7
*/
export function getOrderList(query) {
return request({
url: '/authority/syssignature/queryChangeInvoicesPagination',
method: 'get',
params: query
})
}
/**
* @Description: 查询所有系统名称
* @author zmf
* @date 2020/11/7
*/
export function getSysList(query) {
return request({
url: '/authority/syssignature/querySystem',
method: 'get',
params: query
})
}
/**
* @Description: 查询模块信息 /syssignature/queryAllSealSysSignatures/{sysId}
* @author zmf
* @date 2020/11/7
*/
export function getModelList(id) {
return request({
url: '/authority/syssignature/queryModel/' + id,
method: 'get'
})
}
/**
* @Description: 查询全部单据
* @author zmf
* @date 2020/11/9
*/
export function getOrderUseList(id) {
return request({
url: '/authority/syssignatureuselog/queryAllInvoices',
method: 'get'
})
}
...@@ -404,7 +404,7 @@ import customControlsModule from './customControls' ...@@ -404,7 +404,7 @@ import customControlsModule from './customControls'
/* import { listUser } from '@/api/system/user' /* import { listUser } from '@/api/system/user'
import { listRole } from '@/api/system/role'*/ import { listRole } from '@/api/system/role'*/
import { treeselect } from '@/api/system/dept' import { treeselect } from '@/api/system/dept'
import Template from '../../views/instance/Template' // import Template from '../../views/instance/Template'
// import item from '../formDesigner/fieldItem/fields/Group/item' // import item from '../formDesigner/fieldItem/fields/Group/item'
// import propertiesProviderModule from 'bpmn-js-properties-panel/lib/provider/camunda' // import propertiesProviderModule from 'bpmn-js-properties-panel/lib/provider/camunda'
const HIGH_PRIORITY = 1500 // 优先级设置 const HIGH_PRIORITY = 1500 // 优先级设置
......
<template>
<div>
<el-form
size="small"
:inline="true"
:model="searchForm"
class="demo-form-inline"
>
<el-form-item
v-for="(field, index) in filterFields"
:key="index"
:label="field.fieldName"
>
<el-input
v-if="field.fieldType === 'input'"
v-model="field.value"
/>
<!-- <el-select
v-if="field.fieldType === 'select'"
v-model="field.value"
placeholder="请选择">
<el-option
v-for="item in optionDic[field.specialTag]"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>-->
<el-cascader
v-if="field.fieldType === 'select'"
v-model="field.value"
:show-all-levels="false"
:options="optionDic[field.specialTag]"
:props="getSelectProps(field.fieldOptionOrigin)"
/>
<el-date-picker
v-if="field.fieldType === 'dateTime'"
v-model="field.value"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
value-format="yyyy-MM-dd"
placeholder="选择日期"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="searchEvent" />
<el-button type="danger" icon="el-icon-refresh-right" @click="resetEvent" />
</el-form-item>
</el-form>
</div>
</template>
<script>
export default {
name: 'Index',
components: {},
props: {
filterFields: {
type: Array,
default() {
return []
}
},
optionDic: {
type: Object,
default() {
return {}
}
}
},
data() {
return {
// 查询表单
searchForm: {
// 业务阶段
stage: ''
},
form: {
filterArray: []
}
}
},
computed: {
// 根据接口名动态返回props
getSelectProps() {
return apiName => {
switch (apiName) {
case 'getDepts':
return { value: 'id', label: 'label', emitPath: false }
default:
return {emitPath: false}
}
}
}
},
watch: {},
created() {
},
mounted() {
},
methods: {
// “查询按钮”点击事件
searchEvent() {
this.form.filterArray = []
this.filterFields.forEach(field => {
// TODO:待测试各种字段类型的值类型
if (field.value !== '' && field.value !== [] && field.value !== undefined) {
this.form.filterArray.push({
fieldId: field.businessId,
flag: Array.isArray(field.value) ? '1' : '0',
fieldValue: typeof field.value === 'string' ? field.value : (Array.isArray(field.value) ? field.value.join() : JSON.stringify(field.value))
})
}
})
if (this.form.filterArray.length === 0) {
delete this.form.filterArray
}
this.$emit('search', this.form)
},
// “重置按钮”点击事件
resetEvent() {
this.filterFields.forEach(field => {
if (typeof field.value === 'string') {
field.value = ''
} else if (field.value instanceof Array) {
field.value = []
}
})
this.form = {}
this.loadStateSelector = false
this.$nextTick(() => {
this.loadStateSelector = true
})
this.$emit('search', {})
}
}
}
</script>
<style lang="stylus" scoped>
</style>
This diff is collapsed.
export default [
{
label: '*.jpeg,*.jpg',
value: 'image/jpeg'
},
{
label: '*.png',
value: 'image/png'
},
{
label: '*.pdf',
value: 'application/pdf'
},
{
label: '*.doc,*.dot',
value: 'application/msword'
},
{
label: '*.ppt',
value: 'application/vnd.ms-powerpoint'
},
{
label: '*.xls',
value: 'application/vnd.ms-excel'
},
{
label: '*.xlsx',
value: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
},
{
label: '*.zip',
value: 'aplication/zip'
},
{
label: '*.mp3',
value: 'audio/mpeg'
},
{
label: '*.mp4',
value: 'audio/mp4, video/mp4'
}
]
This diff is collapsed.
export default [
{
label: '上一页',
value: '/back'
},
{
label: '首页',
value: '/'
},
{
label: '登录页',
value: '/login'
},
{
label: '付款页',
value: '/pay'
}
]
This diff is collapsed.
This diff is collapsed.
export default {
// “基础字段”组
input: 'el-icon-edit',
textarea: 'el-icon-edit-outline',
select: 'el-icon-finished',
checkbox: 'el-icon-menu',
radio: 'el-icon-help',
date: 'el-icon-date',
time: 'el-icon-time',
dateRange: 'el-icon-c-scale-to-original',
dateTime: 'el-icon-date',
tags: 'el-icon-magic-stick',
dialogTable: 'el-icon-chat-line-square',
// “功能按钮”组
uploadButton: 'el-icon-upload',
pageButton: 'el-icon-link',
apiButton: 'el-icon-connection',
// “布局”组
group: 'el-icon-s-grid',
// “克隆模板”组
cloneGroup: 'el-icon-copy-document',
cascader: 'el-icon-connection'
}
<template>
<section class="field-group">
<div class="field-list">
<div v-for="(item, index) in fieldList" :key="index" class="group-item">
<div class="title">{{ item.name }}</div>
<ul>
<draggable
v-model="item.fields"
:options="dragOption"
:clone="cloneData"
@add="addEvent($event, index)"
>
<transition-group>
<li
v-for="field in item.fields"
:key="field.key"
:fieldType="field.type"
>
<i :class="iconObj[field.type]" />
{{ field.name }}
</li>
</transition-group>
</draggable>
</ul>
</div>
</div>
</section>
</template>
<script>
import draggable from 'vuedraggable'
import fieldArray from './fields'
import icons from './icons'
// import item from '../fieldItem/fields/Group/item'
export default {
name: 'FieldGroup',
components: {
draggable
},
props: {},
data() {
return {
fieldList: fieldArray,
iconObj: icons,
tags: '',
dragOption: {
ghostClass: 'ghost',
disabled: false,
// 分组
group: {
name: 'fieldGroup',
pull: 'clone',
revertClone: false
},
filter: '.field-item',
sort: false
},
fieldCount: {
}
}
},
computed: {},
watch: {
fieldArray: {
deep: true,
handler(val) {
}
},
'item.fields': {
deep: true,
handler(val) {
if (val[0]) {
const testObj = {}
val[0].forEach(item => {
testObj[item.type]
})
}
}
}
},
created() {
/* this.$http.get('/pmstemplate', { flag: 2 }).then(res => {
fieldArray[3].fields = []
console.log(res)
const fields = res.data
fields.forEach((field, index) => {
field.type = 'cloneGroup'
field.name = field.templateName
field.key = '4' + '-' + index + 1
})
this.$ha.handleBackFields(res.data, field => {
fieldArray[3].fields.push(field)
})
console.log(fieldArray)
})*/
},
mounted() {},
methods: {
cloneData(original) {
// 深拷贝对象,防止此数组中的此对象被后续同步更改
return JSON.parse(JSON.stringify(original))
},
addEvent(e, index) {
// 禁止任何元素的加入
this.fieldList[index].fields.splice(e.newIndex, 1)
}
}
}
</script>
<style lang="stylus" scoped>
.field-group {
width: 260px
overflow: auto;
.field-list {
padding: 10px 0;
width: 100%;
height: 100%;
.group-item {
.title {
padding: 8px 12px;
font-size: 13px;
}
ul {
padding: 0 10px 10px;
li {
display: inline-block
width: 48%;
margin: 1%;
border: 1px solid #f4f6fc;
line-height: 26px;
font-size: 12px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: #333;
background: #f4f6fc;
cursor: move
&:hover {
color: #409eff;
border: 1px dashed #409eff;
}
i {
margin-right: 6px;
margin-left: 8px;
font-size: 14px;
}
}
}
}
}
}
.icon-input:before{
content "\E6B2"
}
</style>
<template>
<section class="field-info">
<label>
{{ field.name }}
</label>
<span></span>
<span v-if="cuteVal !== ''">{{ cuteVal }}</span>
<span
v-else
class="empty-tip"
>
(无)
</span>
</section>
</template>
<script>
export default {
name: 'FieldInfo',
components: {},
props: {
field: {
type: Object
}
},
data() {
return {
// 存储选项的字典,分为两层key:1、带选项字段的id; 2、选项的value
optionDic: {},
cuteVal: ''
}
},
computed: {},
watch: {},
created() {
// 现处理两类字段,“带选项的字段”、“日期范围”(“文件上传”待处理)
if (this.field.optionMode === 'static') {
const optionMap = {}
if (this.field.options instanceof Array) {
// 遍历选项数组,转换为key-value存入optionMap中
this.field.options.forEach(option => {
optionMap[option.value] = option.label
})
}
if (this.field.value instanceof Array) {
this.field.value.forEach(val => {
if (optionMap[val] !== undefined) { this.cuteVal += optionMap[val] + ' ' }
})
} else if (this.field.value !== '') {
this.cuteVal = optionMap[this.field.value]
}
} else if (this.field.value instanceof Array) {
this.field.value.forEach(val => {
this.cuteVal += val + ' '
})
} else {
this.cuteVal += this.field.value
}
},
mounted() {},
methods: {}
}
</script>
<style lang="stylus">
.field-info {
padding 10px 0
label {
display inline-block
width 120px
text-align: right;
vertical-align: middle;
font-size: 14px;
color: #606266;
padding: 0 12px 0 0;
box-sizing: border-box;
}
span {
color: #333;
font-size: 15px;
font-weight: 500;
vertical-align: middle;
&.empty-tip {
color: #c3c3c3
}
}
}
</style>
<template>
<div />
</template>
<script>
export default {
name: 'Fieldsclone',
props: {
},
data() {
return {
}
},
created() {
},
beforeMount() {
this.$emit('cloneGroupCreated')
},
methods: {
}
}
</script>
<style scoped>
</style>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -5,7 +5,7 @@ Vue.use(Router) ...@@ -5,7 +5,7 @@ Vue.use(Router)
/* Layout */ /* Layout */
import Layout from '@/layout' import Layout from '@/layout'
import LayoutLogin from '@/layoutLogin' // import LayoutLogin from '@/layoutLogin'
/** /**
* hidden: true 当设置 true 的时候该路由不会在侧边栏出现 如401,login等页面,或者如一些编辑页面/edit/1 (默认 false) * hidden: true 当设置 true 的时候该路由不会在侧边栏出现 如401,login等页面,或者如一些编辑页面/edit/1 (默认 false)
......
import { constantRoutes } from '@/router' import { constantRoutes } from '@/router'
import { getRouters } from '@/api/menu' // import { getRouters } from '@/api/system/menu'
import { getInfo } from '@/api/login' import { getInfo } from '@/api/login'
import Layout from '@/layout/index' import Layout from '@/layout/index'
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment