diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/src/assets/icons/icon-approval.svg b/src/assets/icons/icon-approval.svg new file mode 100644 index 0000000..5c0f8f6 --- /dev/null +++ b/src/assets/icons/icon-approval.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/src/assets/icons/icon-approval.svg b/src/assets/icons/icon-approval.svg new file mode 100644 index 0000000..5c0f8f6 --- /dev/null +++ b/src/assets/icons/icon-approval.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index d813c68..6ed4312 100644 --- a/src/main.ts +++ b/src/main.ts @@ -63,7 +63,8 @@ window.localStorage.setItem('appStreamUrl', result.data.appStreamUrl) // 划线,线的颜色 window.localStorage.setItem('lineColors', JSON.stringify(result.data.lineColors)) - + // 是否使用审批 + window.localStorage.setItem('useApproval', result.data.useApproval) const app = createApp(App) app.config.globalProperties.hasPerm = hasPermission app.config.globalProperties.buttonPerm = buttonPerm diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/src/assets/icons/icon-approval.svg b/src/assets/icons/icon-approval.svg new file mode 100644 index 0000000..5c0f8f6 --- /dev/null +++ b/src/assets/icons/icon-approval.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index d813c68..6ed4312 100644 --- a/src/main.ts +++ b/src/main.ts @@ -63,7 +63,8 @@ window.localStorage.setItem('appStreamUrl', result.data.appStreamUrl) // 划线,线的颜色 window.localStorage.setItem('lineColors', JSON.stringify(result.data.lineColors)) - + // 是否使用审批 + window.localStorage.setItem('useApproval', result.data.useApproval) const app = createApp(App) app.config.globalProperties.hasPerm = hasPermission app.config.globalProperties.buttonPerm = buttonPerm diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts index 0e778b5..d096b3c 100644 --- a/src/router/modules/system.ts +++ b/src/router/modules/system.ts @@ -290,6 +290,31 @@ }, ], }, + { + path: '/approval', + component: Layout, + redirect: '/approval/index', + name: 'SysApproval', + meta: { + title: '操作审批', + icon: 'ep:key', + auth: '/sys/approval', + }, + children: [ + { + path: 'index', + name: 'SysApprovalIndex', + component: () => import('@/views/system/approval/index.vue'), + meta: { + title: '操作审批', + auth: '/sys/approval', + sidebar: false, + breadcrumb: false, + activeMenu: '/approval', + }, + }, + ], + }, // ], // }, ] diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/src/assets/icons/icon-approval.svg b/src/assets/icons/icon-approval.svg new file mode 100644 index 0000000..5c0f8f6 --- /dev/null +++ b/src/assets/icons/icon-approval.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index d813c68..6ed4312 100644 --- a/src/main.ts +++ b/src/main.ts @@ -63,7 +63,8 @@ window.localStorage.setItem('appStreamUrl', result.data.appStreamUrl) // 划线,线的颜色 window.localStorage.setItem('lineColors', JSON.stringify(result.data.lineColors)) - + // 是否使用审批 + window.localStorage.setItem('useApproval', result.data.useApproval) const app = createApp(App) app.config.globalProperties.hasPerm = hasPermission app.config.globalProperties.buttonPerm = buttonPerm diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts index 0e778b5..d096b3c 100644 --- a/src/router/modules/system.ts +++ b/src/router/modules/system.ts @@ -290,6 +290,31 @@ }, ], }, + { + path: '/approval', + component: Layout, + redirect: '/approval/index', + name: 'SysApproval', + meta: { + title: '操作审批', + icon: 'ep:key', + auth: '/sys/approval', + }, + children: [ + { + path: 'index', + name: 'SysApprovalIndex', + component: () => import('@/views/system/approval/index.vue'), + meta: { + title: '操作审批', + auth: '/sys/approval', + sidebar: false, + breadcrumb: false, + activeMenu: '/approval', + }, + }, + ], + }, // ], // }, ] diff --git a/src/views/system/approval/approval-interface.ts b/src/views/system/approval/approval-interface.ts new file mode 100644 index 0000000..b60f29b --- /dev/null +++ b/src/views/system/approval/approval-interface.ts @@ -0,0 +1,30 @@ +export interface IListQuery { + auditRemark: string // 审批备注 + jsonContext: string // 操作内容(json格式) + operationRemark: string // 操作备注 + operationType: string // 操作类型 + status: string // 状态 + title: string // 申请标题 + offset: number + limit: number +} + +export interface IList { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + sfId: string // 使用状态 + version: string // 版本号 + desc: string // 算法简述 + statusName: string // 使用状态 + selectData?: string // 算法选择 +} + +export interface IForm { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + version: string // 版本号 + remark: string // 算法简述 + path: string // zip包 +} diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/src/assets/icons/icon-approval.svg b/src/assets/icons/icon-approval.svg new file mode 100644 index 0000000..5c0f8f6 --- /dev/null +++ b/src/assets/icons/icon-approval.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index d813c68..6ed4312 100644 --- a/src/main.ts +++ b/src/main.ts @@ -63,7 +63,8 @@ window.localStorage.setItem('appStreamUrl', result.data.appStreamUrl) // 划线,线的颜色 window.localStorage.setItem('lineColors', JSON.stringify(result.data.lineColors)) - + // 是否使用审批 + window.localStorage.setItem('useApproval', result.data.useApproval) const app = createApp(App) app.config.globalProperties.hasPerm = hasPermission app.config.globalProperties.buttonPerm = buttonPerm diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts index 0e778b5..d096b3c 100644 --- a/src/router/modules/system.ts +++ b/src/router/modules/system.ts @@ -290,6 +290,31 @@ }, ], }, + { + path: '/approval', + component: Layout, + redirect: '/approval/index', + name: 'SysApproval', + meta: { + title: '操作审批', + icon: 'ep:key', + auth: '/sys/approval', + }, + children: [ + { + path: 'index', + name: 'SysApprovalIndex', + component: () => import('@/views/system/approval/index.vue'), + meta: { + title: '操作审批', + auth: '/sys/approval', + sidebar: false, + breadcrumb: false, + activeMenu: '/approval', + }, + }, + ], + }, // ], // }, ] diff --git a/src/views/system/approval/approval-interface.ts b/src/views/system/approval/approval-interface.ts new file mode 100644 index 0000000..b60f29b --- /dev/null +++ b/src/views/system/approval/approval-interface.ts @@ -0,0 +1,30 @@ +export interface IListQuery { + auditRemark: string // 审批备注 + jsonContext: string // 操作内容(json格式) + operationRemark: string // 操作备注 + operationType: string // 操作类型 + status: string // 状态 + title: string // 申请标题 + offset: number + limit: number +} + +export interface IList { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + sfId: string // 使用状态 + version: string // 版本号 + desc: string // 算法简述 + statusName: string // 使用状态 + selectData?: string // 算法选择 +} + +export interface IForm { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + version: string // 版本号 + remark: string // 算法简述 + path: string // zip包 +} diff --git a/src/views/system/approval/approvalCommentDialog.vue b/src/views/system/approval/approvalCommentDialog.vue new file mode 100644 index 0000000..6c105ef --- /dev/null +++ b/src/views/system/approval/approvalCommentDialog.vue @@ -0,0 +1,97 @@ + + + + + + diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/src/assets/icons/icon-approval.svg b/src/assets/icons/icon-approval.svg new file mode 100644 index 0000000..5c0f8f6 --- /dev/null +++ b/src/assets/icons/icon-approval.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index d813c68..6ed4312 100644 --- a/src/main.ts +++ b/src/main.ts @@ -63,7 +63,8 @@ window.localStorage.setItem('appStreamUrl', result.data.appStreamUrl) // 划线,线的颜色 window.localStorage.setItem('lineColors', JSON.stringify(result.data.lineColors)) - + // 是否使用审批 + window.localStorage.setItem('useApproval', result.data.useApproval) const app = createApp(App) app.config.globalProperties.hasPerm = hasPermission app.config.globalProperties.buttonPerm = buttonPerm diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts index 0e778b5..d096b3c 100644 --- a/src/router/modules/system.ts +++ b/src/router/modules/system.ts @@ -290,6 +290,31 @@ }, ], }, + { + path: '/approval', + component: Layout, + redirect: '/approval/index', + name: 'SysApproval', + meta: { + title: '操作审批', + icon: 'ep:key', + auth: '/sys/approval', + }, + children: [ + { + path: 'index', + name: 'SysApprovalIndex', + component: () => import('@/views/system/approval/index.vue'), + meta: { + title: '操作审批', + auth: '/sys/approval', + sidebar: false, + breadcrumb: false, + activeMenu: '/approval', + }, + }, + ], + }, // ], // }, ] diff --git a/src/views/system/approval/approval-interface.ts b/src/views/system/approval/approval-interface.ts new file mode 100644 index 0000000..b60f29b --- /dev/null +++ b/src/views/system/approval/approval-interface.ts @@ -0,0 +1,30 @@ +export interface IListQuery { + auditRemark: string // 审批备注 + jsonContext: string // 操作内容(json格式) + operationRemark: string // 操作备注 + operationType: string // 操作类型 + status: string // 状态 + title: string // 申请标题 + offset: number + limit: number +} + +export interface IList { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + sfId: string // 使用状态 + version: string // 版本号 + desc: string // 算法简述 + statusName: string // 使用状态 + selectData?: string // 算法选择 +} + +export interface IForm { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + version: string // 版本号 + remark: string // 算法简述 + path: string // zip包 +} diff --git a/src/views/system/approval/approvalCommentDialog.vue b/src/views/system/approval/approvalCommentDialog.vue new file mode 100644 index 0000000..6c105ef --- /dev/null +++ b/src/views/system/approval/approvalCommentDialog.vue @@ -0,0 +1,97 @@ + + + + + + diff --git a/src/views/system/approval/approvalDialog.vue b/src/views/system/approval/approvalDialog.vue new file mode 100644 index 0000000..7b3622e --- /dev/null +++ b/src/views/system/approval/approvalDialog.vue @@ -0,0 +1,171 @@ + + + + + + diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/src/assets/icons/icon-approval.svg b/src/assets/icons/icon-approval.svg new file mode 100644 index 0000000..5c0f8f6 --- /dev/null +++ b/src/assets/icons/icon-approval.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index d813c68..6ed4312 100644 --- a/src/main.ts +++ b/src/main.ts @@ -63,7 +63,8 @@ window.localStorage.setItem('appStreamUrl', result.data.appStreamUrl) // 划线,线的颜色 window.localStorage.setItem('lineColors', JSON.stringify(result.data.lineColors)) - + // 是否使用审批 + window.localStorage.setItem('useApproval', result.data.useApproval) const app = createApp(App) app.config.globalProperties.hasPerm = hasPermission app.config.globalProperties.buttonPerm = buttonPerm diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts index 0e778b5..d096b3c 100644 --- a/src/router/modules/system.ts +++ b/src/router/modules/system.ts @@ -290,6 +290,31 @@ }, ], }, + { + path: '/approval', + component: Layout, + redirect: '/approval/index', + name: 'SysApproval', + meta: { + title: '操作审批', + icon: 'ep:key', + auth: '/sys/approval', + }, + children: [ + { + path: 'index', + name: 'SysApprovalIndex', + component: () => import('@/views/system/approval/index.vue'), + meta: { + title: '操作审批', + auth: '/sys/approval', + sidebar: false, + breadcrumb: false, + activeMenu: '/approval', + }, + }, + ], + }, // ], // }, ] diff --git a/src/views/system/approval/approval-interface.ts b/src/views/system/approval/approval-interface.ts new file mode 100644 index 0000000..b60f29b --- /dev/null +++ b/src/views/system/approval/approval-interface.ts @@ -0,0 +1,30 @@ +export interface IListQuery { + auditRemark: string // 审批备注 + jsonContext: string // 操作内容(json格式) + operationRemark: string // 操作备注 + operationType: string // 操作类型 + status: string // 状态 + title: string // 申请标题 + offset: number + limit: number +} + +export interface IList { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + sfId: string // 使用状态 + version: string // 版本号 + desc: string // 算法简述 + statusName: string // 使用状态 + selectData?: string // 算法选择 +} + +export interface IForm { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + version: string // 版本号 + remark: string // 算法简述 + path: string // zip包 +} diff --git a/src/views/system/approval/approvalCommentDialog.vue b/src/views/system/approval/approvalCommentDialog.vue new file mode 100644 index 0000000..6c105ef --- /dev/null +++ b/src/views/system/approval/approvalCommentDialog.vue @@ -0,0 +1,97 @@ + + + + + + diff --git a/src/views/system/approval/approvalDialog.vue b/src/views/system/approval/approvalDialog.vue new file mode 100644 index 0000000..7b3622e --- /dev/null +++ b/src/views/system/approval/approvalDialog.vue @@ -0,0 +1,171 @@ + + + + + + diff --git a/src/views/system/approval/index.vue b/src/views/system/approval/index.vue new file mode 100644 index 0000000..676a69e --- /dev/null +++ b/src/views/system/approval/index.vue @@ -0,0 +1,384 @@ + + + + diff --git a/public/config/config.json b/public/config/config.json index 15c0255..5407bac 100644 --- a/public/config/config.json +++ b/public/config/config.json @@ -53,5 +53,7 @@ "flvIFrameTimeDec": "这个参数是持续监测视频流I帧的超时时间,单位为s", "flvIFrameTime": "15", "appStreamUrlDesc": "代理流播放地址", - "appStreamUrl": "casic" + "appStreamUrl": "casic", + "useApprovalDesc": "是否使用审批", + "useApproval": "true" } diff --git a/src/api/system/approval.ts b/src/api/system/approval.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/api/system/approval.ts diff --git a/src/api/system/user.ts b/src/api/system/user.ts index 98261dc..11ca5a7 100644 --- a/src/api/system/user.ts +++ b/src/api/system/user.ts @@ -75,3 +75,31 @@ url: '/system/company', }) } + +// -------------------------------------------审批---------------------------------------- +// 新增审批接口 +export function approvalAdd(data: any) { + return request({ + url: '/sys/operation/add', + method: 'post', + data, + }) +} + +// 用户列表 +export function getApprovalList(params: object) { + return request({ + url: '/sys/operation/listPage', + method: 'get', + params, + }) +} + +// 同意/拒绝 +export function submitApproval(data: any) { + return request({ + url: '/sys/operation/audit', + method: 'post', + data, + }) +} diff --git a/src/assets/icons/icon-approval.svg b/src/assets/icons/icon-approval.svg new file mode 100644 index 0000000..5c0f8f6 --- /dev/null +++ b/src/assets/icons/icon-approval.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index d813c68..6ed4312 100644 --- a/src/main.ts +++ b/src/main.ts @@ -63,7 +63,8 @@ window.localStorage.setItem('appStreamUrl', result.data.appStreamUrl) // 划线,线的颜色 window.localStorage.setItem('lineColors', JSON.stringify(result.data.lineColors)) - + // 是否使用审批 + window.localStorage.setItem('useApproval', result.data.useApproval) const app = createApp(App) app.config.globalProperties.hasPerm = hasPermission app.config.globalProperties.buttonPerm = buttonPerm diff --git a/src/router/modules/system.ts b/src/router/modules/system.ts index 0e778b5..d096b3c 100644 --- a/src/router/modules/system.ts +++ b/src/router/modules/system.ts @@ -290,6 +290,31 @@ }, ], }, + { + path: '/approval', + component: Layout, + redirect: '/approval/index', + name: 'SysApproval', + meta: { + title: '操作审批', + icon: 'ep:key', + auth: '/sys/approval', + }, + children: [ + { + path: 'index', + name: 'SysApprovalIndex', + component: () => import('@/views/system/approval/index.vue'), + meta: { + title: '操作审批', + auth: '/sys/approval', + sidebar: false, + breadcrumb: false, + activeMenu: '/approval', + }, + }, + ], + }, // ], // }, ] diff --git a/src/views/system/approval/approval-interface.ts b/src/views/system/approval/approval-interface.ts new file mode 100644 index 0000000..b60f29b --- /dev/null +++ b/src/views/system/approval/approval-interface.ts @@ -0,0 +1,30 @@ +export interface IListQuery { + auditRemark: string // 审批备注 + jsonContext: string // 操作内容(json格式) + operationRemark: string // 操作备注 + operationType: string // 操作类型 + status: string // 状态 + title: string // 申请标题 + offset: number + limit: number +} + +export interface IList { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + sfId: string // 使用状态 + version: string // 版本号 + desc: string // 算法简述 + statusName: string // 使用状态 + selectData?: string // 算法选择 +} + +export interface IForm { + id: string // 主键 + modelName: string // 算法名称 + code: string // 算法id + version: string // 版本号 + remark: string // 算法简述 + path: string // zip包 +} diff --git a/src/views/system/approval/approvalCommentDialog.vue b/src/views/system/approval/approvalCommentDialog.vue new file mode 100644 index 0000000..6c105ef --- /dev/null +++ b/src/views/system/approval/approvalCommentDialog.vue @@ -0,0 +1,97 @@ + + + + + + diff --git a/src/views/system/approval/approvalDialog.vue b/src/views/system/approval/approvalDialog.vue new file mode 100644 index 0000000..7b3622e --- /dev/null +++ b/src/views/system/approval/approvalDialog.vue @@ -0,0 +1,171 @@ + + + + + + diff --git a/src/views/system/approval/index.vue b/src/views/system/approval/index.vue new file mode 100644 index 0000000..676a69e --- /dev/null +++ b/src/views/system/approval/index.vue @@ -0,0 +1,384 @@ + + + + diff --git a/src/views/system/dept/editDept.vue b/src/views/system/dept/editDept.vue index d79bcc2..029a9e5 100644 --- a/src/views/system/dept/editDept.vue +++ b/src/views/system/dept/editDept.vue @@ -7,6 +7,7 @@ import { addDept, getDeptTypeList, updateDept } from '@/api/system/dept' import useDictStore from '@/store/modules/dict' import DeptSelect from '@/components/DeptSelect/index.vue' +import { approvalAdd } from '@/api/system/user' // ----------------------- 以下是字段定义 emits props --------------------- const emits = defineEmits(['closeRefresh']) @@ -17,6 +18,7 @@ const textMap: { [key: string]: string } = { update: '编辑', create: '新增', + detail: '详情', } const defaultFormData: DeptInfo = { id: '', @@ -33,6 +35,7 @@ // 保存按钮加载状态 const btnLoading = ref(false) +const useApproval = ref('') // 是否走审批 // ---------------表单提交-------------------------------- // 表单对象 @@ -64,38 +67,79 @@ // 新增数据 function createData() { btnLoading.value = true - addDept(formData).then((res) => { - ElMessageBox.confirm( - '新增成功,是否继续新增?', - '提示', - { - confirmButtonText: '是', - cancelButtonText: '否', - type: 'info', - }, - ).then(() => { - resetForm() - }).catch(() => { - closeRefresh() - }).finally(() => { - clearBuffer() + if (useApproval.value !== 'true') { + addDept(formData).then((res) => { + ElMessageBox.confirm( + '新增成功,是否继续新增?', + '提示', + { + confirmButtonText: '是', + cancelButtonText: '否', + type: 'info', + }, + ).then(() => { + resetForm() + }).catch(() => { + closeRefresh() + }).finally(() => { + clearBuffer() + }) + btnLoading.value = false + }).catch((_) => { + btnLoading.value = false }) - btnLoading.value = false - }).catch((_) => { - btnLoading.value = false - }) + } + else { + const params = { + jsonContext: formData, // 操作内容 + operationRemark: '组织新增', // 操作备注 + title: '组织新增', // 申请标题 + status: '0', + operationType: 'dept_add', + id: '', + } + approvalAdd(params).then(() => { + ElMessage.success('审批提交成功,请耐心等待审批!') + resetForm() + closeRefresh() + }).catch(() => { + ElMessage.warning('审批提交失败,请重新申请或联系管理员!') + btnLoading.value = false + }) + } } // 更新数据 function updateData() { - updateDept(formData).then((res) => { - ElMessage.success('修改成功') - btnLoading.value = false - clearBuffer() - closeRefresh() - }).catch((_) => { // 异常情况,loading置为false - btnLoading.value = false - }) + if (useApproval.value !== 'true') { + updateDept(formData).then((res) => { + ElMessage.success('修改成功') + btnLoading.value = false + clearBuffer() + closeRefresh() + }).catch((_) => { // 异常情况,loading置为false + btnLoading.value = false + }) + } + else { + const params = { + jsonContext: formData, // 操作内容 + operationRemark: '组织修改', // 操作备注 + title: '组织修改', // 申请标题 + status: '0', + operationType: 'dept_update', + id: '', + } + approvalAdd(params).then(() => { + ElMessage.success('审批提交成功,请耐心等待审批!') + btnLoading.value = false + clearBuffer() + closeRefresh() + }).catch(() => { + ElMessage.warning('审批提交失败,请重新申请或联系管理员!') + btnLoading.value = false + }) + } } const dictStore = useDictStore() @@ -130,8 +174,9 @@ getDeptType() // ----------初始化、关闭对话框相关----------------- -function initDialog(dialogstatus: string, row: DeptInfo) { +function initDialog(dialogstatus: string, row: DeptInfo, useApprovalParam = '') { dialogStatus.value = dialogstatus + useApproval.value = useApprovalParam dialogVisible.value = true btnLoading.value = false if (dialogstatus === 'create') { @@ -140,7 +185,7 @@ dataFormRef.value?.clearValidate() }) } - else if (dialogstatus === 'update') { + else if (dialogstatus === 'update' || dialogstatus === 'detail') { formData.id = row.id formData.simpleName = row.simpleName formData.fullName = row.fullName @@ -184,22 +229,22 @@ - + - + - + - + @@ -207,21 +252,21 @@ - +