From 4517caea3314710ae2d239614e6bd436ffae003e Mon Sep 17 00:00:00 2001
From: wbc <942429426@qq.com>
Date: Fri, 7 Mar 2025 15:11:31 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E8=B5=84=E4=BA=A7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.eslintrc.cjs | 1 +
package.json | 3 +
.../allDelayPatrol/detailDrawer.vue | 2 +-
.../IO/delayPatrol/allDelayPatrol/index.vue | 10 +-
.../IO/delayPatrol/waitAudit/detailDrawer.vue | 2 +-
src/views/IO/delayPatrol/waitAudit/index.vue | 10 +-
.../delayPatrol/waitPatrol/detailDrawer.vue | 2 +-
src/views/IO/delayPatrol/waitPatrol/index.vue | 10 +-
.../IO/patrol/allPatrol/detailDrawer.vue | 2 +-
src/views/IO/patrol/allPatrol/index.vue | 8 +-
.../IO/patrol/patroling/detailDrawer.vue | 2 +-
src/views/IO/patrol/patroling/index.vue | 8 +-
src/views/IO/patrolReport/reportModal.vue | 7 +-
.../IO/workOrder/delayAudit/faultModal.vue | 20 ++
.../IO/workOrder/orderAudit/faultModal.vue | 13 +
.../IO/workOrder/orderSearch/faultModal.vue | 13 +
.../IO/workOrder/orderSend/faultModal.vue | 79 ++++++
.../calculation/calculationAudit/addModal.vue | 204 +++++++++++++++
src/views/calculation/calculationAudit/api.ts | 32 +++
.../calculation/calculationAudit/data.ts | 107 ++++++++
.../calculation/calculationAudit/index.vue | 56 ++++
.../calculation/calculationList/addModal.vue | 204 +++++++++++++++
src/views/calculation/calculationList/api.ts | 32 +++
src/views/calculation/calculationList/data.ts | 107 ++++++++
.../calculation/calculationList/index.vue | 56 ++++
src/views/document/addModal.vue | 108 ++++++++
src/views/document/api.ts | 32 +++
src/views/document/data.ts | 32 +++
src/views/document/detailDrawer.vue | 110 ++++++++
src/views/document/index.vue | 72 ++++++
src/views/notice/addModal.vue | 151 +++++++++++
src/views/notice/api.ts | 32 +++
src/views/notice/data.ts | 32 +++
src/views/notice/detailDrawer.vue | 117 +++++++++
src/views/notice/index.vue | 72 ++++++
.../project/IOCheck/checkManage/addModal.vue | 116 +++++++++
src/views/project/IOCheck/checkManage/api.ts | 58 +++++
src/views/project/IOCheck/checkManage/data.ts | 53 ++++
.../project/IOCheck/checkManage/index.vue | 70 +++++
.../project/IOCheck/checkRating/addModal.vue | 98 +++++++
src/views/project/IOCheck/checkRating/api.ts | 58 +++++
src/views/project/IOCheck/checkRating/data.ts | 37 +++
.../project/IOCheck/checkRating/index.vue | 79 ++++++
.../IOCheck/checkRating/ratingModal.vue | 193 ++++++++++++++
src/views/project/IOCheck/ratingSearch/api.ts | 58 +++++
.../project/IOCheck/ratingSearch/data.ts | 54 ++++
.../IOCheck/ratingSearch/detailDrawer.vue | 88 +++++++
.../project/IOCheck/ratingSearch/index.vue | 62 +++++
src/views/project/contractManage/addModal.vue | 204 +++++++++++++++
src/views/project/contractManage/api.ts | 58 +++++
src/views/project/contractManage/data.ts | 36 +++
.../project/contractManage/detailDrawer.vue | 164 ++++++++++++
src/views/project/contractManage/index.vue | 72 ++++++
src/views/project/projectManage/addModal.vue | 180 +++++++++++++
src/views/project/projectManage/api.ts | 58 +++++
src/views/project/projectManage/data.ts | 32 +++
.../project/projectManage/detailDrawer.vue | 163 ++++++++++++
src/views/project/projectManage/index.vue | 74 ++++++
src/views/project/serviceManage/addModal.vue | 220 ++++++++++++++++
.../project/serviceManage/addTypeModal.vue | 132 ++++++++++
src/views/project/serviceManage/api.ts | 58 +++++
src/views/project/serviceManage/data.ts | 52 ++++
src/views/project/serviceManage/index.vue | 191 ++++++++++++++
src/views/property/meterial/addModal.vue | 1 -
src/views/property/meterial/index.vue | 5 -
src/views/property/point/addModal.vue | 1 -
src/views/property/point/detailDrawer.vue | 2 +-
src/views/property/point/index.vue | 12 +-
src/views/property/point/pointModal.vue | 13 +
src/views/property/propertyList/addModal.vue | 242 ++++++++++++++++--
src/views/property/propertyList/index.vue | 5 -
71 files changed, 4675 insertions(+), 72 deletions(-)
create mode 100644 src/views/calculation/calculationAudit/addModal.vue
create mode 100644 src/views/calculation/calculationAudit/api.ts
create mode 100644 src/views/calculation/calculationAudit/data.ts
create mode 100644 src/views/calculation/calculationAudit/index.vue
create mode 100644 src/views/calculation/calculationList/addModal.vue
create mode 100644 src/views/calculation/calculationList/api.ts
create mode 100644 src/views/calculation/calculationList/data.ts
create mode 100644 src/views/calculation/calculationList/index.vue
create mode 100644 src/views/document/addModal.vue
create mode 100644 src/views/document/api.ts
create mode 100644 src/views/document/data.ts
create mode 100644 src/views/document/detailDrawer.vue
create mode 100644 src/views/document/index.vue
create mode 100644 src/views/notice/addModal.vue
create mode 100644 src/views/notice/api.ts
create mode 100644 src/views/notice/data.ts
create mode 100644 src/views/notice/detailDrawer.vue
create mode 100644 src/views/notice/index.vue
create mode 100644 src/views/project/IOCheck/checkManage/addModal.vue
create mode 100644 src/views/project/IOCheck/checkManage/api.ts
create mode 100644 src/views/project/IOCheck/checkManage/data.ts
create mode 100644 src/views/project/IOCheck/checkManage/index.vue
create mode 100644 src/views/project/IOCheck/checkRating/addModal.vue
create mode 100644 src/views/project/IOCheck/checkRating/api.ts
create mode 100644 src/views/project/IOCheck/checkRating/data.ts
create mode 100644 src/views/project/IOCheck/checkRating/index.vue
create mode 100644 src/views/project/IOCheck/checkRating/ratingModal.vue
create mode 100644 src/views/project/IOCheck/ratingSearch/api.ts
create mode 100644 src/views/project/IOCheck/ratingSearch/data.ts
create mode 100644 src/views/project/IOCheck/ratingSearch/detailDrawer.vue
create mode 100644 src/views/project/IOCheck/ratingSearch/index.vue
create mode 100644 src/views/project/contractManage/addModal.vue
create mode 100644 src/views/project/contractManage/api.ts
create mode 100644 src/views/project/contractManage/data.ts
create mode 100644 src/views/project/contractManage/detailDrawer.vue
create mode 100644 src/views/project/contractManage/index.vue
create mode 100644 src/views/project/projectManage/addModal.vue
create mode 100644 src/views/project/projectManage/api.ts
create mode 100644 src/views/project/projectManage/data.ts
create mode 100644 src/views/project/projectManage/detailDrawer.vue
create mode 100644 src/views/project/projectManage/index.vue
create mode 100644 src/views/project/serviceManage/addModal.vue
create mode 100644 src/views/project/serviceManage/addTypeModal.vue
create mode 100644 src/views/project/serviceManage/api.ts
create mode 100644 src/views/project/serviceManage/data.ts
create mode 100644 src/views/project/serviceManage/index.vue
diff --git a/.eslintrc.cjs b/.eslintrc.cjs
index 98fc3ef..864bb05 100644
--- a/.eslintrc.cjs
+++ b/.eslintrc.cjs
@@ -3,5 +3,6 @@ module.exports = {
extends: ['@vben'],
rules: {
'no-undef': 'off',
+ "vue/no-v-html":"off"
},
};
diff --git a/package.json b/package.json
index b9b3a04..42cb275 100644
--- a/package.json
+++ b/package.json
@@ -68,6 +68,7 @@
}
},
"dependencies": {
+ "@amap/amap-jsapi-loader": "^1.0.1",
"@ant-design/icons-vue": "7.0.1",
"@iconify/iconify": "3.1.1",
"@logicflow/core": "1.2.26",
@@ -76,6 +77,8 @@
"@vben/hooks": "workspace:*",
"@vue/shared": "3.4.37",
"@vueuse/core": "^10.11.1",
+ "@wangeditor/editor": "^5.1.23",
+ "@wangeditor/editor-for-vue": "^5.1.12",
"@zxcvbn-ts/core": "3.0.4",
"ant-design-vue": "4.2.6",
"axios": "1.7.4",
diff --git a/src/views/IO/delayPatrol/allDelayPatrol/detailDrawer.vue b/src/views/IO/delayPatrol/allDelayPatrol/detailDrawer.vue
index 1c816ea..6ff9bbd 100644
--- a/src/views/IO/delayPatrol/allDelayPatrol/detailDrawer.vue
+++ b/src/views/IO/delayPatrol/allDelayPatrol/detailDrawer.vue
@@ -2,7 +2,7 @@
- 上报
+ 上报
-
+
+ 详情
+
@@ -20,7 +22,7 @@
import detailDrawer from './detailDrawer.vue';
import { ref } from 'vue';
- defineOptions({ name: 'Patroling' });
+ defineOptions({ name: 'AllDelayPatrol' });
const [registerTable] = useTable({
rowSelection: {
@@ -52,7 +54,7 @@
//抽屉
const detailDrawerRef = ref();
- const goDetail = () => {
+ const handleDetail = () => {
detailDrawerRef.value.showDrawer();
};
diff --git a/src/views/IO/delayPatrol/waitAudit/detailDrawer.vue b/src/views/IO/delayPatrol/waitAudit/detailDrawer.vue
index 6909b2c..87da5a9 100644
--- a/src/views/IO/delayPatrol/waitAudit/detailDrawer.vue
+++ b/src/views/IO/delayPatrol/waitAudit/detailDrawer.vue
@@ -2,7 +2,7 @@
- 上报
+ 上报
-
+
+ 详情
+
@@ -46,7 +48,7 @@
import detailDrawer from './detailDrawer.vue';
import { ref } from 'vue';
- defineOptions({ name: 'Patroling' });
+ defineOptions({ name: 'WaitAudit' });
const [registerTable, { reload }] = useTable({
rowSelection: {
@@ -152,7 +154,7 @@
};
//抽屉
const detailDrawerRef = ref();
- const goDetail = () => {
+ const handleDetail = () => {
detailDrawerRef.value.showDrawer();
};
diff --git a/src/views/IO/delayPatrol/waitPatrol/detailDrawer.vue b/src/views/IO/delayPatrol/waitPatrol/detailDrawer.vue
index 1c816ea..6ff9bbd 100644
--- a/src/views/IO/delayPatrol/waitPatrol/detailDrawer.vue
+++ b/src/views/IO/delayPatrol/waitPatrol/detailDrawer.vue
@@ -2,7 +2,7 @@
- 上报
+ 上报
-
+
+ 详情
+
@@ -20,7 +22,7 @@
import detailDrawer from './detailDrawer.vue';
import { ref } from 'vue';
- defineOptions({ name: 'Patroling' });
+ defineOptions({ name: 'WaitPatrol' });
const [registerTable] = useTable({
rowSelection: {
@@ -52,7 +54,7 @@
//抽屉
const detailDrawerRef = ref();
- const goDetail = () => {
+ const handleDetail = () => {
detailDrawerRef.value.showDrawer();
};
diff --git a/src/views/IO/patrol/allPatrol/detailDrawer.vue b/src/views/IO/patrol/allPatrol/detailDrawer.vue
index a5e0d9d..8d4e52b 100644
--- a/src/views/IO/patrol/allPatrol/detailDrawer.vue
+++ b/src/views/IO/patrol/allPatrol/detailDrawer.vue
@@ -2,7 +2,7 @@
生成计划
- 重置计划
+ 重置计划
-
+
+ 详情
+
@@ -62,7 +64,7 @@
const go = useGo();
//抽屉
const detailDrawerRef = ref();
- const goDetail = () => {
+ const handleDetail = () => {
detailDrawerRef.value.showDrawer();
};
diff --git a/src/views/IO/patrol/patroling/detailDrawer.vue b/src/views/IO/patrol/patroling/detailDrawer.vue
index 5cd6c53..cafffab 100644
--- a/src/views/IO/patrol/patroling/detailDrawer.vue
+++ b/src/views/IO/patrol/patroling/detailDrawer.vue
@@ -2,7 +2,7 @@
生成计划
- 重置计划
+ 重置计划
-
+
+ 详情
+
@@ -59,7 +61,7 @@
}
//抽屉
const detailDrawerRef = ref();
- const goDetail = () => {
+ const handleDetail = () => {
detailDrawerRef.value.showDrawer();
};
// 前往审批记录页面
diff --git a/src/views/IO/patrolReport/reportModal.vue b/src/views/IO/patrolReport/reportModal.vue
index 2c64df6..0911084 100644
--- a/src/views/IO/patrolReport/reportModal.vue
+++ b/src/views/IO/patrolReport/reportModal.vue
@@ -57,10 +57,10 @@
- Upload
+ 上传
@@ -72,7 +72,7 @@
v-model:file-list="inspectionPhotoList"
action="https://www.mocky.io/v2/5cc8019d300000980a055e76"
>
- Upload
+ 上传
@@ -95,7 +95,6 @@
export default {
setup() {
- //文件列表
const title = ref('新增前端巡检日报');
const attachmentList = ref([]);
const inspectionPhotoList = ref([]);
diff --git a/src/views/IO/workOrder/delayAudit/faultModal.vue b/src/views/IO/workOrder/delayAudit/faultModal.vue
index d6ddd87..f1f3103 100644
--- a/src/views/IO/workOrder/delayAudit/faultModal.vue
+++ b/src/views/IO/workOrder/delayAudit/faultModal.vue
@@ -86,6 +86,25 @@
+
+
+
+
+
+
+
+
+
+
+
+ 上传
+
+
+
+
@@ -133,6 +152,7 @@
institution: '',
faultLocation: '',
faultDescription: '',
+ faultImg: [],
isDispatched: null,
maintenanceRequirement: '',
dispatchOpinion: '',
diff --git a/src/views/IO/workOrder/orderAudit/faultModal.vue b/src/views/IO/workOrder/orderAudit/faultModal.vue
index d6ddd87..853be94 100644
--- a/src/views/IO/workOrder/orderAudit/faultModal.vue
+++ b/src/views/IO/workOrder/orderAudit/faultModal.vue
@@ -86,6 +86,18 @@
+
+
+
+
+ 上传
+
+
+
+
@@ -133,6 +145,7 @@
institution: '',
faultLocation: '',
faultDescription: '',
+ faultImg: [],
isDispatched: null,
maintenanceRequirement: '',
dispatchOpinion: '',
diff --git a/src/views/IO/workOrder/orderSearch/faultModal.vue b/src/views/IO/workOrder/orderSearch/faultModal.vue
index d6ddd87..853be94 100644
--- a/src/views/IO/workOrder/orderSearch/faultModal.vue
+++ b/src/views/IO/workOrder/orderSearch/faultModal.vue
@@ -86,6 +86,18 @@
+
+
+
+
+ 上传
+
+
+
+
@@ -133,6 +145,7 @@
institution: '',
faultLocation: '',
faultDescription: '',
+ faultImg: [],
isDispatched: null,
maintenanceRequirement: '',
dispatchOpinion: '',
diff --git a/src/views/IO/workOrder/orderSend/faultModal.vue b/src/views/IO/workOrder/orderSend/faultModal.vue
index 5aa4d5b..f924ae7 100644
--- a/src/views/IO/workOrder/orderSend/faultModal.vue
+++ b/src/views/IO/workOrder/orderSend/faultModal.vue
@@ -86,6 +86,18 @@
+
+
+
+
+ 上传
+
+
+
+
@@ -112,12 +124,18 @@
+
+
+
+
+
+
+
diff --git a/src/views/calculation/calculationAudit/api.ts b/src/views/calculation/calculationAudit/api.ts
new file mode 100644
index 0000000..4727d35
--- /dev/null
+++ b/src/views/calculation/calculationAudit/api.ts
@@ -0,0 +1,32 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/calculation/calculationAudit/data.ts b/src/views/calculation/calculationAudit/data.ts
new file mode 100644
index 0000000..9b0f5a9
--- /dev/null
+++ b/src/views/calculation/calculationAudit/data.ts
@@ -0,0 +1,107 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'calculationCode',
+ label: '结算编号',
+ component: 'Input',
+ componentProps: {
+ placeholder: '请输入',
+ },
+ },
+ {
+ field: 'ioCompany',
+ label: '运维单位',
+ component: 'Select',
+ componentProps: {
+ options: [
+ {
+ value: '1',
+ label: '2323',
+ },
+ {
+ value: '2',
+ label: '2323',
+ },
+ {
+ value: '3',
+ label: '2323',
+ },
+ ],
+ },
+ },
+ {
+ field: 'statusKey',
+ label: '状态搜素',
+ component: 'Select',
+ componentProps: {
+ options: [
+ {
+ value: '1',
+ label: '2323',
+ },
+ {
+ value: '2',
+ label: '2323',
+ },
+ {
+ value: '3',
+ label: '2323',
+ },
+ ],
+ },
+ },
+ {
+ field: 'calculationRange',
+ label: '结算范围',
+ component: 'RangePicker',
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '编号',
+ dataIndex: 'code',
+ },
+ {
+ title: '结算日期',
+ dataIndex: 'calculaitionDate',
+ },
+ {
+ title: '开始日期',
+ dataIndex: 'startDate',
+ },
+ {
+ title: '结束日期',
+ dataIndex: 'endDate',
+ },
+ {
+ title: '结算总价',
+ dataIndex: 'calculationSum',
+ },
+ {
+ title: '材料费用',
+ dataIndex: 'meterialCost',
+ },
+ {
+ title: '超期接单扣款',
+ dataIndex: 'outDateOrderCost',
+ },
+ {
+ title: '超期处理扣款',
+ dataIndex: 'outDateHandleCost',
+ },
+ {
+ title: '其他扣款',
+ dataIndex: 'otherCost',
+ },
+ {
+ title: '所属单位',
+ dataIndex: 'unit',
+ },
+ {
+ title: '当前状态',
+ dataIndex: 'status',
+ },
+];
diff --git a/src/views/calculation/calculationAudit/index.vue b/src/views/calculation/calculationAudit/index.vue
new file mode 100644
index 0000000..1a20172
--- /dev/null
+++ b/src/views/calculation/calculationAudit/index.vue
@@ -0,0 +1,56 @@
+
+
+
+
+ 审核
+
+
+
+
+
+
+
+
+
diff --git a/src/views/calculation/calculationList/addModal.vue b/src/views/calculation/calculationList/addModal.vue
new file mode 100644
index 0000000..47bc749
--- /dev/null
+++ b/src/views/calculation/calculationList/addModal.vue
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 上传
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/calculation/calculationList/api.ts b/src/views/calculation/calculationList/api.ts
new file mode 100644
index 0000000..4727d35
--- /dev/null
+++ b/src/views/calculation/calculationList/api.ts
@@ -0,0 +1,32 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/calculation/calculationList/data.ts b/src/views/calculation/calculationList/data.ts
new file mode 100644
index 0000000..9b0f5a9
--- /dev/null
+++ b/src/views/calculation/calculationList/data.ts
@@ -0,0 +1,107 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'calculationCode',
+ label: '结算编号',
+ component: 'Input',
+ componentProps: {
+ placeholder: '请输入',
+ },
+ },
+ {
+ field: 'ioCompany',
+ label: '运维单位',
+ component: 'Select',
+ componentProps: {
+ options: [
+ {
+ value: '1',
+ label: '2323',
+ },
+ {
+ value: '2',
+ label: '2323',
+ },
+ {
+ value: '3',
+ label: '2323',
+ },
+ ],
+ },
+ },
+ {
+ field: 'statusKey',
+ label: '状态搜素',
+ component: 'Select',
+ componentProps: {
+ options: [
+ {
+ value: '1',
+ label: '2323',
+ },
+ {
+ value: '2',
+ label: '2323',
+ },
+ {
+ value: '3',
+ label: '2323',
+ },
+ ],
+ },
+ },
+ {
+ field: 'calculationRange',
+ label: '结算范围',
+ component: 'RangePicker',
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '编号',
+ dataIndex: 'code',
+ },
+ {
+ title: '结算日期',
+ dataIndex: 'calculaitionDate',
+ },
+ {
+ title: '开始日期',
+ dataIndex: 'startDate',
+ },
+ {
+ title: '结束日期',
+ dataIndex: 'endDate',
+ },
+ {
+ title: '结算总价',
+ dataIndex: 'calculationSum',
+ },
+ {
+ title: '材料费用',
+ dataIndex: 'meterialCost',
+ },
+ {
+ title: '超期接单扣款',
+ dataIndex: 'outDateOrderCost',
+ },
+ {
+ title: '超期处理扣款',
+ dataIndex: 'outDateHandleCost',
+ },
+ {
+ title: '其他扣款',
+ dataIndex: 'otherCost',
+ },
+ {
+ title: '所属单位',
+ dataIndex: 'unit',
+ },
+ {
+ title: '当前状态',
+ dataIndex: 'status',
+ },
+];
diff --git a/src/views/calculation/calculationList/index.vue b/src/views/calculation/calculationList/index.vue
new file mode 100644
index 0000000..f0fcb09
--- /dev/null
+++ b/src/views/calculation/calculationList/index.vue
@@ -0,0 +1,56 @@
+
+
+
+
+ 详情
+
+
+
+
+
+
+
+
+
diff --git a/src/views/document/addModal.vue b/src/views/document/addModal.vue
new file mode 100644
index 0000000..0ebb525
--- /dev/null
+++ b/src/views/document/addModal.vue
@@ -0,0 +1,108 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 启用
+ 禁用
+
+
+
+
+
+
+
+
+ 上传
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/document/api.ts b/src/views/document/api.ts
new file mode 100644
index 0000000..4727d35
--- /dev/null
+++ b/src/views/document/api.ts
@@ -0,0 +1,32 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/document/data.ts b/src/views/document/data.ts
new file mode 100644
index 0000000..cca0604
--- /dev/null
+++ b/src/views/document/data.ts
@@ -0,0 +1,32 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'ducumentName',
+ label: '文档名称',
+ component: 'Input',
+ componentProps: {
+ placeholder: '请输入',
+ },
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '文档名称',
+ dataIndex: 'ducumentName',
+ },
+ {
+ title: '类型',
+ dataIndex: 'type',
+ },
+ {
+ title: '状态',
+ dataIndex: 'status',
+ },
+ {
+ title: '创建时间',
+ dataIndex: 'createTime',
+ },
+];
diff --git a/src/views/document/detailDrawer.vue b/src/views/document/detailDrawer.vue
new file mode 100644
index 0000000..0e372b9
--- /dev/null
+++ b/src/views/document/detailDrawer.vue
@@ -0,0 +1,110 @@
+
+
+
+
+
+
+
+
+ 名称:{{ detail.ducumentName }}
+
+
+
+
+ 类型:{{ detail.type }}
+
+
+
+
+ 状态:{{ detail.status }}
+
+
+
+
+ 录入时间:{{ detail.createTime }}
+
+
+
+
+ 附件:{{ detail.attachment }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/document/index.vue b/src/views/document/index.vue
new file mode 100644
index 0000000..cd854b0
--- /dev/null
+++ b/src/views/document/index.vue
@@ -0,0 +1,72 @@
+
+
+
+
+ 新增
+ 详情
+
+
+
+
+ 详情
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/notice/addModal.vue b/src/views/notice/addModal.vue
new file mode 100644
index 0000000..bca7a00
--- /dev/null
+++ b/src/views/notice/addModal.vue
@@ -0,0 +1,151 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 上传
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/notice/api.ts b/src/views/notice/api.ts
new file mode 100644
index 0000000..4727d35
--- /dev/null
+++ b/src/views/notice/api.ts
@@ -0,0 +1,32 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/notice/data.ts b/src/views/notice/data.ts
new file mode 100644
index 0000000..7b92a8c
--- /dev/null
+++ b/src/views/notice/data.ts
@@ -0,0 +1,32 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'title',
+ label: '标题',
+ component: 'Input',
+ componentProps: {
+ placeholder: '请输入',
+ },
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '标题',
+ dataIndex: 'title',
+ },
+ {
+ title: '类型',
+ dataIndex: 'type',
+ },
+ {
+ title: '发布日期',
+ dataIndex: 'createTime',
+ },
+ {
+ title: '操作人',
+ dataIndex: 'handler',
+ },
+];
diff --git a/src/views/notice/detailDrawer.vue b/src/views/notice/detailDrawer.vue
new file mode 100644
index 0000000..f1233d7
--- /dev/null
+++ b/src/views/notice/detailDrawer.vue
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+ 标题:{{ detail.title }}
+
+
+
+
+ 类型:{{ detail.type }}
+
+
+ 发布人:{{ detail.handler }}
+
+
+
+
+ 发布日期:{{ detail.createTime }}
+
+
+ 项目:{{ detail.projectName }}
+
+
+
+
+
+
+
+
+
+ 附件:{{ detail.attachment }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/notice/index.vue b/src/views/notice/index.vue
new file mode 100644
index 0000000..cd854b0
--- /dev/null
+++ b/src/views/notice/index.vue
@@ -0,0 +1,72 @@
+
+
+
+
+ 新增
+ 详情
+
+
+
+
+ 详情
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/IOCheck/checkManage/addModal.vue b/src/views/project/IOCheck/checkManage/addModal.vue
new file mode 100644
index 0000000..bb6b063
--- /dev/null
+++ b/src/views/project/IOCheck/checkManage/addModal.vue
@@ -0,0 +1,116 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/IOCheck/checkManage/api.ts b/src/views/project/IOCheck/checkManage/api.ts
new file mode 100644
index 0000000..90a5083
--- /dev/null
+++ b/src/views/project/IOCheck/checkManage/api.ts
@@ -0,0 +1,58 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+import { Dayjs } from 'dayjs';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export interface Leave {
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark: string;
+ processInstanceVo?: any;
+ dateTime?: [string, string] | [Dayjs, Dayjs];
+}
+
+export interface Resp {
+ createDept: number;
+ createBy: number;
+ createTime: string;
+ updateBy: number;
+ updateTime: string;
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark?: any;
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/project/IOCheck/checkManage/data.ts b/src/views/project/IOCheck/checkManage/data.ts
new file mode 100644
index 0000000..353c226
--- /dev/null
+++ b/src/views/project/IOCheck/checkManage/data.ts
@@ -0,0 +1,53 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'type',
+ label: '考核类型',
+ component: 'Select',
+ componentProps: {
+ options: [
+ {
+ value: '1',
+ label: '2323',
+ },
+ {
+ value: '2',
+ label: '2323',
+ },
+ {
+ value: '3',
+ label: '2323',
+ },
+ ],
+ },
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '类型',
+ dataIndex: 'type',
+ },
+ {
+ title: '评分大类',
+ dataIndex: 'langeRating',
+ },
+ {
+ title: '评分小类',
+ dataIndex: 'smallRating',
+ },
+ {
+ title: '分值',
+ dataIndex: 'rating',
+ },
+ {
+ title: '扣分标准',
+ dataIndex: 'subStandards',
+ },
+ {
+ title: '创建日期',
+ dataIndex: 'createDate',
+ },
+];
diff --git a/src/views/project/IOCheck/checkManage/index.vue b/src/views/project/IOCheck/checkManage/index.vue
new file mode 100644
index 0000000..1ffdeb5
--- /dev/null
+++ b/src/views/project/IOCheck/checkManage/index.vue
@@ -0,0 +1,70 @@
+
+
+
+
+ 新增
+ 导入
+ 导出
+
+
+
+ 编辑
+ 删除
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/IOCheck/checkRating/addModal.vue b/src/views/project/IOCheck/checkRating/addModal.vue
new file mode 100644
index 0000000..f582424
--- /dev/null
+++ b/src/views/project/IOCheck/checkRating/addModal.vue
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/IOCheck/checkRating/api.ts b/src/views/project/IOCheck/checkRating/api.ts
new file mode 100644
index 0000000..90a5083
--- /dev/null
+++ b/src/views/project/IOCheck/checkRating/api.ts
@@ -0,0 +1,58 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+import { Dayjs } from 'dayjs';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export interface Leave {
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark: string;
+ processInstanceVo?: any;
+ dateTime?: [string, string] | [Dayjs, Dayjs];
+}
+
+export interface Resp {
+ createDept: number;
+ createBy: number;
+ createTime: string;
+ updateBy: number;
+ updateTime: string;
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark?: any;
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/project/IOCheck/checkRating/data.ts b/src/views/project/IOCheck/checkRating/data.ts
new file mode 100644
index 0000000..850d826
--- /dev/null
+++ b/src/views/project/IOCheck/checkRating/data.ts
@@ -0,0 +1,37 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'checkTime',
+ label: '考核时间',
+ component: 'DatePicker',
+ componentProps: {
+ format: 'YYYY-MM-DD',
+ valueFormat: 'YYYY-MM-DD',
+ },
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '运维单位',
+ dataIndex: 'ioUnit',
+ },
+ {
+ title: '考核项目',
+ dataIndex: 'checkProject',
+ },
+ {
+ title: '考核名称',
+ dataIndex: 'checkName',
+ },
+ {
+ title: '考核时间',
+ dataIndex: 'checkTime',
+ },
+ {
+ title: '考核得分',
+ dataIndex: 'checkRating',
+ },
+];
diff --git a/src/views/project/IOCheck/checkRating/index.vue b/src/views/project/IOCheck/checkRating/index.vue
new file mode 100644
index 0000000..b83ee87
--- /dev/null
+++ b/src/views/project/IOCheck/checkRating/index.vue
@@ -0,0 +1,79 @@
+
+
+
+
+ 新增
+ 考核项编辑
+ 评分
+
+
+
+ 编辑
+ 删除
+ 评分
+ 查看评分
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/IOCheck/checkRating/ratingModal.vue b/src/views/project/IOCheck/checkRating/ratingModal.vue
new file mode 100644
index 0000000..1aa84f6
--- /dev/null
+++ b/src/views/project/IOCheck/checkRating/ratingModal.vue
@@ -0,0 +1,193 @@
+
+
+
+
+
+ 评分
+
+
+
+
+
+
+
+ {{ totals.sumRating }}
+
+
+ {{ totals.subRating }}
+
+
+ {{ totals.currentRating }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/IOCheck/ratingSearch/api.ts b/src/views/project/IOCheck/ratingSearch/api.ts
new file mode 100644
index 0000000..90a5083
--- /dev/null
+++ b/src/views/project/IOCheck/ratingSearch/api.ts
@@ -0,0 +1,58 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+import { Dayjs } from 'dayjs';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export interface Leave {
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark: string;
+ processInstanceVo?: any;
+ dateTime?: [string, string] | [Dayjs, Dayjs];
+}
+
+export interface Resp {
+ createDept: number;
+ createBy: number;
+ createTime: string;
+ updateBy: number;
+ updateTime: string;
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark?: any;
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/project/IOCheck/ratingSearch/data.ts b/src/views/project/IOCheck/ratingSearch/data.ts
new file mode 100644
index 0000000..c9dd418
--- /dev/null
+++ b/src/views/project/IOCheck/ratingSearch/data.ts
@@ -0,0 +1,54 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'projectName',
+ label: '项目名称',
+ component: 'Select',
+ componentProps: {
+ options: [
+ {
+ value: '1',
+ label: '2323',
+ },
+ {
+ value: '2',
+ label: '2323',
+ },
+ {
+ value: '3',
+ label: '2323',
+ },
+ ],
+ },
+ },
+ {
+ field: 'checkTime',
+ label: '考核时间',
+ component: 'DatePicker',
+ componentProps: {
+ format: 'YYYY-MM-DD',
+ valueFormat: 'YYYY-MM-DD',
+ },
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '运维单位',
+ dataIndex: 'ioUnit',
+ },
+ {
+ title: '考核项目',
+ dataIndex: 'checkProject',
+ },
+ {
+ title: '考核时间',
+ dataIndex: 'checkTime',
+ },
+ {
+ title: '分值',
+ dataIndex: 'rating',
+ },
+];
diff --git a/src/views/project/IOCheck/ratingSearch/detailDrawer.vue b/src/views/project/IOCheck/ratingSearch/detailDrawer.vue
new file mode 100644
index 0000000..9663cce
--- /dev/null
+++ b/src/views/project/IOCheck/ratingSearch/detailDrawer.vue
@@ -0,0 +1,88 @@
+
+
+
+
+
+
+
diff --git a/src/views/project/IOCheck/ratingSearch/index.vue b/src/views/project/IOCheck/ratingSearch/index.vue
new file mode 100644
index 0000000..66ad00e
--- /dev/null
+++ b/src/views/project/IOCheck/ratingSearch/index.vue
@@ -0,0 +1,62 @@
+
+
+
+
+ 导出
+ 详情
+
+
+
+ 详情
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/contractManage/addModal.vue b/src/views/project/contractManage/addModal.vue
new file mode 100644
index 0000000..47bc749
--- /dev/null
+++ b/src/views/project/contractManage/addModal.vue
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 上传
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/contractManage/api.ts b/src/views/project/contractManage/api.ts
new file mode 100644
index 0000000..90a5083
--- /dev/null
+++ b/src/views/project/contractManage/api.ts
@@ -0,0 +1,58 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+import { Dayjs } from 'dayjs';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export interface Leave {
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark: string;
+ processInstanceVo?: any;
+ dateTime?: [string, string] | [Dayjs, Dayjs];
+}
+
+export interface Resp {
+ createDept: number;
+ createBy: number;
+ createTime: string;
+ updateBy: number;
+ updateTime: string;
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark?: any;
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/project/contractManage/data.ts b/src/views/project/contractManage/data.ts
new file mode 100644
index 0000000..6a31fbf
--- /dev/null
+++ b/src/views/project/contractManage/data.ts
@@ -0,0 +1,36 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'contractName',
+ label: '合同名称',
+ component: 'Input',
+ componentProps: {
+ placeholder: '请输入',
+ },
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '合同编号',
+ dataIndex: 'contractCode',
+ },
+ {
+ title: '合同名称',
+ dataIndex: 'contractName',
+ },
+ {
+ title: '合同金额(万元)',
+ dataIndex: 'contractPrice',
+ },
+ {
+ title: '甲方单位',
+ dataIndex: 'partyA',
+ },
+ {
+ title: '乙方单位',
+ dataIndex: 'partyB',
+ },
+];
diff --git a/src/views/project/contractManage/detailDrawer.vue b/src/views/project/contractManage/detailDrawer.vue
new file mode 100644
index 0000000..3658414
--- /dev/null
+++ b/src/views/project/contractManage/detailDrawer.vue
@@ -0,0 +1,164 @@
+
+
+
+
+
+
+
+
+ 合同编号:{{ detail.contractCode }}
+
+
+
+
+ 合同名称:{{ detail.contractName }}
+
+
+
+
+ 合同类型:{{ detail.contractType }}
+
+
+
+
+ 甲方单位:{{ detail.partyA }}
+
+
+ 甲方代表:{{ detail.partyAPerson }}
+
+
+
+
+ 乙方单位:{{ detail.partyB }}
+
+
+ 乙方代表:{{ detail.partyBPerson }}
+
+
+
+
+ 合同金额:{{ detail.contractPrice }}
+
+
+ 签订日期:{{ detail.signDate }}
+
+
+
+
+ 开始日期:{{ detail.startDate }}
+
+
+ 结束日期:{{ detail.endDate }}
+
+
+
+
+ 关联合同数量:{{ detail.relatedContractAmount }}
+
+
+
+
+ 合同内容:{{ detail.contractContent }}
+
+
+
+
+ 合同备注:{{ detail.remark }}
+
+
+
+
+ 合同附件:{{ detail.attachment }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/contractManage/index.vue b/src/views/project/contractManage/index.vue
new file mode 100644
index 0000000..8f8c330
--- /dev/null
+++ b/src/views/project/contractManage/index.vue
@@ -0,0 +1,72 @@
+
+
+
+
+ 新增
+ 详情
+
+
+
+
+ 详情
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/projectManage/addModal.vue b/src/views/project/projectManage/addModal.vue
new file mode 100644
index 0000000..8ac1c76
--- /dev/null
+++ b/src/views/project/projectManage/addModal.vue
@@ -0,0 +1,180 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 上传
+
+
+
+
+
+
+
+
+ 上传
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/projectManage/api.ts b/src/views/project/projectManage/api.ts
new file mode 100644
index 0000000..90a5083
--- /dev/null
+++ b/src/views/project/projectManage/api.ts
@@ -0,0 +1,58 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+import { Dayjs } from 'dayjs';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export interface Leave {
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark: string;
+ processInstanceVo?: any;
+ dateTime?: [string, string] | [Dayjs, Dayjs];
+}
+
+export interface Resp {
+ createDept: number;
+ createBy: number;
+ createTime: string;
+ updateBy: number;
+ updateTime: string;
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark?: any;
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/project/projectManage/data.ts b/src/views/project/projectManage/data.ts
new file mode 100644
index 0000000..bb86d76
--- /dev/null
+++ b/src/views/project/projectManage/data.ts
@@ -0,0 +1,32 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'projectName',
+ label: '项目名称',
+ component: 'Input',
+ componentProps: {
+ placeholder: '请输入',
+ },
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '项目编号',
+ dataIndex: 'projectCode',
+ },
+ {
+ title: '项目名称',
+ dataIndex: 'projectName',
+ },
+ {
+ title: '项目类别',
+ dataIndex: 'projectType',
+ },
+ {
+ title: '项目概要',
+ dataIndex: 'projectContent',
+ },
+];
diff --git a/src/views/project/projectManage/detailDrawer.vue b/src/views/project/projectManage/detailDrawer.vue
new file mode 100644
index 0000000..91cb708
--- /dev/null
+++ b/src/views/project/projectManage/detailDrawer.vue
@@ -0,0 +1,163 @@
+
+
+
+
+
+
+
+
+ 项目名称:{{ detail.projectName }}
+
+
+
+
+ 所属合同:{{ detail.contractName }}
+
+
+
+
+ 项目编号:{{ detail.projectCode }}
+
+
+
+
+ 项目类别:{{ detail.projectType }}
+
+
+
+
+ 项目故障大类:{{ detail.faultCategory }}
+
+
+
+
+ 接单超期时间:{{ detail.orderTakingOverTime }}
+
+
+
+
+ 接单超期扣款:{{ detail.orderTakingCost }}
+
+
+
+
+ 处理超期时间:{{ detail.handleOverTime }}
+
+
+
+
+ 处理超期扣款:{{ detail.handleCost }}
+
+
+
+
+ 关联项目数量:{{ detail.relatedProjectAmount }}
+
+
+
+
+ 项目概要:{{ detail.projectContent }}
+
+
+
+
+ 项目图标:{{ detail.icon }}
+
+
+
+
+ 项目附件:{{ detail.attachment }}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/projectManage/index.vue b/src/views/project/projectManage/index.vue
new file mode 100644
index 0000000..8dc404e
--- /dev/null
+++ b/src/views/project/projectManage/index.vue
@@ -0,0 +1,74 @@
+
+
+
+
+ 新增
+ 详情
+ 配置人员
+ 配置服务目录
+
+
+
+
+ 详情
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/serviceManage/addModal.vue b/src/views/project/serviceManage/addModal.vue
new file mode 100644
index 0000000..3b37d5d
--- /dev/null
+++ b/src/views/project/serviceManage/addModal.vue
@@ -0,0 +1,220 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 次
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/serviceManage/addTypeModal.vue b/src/views/project/serviceManage/addTypeModal.vue
new file mode 100644
index 0000000..b164fc9
--- /dev/null
+++ b/src/views/project/serviceManage/addTypeModal.vue
@@ -0,0 +1,132 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/project/serviceManage/api.ts b/src/views/project/serviceManage/api.ts
new file mode 100644
index 0000000..90a5083
--- /dev/null
+++ b/src/views/project/serviceManage/api.ts
@@ -0,0 +1,58 @@
+import { ID, IDS, PageQuery, commonExport } from '@/api/base';
+import { defHttp } from '@/utils/http/axios';
+import { Dayjs } from 'dayjs';
+
+enum Api {
+ root = '/workflow/leave',
+ list = '/workflow/leave/list',
+ export = '/workflow/leave/export',
+}
+
+export interface Leave {
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark: string;
+ processInstanceVo?: any;
+ dateTime?: [string, string] | [Dayjs, Dayjs];
+}
+
+export interface Resp {
+ createDept: number;
+ createBy: number;
+ createTime: string;
+ updateBy: number;
+ updateTime: string;
+ id: string;
+ leaveType: string;
+ startDate: string;
+ endDate: string;
+ leaveDays: number;
+ remark?: any;
+}
+
+export function list(params?: PageQuery) {
+ return defHttp.get({ url: Api.list, params });
+}
+
+export function exportExcel(data: any) {
+ return commonExport(Api.export, data);
+}
+
+export function getInfo(id: ID) {
+ return defHttp.get({ url: `${Api.root}/${id}` });
+}
+
+export function add(data: any) {
+ return defHttp.post({ url: Api.root, data });
+}
+
+export function update(data: any) {
+ return defHttp.put({ url: Api.root, data });
+}
+
+export function removeByIds(ids: IDS) {
+ return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
+}
diff --git a/src/views/project/serviceManage/data.ts b/src/views/project/serviceManage/data.ts
new file mode 100644
index 0000000..65a7391
--- /dev/null
+++ b/src/views/project/serviceManage/data.ts
@@ -0,0 +1,52 @@
+import { BasicColumn } from '@/components/Table';
+import { FormSchema } from '@/components/Form';
+
+export const formSchemas: FormSchema[] = [
+ {
+ field: 'serviceContent',
+ label: '服务内容',
+ component: 'Input',
+ componentProps: {
+ placeholder: '请输入',
+ },
+ },
+];
+
+export const columns: BasicColumn[] = [
+ {
+ title: '交付内容',
+ dataIndex: 'deliverContent',
+ },
+ {
+ title: '服务项目',
+ dataIndex: 'serviceProject',
+ },
+ {
+ title: '代码',
+ dataIndex: 'code',
+ },
+ {
+ title: '服务内容',
+ dataIndex: 'serviceContent',
+ },
+ {
+ title: '相应级别',
+ dataIndex: 'responseLevel',
+ },
+ {
+ title: '服务频率',
+ dataIndex: 'frequency',
+ },
+ {
+ title: '请求类型',
+ dataIndex: 'responseType',
+ },
+ {
+ title: '交付方式',
+ dataIndex: 'deliverType',
+ },
+ {
+ title: '交付成果',
+ dataIndex: 'deliverResult',
+ },
+];
diff --git a/src/views/project/serviceManage/index.vue b/src/views/project/serviceManage/index.vue
new file mode 100644
index 0000000..42cdb6b
--- /dev/null
+++ b/src/views/project/serviceManage/index.vue
@@ -0,0 +1,191 @@
+
+
+
+
+
+
新增目录
+
编辑目录
+
删除目录
+
导入
+
+
+
+
+ multiple line title
+ multiple line title
+
+ {{ dataRef.title }}
+
+
+
+
+
+
+ 新增协议
+ 新增类型
+ 导入
+ 导出
+
+
+
+ 编辑
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/property/meterial/addModal.vue b/src/views/property/meterial/addModal.vue
index 8aad3b9..03d8c05 100644
--- a/src/views/property/meterial/addModal.vue
+++ b/src/views/property/meterial/addModal.vue
@@ -59,7 +59,6 @@
export default {
setup() {
- //文件列表
const title = ref('新增');
const visible = ref(false);
const form = reactive({
diff --git a/src/views/property/meterial/index.vue b/src/views/property/meterial/index.vue
index cc537c0..888c401 100644
--- a/src/views/property/meterial/index.vue
+++ b/src/views/property/meterial/index.vue
@@ -9,7 +9,6 @@
:tree-data="treeData"
@select="onSelect"
>
-
multiple line title
@@ -17,10 +16,6 @@
{{ dataRef.title }}
-
-
-
-
diff --git a/src/views/property/point/addModal.vue b/src/views/property/point/addModal.vue
index 0c3b04c..cb8d868 100644
--- a/src/views/property/point/addModal.vue
+++ b/src/views/property/point/addModal.vue
@@ -60,7 +60,6 @@
export default {
setup() {
- //文件列表
const title = ref('新增');
const visible = ref(false);
const form = reactive({
diff --git a/src/views/property/point/detailDrawer.vue b/src/views/property/point/detailDrawer.vue
index d5e912f..9d7d272 100644
--- a/src/views/property/point/detailDrawer.vue
+++ b/src/views/property/point/detailDrawer.vue
@@ -2,7 +2,7 @@
-
multiple line title
@@ -17,24 +16,21 @@
{{ dataRef.title }}
-
-
-
-
新增
- 导入
+ 导入
点位上报
- 点位导出
+ 点位导出
编辑
删除
+ 详情
@@ -178,7 +174,7 @@
};
//抽屉
const detailDrawerRef = ref();
- const goDetail = () => {
+ const handleDetail = () => {
detailDrawerRef.value.showDrawer();
};
diff --git a/src/views/property/point/pointModal.vue b/src/views/property/point/pointModal.vue
index c035f2c..601b3e6 100644
--- a/src/views/property/point/pointModal.vue
+++ b/src/views/property/point/pointModal.vue
@@ -66,6 +66,18 @@
+
+
+
+
+ 上传
+
+
+
+
@@ -112,6 +124,7 @@
institution: '',
faultLocation: '',
faultDescription: '',
+ faultImg: [],
isDispatched: null,
maintenanceRequirement: '',
dispatchOpinion: '',
diff --git a/src/views/property/propertyList/addModal.vue b/src/views/property/propertyList/addModal.vue
index 8aad3b9..08370df 100644
--- a/src/views/property/propertyList/addModal.vue
+++ b/src/views/property/propertyList/addModal.vue
@@ -3,50 +3,192 @@
-
-
+
+
-
-
+
+
-
-
+
+
+
+
+
+
+
-
-
+
+ 随机生成
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -59,20 +201,69 @@
export default {
setup() {
- //文件列表
const title = ref('新增');
const visible = ref(false);
const form = reactive({
- name: '',
- status: null,
- remark: '',
- unit: '',
- price: '',
- amount: '',
+ projectName: '',
+ institution: null,
+ propertyName: '',
standards: '',
+ propertyCode: '',
+ manufacturer: '',
+ contractPrice: '',
+ installStatus: '',
+ installType: '',
+ installAddress: '',
+ relatedProperty: '',
+ propertyUnit: '',
+ assets: '',
+ buildProject: '',
+ buildDate: '',
+ responsibilityPerson: '',
+ inDate: '',
+ outDate: '',
+ handler: '',
+ buildUnit: '',
+ contactUnit: '',
+ passDate: '',
+ transferDate: '',
+ serviceUnit: '',
+ contactType: '',
+ serviceStartDate: '',
+ serviceEndDate: '',
});
//下拉框
- const statusOptions = [
+ const projectNameOptions = [
+ {
+ value: 0,
+ label: '禁用',
+ },
+ {
+ value: 1,
+ label: '启用',
+ },
+ ];
+ const installStatusOptions = [
+ {
+ value: 0,
+ label: '禁用',
+ },
+ {
+ value: 1,
+ label: '启用',
+ },
+ ];
+ const installTypeOptions = [
+ {
+ value: 0,
+ label: '禁用',
+ },
+ {
+ value: 1,
+ label: '启用',
+ },
+ ];
+ const installAddressOptions = [
{
value: 0,
label: '禁用',
@@ -104,7 +295,10 @@
form,
showModal,
handleOk,
- statusOptions,
+ projectNameOptions,
+ installAddressOptions,
+ installTypeOptions,
+ installStatusOptions,
};
},
};
diff --git a/src/views/property/propertyList/index.vue b/src/views/property/propertyList/index.vue
index 6f04716..bb6fc8b 100644
--- a/src/views/property/propertyList/index.vue
+++ b/src/views/property/propertyList/index.vue
@@ -9,7 +9,6 @@
:tree-data="treeData"
@select="onSelect"
>
-
multiple line title
@@ -17,10 +16,6 @@
{{ dataRef.title }}
-
-
-
-