From 49ecdc73115d94e343cbe271c154fe32e8888c7d Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期四, 23 五月 2024 14:42:09 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit
---
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java | 13
admin/src/api/system/role.js | 7
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java | 18
server/system_service/src/main/java/com/doumee/biz/system/SystemRoleBiz.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/HiddenDangerMapper.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java | 97 ++
admin/package-lock.json | 182 ++--
server/system_service/src/main/java/com/doumee/biz/system/impl/SystemRoleBizImpl.java | 32
server/visits/dmvisit_service/pom.xml | 5
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java | 59 +
server/system_service/src/main/resources/mappers/SystemDataPermissionMapper.xml | 27
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveTemplController.java | 4
admin/src/components/system/role/OperaSystemRoleDataWindow.vue | 198 +++++
server/system_service/src/main/java/com/doumee/api/cloud/SystemRoleCloudController.java | 12
server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerParamController.java | 4
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveParam.java | 9
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java | 1
server/system_service/src/main/java/com/doumee/config/cloudfilter/CloudWebConfig.java | 18
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Approve.java | 40 +
admin/src/api/timer/timer.js | 31
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 55 +
server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java | 4
server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java | 9
server/system_service/src/main/java/com/doumee/core/aware/DefaultDataPermissionAware.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java | 6
admin/src/views/timer/timer.vue | 168 ++++
server/system_service/src/main/java/com/doumee/service/system/impl/SystemDataPermissionServiceImpl.java | 159 ++++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/InterfaceLogServiceImpl.java | 11
server/system_timer/src/main/java/com/doumee/api/timer/QuartzCloudController.java | 79 ++
admin/src/views/system/role.vue | 25
server/system_service/src/main/java/com/doumee/core/utils/Constants.java | 146 ++++
server/system_service/src/main/java/com/doumee/dao/system/SystemDataPermissionMapper.java | 3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CarUseBookService.java | 3
server/system_service/src/main/java/com/doumee/dao/system/model/SystemDataPermission.java | 2
server/system_service/src/main/java/com/doumee/service/system/SystemDataPermissionService.java | 6
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java | 3
admin/.env.production | 2
admin/src/views/timer/components/OperaTimerWindow.vue | 106 +++
server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java | 2
server/system_service/src/main/java/com/doumee/service/timer/QuartzJobService.java | 36 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 238 ++++++
server/system_timer/src/main/java/com/doumee/api/timer/QuartzController.java | 2
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ApproveTemplCloudController.java | 14
server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java | 14
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CarUseBookCloudController.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java | 72 +
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java | 6
server/visits/admin_timer/src/main/java/com/doumee/api/InterfaceLogTimerController.java | 12
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java | 2
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformInterfaceLogServiceImpl.java | 15
server/pom.xml | 4
server/system_service/src/main/java/com/doumee/api/cloud/SystemDataPermissionCloudController.java | 23
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformInterfaceLogService.java | 2
server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java | 1
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveTemplService.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 7
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/RegisterDriverDTO.java | 29
admin/src/components/base/BaseTable.vue | 4
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDanger.java | 10
62 files changed, 1,862 insertions(+), 207 deletions(-)
diff --git a/admin/.env.production b/admin/.env.production
index 091b660..5e90ea5 100644
--- a/admin/.env.production
+++ b/admin/.env.production
@@ -1,4 +1,4 @@
# 鐢熶骇鐜閰嶇疆
NODE_ENV = 'production'
-VUE_APP_API_URL = 'http://192.168.0.109:10010'
+VUE_APP_API_URL = 'http://localhost:10010'
diff --git a/admin/package-lock.json b/admin/package-lock.json
index 38c5cd6..b5dd877 100644
--- a/admin/package-lock.json
+++ b/admin/package-lock.json
@@ -1876,6 +1876,63 @@
"integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
"dev": true
},
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true,
+ "optional": true
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "optional": true
+ },
+ "loader-utils": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz",
+ "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "big.js": "^5.2.2",
+ "emojis-list": "^3.0.0",
+ "json5": "^2.1.2"
+ }
+ },
"ssri": {
"version": "8.0.1",
"resolved": "https://registry.npm.taobao.org/ssri/download/ssri-8.0.1.tgz?cache=0&sync_timestamp=1617826515595&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fssri%2Fdownload%2Fssri-8.0.1.tgz",
@@ -1883,6 +1940,28 @@
"dev": true,
"requires": {
"minipass": "^3.1.1"
+ }
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ },
+ "vue-loader-v16": {
+ "version": "npm:vue-loader@16.8.3",
+ "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-16.8.3.tgz",
+ "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "chalk": "^4.1.0",
+ "hash-sum": "^2.0.0",
+ "loader-utils": "^2.0.0"
}
}
}
@@ -1979,7 +2058,7 @@
},
"@wangeditor/basic-modules": {
"version": "1.1.7",
- "resolved": "https://registry.npmjs.org/@wangeditor/basic-modules/-/basic-modules-1.1.7.tgz",
+ "resolved": "https://registry.npmmirror.com/@wangeditor/basic-modules/-/basic-modules-1.1.7.tgz",
"integrity": "sha512-cY9CPkLJaqF05STqfpZKWG4LpxTMeGSIIF1fHvfm/mz+JXatCagjdkbxdikOuKYlxDdeqvOeBmsUBItufDLXZg==",
"requires": {
"is-url": "^1.2.4"
@@ -1987,7 +2066,7 @@
},
"@wangeditor/code-highlight": {
"version": "1.0.3",
- "resolved": "https://registry.npmjs.org/@wangeditor/code-highlight/-/code-highlight-1.0.3.tgz",
+ "resolved": "https://registry.npmmirror.com/@wangeditor/code-highlight/-/code-highlight-1.0.3.tgz",
"integrity": "sha512-iazHwO14XpCuIWJNTQTikqUhGKyqj+dUNWJ9288Oym9M2xMVHvnsOmDU2sgUDWVy+pOLojReMPgXCsvvNlOOhw==",
"requires": {
"prismjs": "^1.23.0"
@@ -1995,7 +2074,7 @@
},
"@wangeditor/core": {
"version": "1.1.19",
- "resolved": "https://registry.npmjs.org/@wangeditor/core/-/core-1.1.19.tgz",
+ "resolved": "https://registry.npmmirror.com/@wangeditor/core/-/core-1.1.19.tgz",
"integrity": "sha512-KevkB47+7GhVszyYF2pKGKtCSj/YzmClsD03C3zTt+9SR2XWT5T0e3yQqg8baZpcMvkjs1D8Dv4fk8ok/UaS2Q==",
"requires": {
"@types/event-emitter": "^0.3.3",
@@ -2008,7 +2087,7 @@
},
"@wangeditor/editor": {
"version": "5.1.23",
- "resolved": "https://registry.npmjs.org/@wangeditor/editor/-/editor-5.1.23.tgz",
+ "resolved": "https://registry.npmmirror.com/@wangeditor/editor/-/editor-5.1.23.tgz",
"integrity": "sha512-0RxfeVTuK1tktUaPROnCoFfaHVJpRAIE2zdS0mpP+vq1axVQpLjM8+fCvKzqYIkH0Pg+C+44hJpe3VVroSkEuQ==",
"requires": {
"@uppy/core": "^2.1.1",
@@ -2041,22 +2120,22 @@
},
"@wangeditor/list-module": {
"version": "1.0.5",
- "resolved": "https://registry.npmjs.org/@wangeditor/list-module/-/list-module-1.0.5.tgz",
+ "resolved": "https://registry.npmmirror.com/@wangeditor/list-module/-/list-module-1.0.5.tgz",
"integrity": "sha512-uDuYTP6DVhcYf7mF1pTlmNn5jOb4QtcVhYwSSAkyg09zqxI1qBqsfUnveeDeDqIuptSJhkh81cyxi+MF8sEPOQ=="
},
"@wangeditor/table-module": {
"version": "1.1.4",
- "resolved": "https://registry.npmjs.org/@wangeditor/table-module/-/table-module-1.1.4.tgz",
+ "resolved": "https://registry.npmmirror.com/@wangeditor/table-module/-/table-module-1.1.4.tgz",
"integrity": "sha512-5saanU9xuEocxaemGdNi9t8MCDSucnykEC6jtuiT72kt+/Hhh4nERYx1J20OPsTCCdVr7hIyQenFD1iSRkIQ6w=="
},
"@wangeditor/upload-image-module": {
"version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@wangeditor/upload-image-module/-/upload-image-module-1.0.2.tgz",
+ "resolved": "https://registry.npmmirror.com/@wangeditor/upload-image-module/-/upload-image-module-1.0.2.tgz",
"integrity": "sha512-z81lk/v71OwPDYeQDxj6cVr81aDP90aFuywb8nPD6eQeECtOymrqRODjpO6VGvCVxVck8nUxBHtbxKtjgcwyiA=="
},
"@wangeditor/video-module": {
"version": "1.1.4",
- "resolved": "https://registry.npmjs.org/@wangeditor/video-module/-/video-module-1.1.4.tgz",
+ "resolved": "https://registry.npmmirror.com/@wangeditor/video-module/-/video-module-1.1.4.tgz",
"integrity": "sha512-ZdodDPqKQrgx3IwWu4ZiQmXI8EXZ3hm2/fM6E3t5dB8tCaIGWQZhmqd6P5knfkRAd3z2+YRSRbxOGfoRSp/rLg=="
},
"@webassemblyjs/ast": {
@@ -3302,9 +3381,9 @@
}
},
"caniuse-lite": {
- "version": "1.0.30001228",
- "resolved": "https://registry.nlark.com/caniuse-lite/download/caniuse-lite-1.0.30001228.tgz?cache=0&sync_timestamp=1620658693631&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcaniuse-lite%2Fdownload%2Fcaniuse-lite-1.0.30001228.tgz",
- "integrity": "sha1-v9xZQs0zJvpR7gtC++9NqdSSp/o=",
+ "version": "1.0.30001621",
+ "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001621.tgz",
+ "integrity": "sha512-+NLXZiviFFKX0fk8Piwv3PfLPGtRqJeq2TiNoUff/qB5KJgwecJTvCXDpmlyP/eCI/GUEmp/h/y5j0yckiiZrA==",
"dev": true
},
"case-sensitive-paths-webpack-plugin": {
@@ -13868,87 +13947,6 @@
"resolved": "https://registry.npm.taobao.org/hash-sum/download/hash-sum-1.0.2.tgz",
"integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=",
"dev": true
- }
- }
- },
- "vue-loader-v16": {
- "version": "npm:vue-loader@16.8.3",
- "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.3.tgz",
- "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
- "dev": true,
- "optional": true,
- "requires": {
- "chalk": "^4.1.0",
- "hash-sum": "^2.0.0",
- "loader-utils": "^2.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "optional": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "optional": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true,
- "optional": true
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true,
- "optional": true
- },
- "loader-utils": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
- "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
- "dev": true,
- "optional": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^2.1.2"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "optional": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
}
}
},
diff --git a/admin/src/api/system/role.js b/admin/src/api/system/role.js
index ba65ae8..ccd0152 100644
--- a/admin/src/api/system/role.js
+++ b/admin/src/api/system/role.js
@@ -16,6 +16,10 @@
trim: true
})
}
+// 鑾峰彇瑙掕壊鏁版嵁鏉冮檺
+export function findByRoleId (data) {
+ return request.post('visitsAdmin/cloudService/system/dataPermission/findByRoleId', data)
+}
// 淇敼
export function updateById (data) {
@@ -42,6 +46,9 @@
export function createRolePermission (data) {
return request.post('/visitsAdmin/cloudService/system/role/createRolePermission', data)
}
+export function createRoleDataPermission (data) {
+ return request.post('/visitsAdmin/cloudService/system/role/createRoleDataPermission', data)
+}
// 閰嶇疆鑿滃崟
export function createRoleMenu (data) {
diff --git a/admin/src/api/timer/timer.js b/admin/src/api/timer/timer.js
new file mode 100644
index 0000000..def401d
--- /dev/null
+++ b/admin/src/api/timer/timer.js
@@ -0,0 +1,31 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+ return request.post('/systemTimer/cloudService/business/quartz/page', data, {
+ trim: true
+ })
+}
+export function create (data) {
+ return request.post('/systemTimer/cloudService/business/quartz/create', data, {
+ trim: true
+ })
+}
+export function updateById (data) {
+ return request.post('/systemTimer/cloudService/business/quartz/updateById', data, {
+ trim: true
+ })
+}
+// 鏍规嵁ID鏌ヨ
+export function queryById (id) {
+ return request.get(`/systemTimer/cloudService/business/quartz/${id}`)
+}
+export function pauseById (id) {
+ return request.get(`/systemTimer/cloudService/business/quartz/pause/${id}`)
+}
+export function resumeById (id) {
+ return request.get(`/systemTimer/cloudService/business/quartz/resume/${id}`)
+}
+export function runOnceById (id) {
+ return request.get(`/systemTimer/cloudService/business/quartz/runOnce/${id}`)
+}
diff --git a/admin/src/components/base/BaseTable.vue b/admin/src/components/base/BaseTable.vue
index 6ddfb22..6df292f 100644
--- a/admin/src/components/base/BaseTable.vue
+++ b/admin/src/components/base/BaseTable.vue
@@ -156,7 +156,7 @@
this.__afterDelete()
})
.catch(e => {
- this.$tip.apiFailed(e)
+ // this.$tip.apiFailed(e)
})
.finally(() => {
this.isWorking.delete = false
@@ -195,7 +195,7 @@
this.__afterDelete(this.tableData.selectedRows.length)
})
.catch(e => {
- this.$tip.apiFailed(e)
+ // this.$tip.apiFailed(e)
})
.finally(() => {
this.isWorking.delete = false
diff --git a/admin/src/components/system/role/OperaSystemRoleDataWindow.vue b/admin/src/components/system/role/OperaSystemRoleDataWindow.vue
new file mode 100644
index 0000000..9528a0b
--- /dev/null
+++ b/admin/src/components/system/role/OperaSystemRoleDataWindow.vue
@@ -0,0 +1,198 @@
+<template>
+ <GlobalWindow
+ :title="title"
+ width="60%"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <p class="tip">姝e湪涓鸿鑹层�� <em>{{role.name || '-'}}</em>銆� 閰嶇疆鏁版嵁鏉冮檺</p>
+ <p class="tip-warn"><i class="el-icon-warning"></i>鎻愰啋锛氭潈闄愰厤缃悗闇�閲嶆柊鐧诲綍鍚庣敓鏁�</p>
+ <el-form :model="form" ref="form" style="margin-top:15px">
+ <el-form-item label="鏉冮檺绫诲瀷锛�" prop="type">
+ <el-select v-model="form.type" clearable filterable placeholder="璇烽�夋嫨鏉冮檺绫诲瀷">
+ <el-option
+ v-for="(item, index) in options"
+ :key="index"
+ :label="item.name"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item v-if="form.type == 4" label="鑷畾涔夐儴闂細" prop="customData">
+ <el-cascader
+ :options="departments"
+ v-model="form.customData"
+ :props=defaultProps
+ clearable
+ ></el-cascader>
+ </el-form-item>
+
+ </el-form>
+ </GlobalWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+import { createRoleDataPermission } from '@/api/system/role'
+import { fetchList } from '@/api/business/company'
+ // import the styles
+import '@riophae/vue-treeselect/dist/vue-treeselect.css'
+export default {
+ name: 'OperaSystemRoleWindow',
+ extends: BaseOpera,
+ components: { GlobalWindow },
+ data () {
+ return {
+ options: [
+ { name: '鍏ㄩ儴', id: 0 },
+ { name: '鎵�灞為儴闂ㄥ強涓嬪睘閮ㄩ棬', id: 1 },
+ { name: '鎵�灞為儴闂ㄥ強鍏跺瓙瀛欓儴闂�', id: 2 },
+ { name: '浠呮墍灞為儴闂�', id: 3 },
+ { name: '鑷畾涔夐儴闂�', id: 4 }
+ ],
+ // 琛ㄥ崟鏁版嵁
+ form: {
+ businessCode: null,
+ createTime: null,
+ createUser: null,
+ customData: [],
+ id: null,
+ roleId: null,
+ type: 0
+ },
+ defaultProps: {
+ multiple: true,
+ checkStrictly: true,
+ // children: 'children',
+ label: 'name',
+ value: 'id',
+ emitPath: false
+ },
+ role:{},
+ departments: []
+ }
+ },
+ created () {
+ this.config({
+ api: '/system/role',
+ 'field.id': 'id'
+ })
+ this.treeComList()
+ },
+ methods: {
+ // 閮ㄩ棬鏍戠姸缁撴瀯鏁版嵁
+ treeComList () {
+ fetchList()
+ .then(res => {
+ // this.departments = this.tree([res])
+ this.departments =this.newTree(res)
+ })
+ },
+ open (title, target,role) {
+ // console.log(title, target)
+ this.title = title
+ this.visible = true
+ this.role=role
+ // 鏂板缓
+ if (target == null) {
+ this.$nextTick(() => {
+ this.$refs.form.resetFields()
+ this.form[this.configData['field.id']] = null
+ })
+ return
+ }
+ // 缂栬緫
+ this.$nextTick(() => {
+ for (const key in this.form) {
+ this.form[key] = target[key]
+ }
+ console.log(target);
+ if (target.customData === undefined ||target.customData === null || target.customData === '') {
+ this.form.customData = []
+ } else {
+ const customD = this.form.customData.split(',')
+ this.form.customData = customD.map((item) => { return parseInt(item) })
+ }
+ })
+ },
+ newTree(tree) {
+ if(tree ==null){
+ return []
+ }
+ return tree.map(item => {
+ let newItem = {...item}
+ if(newItem){
+ newItem.children=newItem.childList
+ }
+ if (item.children && item.children.length == 0) {
+ this.$delete( newItem, 'children' )
+ } else {
+ newItem.children = this.newTree(newItem.children)
+ }
+ return newItem
+ });
+ },
+ __confirmCreate () {
+ // console.log(JSON.stringify(this.form.customData));
+ // return
+ this.$refs.form.validate((valid) => {
+ if (!valid) {
+ return
+ }
+
+ this.isWorking = true
+ let data = JSON.parse(JSON.stringify(this.form))
+ if (this.form.type === 4) {
+ data.customData = this.form.customData.join(',')
+ } else {
+ data.customData = ''
+ }
+ createRoleDataPermission(data)
+ .then(() => {
+ this.visible = false
+ this.$tip.apiSuccess('鏂板缓鎴愬姛')
+ this.$emit('success')
+ })
+ .catch(e => {
+ this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+ this.isWorking = false
+ })
+ })
+ },
+ __confirmEdit () {
+ // console.log(JSON.stringify(this.form.customData));
+ // return
+ this.$refs.form.validate((valid) => {
+ if (!valid) {
+ return
+ }
+ // 璋冪敤鏇存柊鎺ュ彛
+ this.isWorking = true
+ let data = JSON.parse(JSON.stringify(this.form))
+ if (this.form.type === 4) {
+ data.customData = this.form.customData.join(',')
+ } else {
+ data.customData = ''
+ }
+ createRoleDataPermission(data)
+ .then(() => {
+ this.visible = false
+ this.$tip.apiSuccess('淇敼鎴愬姛')
+ this.$emit('success')
+ })
+ .catch(e => {
+ this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+ this.isWorking = false
+ })
+ })
+ }
+ }
+}
+</script>
diff --git a/admin/src/views/system/role.vue b/admin/src/views/system/role.vue
index 91cf09e..cfb8d9d 100644
--- a/admin/src/views/system/role.vue
+++ b/admin/src/views/system/role.vue
@@ -40,13 +40,14 @@
</el-table-column>
<el-table-column prop="updateTime" label="鏇存柊鏃堕棿" min-width="140px"></el-table-column>
<el-table-column
- v-if="containPermissions(['system:role:update', 'system:role:createRolePermission', 'system:role:createRoleMenu', 'system:role:delete'])"
+ v-if="containPermissions(['system:role:update', 'system:role:createRolePermission','system:datapermission:create', 'system:role:createRoleMenu', 'system:role:delete'])"
label="鎿嶄綔"
min-width="270"
fixed="right"
>
<template v-if="isAdmin || (row.code !== adminCode && userInfo.roles.findIndex(code => code === row.code) === -1)" slot-scope="{row}">
- <el-button type="text" @click="$refs.operaRoleWindow.open('缂栬緫瑙掕壊', row)" icon="el-icon-edit" v-permissions="['system:role:update']">缂栬緫</el-button>
+ <el-button type="text" @click="$refs.operaRoleWindow.open('缂栬緫瑙掕壊', row)" v-permissions="['system:role:update']">缂栬緫</el-button>
+ <el-button type="text" @click="setData(row)" v-permissions="['system:datapermission:create']">鏁版嵁鏉冮檺</el-button>
<el-button type="text" @click="$refs.permissionConfigWindow.open(row)" v-permissions="['system:role:createRolePermission']">閰嶇疆鏉冮檺</el-button>
<el-button type="text" @click="$refs.menuConfigWindow.open(row)" icon="el-icon-menu" v-permissions="['system:role:createRoleMenu']">鎺堟潈鑿滃崟</el-button>
<el-button v-if="!row.fixed" type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:role:delete']">鍒犻櫎</el-button>
@@ -65,6 +66,7 @@
<PermissionConfigWindow ref="permissionConfigWindow" @success="handlePageChange(tableData.pagination.pageIndex)"/>
<!-- 鎺堟潈鑿滃崟 -->
<MenuConfigWindow ref="menuConfigWindow" @success="handlePageChange(tableData.pagination.pageIndex)"/>
+ <OperaSystemRoleDataWindow ref="OperaSystemRoleDataWindow" @success="handlePageChange(tableData.pagination.pageIndex)" />
</TableLayout>
</template>
@@ -75,10 +77,12 @@
import OperaRoleWindow from '@/components/system/role/OperaRoleWindow'
import PermissionConfigWindow from '@/components/system/role/PermissionConfigWindow'
import MenuConfigWindow from '@/components/system/role/MenuConfigWindow'
+import OperaSystemRoleDataWindow from '@/components/system/role/OperaSystemRoleDataWindow'
+import { findByRoleId } from '@/api/system/role'
export default {
name: 'SystemRole',
extends: BaseTable,
- components: { MenuConfigWindow, PermissionConfigWindow, OperaRoleWindow, TableLayout, Pagination },
+ components: { MenuConfigWindow, PermissionConfigWindow, OperaRoleWindow, TableLayout, OperaSystemRoleDataWindow, Pagination },
data () {
return {
// 鎼滅储
@@ -99,6 +103,21 @@
}]
})
this.search()
+ },
+ methods: {
+ setData (row) {
+ findByRoleId({ roleId: row.id })
+ .then(res => {
+ if (!res) {
+ this.$refs.OperaSystemRoleDataWindow.open('鏁版嵁鏉冮檺', { roleId: row.id },row)
+ } else {
+ this.$refs.OperaSystemRoleDataWindow.open('鏁版嵁鏉冮檺', res,row)
+ }
+ })
+ .catch(err => {
+ this.$tip.error(err)
+ })
+ }
}
}
</script>
diff --git a/admin/src/views/timer/components/OperaTimerWindow.vue b/admin/src/views/timer/components/OperaTimerWindow.vue
new file mode 100644
index 0000000..f3e8b6d
--- /dev/null
+++ b/admin/src/views/timer/components/OperaTimerWindow.vue
@@ -0,0 +1,106 @@
+<template>
+ <GlobalAlertWindow
+ v-loading="isUploading"
+ :title="title"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <el-form :model="form" ref="form" :rules="rules" label-width="120px" label-suffix="锛�">
+ <el-form-item label="Bean鍚嶇О" prop="beanName">
+ <el-input v-model="form.beanName" placeholder="璇疯緭鍏ean鍚嶇О" :maxlength="10" v-trim/>
+ </el-form-item>
+ <el-form-item label="妯″潡鍚嶇О" prop="module">
+ <el-input v-model="form.module" placeholder="璇疯緭鍏ユā鍧楀悕绉�" :maxlength="10" v-trim/>
+ </el-form-item>
+ <el-form-item label="Cron琛ㄨ揪寮�" prop="cronExpres">
+ <el-input v-model="form.cronExpres" placeholder="璇疯緭鍏ron琛ㄨ揪寮�" :maxlength="10" v-trim/>
+ </el-form-item>
+ <el-form-item label="澶囨敞" prop="remark">
+ <el-input v-model="form.remark" placeholder="璇疯緭鍏ュ娉�" :maxlength="10" v-trim/>
+ </el-form-item>
+ <el-form-item label="鎵ц鍙傛暟" prop="params">
+ <el-input v-model="form.params" type="textarea" placeholder="璇疯緭鍏ユ墽琛屽弬鏁�" v-trim/>
+ </el-form-item>
+ </el-form>
+ </GlobalAlertWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalAlertWindow from '@/components/common/GlobalAlertWindow'
+export default {
+ name: 'OperaTimerWindow',
+ extends: BaseOpera,
+ components: { GlobalAlertWindow },
+ data () {
+
+ return {
+ isUploading: false,
+ uploadData: {
+ folder: 'projects'
+ },
+ timeRange: ['', ''],
+ // 琛ㄥ崟鏁版嵁
+ form: {
+ id: null,
+ beanName: null,
+ params: null,
+ createTime: null,
+ module: '',
+ remark: '' ,
+ cronExpres: ''
+
+ },
+ // 楠岃瘉瑙勫垯
+ rules: {
+ beanName: [
+ { required: true, message: '璇疯緭鍏ean鍚嶇О', tigger: 'blur' }
+ ],
+ module: [
+ { required: true, message: '璇疯緭鍏ユā鍧楀悕绉�', tigger: 'blur' }
+ ],
+ cronExpres: [
+ { required: true, message: '璇疯緭鍏ron琛ㄨ揪寮�', tigger: 'blur' }
+ ]
+ }
+ }
+ },
+ created () {
+ this.config({
+ api: '/timer/timer',
+ 'field.id': 'id'
+ })
+ },
+ methods: {
+ /**
+ * 鎵撳紑绐楀彛
+ * @title 绐楀彛鏍囬
+ * @target 缂栬緫鐨勫璞�
+ */
+ open (title, target) {
+ this.title = title
+ this.visible = true
+ // 鏂板缓
+ if (target == null) {
+ this.$nextTick(() => {
+ this.$refs.form.resetFields()
+ this.form[this.configData['field.id']] = null
+ })
+ return
+ }
+ // 缂栬緫
+ this.$nextTick(() => {
+ for (const key in this.form) {
+ this.form[key] = target[key]
+ }
+ })
+ }
+ }
+}
+</script>
+
+<style lang="scss" scoped>
+@import "@/assets/style/alertstyle.scss";
+
+</style>
diff --git a/admin/src/views/timer/timer.vue b/admin/src/views/timer/timer.vue
new file mode 100644
index 0000000..9dccf33
--- /dev/null
+++ b/admin/src/views/timer/timer.vue
@@ -0,0 +1,168 @@
+<template>
+ <TableLayout :permissions="['business:devices:query']">
+ <!-- 鎼滅储琛ㄥ崟 -->
+ <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+ <el-form-item label="Bean鍚嶇О" prop="beanName">
+ <el-input v-model="searchForm.beanName" placeholder="璇疯緭鍏ュ彂甯冧汉" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <el-form-item label="妯″潡鍚嶇О" prop="module">
+ <el-input v-model="searchForm.module" placeholder="璇疯緭鍏ュ彂甯冧汉" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <section>
+ <el-button type="primary" @click="search">鎼滅储</el-button>
+ <!-- <el-button type="primary" :loading="isWorking.export" v-permissions="['business:devices:exportExcel']" @click="exportExcel">瀵煎嚭</el-button> -->
+ <el-button @click="reset">閲嶇疆</el-button>
+ </section>
+ </el-form>
+ <!-- 琛ㄦ牸鍜屽垎椤� -->
+ <template v-slot:table-wrap>
+ <ul class="toolbar" v-permissions="['business:quartz:create']">
+ <li><el-button type="primary" @click="$refs.OperaTimerWindow.open('鏂板缓浠诲姟')" icon="el-icon-plus" v-permissions="['business:devices:create']">鏂板缓</el-button></li>
+ </ul>
+ <el-table
+ v-loading="isWorking.search"
+ :data="tableData.list"
+ stripe
+ border
+ @selection-change="handleSelectionChange"
+ >
+ <el-table-column type="index" prop="index" label="搴忓彿" align="center" min-width="50px"></el-table-column>
+ <el-table-column prop="beanName" label="BEAN鍚嶇О" align="center" min-width="150px"></el-table-column>
+ <el-table-column prop="module" label="妯″潡鍚嶇О" align="center" min-width="180px"></el-table-column>
+ <el-table-column prop="params" label="鎵ц鍙傛暟" align="center" min-width="180px"></el-table-column>
+ <el-table-column prop="state" label="鐘舵��" align="center" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.state ==1" style="color:green">姝e父</span>
+ <span v-if="row.state ==2" style="color: red">鏆傚仠</span>
+ <span v-if="row.state ==3" style="color: red">宸插垹闄�</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="cronExpres" label="琛ㄨ揪寮�" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" align="center" min-width="180px"></el-table-column>
+ <el-table-column prop="remark" label="澶囨敞" align="center" min-width="180px"></el-table-column>
+ <el-table-column
+ v-if="containPermissions(['business:quartz:update'])"
+ label="鎿嶄綔"
+ fixed="right"
+ min-width="220"
+ align="center"
+ >
+ <template slot-scope="{row}">
+ <el-button type="text" @click="$refs.OperaTimerWindow.open('缂栬緫浠诲姟', row)" v-permissions="['business:quartz:update']">缂栬緫</el-button>
+ <el-button type="text" @click="runById(row)" v-permissions="['business:quartz:update']">鎵ц涓�娆�</el-button>
+ <el-button type="text" v-if="row.state == 1" style="color: red" @click="pauseById(row)" v-permissions="['business:quartz:update']">鏆傚仠</el-button>
+ <el-button type="text" v-if="row.state == 2" style="color: green" @click="resumeById(row)" v-permissions="['business:quartz:update']">鎭㈠</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ @size-change="handleSizeChange"
+ @current-change="handlePageChange"
+ :pagination="tableData.pagination"
+ ></pagination>
+ </template>
+ <!-- 鏂板缓/淇敼 -->
+ <OperaTimerWindow ref="OperaTimerWindow" @success="handlePageChange"/>
+ </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import OperaTimerWindow from '@/views/timer/components/OperaTimerWindow'
+import {runOnceById} from "@/api/timer/timer";
+export default {
+ name: 'Devices',
+ extends: BaseTable,
+ components: { TableLayout, Pagination, OperaTimerWindow },
+ data () {
+ return {
+ // 鎼滅储
+ searchForm: {
+ id: '',
+ beanName: '',
+ module: ''
+ },
+ pausing:false,
+ running:false,
+ resuming:false,
+ room: []
+ }
+ },
+ provide() {
+ return {
+ room: () => this.room
+ }
+ },
+ created () {
+ this.config({
+ module: '璁惧绠$悊淇℃伅琛�',
+ api: '/timer/timer',
+ 'field.id': 'id',
+ 'field.main': 'id'
+ })
+ this.search()
+ },
+ methods: {
+ pauseById (row) {
+ this.__checkApi()
+ this.$dialog.actionConfirm('纭鏆傚仠璇ヤ换鍔″悧?')
+ .then(() => {
+ this.pausing = true
+ this.api.paustById(row.id)
+ .then(() => {
+ this.$message.info('鏆傚仠鎴愬姛')
+ this.search()
+ })
+ .catch(e => {
+ // this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+ this.pausing = false
+ })
+ })
+ .catch(() => {})
+ },
+ resumeById (row) {
+ this.__checkApi()
+ this.$dialog.actionConfirm('纭鎭㈠璇ヤ换鍔″悧?')
+ .then(() => {
+ this.resuming = true
+ this.api.resumeById(row.id)
+ .then(() => {
+ this.$message.info('鎭㈠鎴愬姛')
+ this.search()
+ })
+ .catch(e => {
+ // this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+ this.resuming = false
+ })
+ })
+ .catch(() => {})
+ },
+ runById (row) {
+ this.__checkApi()
+ this.$dialog.actionConfirm('纭鎵ц涓�娆¤浠诲姟鍚�?')
+ .then(() => {
+ this.running = true
+ this.api.runOnceById(row.id)
+ .then(() => {
+ this.$message.info('鎵ц鎴愬姛')
+ this.search()
+ })
+ .catch(e => {
+ // this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+ this.running = false
+ })
+ })
+ .catch(() => {})
+ }
+ },
+}
+
+</script>
diff --git a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
index 9b74ed1..5c5873f 100644
--- a/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
+++ b/server/meeting/meeting_service/src/main/java/com/doumee/service/business/impl/BookingsServiceImpl.java
@@ -487,7 +487,7 @@
List<Multifile> filelist = multifileJoinMapper.selectList(bookquery);
filelist.stream().forEach(a -> {
if (StringUtils.isNotBlank(a.getFileurl())) {
- a.setFileFullUrl(path + a.getFileurl());
+ a.setFileurlFull(path + a.getFileurl());
}
});
s.setFileList(filelist);
@@ -557,7 +557,7 @@
List<Multifile> filelist = multifileJoinMapper.selectList(bookquery);
filelist.stream().forEach(a -> {
if (StringUtils.isNotBlank(a.getFileurl())) {
- a.setFileFullUrl(path + a.getFileurl());
+ a.setFileurlFull(path + a.getFileurl());
}
});
result.setFileList(filelist);
@@ -836,7 +836,7 @@
.eq("OBJ_TYPE", MeetConstants.ZERO)
);
multiFileList.forEach(i -> {
- i.setFileFullUrl(projectsPath);
+ i.setFileurlFull(projectsPath);
});
//闄勪欢淇℃伅
meetingDetailResponse.setMultiFileList(multiFileList);
diff --git a/server/pom.xml b/server/pom.xml
index badf30a..dd100ed 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -12,9 +12,11 @@
<description></description>
<modules>
<module>meeting</module>
- <module>system_service</module>
<module>visits</module>
+ <module>system_service</module>
<module>system_timer</module>
+ <module>system_gateway</module>
+ <module>emaysms</module>
</modules>
<parent>
<groupId>org.springframework.boot</groupId>
diff --git a/server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java b/server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java
index 7d06475..d2e5097 100644
--- a/server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java
+++ b/server/system_gateway/src/main/java/com/doumee/api/gateway/JwtAuthController.java
@@ -66,6 +66,7 @@
}catch (BusinessException e){
return ApiResponse.failed(e.getCode(),e.getMessage());
}catch (Exception e){
+ e.printStackTrace();
return ApiResponse.failed(ResponseStatus.SERVER_ERROR);
}
}
diff --git a/server/system_service/src/main/java/com/doumee/api/cloud/SystemDataPermissionCloudController.java b/server/system_service/src/main/java/com/doumee/api/cloud/SystemDataPermissionCloudController.java
index 866141a..6166fcb 100644
--- a/server/system_service/src/main/java/com/doumee/api/cloud/SystemDataPermissionCloudController.java
+++ b/server/system_service/src/main/java/com/doumee/api/cloud/SystemDataPermissionCloudController.java
@@ -2,6 +2,7 @@
import com.doumee.api.BaseController;
import com.doumee.biz.system.SystemDataPermissionBiz;
+import com.doumee.config.annotation.CloudRequiredPermission;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.annotation.trace.Trace;
import com.doumee.core.constants.DataPermissionConstants;
@@ -15,7 +16,6 @@
import com.doumee.service.system.SystemDataPermissionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -38,11 +38,16 @@
@Autowired
private SystemDataPermissionBiz systemDataPermissionBiz;
-
+ @ApiOperation("鏍规嵁roleId鏌ヨ浼佷笟鏁版嵁鏉冮檺")
+ @PostMapping("/findByRoleId")
+ @CloudRequiredPermission("system:datapermission:query")
+ public ApiResponse<SystemDataPermission> findByRoleId (@RequestBody SystemDataPermission pageWrap) {
+ return ApiResponse.success(systemDataPermissionService.findByRoleId(pageWrap));
+ }
@PreventRepeat
@ApiOperation("鏂板缓")
@PostMapping("/create")
- @RequiresPermissions("system:datapermission:create")
+ @CloudRequiredPermission("system:datapermission:create")
public ApiResponse create(@RequestHeader(Constants.HEADER_USER_TOKEN) String token, @Validated(OperaType.Create.class) @RequestBody SystemDataPermission systemDataPermission) {
systemDataPermission.setCreateUser(this.getLoginUser(token).getId());
return ApiResponse.success(systemDataPermissionBiz.create(systemDataPermission));
@@ -50,7 +55,7 @@
@ApiOperation("鏍规嵁ID鍒犻櫎")
@GetMapping("/delete/{id}")
- @RequiresPermissions("system:datapermission:delete")
+ @CloudRequiredPermission("system:datapermission:delete")
public ApiResponse deleteById(@PathVariable Integer id) {
systemDataPermissionService.deleteById(id);
return ApiResponse.success(null);
@@ -58,7 +63,7 @@
@ApiOperation("鎵归噺鍒犻櫎")
@GetMapping("/delete/batch")
- @RequiresPermissions("system:datapermission:delete")
+ @CloudRequiredPermission("system:datapermission:delete")
public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
String [] idArray = ids.split(",");
List<Integer> idList = new ArrayList<>();
@@ -71,7 +76,7 @@
@ApiOperation("淇敼")
@PostMapping("/updateById")
- @RequiresPermissions("system:datapermission:update")
+ @CloudRequiredPermission("system:datapermission:update")
public ApiResponse updateById(@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@Validated(OperaType.Update.class) @RequestBody SystemDataPermission systemDataPermission) {
systemDataPermission.setUpdateUser(this.getLoginUser(token).getId());
systemDataPermissionBiz.update(systemDataPermission);
@@ -80,16 +85,16 @@
@ApiOperation("淇敼鐘舵��")
@PostMapping("/updateStatus")
- @RequiresPermissions("system:datapermission:update")
+ @CloudRequiredPermission("system:datapermission:update")
public ApiResponse updateStatus(@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@Validated(OperaType.UpdateStatus.class) @RequestBody SystemDataPermission systemDataPermission) {
- systemDataPermission.setCreateUser(this.getLoginUser(token).getId());
+ systemDataPermission.setLoginUserInfo(this.getLoginUser(token));
systemDataPermissionBiz.updateStatus(systemDataPermission);
return ApiResponse.success(null);
}
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
- @RequiresPermissions("system:datapermission:query")
+ @CloudRequiredPermission("system:datapermission:query")
public ApiResponse<PageData<SystemDataPermissionListVO>> findPage (@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@RequestBody PageWrap<SystemDataPermission> pageWrap) {
return ApiResponse.success(systemDataPermissionService.findPage(pageWrap));
}
diff --git a/server/system_service/src/main/java/com/doumee/api/cloud/SystemRoleCloudController.java b/server/system_service/src/main/java/com/doumee/api/cloud/SystemRoleCloudController.java
index fa6c59d..f5d0896 100644
--- a/server/system_service/src/main/java/com/doumee/api/cloud/SystemRoleCloudController.java
+++ b/server/system_service/src/main/java/com/doumee/api/cloud/SystemRoleCloudController.java
@@ -12,11 +12,13 @@
import com.doumee.dao.system.dto.CreateRoleMenuDTO;
import com.doumee.dao.system.dto.CreateRolePermissionDTO;
import com.doumee.dao.system.dto.QuerySystemRoleDTO;
+import com.doumee.dao.system.model.SystemDataPermission;
import com.doumee.dao.system.model.SystemRole;
import com.doumee.dao.system.vo.SystemRoleListVO;
import com.doumee.service.system.SystemRoleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -59,6 +61,16 @@
}
@PreventRepeat
+ @ApiOperation("閰嶇疆瑙掕壊鏁版嵁鏉冮檺")
+ @PostMapping("/createRoleDataPermission")
+ @CloudRequiredPermission("system:datapermission:create")
+ public ApiResponse createRoleDataPermission (@RequestHeader(Constants.HEADER_USER_TOKEN) String token,@Validated @RequestBody SystemDataPermission dto) {
+ dto.setLoginUserInfo(this.getLoginUser(token));
+ systemRoleBiz.createRoleDataPermission(dto);
+ return ApiResponse.success(null);
+ }
+
+ @PreventRepeat
@ApiOperation("鏂板缓")
@PostMapping("/create")
@CloudRequiredPermission("system:role:create")
diff --git a/server/system_service/src/main/java/com/doumee/biz/system/SystemRoleBiz.java b/server/system_service/src/main/java/com/doumee/biz/system/SystemRoleBiz.java
index 3784377..8159684 100644
--- a/server/system_service/src/main/java/com/doumee/biz/system/SystemRoleBiz.java
+++ b/server/system_service/src/main/java/com/doumee/biz/system/SystemRoleBiz.java
@@ -2,6 +2,7 @@
import com.doumee.dao.system.dto.CreateRoleMenuDTO;
import com.doumee.dao.system.dto.CreateRolePermissionDTO;
+import com.doumee.dao.system.model.SystemDataPermission;
import com.doumee.dao.system.model.SystemRole;
import java.util.List;
@@ -54,4 +55,6 @@
* @date 2023/03/21 14:49
*/
void createRoleMenu(CreateRoleMenuDTO dto);
+
+ void createRoleDataPermission(SystemDataPermission dto);
}
diff --git a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemRoleBizImpl.java b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemRoleBizImpl.java
index d44d643..33b987b 100644
--- a/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemRoleBizImpl.java
+++ b/server/system_service/src/main/java/com/doumee/biz/system/impl/SystemRoleBizImpl.java
@@ -3,14 +3,20 @@
import com.doumee.biz.system.SystemRoleBiz;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.model.LoginUserInfo;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
import com.doumee.dao.system.dto.CreateRoleMenuDTO;
import com.doumee.dao.system.dto.CreateRolePermissionDTO;
+import com.doumee.dao.system.model.SystemDataPermission;
import com.doumee.dao.system.model.SystemRole;
import com.doumee.dao.system.model.SystemRoleMenu;
import com.doumee.dao.system.model.SystemRolePermission;
+import com.doumee.service.system.SystemDataPermissionService;
import com.doumee.service.system.SystemRoleMenuService;
import com.doumee.service.system.SystemRolePermissionService;
import com.doumee.service.system.SystemRoleService;
+import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -29,6 +35,8 @@
@Autowired
private SystemRoleMenuService systemRoleMenuService;
+ @Autowired
+ private SystemDataPermissionService systemDataPermissionService;
@Override
public Integer create(SystemRole systemRole) {
@@ -112,4 +120,28 @@
systemRoleMenuService.create(newRoleMenu);
}
}
+
+ @Override
+ @Transactional
+ public void createRoleDataPermission(SystemDataPermission dto) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(user ==null){
+ user = dto.getLoginUserInfo();
+ }
+ if(dto.getRoleId()==null || dto.getType()==null ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝璇锋眰鍙傛暟涓嶆纭紒");
+ }
+ // 鍒犻櫎鍏宠仈鏉冮檺
+ SystemDataPermission deleteDto = new SystemDataPermission();
+ deleteDto.setRoleId(dto.getRoleId());
+
+ systemDataPermissionService.delete(deleteDto);
+ // 鏂板鏂扮殑鏉冮檺
+ dto.setDeleted(Boolean.FALSE);
+ dto.setBusinessCode("DEPARTMENT");
+ dto.setCreateTime(DateUtil.getCurrentDate());
+ dto.setCreateUser(user.getId());
+ dto.setDisabled(Boolean.FALSE);
+ systemDataPermissionService.create(dto);
+ }
}
diff --git a/server/system_service/src/main/java/com/doumee/config/cloudfilter/CloudWebConfig.java b/server/system_service/src/main/java/com/doumee/config/cloudfilter/CloudWebConfig.java
index 832854b..c8cf472 100644
--- a/server/system_service/src/main/java/com/doumee/config/cloudfilter/CloudWebConfig.java
+++ b/server/system_service/src/main/java/com/doumee/config/cloudfilter/CloudWebConfig.java
@@ -21,13 +21,13 @@
.addPathPatterns(Constants.CLOUD_SERVICE_URL_INDEX+"/**");
}
- @Bean
- public FilterRegistrationBean addRequestWrapperFilter() {
- FilterRegistrationBean<Filter> registration = new FilterRegistrationBean<>();
- registration.setFilter(new RequestWrapperFilter());
- registration.setName("RequestWrapperFilter");
- registration.addUrlPatterns(Constants.CLOUD_SERVICE_URL_INDEX+"/**");
- registration.setOrder(1);
- return registration;
- }
+// @Bean
+// public FilterRegistrationBean addRequestWrapperFilter() {
+// FilterRegistrationBean<Filter> registration = new FilterRegistrationBean<>();
+// registration.setFilter(new RequestWrapperFilter());
+// registration.setName("RequestWrapperFilter");
+// registration.addUrlPatterns(Constants.CLOUD_SERVICE_URL_INDEX+"/**");
+// registration.setOrder(1);
+// return registration;
+// }
}
\ No newline at end of file
diff --git a/server/system_service/src/main/java/com/doumee/core/aware/DefaultDataPermissionAware.java b/server/system_service/src/main/java/com/doumee/core/aware/DefaultDataPermissionAware.java
index 08f7789..8bf4831 100644
--- a/server/system_service/src/main/java/com/doumee/core/aware/DefaultDataPermissionAware.java
+++ b/server/system_service/src/main/java/com/doumee/core/aware/DefaultDataPermissionAware.java
@@ -43,7 +43,7 @@
// return this.defaultData(loginUserInfo.getId());
// }
SystemDataPermission systemDataPermission = new SystemDataPermission();
- systemDataPermission.setType((short)0);
+ systemDataPermission.setType(0);
List<SystemDataPermission> dataPermissions = new ArrayList<>();
dataPermissions.add(systemDataPermission);
// 鎸夎鑹茬殑鏁版嵁鏉冮檺浼樺厛绾ц繑鍥炴暟鎹�
diff --git a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
index 228100f..bdfaecf 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -5,6 +5,7 @@
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
+import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import java.io.IOException;
@@ -16,6 +17,8 @@
import java.util.Date;
import java.util.List;
import java.util.Random;
+import java.util.*;
+import java.util.Date;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -96,6 +99,10 @@
public static final String CLOUD_SERVICE_URL_INDEX = "/cloudService";
public static final String VISIT_TIPS = "VISIT_TIPS";
public static final String VISIT_GUIDEMAP = "VISIT_GUIDEMAP";
+ public static final String HIDDEN_DANGER_FILE = "HIDDEN_DANGER_FILE";
+ public static final String LOG_DEL_DAYS_LIMIT ="LOG_DEL_DAYS_LIMIT" ;
+ public static final String HK_LOG_DEL_DAYS_LIMIT ="HK_LOG_DEL_DAYS_LIMIT" ;
+
public static boolean DEALING_HK_SYNCPRIVILEGE= false;
public static boolean DEALING_HK_SYNCDEVICE = false;
public static boolean DEALING_HK_SYNCDEVICE_STATUS = false;
@@ -143,6 +150,14 @@
return sb.toString();
}
+ public interface DATAPERMISSION_TYPE{
+ public static final int all = 0;
+ public static final int departAndChild = 1;
+ public static final int departAndLeaf = 2;
+ public static final int depart = 3;
+ public static final int custom = 4;
+ public static final int self = -1;
+ }
public static Date getBirthdyByCardNo(String idCard){
if(idCard ==null || idCard.length()<14){
return null;
@@ -723,7 +738,138 @@
this.info = info;
}
}
+ /**
+ * 鍏宠仈瀵硅薄绫诲瀷
+ 鍏宠仈瀵硅薄绫诲瀷 0浼佷笟钀ヤ笟鎵х収 1鐞嗚禂鎶ユ浜嬫晠瑙嗛鎴栧浘鐗� 2鐞嗚禂鍛樺伐鍏崇郴璇佹槑鏉愭枡 3鐞嗚禂闂ㄨ瘖璧勬枡 4鐞嗚禂浣忛櫌璧勬枡 5鐞嗚禂浼ゆ畫璧勬枡 6鐞嗚禂璧斾粯缁撴鏉愭枡 7浼佷笟韬唤璇佸彿 8淇濆崟鐢宠琛≒DF 9绛剧讲鍚庝繚鍗曠敵璇疯〃PDF 10浼佷笟绛剧珷 11鏈�缁堟姤鍗�
+ */
+ public enum MultiFile{
+ HIDDEN_DANGER_SUBMIT(0, "闅愭偅闅忔墜鎷嶆彁鎶�", "闅愭偅闅忔墜鎷嶆彁鎶�"),
+ HIDDEN_DANGER_DEAL_BEFORE(1, "闅愭偅闅忔墜鎷嶅鐞嗗墠", "闅愭偅闅忔墜鎷嶅鐞嗗墠"),
+ HIDDEN_DANGER_DEAL_AFTER(2, "闅愭偅闅忔墜鎷嶅鐞嗗悗 ", "闅愭偅闅忔墜鎷嶅鐞嗗悗 "),
+ ;
+ // 鎴愬憳鍙橀噺
+ private String name;
+ private int key;
+ private String noteinfo;// 鎻忚堪
+ // 鏋勯�犳柟娉�
+ MultiFile(int key, String name, String noteinfo) {
+ this.name = name;
+ this.key = key;
+ this.noteinfo = noteinfo;
+ }
+
+ // 鏅�氭柟娉�
+ public static String getName(int index) {
+ for (MultiFile c : MultiFile.values()) {
+ if (c.getKey() == index) {
+ return c.name;
+ }
+ }
+ return null;
+ }
+
+ // 鏅�氭柟娉�
+ public static String getInfo(int index) {
+ for (MultiFile c : MultiFile.values()) {
+ if (c.getKey() == index) {
+ return c.noteinfo;
+ }
+ }
+ return null;
+ }
+
+ // get set 鏂规硶
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public int getKey() {
+ return key;
+ }
+
+ public void setKey(int key) {
+ this.key = key;
+ }
+
+ public String getNoteinfo() {
+ return noteinfo;
+ }
+
+
+
+ }
+ /**
+ * 瀹℃壒妯℃嫙绫诲瀷 0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害
+ */
+ public enum ApproveTmplType{
+ NOT_SG_VISIT(0, "闈炴柦宸ヤ汉鍛樿瀹㈢敵璇�", "闈炴柦宸ヤ汉鍛樿瀹㈢敵璇�"),
+ SG_VISIT(1, "鏂藉伐浜哄憳璁垮鐢宠", "鏂藉伐浜哄憳璁垮鐢宠"),
+ CAR_VISIT(2, "璁垮鎶ュ ", "璁垮鎶ュ "),
+ IN_CITY_CAR_USE(3, "鍏溅甯傚唴鐢ㄨ溅 ", "鍏溅甯傚唴鐢ㄨ溅 "),
+ OUT_CITY_CAR_USE(4, "鍏溅瀹ゅ鐢ㄨ溅 ", "鍏溅瀹ゅ鐢ㄨ溅 "),
+ CITY_WLC_BOOK(5, "甯傚叕鍙哥墿娴佽溅棰勭害 ", "5甯傚叕鍙哥墿娴佽溅棰勭害 "),
+ ;
+ // 鎴愬憳鍙橀噺
+ private String name;
+ private int key;
+ private String noteinfo;// 鎻忚堪
+
+ // 鏋勯�犳柟娉�
+ ApproveTmplType(int key, String name, String noteinfo) {
+ this.name = name;
+ this.key = key;
+ this.noteinfo = noteinfo;
+ }
+
+ // 鏅�氭柟娉�
+ public static String getName(int index) {
+ for (ApproveTmplType c : ApproveTmplType.values()) {
+ if (c.getKey() == index) {
+ return c.name;
+ }
+ }
+ return null;
+ }
+
+ // 鏅�氭柟娉�
+ public static String getInfo(int index) {
+ for (ApproveTmplType c : ApproveTmplType.values()) {
+ if (c.getKey() == index) {
+ return c.noteinfo;
+ }
+ }
+ return null;
+ }
+
+ // get set 鏂规硶
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public int getKey() {
+ return key;
+ }
+
+ public void setKey(int key) {
+ this.key = key;
+ }
+
+ public String getNoteinfo() {
+ return noteinfo;
+ }
+
+
+
+ }
public enum NoticeObjectType {
MEETING_BOOK_SUCCESS(0, "浼氫笌棰勫畾鎴愬姛","浼氫笌棰勫畾鎴愬姛"),
MEETING_CACEL(1, "浼氳鍙栨秷","浼氳鍙栨秷"),
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/SystemDataPermissionMapper.java b/server/system_service/src/main/java/com/doumee/dao/system/SystemDataPermissionMapper.java
index b972789..403d3c5 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/SystemDataPermissionMapper.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/SystemDataPermissionMapper.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.system.model.SystemDataPermission;
+import com.doumee.dao.system.model.SystemRole;
import com.doumee.dao.system.vo.SystemDataPermissionListVO;
import org.apache.ibatis.annotations.Param;
@@ -21,4 +22,6 @@
* @return List<SystemDataPermissionListVO>
*/
List<SystemDataPermissionListVO> selectManageList(@Param("dto") SystemDataPermission dto, @Param("orderByClause") String orderByClause);
+
+ List<SystemDataPermissionListVO> selectUserList(@Param("dto") SystemDataPermission dto, @Param("role") SystemRole role, @Param("userId") Integer userId);
}
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java b/server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java
index 2c274ae..3efbe3b 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/model/Multifile.java
@@ -79,6 +79,6 @@
@ApiModelProperty(value = "鏂囦欢鍦板潃")
@TableField(exist = false)
- private String fileFullUrl;
+ private String fileurlFull;
}
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/model/SystemDataPermission.java b/server/system_service/src/main/java/com/doumee/dao/system/model/SystemDataPermission.java
index 7f82b15..028c6d1 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/model/SystemDataPermission.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/model/SystemDataPermission.java
@@ -40,7 +40,7 @@
@ApiModelProperty(value = "鏉冮檺绫诲瀷锛�0鍏ㄩ儴锛�1鑷畾涔夛紝2浠呯敤鎴锋墍灞烇紝3鐢ㄦ埛鎵�灞炲強鍏跺瓙鏁版嵁锛�", example = "1")
@NotNull(message = "鏉冮檺绫诲瀷涓嶈兘涓虹┖", groups = {OperaType.Create.class, OperaType.Update.class})
- private Short type;
+ private Integer type;
@ApiModelProperty(value = "鑷畾涔夋暟鎹�")
private String customData;
diff --git a/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java b/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java
index 7b8d088..5ebe99e 100644
--- a/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java
+++ b/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java
@@ -17,6 +17,7 @@
import javax.validation.constraints.Pattern;
import java.io.Serializable;
import java.util.Date;
+import java.util.List;
/**
* 绯荤粺鐢ㄦ埛
@@ -107,5 +108,8 @@
@ApiModelProperty(value = "0 鍚敤 1 绂佺敤")
@TableField(exist = false)
private String companyName;
+ @ApiModelProperty(value = "鏁版嵁鏉冮檺鍐呴儴闂ㄧ紪鐮侀泦鍚�")
+ @TableField(exist = false)
+ private List<Integer> companyIdList;
}
diff --git a/server/system_service/src/main/java/com/doumee/service/system/SystemDataPermissionService.java b/server/system_service/src/main/java/com/doumee/service/system/SystemDataPermissionService.java
index d05ec2a..8dfd607 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/SystemDataPermissionService.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/SystemDataPermissionService.java
@@ -3,6 +3,8 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.system.model.SystemDataPermission;
+import com.doumee.dao.system.model.SystemRole;
+import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.system.vo.SystemDataPermissionListVO;
import java.util.List;
@@ -105,4 +107,8 @@
* @return long
*/
long count(SystemDataPermission systemDataPermission);
+
+ List<Integer> selectHighRole(SystemDataPermission systemDataPermission, SystemRole rt, SystemUser user);
+
+ SystemDataPermission findByRoleId(SystemDataPermission pageWrap);
}
diff --git a/server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java b/server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java
index 6eaf6f6..67cbee2 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java
@@ -95,7 +95,6 @@
Utils.MP.blankToNull(pageWrap.getModel());
LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
-
queryWrapper.selectAll(Notices.class);
if (pageWrap.getModel().getIsdeleted() != null) {
queryWrapper.eq(Notices::getIsdeleted, pageWrap.getModel().getIsdeleted());
@@ -130,7 +129,6 @@
}else{
queryWrapper.orderByDesc(Notices::getCreateDate);
}
-
PageData<Notices> pageData = PageData.from(noticesMapper.selectJoinPage(page,Notices.class, queryWrapper));
return pageData;
diff --git a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemDataPermissionServiceImpl.java b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemDataPermissionServiceImpl.java
index 6c62016..a62e6f6 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemDataPermissionServiceImpl.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemDataPermissionServiceImpl.java
@@ -1,25 +1,32 @@
package com.doumee.service.system.impl;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.dao.CompanyMapper;
+import com.doumee.dao.business.model.Company;
import com.doumee.dao.system.SystemDataPermissionMapper;
import com.doumee.dao.system.SystemRoleMapper;
import com.doumee.dao.system.model.SystemDataPermission;
import com.doumee.dao.system.model.SystemRole;
+import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.system.vo.SystemDataPermissionListVO;
import com.doumee.service.system.SystemDataPermissionService;
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collections;
import java.util.List;
+import java.util.stream.Collectors;
/**
* 鏁版嵁鏉冮檺閰嶇疆Service瀹炵幇
@@ -34,6 +41,8 @@
@Autowired
private SystemRoleMapper systemRoleMapper;
+ @Autowired
+ private CompanyMapper companyMapper;
@Override
public Integer create(SystemDataPermission systemDataPermission) {
@@ -132,4 +141,148 @@
Wrapper<SystemDataPermission> wrapper = new QueryWrapper<>(systemDataPermission);
return systemDataPermissionMapper.selectCount(wrapper);
}
+ @Override
+ public SystemDataPermission findByRoleId(SystemDataPermission pageWrap){
+ if ( pageWrap.getRoleId() == null) {
+ return null;
+ }
+
+ // 鏌ヨ鏁版嵁鏉冮檺
+ QueryWrapper<SystemDataPermission> queryWrapper = new QueryWrapper<>();
+ queryWrapper.lambda()
+ .eq(SystemDataPermission::getBusinessCode, "DEPARTMENT")
+ .eq(SystemDataPermission::getRoleId, pageWrap.getRoleId())
+ .eq(SystemDataPermission::getDeleted, Boolean.FALSE)
+ .eq(SystemDataPermission::getDisabled, Boolean.FALSE);
+ List<SystemDataPermission> result = systemDataPermissionMapper.selectList(queryWrapper);
+ if(result!=null && result.size()>0){
+ return result.get(0);
+ }
+ return null;
+ }
+
+
+ @Override
+ public List<Integer> selectHighRole(SystemDataPermission model, SystemRole role, SystemUser user) {
+ List<SystemDataPermissionListVO>list = systemDataPermissionMapper.selectUserList(model,role,user.getId()) ;
+ if(list !=null){
+ boolean all = false;
+ boolean departAndChild=false;
+ boolean depart=false;
+ boolean departAndLeaf=false;
+ boolean custom=false;
+ String c = "";
+ for(SystemDataPermissionListVO d : list){
+ if(!all && Constants.equalsInteger(d.getType(),Constants.DATAPERMISSION_TYPE.all)){
+ all =true;
+ }
+ if(!depart && Constants.equalsInteger(d.getType(),Constants.DATAPERMISSION_TYPE.depart)){
+ depart =true;
+ }
+ if(!departAndChild && Constants.equalsInteger(d.getType(),Constants.DATAPERMISSION_TYPE.departAndChild)){
+ departAndChild =true;
+ }
+ if(!departAndLeaf && Constants.equalsInteger(d.getType(),Constants.DATAPERMISSION_TYPE.departAndLeaf)){
+ departAndLeaf =true;
+ }
+ if( Constants.equalsInteger(d.getType(),Constants.DATAPERMISSION_TYPE.custom)){
+ custom =true;
+ c += StringUtils.defaultString(d.getCustomData(),"");
+ }
+ }
+ Company department = new Company();
+ department.setId(user.getCompanyId());
+
+ if(all){
+ return null;
+ }else{
+ List<Integer> dList = new ArrayList<>();
+ dList.add(-1);//铏氭嫙閮ㄩ棬锛屾帓鏌ョ┖闆嗗悎
+ if(custom) {
+ //濡傛灉鏈夎嚜瀹氫箟閮ㄩ棬
+ String[] idStrs = c.split(",");
+ for(String s :idStrs){
+ try {
+ Integer si = Integer.parseInt(s);
+ if(!isExists(si,dList)){
+ dList.add(si);
+ }
+ }catch (Exception e){
+ }
+ }
+ }
+ if(departAndLeaf){
+ if(department!= null){
+ dList.addAll(userDataPermissonList(department,true));
+ }
+ }else if(departAndChild){
+ if(department!= null) {
+ dList.addAll(userDataPermissonList(department, false));
+ }
+ }else if(depart){
+ if(department!= null && !isExists(department.getId(), dList)){
+ dList.add(department.getId());
+ }
+ }
+ return dList;
+ }
+ }
+ return new ArrayList<>();
+ }
+
+ public List<Integer> userDataPermissonList(Company depart ,boolean isleaf) {
+ List<Integer> pool = new ArrayList<>();
+ List<Company> departList = companyMapper.selectList(new QueryWrapper<Company>().lambda()
+ .eq(Company::getIsdeleted,Constants.ZERO ) );
+ pool.add(depart.getId());
+ this.fillDepartChildren(pool, Arrays.asList(depart.getId()),isleaf,departList);
+ return pool;
+ }
+
+ private void fillDepartChildren(List<Integer> pool, List<Integer> asList, boolean isleaf, List<Company> departList) {
+ List<Company> departments = getDepartListByParentIds(asList,departList);
+ List<Integer> ids = departments.stream().map(Company::getId).collect(Collectors.toList());
+ if(isleaf){
+ if (ids.size() > 0) {
+ pool.addAll(ids);
+ this.fillDepartChildren(pool, ids,isleaf,departList);
+ }
+ }else{
+ pool.addAll(ids);
+ }
+
+ }
+
+ private List<Company> getDepartListByParentIds(List<Integer> asList, List<Company> departList) {
+ List<Company> list = new ArrayList<>();
+ if(asList.size()>0){
+ for(Integer id : asList){
+ list.addAll(getDepartListByParentId(id,departList));
+ }
+ }
+ return list;
+ }
+
+
+ private List<Company> getDepartListByParentId(Integer pId, List<Company> departList) {
+ List<Company> list = new ArrayList<>();
+ if(departList!= null){
+ for(Company d :departList){
+ if(Constants.equalsInteger(d.getParentId(),pId)){
+ list.add(d);
+ }
+ }
+ }
+ return list;
+ }
+ private boolean isExists(Integer s, List<Integer> dList) {
+ if(dList!=null){
+ for(Integer t : dList){
+ if(Constants.equalsInteger(s,t)){
+ return true;
+ }
+ }
+ }
+ return false;
+ }
}
diff --git a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
index eeeea19..3cd3c00 100644
--- a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
+++ b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java
@@ -5,10 +5,7 @@
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.utils.Utils;
import com.doumee.dao.system.dto.LoginDTO;
-import com.doumee.dao.system.model.SystemLoginLog;
-import com.doumee.dao.system.model.SystemPermission;
-import com.doumee.dao.system.model.SystemRole;
-import com.doumee.dao.system.model.SystemUser;
+import com.doumee.dao.system.model.*;
import com.doumee.service.common.CaptchaService;
import com.doumee.service.system.*;
import lombok.extern.slf4j.Slf4j;
@@ -39,6 +36,9 @@
@Autowired
private SystemUserService systemUserService;
+ @Lazy
+ @Autowired
+ private SystemDataPermissionService systemDataPermissionService;
@Lazy
@Autowired
private SystemRoleService systemRoleService;
@@ -138,6 +138,12 @@
// 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅
List<SystemRole> roles = systemRoleService.findByUserId(user.getId());
List<SystemPermission> permissions = systemPermissionService.findByUserId(user.getId());
+
+ SystemRole rt = new SystemRole();
+ rt.setDeleted(Boolean.FALSE);
+ //鏁版嵁閮ㄩ棬鏉冮檺闆嗗悎
+ user.setCompanyIdList(systemDataPermissionService.selectHighRole(new SystemDataPermission(),rt,user));
+
LoginUserInfo userInfo = LoginUserInfo.from(user, roles, permissions,null);
return userInfo;
}
diff --git a/server/system_service/src/main/java/com/doumee/service/timer/QuartzJobService.java b/server/system_service/src/main/java/com/doumee/service/timer/QuartzJobService.java
index 0f894b1..bfe0442 100644
--- a/server/system_service/src/main/java/com/doumee/service/timer/QuartzJobService.java
+++ b/server/system_service/src/main/java/com/doumee/service/timer/QuartzJobService.java
@@ -1,6 +1,14 @@
package com.doumee.service.timer;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
import com.doumee.dao.timer.entity.JobState;
import com.doumee.dao.timer.entity.QuartzJob;
import com.doumee.dao.timer.mapper.QuartzJobMapper;
@@ -90,4 +98,32 @@
quartzManage.run(quartzJob);
}
}
+
+ public PageData<QuartzJob> findPage(PageWrap<QuartzJob> pageWrap) {
+ IPage<QuartzJob> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<QuartzJob> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ queryWrapper.lambda()
+ .eq(pageWrap.getModel().getId() != null, QuartzJob::getId, pageWrap.getModel().getId())
+ .eq(pageWrap.getModel().getParams() != null, QuartzJob::getParams, pageWrap.getModel().getParams())
+ .like(pageWrap.getModel().getBeanName() != null, QuartzJob::getBeanName, pageWrap.getModel().getBeanName())
+ .eq(pageWrap.getModel().getState() != null, QuartzJob::getState, pageWrap.getModel().getState())
+ .eq(pageWrap.getModel().getRemark() != null, QuartzJob::getRemark, pageWrap.getModel().getRemark())
+ .like(pageWrap.getModel().getModule() != null, QuartzJob::getModule, pageWrap.getModel().getModule())
+ ;
+ return PageData.from(quartzJobMapper.selectPage(page, queryWrapper));
+ }
+
+
+ public void updateById(QuartzJob model) {
+ QuartzJob quartzJob = quartzJobMapper.selectById(model.getId()) ;
+ if (Objects.isNull(quartzJob)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ pause(model.getId());//鏆傚仠
+ //鍏堝垹闄ゅ氨浠诲姟
+ quartzManage.deleteJob(model.getId());
+ quartzJob.setState(JobState.JOB_STOP.getStatus());
+ quartzJobMapper.updateById(quartzJob) ;
+ }
}
\ No newline at end of file
diff --git a/server/system_service/src/main/resources/mappers/SystemDataPermissionMapper.xml b/server/system_service/src/main/resources/mappers/SystemDataPermissionMapper.xml
index 13f821f..3e84dba 100644
--- a/server/system_service/src/main/resources/mappers/SystemDataPermissionMapper.xml
+++ b/server/system_service/src/main/resources/mappers/SystemDataPermissionMapper.xml
@@ -43,5 +43,30 @@
</where>
${orderByClause}
</select>
-
+ <select id="selectUserList" resultMap="SystemDataPermissionListVO">
+ SELECT
+ sdp.`ID`, sdp.`BUSINESS_CODE`, sdp.`ROLE_ID`, sdp.`TYPE`, sdp.`CUSTOM_DATA`, sdp.`DISABLED`, sdp.`REMARK`, sdp.DISABLED, sdp.`CREATE_TIME`, sdp.`UPDATE_TIME`,
+ role.`ID` AS ROLE_ID, role.`CODE` AS ROLE_CODE, role.`NAME` AS ROLE_NAME,
+ create_user.ID CREATE_USER_ID, create_user.`USERNAME` CREATE_USER_NAME,
+ update_user.ID UPDETE_USER_ID, update_user.`USERNAME` UPDATE_USER_NAME
+ FROM SYSTEM_DATA_PERMISSION sdp
+ INNER JOIN `SYSTEM_ROLE` role ON role.ID = sdp.ROLE_ID
+ LEFT JOIN `SYSTEM_USER` create_user ON create_user.ID = sdp.CREATE_USER
+ LEFT JOIN `SYSTEM_USER` update_user ON update_user.ID = sdp.UPDATE_USER
+ <where>
+ sdp.DELETED = 0
+ <if test="dto.businessCode != null and dto.businessCode != ''">
+ AND sdp.`BUSINESS_CODE` = #{dto.businessCode}
+ </if>
+ <if test="dto.roleId != null">
+ AND role.`ID` = #{dto.roleId}
+ </if>
+ <if test="dto.type != null">
+ AND sdp.`TYPE` = #{dto.type}
+ </if>
+ <if test="userId != null">
+ AND exists (select sr.id from system_user_role sr where sr.role_id=sdp.role_id and sr.user_id=#{userId} and sr.deleted=0)
+ </if>
+ </where>
+ </select>
</mapper>
diff --git a/server/system_timer/src/main/java/com/doumee/api/timer/QuartzCloudController.java b/server/system_timer/src/main/java/com/doumee/api/timer/QuartzCloudController.java
new file mode 100644
index 0000000..2c355e0
--- /dev/null
+++ b/server/system_timer/src/main/java/com/doumee/api/timer/QuartzCloudController.java
@@ -0,0 +1,79 @@
+package com.doumee.api.timer;
+
+import com.doumee.api.BaseController;
+import com.doumee.config.annotation.CloudRequiredPermission;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.dao.timer.entity.QuartzJob;
+import com.doumee.service.timer.QuartzJobService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author 姹熻箘韫�
+ * @since 2024/04/28 16:06
+ */
+@Api(tags = "浣滀笟璋冨害骞冲彴鎺ュ彛浜や簰璁板綍")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/quartz")
+public class QuartzCloudController extends BaseController {
+
+ @Autowired
+ private QuartzJobService quartzJobService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:quartz:create")
+ public ApiResponse create(@RequestBody QuartzJob quartzJob ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ quartzJobService.insert(quartzJob) ;
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:quartz:update")
+ public ApiResponse updateById(@RequestBody QuartzJob quartzJob,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ quartzJobService.update(quartzJob);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation( "鍋滄浠诲姟")
+ @GetMapping("/pause/{id}")
+ @CloudRequiredPermission("business:quartz:update")
+ public ApiResponse pause(@PathVariable("id") Integer id) {
+ quartzJobService.pause(id); return ApiResponse.success(null);
+ }
+
+ @ApiOperation( "鎭㈠浠诲姟")
+ @GetMapping("/resume/{id}")
+ @CloudRequiredPermission("business:quartz:update")
+ public ApiResponse resume(@PathVariable("id") Integer id) {
+ quartzJobService.resume(id) ; return ApiResponse.success(null);
+ }
+
+ @ApiOperation( "鎵ц涓�娆�")
+ @GetMapping("/runOnce/{id}")
+ @CloudRequiredPermission("business:quartz:update")
+ public ApiResponse runOnce(@PathVariable("id") Integer id) {
+ quartzJobService.runOnce(id) ; return ApiResponse.success(null);
+ }
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:quartz:query")
+ public ApiResponse<PageData<QuartzJob>> findPage (@RequestBody PageWrap<QuartzJob> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ return ApiResponse.success(quartzJobService.findPage(pageWrap));
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:quartz:query")
+ public ApiResponse<QuartzJob> findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ return ApiResponse.success( quartzJobService.getById(id));
+ }
+}
diff --git a/server/system_timer/src/main/java/com/doumee/api/timer/QuartzController.java b/server/system_timer/src/main/java/com/doumee/api/timer/QuartzController.java
index 0535e68..4695267 100644
--- a/server/system_timer/src/main/java/com/doumee/api/timer/QuartzController.java
+++ b/server/system_timer/src/main/java/com/doumee/api/timer/QuartzController.java
@@ -10,7 +10,7 @@
import javax.annotation.Resource;
@RestController
-@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/quartz")
+@RequestMapping( "/business/quartz")
@Api(tags = "瀹氭椂浠诲姟鎺ュ彛")
public class QuartzController {
diff --git a/server/visits/admin_timer/src/main/java/com/doumee/api/HkLogTimerController.java b/server/visits/admin_timer/src/main/java/com/doumee/api/InterfaceLogTimerController.java
similarity index 74%
rename from server/visits/admin_timer/src/main/java/com/doumee/api/HkLogTimerController.java
rename to server/visits/admin_timer/src/main/java/com/doumee/api/InterfaceLogTimerController.java
index 6a04b5e..e963898 100644
--- a/server/visits/admin_timer/src/main/java/com/doumee/api/HkLogTimerController.java
+++ b/server/visits/admin_timer/src/main/java/com/doumee/api/InterfaceLogTimerController.java
@@ -1,19 +1,14 @@
package com.doumee.api;
-import com.doumee.api.BaseController;
import com.doumee.core.model.ApiResponse;
-import com.doumee.core.utils.Constants;
import com.doumee.service.business.InterfaceLogService;
-import com.doumee.service.business.impl.hksync.HkSyncVisitServiceImpl;
-import com.doumee.service.business.impl.hksync.fhk.HkSyncVisitFromHKServiceImpl;
+import com.doumee.service.business.PlatformInterfaceLogService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
-
-import java.util.Date;
/**
* @author 姹熻箘韫�
@@ -22,14 +17,17 @@
@Api(tags = "鏃ュ織瀹氭椂鍣ㄦ帴鍙�")
@RestController
@RequestMapping("/timer/log")
-public class HkLogTimerController extends BaseController {
+public class InterfaceLogTimerController extends BaseController {
@Autowired
private InterfaceLogService interfaceLogService;
+ @Autowired
+ private PlatformInterfaceLogService platformInterfaceLogService;
@ApiOperation("寮�鍚畾鏃舵帴鍙f棩蹇楁竻鐞�")
@GetMapping("/clearThreeMonthLog")
public ApiResponse clearThreeMonthLog() {
interfaceLogService.clearThreeMonthLog();
+ platformInterfaceLogService.clearThreeMonthLog();
return ApiResponse.success("寮�鍚畾鏃舵帴鍙f棩蹇楁竻鐞嗘垚鍔�");
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveTemplController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveTemplController.java
index cc3e9f8..cd76650 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveTemplController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/ApproveTemplController.java
@@ -39,7 +39,7 @@
@GetMapping("/delete/{id}")
@RequiresPermissions("business:approvetempl:delete")
public ApiResponse deleteById(@PathVariable Integer id) {
- approveTemplService.deleteById(id);
+ approveTemplService.deleteById(id,this.getLoginUser(null));
return ApiResponse.success(null);
}
@@ -47,7 +47,7 @@
@GetMapping("/delete/batch")
@RequiresPermissions("business:approvetempl:delete")
public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
- approveTemplService.deleteByIdInBatch(this.getIdList(ids));
+ approveTemplService.deleteByIdInBatch(this.getIdList(ids),this.getLoginUser(null));
return ApiResponse.success(null);
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerParamController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerParamController.java
index eb57694..d0f1c31 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerParamController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/api/business/HiddenDangerParamController.java
@@ -39,7 +39,7 @@
@GetMapping("/delete/{id}")
@RequiresPermissions("business:hiddendangerparam:delete")
public ApiResponse deleteById(@PathVariable Integer id) {
- hiddenDangerParamService.deleteById(id);
+ hiddenDangerParamService.deleteById(id,this.getLoginUser(null));
return ApiResponse.success(null);
}
@@ -47,7 +47,7 @@
@GetMapping("/delete/batch")
@RequiresPermissions("business:hiddendangerparam:delete")
public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
- hiddenDangerParamService.deleteByIdInBatch(this.getIdList(ids));
+ hiddenDangerParamService.deleteByIdInBatch(this.getIdList(ids),this.getLoginUser(null));
return ApiResponse.success(null);
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ApproveTemplCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ApproveTemplCloudController.java
index 040c6f8..7d82a68 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ApproveTemplCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/ApproveTemplCloudController.java
@@ -34,14 +34,23 @@
@PostMapping("/create")
@CloudRequiredPermission("business:approvetempl:create")
public ApiResponse create(@RequestBody ApproveTempl approveTempl,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ approveTempl.setLoginUserInfo(this.getLoginUser(token));
return ApiResponse.success(approveTemplService.create(approveTempl));
+ }
+ @PreventRepeat
+ @ApiOperation("鍙戝竷妯$増")
+ @PostMapping("/save")
+ @CloudRequiredPermission("business:approvetempl:create")
+ public ApiResponse save(@RequestBody ApproveTempl approveTempl,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ approveTempl.setLoginUserInfo(this.getLoginUser(token));
+ return ApiResponse.success(approveTemplService.save(approveTempl));
}
@ApiOperation("鏍规嵁ID鍒犻櫎")
@GetMapping("/delete/{id}")
@CloudRequiredPermission("business:approvetempl:delete")
public ApiResponse deleteById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
- approveTemplService.deleteById(id);
+ approveTemplService.deleteById(id,this.getLoginUser(token));
return ApiResponse.success(null);
}
@@ -49,7 +58,7 @@
@GetMapping("/delete/batch")
@CloudRequiredPermission("business:approvetempl:delete")
public ApiResponse deleteByIdInBatch(@RequestParam String ids,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
- approveTemplService.deleteByIdInBatch(this.getIdList(ids));
+ approveTemplService.deleteByIdInBatch(this.getIdList(ids),this.getLoginUser(token));
return ApiResponse.success(null);
}
@@ -57,6 +66,7 @@
@PostMapping("/updateById")
@CloudRequiredPermission("business:approvetempl:update")
public ApiResponse updateById(@RequestBody ApproveTempl approveTempl,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ approveTempl.setLoginUserInfo(this.getLoginUser(token));
approveTemplService.updateById(approveTempl);
return ApiResponse.success(null);
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CarUseBookCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CarUseBookCloudController.java
index 7657b26..0c6e2df 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CarUseBookCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/CarUseBookCloudController.java
@@ -100,4 +100,11 @@
return ApiResponse.success(carUseBookService.checkDateUse(carId,dateDay));
}
+ @ApiOperation("鐢宠鎾ら攢")
+ @GetMapping("/revoke")
+ public ApiResponse revoke (@RequestParam Integer id, @RequestParam String info, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){
+ carUseBookService.revoke(id,info,getLoginUser(token));
+ return ApiResponse.success("鎿嶄綔鎴愬姛");
+ }
+
}
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
index 69592d7..31c8ac8 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
@@ -13,6 +13,7 @@
import com.doumee.dao.admin.request.LaborMemberDTO;
import com.doumee.dao.admin.request.MemberImport;
import com.doumee.dao.admin.request.MemberQuery;
+import com.doumee.dao.business.dto.RegisterDriverDTO;
import com.doumee.dao.business.dto.ResetPasswordDTO;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.MemberRole;
@@ -327,4 +328,16 @@
return ApiResponse.success(null);
}
+
+ @LoginNoRequired
+ @ApiOperation("鍙告満娉ㄥ唽")
+ @PostMapping("/registerDriver")
+ public ApiResponse registerDriver(@RequestBody RegisterDriverDTO registerDriverDTO ){
+ memberService.registerDriver(registerDriverDTO);
+ return ApiResponse.success("娉ㄥ唽鎴愬姛");
+ }
+
+
+
+
}
diff --git a/server/visits/dmvisit_service/pom.xml b/server/visits/dmvisit_service/pom.xml
index 7b13c12..7bacbec 100644
--- a/server/visits/dmvisit_service/pom.xml
+++ b/server/visits/dmvisit_service/pom.xml
@@ -22,5 +22,10 @@
<artifactId>system_service</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
+ <dependency>
+ <groupId>com.doumee</groupId>
+ <artifactId>emaysms</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </dependency>
</dependencies>
</project>
\ No newline at end of file
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java
index a7f0618..0dfa3e2 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/ApproveParamMapper.java
@@ -3,10 +3,13 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.ApproveParam;
+import java.util.List;
+
/**
* @author 姹熻箘韫�
* @date 2023/12/28 11:46
*/
public interface ApproveParamMapper extends BaseMapper<ApproveParam> {
+ void insertBatchSomeColumn(List<ApproveParam> paramList);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/HiddenDangerMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/HiddenDangerMapper.java
index 91715e6..6a22252 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/HiddenDangerMapper.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/HiddenDangerMapper.java
@@ -2,11 +2,12 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.HiddenDanger;
+import com.github.yulichang.base.MPJBaseMapper;
/**
* @author 姹熻箘韫�
* @since 2024/04/28 16:06
*/
-public interface HiddenDangerMapper extends BaseMapper<HiddenDanger> {
+public interface HiddenDangerMapper extends MPJBaseMapper<HiddenDanger> {
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/RegisterDriverDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/RegisterDriverDTO.java
new file mode 100644
index 0000000..3af8b5c
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/dto/RegisterDriverDTO.java
@@ -0,0 +1,29 @@
+package com.doumee.dao.business.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * Created by IntelliJ IDEA.
+ *
+ * @Author : Rk
+ * @create 2024/5/20 14:54
+ */
+@Data
+public class RegisterDriverDTO {
+
+ @ApiModelProperty(value = "濮撳悕")
+ private String name;
+
+ @ApiModelProperty(value = "鎵嬫満鍙�")
+ private String phone;
+
+ @ApiModelProperty(value = "楠岃瘉鐮�")
+ private String validCode;
+
+ @ApiModelProperty(value = "瀵嗙爜")
+ private String password;
+
+
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java
new file mode 100644
index 0000000..86d86d7
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/ApproveJoinMapper.java
@@ -0,0 +1,18 @@
+package com.doumee.dao.business.join;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.Approve;
+import com.github.yulichang.base.mapper.MPJJoinMapper;
+
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/12/28 14:09
+ */
+public interface ApproveJoinMapper extends MPJJoinMapper<Approve> {
+
+ void insertBatchSomeColumn(List<Approve> list);
+
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Approve.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Approve.java
index 3ae9442..46c455d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Approve.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Approve.java
@@ -1,5 +1,6 @@
package com.doumee.dao.business.model;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import com.doumee.core.model.LoginUserModel;
import io.swagger.annotations.ApiModel;
@@ -68,8 +69,8 @@
@ExcelColumn(name="ERP瀹℃壒缂栫爜")
private String erpId;
- @ApiModelProperty(value = "瀹℃壒鐘舵�� 0寰呭鎵� 1瀹℃壒涓� 2瀹℃壒閫氳繃 3瀹℃壒鏈�氳繃 4浠栦汉宸插鐞�", example = "1")
- @ExcelColumn(name="瀹℃壒鐘舵�� 0寰呭鎵� 1瀹℃壒涓� 2瀹℃壒閫氳繃 3瀹℃壒鏈�氳繃 4浠栦汉宸插鐞�")
+ @ApiModelProperty(value = "瀹℃壒鐘舵�� 0寰呰嚜宸卞鎵瑰鎵� 1寰呰嚜宸卞鎵� 2瀹℃壒閫氳繃 3瀹℃壒鏈�氳繃 4浠栦汉宸插鐞� ", example = "1")
+ @ExcelColumn(name="瀹℃壒鐘舵�� 0寰呰嚜宸卞鎵瑰鎵� 1寰呰嚜宸卞鎵� 2瀹℃壒閫氳繃 3瀹℃壒鏈�氳繃 4浠栦汉宸插鐞�")
private Integer status;
@ApiModelProperty(value = "鐘舵�佷俊鎭�")
@@ -96,9 +97,6 @@
@ExcelColumn(name="鍏宠仈涓氬姟涓婚敭")
private Integer objId;
- @ApiModelProperty(value = "鍏宠仈涓氬姟绫诲瀷锛�0=璁垮鐢宠锛�1=鐢ㄨ溅鐢宠", example = "1")
- @ExcelColumn(name="鍏宠仈涓氬姟绫诲瀷锛�0=璁垮鐢宠锛�1=鐢ㄨ溅鐢宠")
- private Integer objType;
@ApiModelProperty(value = "瀹℃壒绛夌骇", example = "1")
@ExcelColumn(name="瀹℃壒绛夌骇")
@@ -108,7 +106,39 @@
@ExcelColumn(name="澶氫汉瀹℃壒鏂瑰紡 0鎴栫 1浼氱")
private Integer approveType;
+
+ @ApiModelProperty(value = "鏄惁鎸囧畾鍙告満椤� 0涓嶆寚瀹� 1鎸囧畾", example = "1")
+ @ExcelColumn(name="鏄惁鎸囧畾鍙告満椤� 0涓嶆寚瀹� 1鎸囧畾")
+ private Integer driverParam;
+
+ @ApiModelProperty(value = "鏄惁淇敼鐩殑鍦� 0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁淇敼鐩殑鍦� 0鍚� 1鏄�")
+ private Integer addrParam;
+
+ @ApiModelProperty(value = "鍏宠仈涓氬姟绫诲瀷锛�0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害", example = "1")
+ @ExcelColumn(name="鍏宠仈涓氬姟绫诲瀷锛�0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害")
+ private Integer objType;
+
@ApiModelProperty(value = "绫诲瀷 0瀹℃壒 1鎶勯��", example = "1")
@ExcelColumn(name="绫诲瀷 0瀹℃壒 1鎶勯��")
private Integer type;
+
+
+
+
+ @ApiModelProperty(value = "濮撳悕", example = "1")
+ @ExcelColumn(name="濮撳悕")
+ @TableField(exist = false)
+ private String memberName;
+
+ @ApiModelProperty(value = "鎵嬫満鍙�", example = "1")
+ @ExcelColumn(name="鎵嬫満鍙�")
+ @TableField(exist = false)
+ private String memberPhone;
+
+ @ApiModelProperty(value = "閮ㄩ棬", example = "1")
+ @ExcelColumn(name="閮ㄩ棬")
+ @TableField(exist = false)
+ private String companyName;
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveParam.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveParam.java
index fa3de7e..8147a87 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveParam.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveParam.java
@@ -71,6 +71,15 @@
@ApiModelProperty(value = "瀹℃壒浜虹紪鐮侊紝澶氫釜鐢ㄨ嫳鏂囬�楀彿闅斿紑")
@ExcelColumn(name="瀹℃壒浜虹紪鐮侊紝澶氫釜鐢ㄨ嫳鏂囬�楀彿闅斿紑")
private String objIds;
+ @ApiModelProperty(value = "妯$増Id")
+ @ExcelColumn(name="妯$増Id")
+ private Integer templId;
+ @ApiModelProperty(value = "鏄惁鎸囧畾鍙告満椤� 0鍚� 1鏄�")
+ @ExcelColumn(name="鏄惁鎸囧畾鍙告満椤� 0鍚� 1鏄�")
+ private Integer driverParam;
+ @ApiModelProperty(value = "鏄惁淇敼鐩殑鍦� 0鍚� 1鏄�")
+ @ExcelColumn(name="鏄惁淇敼鐩殑鍦� 0鍚� 1鏄�")
+ private Integer addrParam;
@ApiModelProperty(value = "瀹℃壒涓荤绛夌骇 0鐩存帴涓荤 1浜岀骇涓荤 2涓夌骇涓荤 4鍥涚骇涓荤", example = "1")
@ExcelColumn(name="瀹℃壒涓荤绛夌骇 0鐩存帴涓荤 1浜岀骇涓荤 2涓夌骇涓荤 4鍥涚骇涓荤")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java
index 43980aa..3735f00 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java
@@ -1,5 +1,6 @@
package com.doumee.dao.business.model;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import com.doumee.core.model.LoginUserModel;
import io.swagger.annotations.ApiModel;
@@ -10,6 +11,7 @@
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
+import java.util.List;
/**
* 瀹℃壒妯$増淇℃伅琛�
@@ -60,4 +62,8 @@
@ExcelColumn(name="鍚嶇О")
private String name;
+ @ApiModelProperty(value = "瀹℃壒妯$増閰嶇疆鏄庣粏闆嗗悎")
+ @TableField(exist = false)
+ private List<ApproveParam> paramList;
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
index 218f678..b9b1d62 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/CarUseBook.java
@@ -93,13 +93,11 @@
@ApiModelProperty(value = "鍙栨秷绫诲瀷 0鐢宠浜哄彇娑� 1娲捐溅鍛樻挙閿�")
@ExcelColumn(name="鍙栨秷绫诲瀷 0鐢宠浜哄彇娑� 1娲捐溅鍛樻挙閿�")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date cancelType;
+ private Integer cancelType;
@ApiModelProperty(value = "鏄惁宸插彇娑� 0鏈彇娑� 1宸插彇娑�")
@ExcelColumn(name="鏄惁宸插彇娑� 0鏈彇娑� 1宸插彇娑�")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date cancelStatus;
+ private Integer cancelStatus;
@ApiModelProperty(value = "鍙栨秷鏃堕棿")
@ExcelColumn(name="鍙栨秷鏃堕棿")
@@ -172,4 +170,7 @@
@ApiModelProperty(value = "鐢宠浜虹數璇�")
@TableField(exist = false)
private String memberMobile;
+ @ApiModelProperty(value = "瀹℃壒璁板綍")
+ @TableField(exist = false)
+ private List<Approve> approveList;
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDanger.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDanger.java
index 2f13912..610f93d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDanger.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDanger.java
@@ -4,6 +4,7 @@
import com.doumee.core.annotation.excel.ExcelColumn;
import com.doumee.dao.system.model.Multifile;
import com.doumee.core.model.LoginUserModel;
+import com.doumee.dao.system.model.Multifile;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
@@ -122,6 +123,15 @@
@ApiModelProperty(value = "鏌ヨ鎴濮嬫椂闂达紙鍩轰簬鎻愭姤鏃堕棿锛�", example = "2024-05-20 11:48:46")
@TableField(exist = false)
private Date queryEndTime;
+ @ApiModelProperty(value = "鐜板満鎯呭喌鎻愭姤闄勪欢闆嗗悎")
+ @TableField(exist = false)
+ private List<Multifile> submitFileList;
+ @ApiModelProperty(value = "澶勭悊鍓嶉檮浠堕泦鍚�")
+ @TableField(exist = false)
+ private List<Multifile> dealBeforeFileList;
+ @ApiModelProperty(value = "澶勭悊鍚庨檮浠堕泦鍚�")
+ @TableField(exist = false)
+ private List<Multifile> dealAfterFileList;
@ApiModelProperty(value = "鎻愭姤鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
index 4f0e839..31dd657 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
@@ -76,7 +76,7 @@
private String imgurl;
@ApiModelProperty(value = "绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳", example = "1")
- @ExcelColumn(name="绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳")
+ @ExcelColumn(name="绫诲瀷 0鍔冲姟璁垮 1鏅�氳瀹� 2鍐呴儴浜哄憳")
private Integer type;
@ApiModelProperty(value = "璁垮鍚嶇О/鍐呴儴浜哄憳")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java
index d773779..1259862 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveService.java
@@ -104,4 +104,6 @@
* @return
*/
InternalHomeVO getHomeData(Integer memberId);
+
+ void createApproveFlow(Integer tempType,Integer businessId,Integer createMemberId);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveTemplService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveTemplService.java
index 47b8bcb..662e9c0 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveTemplService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ApproveTemplService.java
@@ -1,5 +1,6 @@
package com.doumee.service.business;
+import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.ApproveTempl;
@@ -25,7 +26,7 @@
*
* @param id 涓婚敭
*/
- void deleteById(Integer id);
+ void deleteById(Integer id, LoginUserInfo user);
/**
* 鍒犻櫎
@@ -39,7 +40,7 @@
*
* @param ids 涓婚敭闆�
*/
- void deleteByIdInBatch(List<Integer> ids);
+ void deleteByIdInBatch(List<Integer> ids, LoginUserInfo user);
/**
* 涓婚敭鏇存柊
@@ -94,4 +95,6 @@
* @return long
*/
long count(ApproveTempl approveTempl);
+
+ int save(ApproveTempl approveTempl);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CarUseBookService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CarUseBookService.java
index 5652f03..9754f62 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CarUseBookService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/CarUseBookService.java
@@ -1,5 +1,6 @@
package com.doumee.service.business;
+import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.CarUseBook;
@@ -101,4 +102,6 @@
List<CarUseBook> carUseBookList(CarUseBook carUseBook);
List<DateIntervalVO> checkDateUse(Integer cars, String dateDay);
+
+ void revoke(Integer id, String info, LoginUserInfo loginUserInfo);
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
index 2fabbd8..883b71d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
@@ -7,6 +7,7 @@
import com.doumee.dao.admin.request.LaborMemberDTO;
import com.doumee.dao.admin.request.MemberQuery;
import com.doumee.dao.admin.response.StagingDataVO;
+import com.doumee.dao.business.dto.RegisterDriverDTO;
import com.doumee.dao.business.dto.ResetPasswordDTO;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.MemberRole;
@@ -161,6 +162,11 @@
void memberFreeze();
/********************************************鍏紬鍙锋帴鍙�***********************************************************************/
+ /**
+ * 鍙告満娉ㄥ唽
+ * @param registerDriverDTO
+ */
+ void registerDriver(RegisterDriverDTO registerDriverDTO);
/**
* 寰俊鎺堟潈鎺ュ彛
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformInterfaceLogService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformInterfaceLogService.java
index 4f4a6eb..1dd001d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformInterfaceLogService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformInterfaceLogService.java
@@ -94,4 +94,6 @@
* @return long
*/
long count(PlatformInterfaceLog platformInterfaceLog);
+
+ void clearThreeMonthLog();
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
index 08320d3..289c28d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -1,23 +1,31 @@
package com.doumee.service.business.impl;
import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
-import com.doumee.dao.business.ApproveMapper;
-import com.doumee.dao.business.model.Approve;
+import com.doumee.dao.business.*;
+import com.doumee.dao.business.dao.CompanyMapper;
+import com.doumee.dao.business.model.*;
+import com.doumee.dao.system.SystemUserMapper;
+import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.web.response.InternalHomeVO;
import com.doumee.service.business.ApproveService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
-import java.util.List;
+import java.util.*;
+import java.util.stream.Collectors;
/**
* 瀹℃壒淇℃伅璁板綍琛⊿ervice瀹炵幇
@@ -32,6 +40,24 @@
@Autowired
private SystemDictDataBiz systemDictDataBiz;
+
+ @Autowired
+ private ApproveTemplMapper approveTemplMapper;
+
+ @Autowired
+ private ApproveParamMapper approveParamMapper;
+
+ @Autowired
+ private MemberMapper memberMapper;
+
+ @Autowired
+ private CompanyMapper companyMapper;
+
+ @Autowired
+ private CarUseBookMapper carUseBookMapper;
+
+ @Autowired
+ private CarDriverMapper carDriverMapper;
@Override
public Integer create(Approve approve) {
@@ -189,10 +215,214 @@
}
+ /**
+ * 鍒涘缓瀹℃壒娴佺▼
+ * @param tempType 妯℃澘绫诲瀷 0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害
+ * @param businessId 涓氬姟涓婚敭 鏍规嵁 tempType
+ * @param createMemberId 鎻愪氦娴佺▼浜哄憳
+ */
+ @Override
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+ public void createApproveFlow(Integer tempType,Integer businessId,Integer createMemberId){
+ //鏌ヨ澶勭悊妯℃澘
+ ApproveTempl approveTempl = approveTemplMapper.selectOne(new QueryWrapper<ApproveTempl>().lambda()
+ .eq(ApproveTempl::getType,tempType)
+ .eq(ApproveTempl::getIsdeleted,Constants.ZERO)
+ .last(" limit 1 ")
+ );
+ if(Objects.isNull(approveTempl)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌閰嶇疆妯℃澘");
+ }
+ //鏌ヨ閰嶇疆娴佺▼
+ List<ApproveParam> approveParamAllList = approveParamMapper.selectList(new QueryWrapper<ApproveParam>()
+ .lambda().eq(ApproveParam::getIsdeleted,Constants.ZERO)
+ .eq(ApproveParam::getTemplId,approveTempl.getId())
+ .orderByAsc(ApproveParam::getType)
+ .orderByAsc(ApproveParam::getLevel)
+ );
+ if(Objects.isNull(approveParamAllList)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈厤缃鎵规祦绋�");
+ }
+ //瀹℃壒閰嶇疆
+ List<ApproveParam> approveParamList = approveParamAllList.stream().filter(i->i.getType().equals(Constants.ZERO)).collect(Collectors.toList());
+ if(Objects.isNull(approveParamList)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈厤缃鎵规祦绋�");
+ }
+ List<ApproveParam> approveCopyList = approveParamAllList.stream().filter(i->i.getType().equals(Constants.ONE)).collect(Collectors.toList());
+
+ Member createMember = memberMapper.selectById(createMemberId);
+ if(Objects.isNull(createMember)|| Objects.isNull(createMember.getCompanyId())){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鐢宠浜虹粍缁囦俊鎭紓甯�");
+ }
+ List<Approve> approveList = new ArrayList<>();
+
+ this.organizeApproveData(approveTempl,approveParamList,createMember,businessId,approveList);
+
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(approveList)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒娴侀厤缃敊璇�");
+ }
+
+ //澶勭悊鎶勯�佹暟鎹�
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(approveCopyList)){
+ this.organizeApproveCopyData(approveTempl,approveParamList,businessId,approveList);
+ }
+ approveMapper.insertBatchSomeColumn(approveList);
+
+ }
+
+
+ /**
+ * 缁勭粐瀹℃壒娴佹暟鎹�
+ * @param approveTempl
+ * @param approveParamList
+ * @param createMember
+ * @param businessId
+ * @param approveList
+ */
+ public void organizeApproveData(ApproveTempl approveTempl,List<ApproveParam> approveParamList,Member createMember,Integer businessId,List<Approve> approveList){
+ //瀹℃壒涓氬姟鏁版嵁
+ for (int i = 0; i < approveParamList.size(); i++) {
+ ApproveParam approveParam = approveParamList.get(i);
+ List<Integer> ids = this.getApproveUserIds(approveParam,createMember);
+ for (Integer memberId:ids) {
+ Approve approve = new Approve();
+ approve.setCreateDate(new Date());
+ approve.setIsdeleted(Constants.ZERO);
+ approve.setTemplatId(approveTempl.getId());
+ approve.setChekorId(memberId);
+ approve.setStatus(Constants.ZERO);
+ approve.setStatusInfo("寰呭鎵�");
+ approve.setIsEndCheck((i+1) == approveParamList.size()?Constants.ONE:Constants.ZERO);
+ approve.setObjId(businessId);
+ approve.setLevel(i+1);
+ approve.setApproveType(approveParam.getApproveType());
+ approve.setDriverParam(approveParam.getDriverParam());
+ approve.setAddrParam(approveParam.getAddrParam());
+ approve.setType(Constants.ZERO);
+ approveList.add(approve);
+ }
+ }
+ }
+
+
+ public void organizeApproveCopyData(ApproveTempl approveTempl,List<ApproveParam> approveCopyList,Integer businessId,List<Approve> approveList){
+ for (ApproveParam approveParam:approveCopyList) {
+ if(StringUtils.isBlank(approveParam.getObjIds())){
+ return;
+ }
+ List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda()
+ .eq(Member::getIsdeleted,Constants.ZERO)
+ .eq(Member::getWorkStatus,Constants.ZERO)
+ .in(Member::getId,approveParam.getObjIds().split(",")));
+ List<Integer> userIds = new ArrayList<>();
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(memberList)){
+ userIds.addAll(memberList.stream().map(m->m.getId()).collect(Collectors.toList()));
+ }
+ //鍏姟鐢ㄨ溅 榛樿鍔犲叆 鍙告満鎶勯��
+ if(approveTempl.getType()==Constants.THREE||approveTempl.getType()==Constants.FOUR){
+ CarUseBook carUseBook = carUseBookMapper.selectById(businessId);
+ if(Objects.isNull(carUseBook)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"涓烘煡璇㈠埌鐢ㄨ溅鐢宠淇℃伅");
+ }
+ CarDriver carDriver = carDriverMapper.selectById(carUseBook.getDriverId());
+ if(Objects.isNull(carDriver)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"涓烘煡璇㈠埌鍙告満淇℃伅");
+ }
+ userIds.add(carDriver.getMemberId());
+ }
+
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(userIds)){
+ for (Integer memberId:userIds) {
+ Approve approve = new Approve();
+ approve.setCreateDate(new Date());
+ approve.setIsdeleted(Constants.ZERO);
+ approve.setTemplatId(approveTempl.getId());
+ approve.setChekorId(memberId);
+ approve.setObjId(businessId);
+ approve.setType(Constants.ONE);
+ approveList.add(approve);
+ }
+ }
+ }
+ }
+
+
+ public List<Integer> getApproveUserIds(ApproveParam approveParam,Member createMember){
+ List<Integer> userIds = new ArrayList<>();
+ if(approveParam.getMemberType().equals(Constants.ZERO)){
+ //鐢宠浜�
+ userIds.add(createMember.getId());
+ }else if(approveParam.getMemberType().equals(Constants.ONE)){
+ //鎸囧畾浜哄憳
+ if(StringUtils.isBlank(approveParam.getObjIds())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀹℃壒娴侀厤缃敊璇痆鏈厤缃寚瀹氬鎵逛汉鍛榏");
+ }
+ List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda()
+ .eq(Member::getIsdeleted,Constants.ZERO)
+ .in(Member::getId,approveParam.getObjIds().split(",")));
+ if(memberList.size()!=approveParam.getObjIds().split(",").length){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒娴侀厤缃敊璇痆鎸囧畾瀹℃壒浜哄憳淇℃伅寮傚父]");
+ }
+ userIds.addAll(memberList.stream().map(m->m.getId()).collect(Collectors.toList()));
+ }else if(approveParam.getMemberType().equals(Constants.TWO)){
+ //閮ㄩ棬涓荤瀹℃壒
+ //瀹℃壒閮ㄩ棬
+ Company memberCompany = companyMapper.selectById(createMember.getCompanyId());
+ if(Objects.isNull(memberCompany)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒娴侀厤缃敊璇痆鎸囧畾瀹℃壒閮ㄩ棬鏈煡璇㈠埌]");
+ }
+ Company auditCompany = this.getAuditCompanyHead(memberCompany.getParentId(),approveParam.getObjLevel());
+ if(Objects.isNull(auditCompany)){
+ //瀹℃壒閮ㄩ棬涓虹┖ 鑷姩娴佽浆涓嬩竴绾у鎵归厤缃�
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒娴侀厤缃敊璇痆鎸囧畾瀹℃壒閮ㄩ棬鏈煡璇㈠埌]");
+ }else{
+ //鏌ヨ閮ㄩ棬璐熻矗浜�
+ Member headMember = memberMapper.selectById(auditCompany.getHeadId());
+ if(Objects.isNull(headMember)){
+ //鏈煡璇㈠埌閮ㄩ棬璐熻矗浜� 鏍规嵁閰嶇疆澶勭悊 鐢变笂绾т富绠′唬鏇垮鏍�/鐩存帴缁撴潫娴佺▼
+ if(approveParam.getNoleaderOpt().equals(Constants.ONE)&&!Objects.isNull(auditCompany.getParentId())){
+ auditCompany = companyMapper.selectOne(new QueryWrapper<Company>().lambda().eq(Company::getId,auditCompany.getParentId()));
+ //鏃犵埗绾� 鐩存帴娴佷紶涓嬩竴绾у鎵�
+ if(Objects.isNull(auditCompany)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒娴侀厤缃敊璇痆鎸囧畾瀹℃壒閮ㄩ棬鏈煡璇㈠埌]");
+ }
+ headMember = memberMapper.selectById(auditCompany.getHeadId());
+ if(Objects.isNull(headMember)){
+ //鏌ヨ閮ㄩ棬璐熻矗浜� 涓虹┖ 鑷姩娴佽浆涓嬩竴绾у鎵归厤缃�
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒娴侀厤缃敊璇痆鎸囧畾瀹℃壒閮ㄩ棬鏈缃礋璐d汉]");
+ }else{
+ //娣诲姞瀹℃壒浜�
+ userIds.add(headMember.getId());
+ }
+ }else{
+ //娣诲姞瀹℃壒浜�
+ userIds.add(headMember.getId());
+ }
+ }
+ }
+ }
+ return userIds;
+ }
-
+ /**
+ * 鏍规嵁閰嶇疆鏌ヨ涓婄骇鏁版嵁
+ * @param companyId 鐖剁骇閮ㄩ棬涓婚敭
+ * @param objLevel 鏌ヨ绾у埆
+ */
+ public Company getAuditCompanyHead(Integer companyId, Integer objLevel){
+ Integer queryLevel = Constants.ZERO;
+ Company auditCompany = companyMapper.selectById(companyId);
+ while(queryLevel.equals(objLevel)){
+ auditCompany = companyMapper.selectById(auditCompany.getParentId());
+ if(Objects.isNull(auditCompany)){
+ return null;
+ }
+ queryLevel = queryLevel + 1;
+ }
+ return auditCompany;
+ }
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
index 1271993..b940e2e 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveTemplServiceImpl.java
@@ -7,11 +7,10 @@
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.ApproveParamMapper;
import com.doumee.dao.business.ApproveTemplMapper;
import com.doumee.dao.business.MemberMapper;
-import com.doumee.dao.business.model.ApproveTempl;
-import com.doumee.dao.business.model.CarDriver;
-import com.doumee.dao.business.model.Member;
+import com.doumee.dao.business.model.*;
import com.doumee.service.business.ApproveTemplService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -20,6 +19,7 @@
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.Date;
@@ -36,7 +36,58 @@
@Autowired
private ApproveTemplMapper approveTemplMapper;
@Autowired
+ private ApproveParamMapper approveParamMapper;
+ @Autowired
private MemberMapper memberMapper;
+
+ @Override
+ @Transactional(rollbackFor = {BusinessException.class,Exception.class})
+ public int save(ApproveTempl model) {
+ LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(loginUserInfo == null){
+ loginUserInfo = model.getLoginUserInfo();
+ }
+ if(model.getType() == null || Constants.ApproveTmplType.getName(model.getType()) == null){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ ApproveTempl template = approveTemplMapper.selectOne(new QueryWrapper<ApproveTempl>().lambda()
+ .eq(ApproveTempl::getType,model.getType() )
+ .eq(ApproveTempl::getIsdeleted,Constants.ZERO)
+ .last("limit 1"));
+ Date date =new Date();
+ if(template == null){
+ //濡傛灉妯$増娌℃湁锛屽垯鏂板
+ template = new ApproveTempl();
+ template.setType(model.getType());
+ template.setCreateDate(date);
+ template.setCreator(loginUserInfo.getId());
+ template.setEditDate(date);
+ template.setIsdeleted(Constants.ZERO);
+ template.setEditor(loginUserInfo.getId());
+ template.setName(Constants.ApproveTmplType.getName(model.getType()));
+ approveTemplMapper.insert(template);
+ }
+ if(model.getParamList()!=null && model.getParamList().size()>0){
+ for(ApproveParam param : model.getParamList()){
+ param.setCreateDate(date);
+ param.setCreator(loginUserInfo.getId());
+ param.setEditDate(date);
+ param.setEditor(loginUserInfo.getId());
+ param.setIsdeleted(Constants.ZERO);
+ param.setTemplId(template.getId());
+ param.setType(Constants.formatIntegerNum(param.getType()));
+ param.setAddrParam(Constants.formatIntegerNum(param.getAddrParam()));
+ param.setDriverParam(Constants.formatIntegerNum(param.getDriverParam()));
+ param.setApproveType(Constants.formatIntegerNum(param.getApproveType()));
+ }
+ //鍏堟竻闄ゅ師鏉ユ墍鏈夌殑灏遍櫔閰嶇疆
+ approveParamMapper.delete(new UpdateWrapper<ApproveParam>().lambda()
+ .eq(ApproveParam::getTemplId,template.getId()));
+ //鎵归噺鎻掑叆鏂扮殑閰嶇疆
+ approveParamMapper.insertBatchSomeColumn(model.getParamList());
+ }
+ return model.getId();
+ }
@Override
public Integer create(ApproveTempl model) {
@@ -45,8 +96,13 @@
}
@Override
- public void deleteById(Integer id) {
- approveTemplMapper.deleteById(id);
+ public void deleteById(Integer id, LoginUserInfo userInfo) {
+ ApproveTempl model = new ApproveTempl();
+ model.setEditDate(new Date());
+ model.setEditor(userInfo.getId());
+ model.setId(id);
+ model.setIsdeleted(Constants.ONE);
+ approveTemplMapper.updateById(model);
}
@Override
@@ -56,11 +112,13 @@
}
@Override
- public void deleteByIdInBatch(List<Integer> ids) {
+ public void deleteByIdInBatch(List<Integer> ids, LoginUserInfo user) {
if (CollectionUtils.isEmpty(ids)) {
return;
}
- approveTemplMapper.deleteBatchIds(ids);
+ for(Integer id:ids){
+ deleteById(id,user);
+ }
}
@Override
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java
index 2479504..2b41210 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java
@@ -10,12 +10,15 @@
import com.doumee.core.utils.DESUtil;
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.ApproveMapper;
import com.doumee.dao.business.CarUseBookMapper;
import com.doumee.dao.business.CarsMapper;
+import com.doumee.dao.business.join.ApproveJoinMapper;
import com.doumee.dao.business.join.CarUseBookJoinMapper;
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.DateIntervalVO;
import com.doumee.dao.system.model.SystemDictData;
+import com.doumee.service.business.ApproveService;
import com.doumee.service.business.CarUseBookService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -56,6 +59,12 @@
@Autowired
private SystemDictDataBiz systemDictDataBiz;
+
+ @Autowired
+ private ApproveJoinMapper approveJoinMapper;
+
+ @Autowired
+ private ApproveService approveService;
@Override
@@ -103,6 +112,8 @@
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀛樺湪杞﹁締棰勭害鏃堕棿涓庡凡棰勭害鏃堕棿鍐茬獊~");
}
carUseBookMapper.insert(carUseBook);
+ //鐢ㄨ溅鐢宠 瀹℃壒璁板綍鍒涘缓
+ approveService.createApproveFlow(carUseBook.getType()==0?3:4,carUseBook.getId(),carUseBook.getMemberId());
return carUseBook.getId();
}
@@ -155,6 +166,21 @@
.eq(CarUseBook::getId,id)
.last("limit 1" );
CarUseBook model = carUseBookMapper.selectJoinOne(CarUseBook.class,queryWrapper);
+ //瀹℃壒璁板綍
+ List<Approve> approveList = approveJoinMapper.selectJoinList(Approve.class,
+ new MPJLambdaWrapper<Approve>()
+ .selectAll(Approve.class)
+ .selectAs(Member::getName,Approve::getMemberName)
+ .selectAs(Member::getPhone,Approve::getMemberPhone)
+ .selectAs(Company::getName,Approve::getCompanyName)
+ .leftJoin(Member.class,Member::getId,Approve::getChekorId)
+ .leftJoin(Company.class,Company::getId,Member::getCompanyId)
+ .eq(Approve::getIsdeleted,Constants.ZERO)
+ .eq(Approve::getObjType,Constants.ONE)
+ .eq(Approve::getObjId,id)
+ .orderByAsc(Approve::getLevel)
+ );
+ model.setApproveList(approveList);
return model;
}
@@ -207,10 +233,8 @@
.le(pageWrap.getModel().getCheckDate() != null, CarUseBook::getCheckDate, Utils.Date.getEnd(pageWrap.getModel().getCheckDate()))
.eq(pageWrap.getModel().getCheckUserId() != null, CarUseBook::getCheckUserId, pageWrap.getModel().getCheckUserId())
.eq(pageWrap.getModel().getCheckInfo() != null, CarUseBook::getCheckInfo, pageWrap.getModel().getCheckInfo())
- .ge(pageWrap.getModel().getCancelType() != null, CarUseBook::getCancelType, Utils.Date.getStart(pageWrap.getModel().getCancelType()))
- .le(pageWrap.getModel().getCancelType() != null, CarUseBook::getCancelType, Utils.Date.getEnd(pageWrap.getModel().getCancelType()))
- .ge(pageWrap.getModel().getCancelStatus() != null, CarUseBook::getCancelStatus, Utils.Date.getStart(pageWrap.getModel().getCancelStatus()))
- .le(pageWrap.getModel().getCancelStatus() != null, CarUseBook::getCancelStatus, Utils.Date.getEnd(pageWrap.getModel().getCancelStatus()))
+ .eq(pageWrap.getModel().getCancelType() != null, CarUseBook::getCancelType, pageWrap.getModel().getCancelType())
+ .eq(pageWrap.getModel().getCancelStatus() != null, CarUseBook::getCancelStatus, pageWrap.getModel().getCancelStatus())
.ge(pageWrap.getModel().getCancelTime() != null, CarUseBook::getCancelTime, Utils.Date.getStart(pageWrap.getModel().getCancelTime()))
.le(pageWrap.getModel().getCancelTime() != null, CarUseBook::getCancelTime, Utils.Date.getEnd(pageWrap.getModel().getCancelTime()))
.eq(pageWrap.getModel().getCancelUser() != null, CarUseBook::getCancelUser, pageWrap.getModel().getCancelUser())
@@ -377,11 +401,30 @@
}
- public void revoke(Integer id, LoginUserInfo loginUserInfo){
+ @Override
+ public void revoke(Integer id, String info, LoginUserInfo loginUserInfo){
CarUseBook carUseBook = carUseBookMapper.selectById(id);
-
-
-
+ if(Objects.isNull(carUseBook)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鐢ㄨ溅鐢宠淇℃伅");
+ }
+ carUseBook.setCancelInfo(info);
+ carUseBook.setCancelTime(new Date());
+ carUseBook.setCancelStatus(Constants.ONE);
+ carUseBook.setStatus(Constants.FOUR);
+ carUseBook.setCancelUser(loginUserInfo.getId());
+ carUseBook.setCancelType(Constants.ONE);
+ if(loginUserInfo.getId().equals(carUseBook.getCreator())){
+ carUseBook.setCancelType(Constants.ZERO);
+ }
+ carUseBookMapper.updateById(carUseBook);
+ //澶勭悊瀹℃壒璁板綍
+ approveJoinMapper.update(null,new UpdateWrapper<Approve>()
+ .lambda()
+ .set(Approve::getStatus,Constants.FOUR)
+ .set(Approve::getCheckInfo,"鐢ㄨ溅鐢宠鍙栨秷")
+ .in(Approve::getStatus,Constants.ZERO,Constants.ONE)
+ .eq(Approve::getObjId,id)
+ );
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
index 9524c5d..4606604 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerParamServiceImpl.java
@@ -78,6 +78,7 @@
model.setEditDate(new Date());
model.setEditor(loginUserInfo.getId());
model.setStatus(Constants.ZERO);
+ model.setIsdeleted(Constants.ZERO);
hiddenDangerParamMapper.insert(model);
return model.getId();
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
index 5c963de..b1f71a3 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
@@ -1,40 +1,30 @@
package com.doumee.service.business.impl;
-import cn.emay.sdk.util.StringUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
-import com.doumee.core.constants.ResponseStatus;
-import com.doumee.core.exception.BusinessException;
-import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.HiddenDangerMapper;
import com.doumee.dao.business.HiddenDangerParamMapper;
-import com.doumee.dao.business.model.HiddenDanger;
-import com.doumee.dao.business.model.HiddenDangerParam;
-import com.doumee.dao.system.MultifileMapper;
-import com.doumee.dao.system.model.Multifile;
-import com.doumee.service.business.HiddenDangerParamService;
import com.doumee.dao.business.MemberMapper;
import com.doumee.dao.business.model.*;
+import com.doumee.dao.system.MultifileMapper;
+import com.doumee.dao.system.model.Multifile;
import com.doumee.service.business.HiddenDangerService;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import org.apache.commons.lang3.StringUtils;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
-import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
/**
* 闅愭偅淇℃伅琛⊿ervice瀹炵幇
@@ -47,13 +37,15 @@
@Autowired
private HiddenDangerMapper hiddenDangerMapper;
@Autowired
+ private MultifileMapper multifileMapper;
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
+ @Autowired
private MemberMapper memberMapper;
@Autowired
private HiddenDangerParamMapper hiddenDangerParamMapper;
- @Autowired
- private MultifileMapper multifileMapper;
@Override
public Integer create(HiddenDanger hiddenDanger) {
@@ -134,9 +126,67 @@
@Override
public HiddenDanger findById(Integer id) {
- return hiddenDangerMapper.selectById(id);
- }
+ MPJLambdaWrapper<HiddenDanger> queryWrapper = new MPJLambdaWrapper<>();
+ queryWrapper.selectAll(HiddenDanger.class)
+ .selectAs(HiddenDangerParam::getName,HiddenDanger::getCategoryName)
+ .select("t1.name", HiddenDanger::getMemberName)
+ .select("t1.phone",HiddenDanger::getMemberPhone)
+ .select("t2.name",HiddenDanger::getCheckorName)
+ .select("t3.phone",HiddenDanger::getCheckorPhone)
+ .select("t4.company_name_path",HiddenDanger::getCompanyName);
+ queryWrapper.leftJoin(Member.class,Member::getId,HiddenDanger::getMemberId)
+ .leftJoin("company t4 on t1.company_id=t4.id")
+ .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId)
+ .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId);
+ queryWrapper
+ .eq(HiddenDanger::getId, id).last("limit 1");
+ HiddenDanger model = hiddenDangerMapper.selectJoinOne(HiddenDanger.class,queryWrapper);
+ if(model ==null || Constants.equalsObject(model.getIsdeleted(),Constants.ONE)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ initFiles(model);
+ return model;
+ }
+ private void initFiles(HiddenDanger unionChange) {
+ List<Multifile> multifiles = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda()
+ .eq(Multifile::getObjId, unionChange.getId() )
+ .in(Multifile::getObjType, Arrays.asList(new Integer[]{Constants.MultiFile.HIDDEN_DANGER_SUBMIT.getKey()
+ ,Constants.MultiFile.HIDDEN_DANGER_DEAL_BEFORE.getKey()
+ ,Constants.MultiFile.HIDDEN_DANGER_DEAL_AFTER.getKey()}))
+ .eq(Multifile::getIsdeleted,Constants.ZERO));
+ if(multifiles!=null){
+ String path = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()
+ +systemDictDataBiz.queryByCode(Constants.OSS,Constants.HIDDEN_DANGER_FILE).getCode();
+ for(Multifile f : multifiles){
+ if(StringUtils.isBlank(f.getFileurl())){
+ continue;
+ }
+ f.setFileurlFull(path+f.getFileurl());
+ if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.HIDDEN_DANGER_SUBMIT.getKey())){
+ //鐜板満鎯呭喌
+ if(unionChange.getSubmitFileList() == null){
+ unionChange.setSubmitFileList(new ArrayList<>());
+ }
+ unionChange.getSubmitFileList().add(f);
+ }
+ if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.HIDDEN_DANGER_DEAL_BEFORE.getKey())){
+ //澶勭悊鍓嶉檮浠�
+ if(unionChange.getDealBeforeFileList() == null){
+ unionChange.setDealBeforeFileList(new ArrayList<>());
+ }
+ unionChange.getDealBeforeFileList().add(f);
+ }
+ if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.HIDDEN_DANGER_DEAL_AFTER.getKey())){
+ //澶勭悊鍚庨檮浠�
+ if(unionChange.getDealAfterFileList() == null){
+ unionChange.setDealAfterFileList(new ArrayList<>());
+ }
+ unionChange.getDealAfterFileList().add(f);
+ }
+ }
+ }
+ }
@Override
public HiddenDanger findOne(HiddenDanger hiddenDanger) {
QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger);
@@ -186,6 +236,7 @@
.eq(pageWrap.getModel().getChecklInfo() != null, HiddenDanger::getChecklInfo, pageWrap.getModel().getChecklInfo())
.eq(pageWrap.getModel().getCheckUserId() != null, HiddenDanger::getCheckUserId, pageWrap.getModel().getCheckUserId())
.eq(pageWrap.getModel().getAreaName() != null, HiddenDanger::getAreaName, pageWrap.getModel().getAreaName())
+
.and(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()), ms->ms.like(Member::getName,pageWrap.getModel().getMemberName())
.or().like(Member::getPhone,pageWrap.getModel().getMemberName()))
.ge(Objects.nonNull(pageWrap.getModel().getQueryStartTime()), Empower::getCreateDate,pageWrap.getModel().getQueryStartTime())
@@ -199,7 +250,7 @@
queryWrapper.orderByAsc(sortData.getProperty());
}
}
- return PageData.from(hiddenDangerMapper.selectPage(page, queryWrapper));
+ return PageData.from(hiddenDangerMapper.selectJoinPage(page,HiddenDanger.class, queryWrapper));
}
@Override
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/InterfaceLogServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/InterfaceLogServiceImpl.java
index 9f11835..48ee0a9 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/InterfaceLogServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/InterfaceLogServiceImpl.java
@@ -1,7 +1,9 @@
package com.doumee.service.business.impl;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.InterfaceLogMapper;
import com.doumee.dao.business.model.InterfaceLog;
@@ -26,6 +28,8 @@
@Autowired
private InterfaceLogMapper interfaceLogMapper;
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
@Override
public Integer create(InterfaceLog interfaceLog) {
@@ -157,8 +161,11 @@
}
@Override
public void clearThreeMonthLog() {
+ int days =15;
+ try {
+ days = Integer.parseInt(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.HK_LOG_DEL_DAYS_LIMIT).getCode());
+ }catch (Exception e){}
interfaceLogMapper.delete(new UpdateWrapper<InterfaceLog>().lambda()
- .apply("to_days(create_date)+15 < to_days(now())")
- .like(InterfaceLog::getUrl,"/artemis/api/"));
+ .apply("to_days(create_date)+"+days+" < to_days(now())") );
}
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index a4ce820..f394837 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -34,6 +34,7 @@
import com.doumee.dao.admin.response.StagingDataVO;
import com.doumee.dao.business.*;
import com.doumee.dao.business.dao.CompanyMapper;
+import com.doumee.dao.business.dto.RegisterDriverDTO;
import com.doumee.dao.business.dto.ResetPasswordDTO;
import com.doumee.dao.business.join.MemberJoinMapper;
import com.doumee.dao.business.join.RetentionJoinMapper;
@@ -48,6 +49,7 @@
import com.doumee.dao.web.response.MemberVO;
import com.doumee.dao.web.response.WxAuthorizeVO;
import com.doumee.service.business.MemberService;
+import com.doumee.service.business.SmsEmailService;
import com.doumee.service.business.impl.hksync.HkSyncEmpowerServiceImpl;
import com.doumee.service.business.impl.hksync.ferp.HkSyncOrgUserToHKServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -119,6 +121,8 @@
@Autowired
private SystemUserMapper systemUserMapper;
+ @Autowired
+ private SmsEmailService smsEmailService;
@Value("${debug_model}")
private Boolean isDebug;
@@ -1932,6 +1936,57 @@
}
+ @Override
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+ public void registerDriver(RegisterDriverDTO registerDriverDTO){
+ if(Objects.isNull(registerDriverDTO)
+ || StringUtils.isBlank(registerDriverDTO.getName())
+ || StringUtils.isBlank(registerDriverDTO.getPassword())
+ || StringUtils.isBlank(registerDriverDTO.getValidCode())
+ || StringUtils.isBlank(registerDriverDTO.getPhone())
+ ){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ if(memberMapper.selectCount(new QueryWrapper<Member>().lambda()
+ .eq(Member::getIsdeleted,Constants.ZERO)
+ .eq(Member::getPhone,registerDriverDTO.getPhone())
+ )>Constants.ZERO){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎵嬫満鍙峰凡娉ㄥ唽!");
+ };
+ if(systemUserMapper.selectCount(new QueryWrapper<SystemUser>().lambda()
+ .eq(SystemUser::getDeleted,Constants.ZERO)
+ .and(i->i.eq(SystemUser::getMobile,registerDriverDTO.getPhone()).or().eq(SystemUser::getUsername,registerDriverDTO.getPhone()))
+ )>Constants.ZERO){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鎵嬫満鍙峰凡娉ㄥ唽!");
+ };
+
+ smsEmailService.validateCode(registerDriverDTO.getValidCode(),registerDriverDTO.getPhone());
+ String salt = RandomStringUtils.randomAlphabetic(6);
+ ;
+ Member member = new Member();
+ member.setCreateDate(new Date());
+ member.setIsdeleted(Constants.ZERO);
+ member.setType(Constants.TWO);
+ member.setName(registerDriverDTO.getName());
+ member.setPhone(registerDriverDTO.getPhone());
+ member.setStatus(Constants.ZERO);
+ member.setPassward(Utils.Secure.encryptPassword(registerDriverDTO.getPassword(), salt));
+ memberMapper.insert(member);
+
+
+ SystemUser systemUser = new SystemUser();
+ systemUser.setCreateTime(new Date());
+ systemUser.setDeleted(Boolean.FALSE);
+ systemUser.setUsername(registerDriverDTO.getPhone());
+ systemUser.setRealname(registerDriverDTO.getName());
+ systemUser.setMemberId(member.getId());
+ systemUser.setSalt(salt);
+ systemUser.setPassword(member.getPassward());
+ systemUser.setStatus(Constants.ZERO);
+ systemUserMapper.insert(systemUser);
+
+ }
+
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformInterfaceLogServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformInterfaceLogServiceImpl.java
index 99055b2..b5038a0 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformInterfaceLogServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformInterfaceLogServiceImpl.java
@@ -1,9 +1,12 @@
package com.doumee.service.business.impl;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.PlatformInterfaceLogMapper;
+import com.doumee.dao.business.model.InterfaceLog;
import com.doumee.dao.business.model.PlatformInterfaceLog;
import com.doumee.service.business.PlatformInterfaceLogService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -23,6 +26,9 @@
*/
@Service
public class PlatformInterfaceLogServiceImpl implements PlatformInterfaceLogService {
+
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
@Autowired
private PlatformInterfaceLogMapper platformInterfaceLogMapper;
@@ -125,4 +131,13 @@
QueryWrapper<PlatformInterfaceLog> wrapper = new QueryWrapper<>(platformInterfaceLog);
return platformInterfaceLogMapper.selectCount(wrapper);
}
+ @Override
+ public void clearThreeMonthLog() {
+ int days =15;
+ try {
+ days = Integer.parseInt(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.LOG_DEL_DAYS_LIMIT).getCode());
+ }catch (Exception e){}
+ platformInterfaceLogMapper.delete(new UpdateWrapper<PlatformInterfaceLog>().lambda()
+ .apply("to_days(create_date)+"+days+" < to_days(now())"));
+ }
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
index 55ca0be..59ca333 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -39,6 +39,7 @@
import com.doumee.dao.web.reqeust.VisitRecordDTO;
import com.doumee.dao.web.response.VisitDetailVO;
import com.doumee.dao.web.response.VisitRecordVO;
+import com.doumee.service.business.ApproveService;
import com.doumee.service.business.InterfaceLogService;
import com.doumee.service.business.SmsEmailService;
import com.doumee.service.business.VisitsService;
@@ -104,6 +105,8 @@
private SmsEmailService smsEmailService;
@Autowired
private SystemUserMapper systemUserMapper;
+ @Autowired
+ private ApproveService approveService;
@Override
@@ -237,6 +240,7 @@
}else if(dataSyncConfig.getVisitorDataOrigin().equals(Constants.ZERO)){
visits.setStatus(Constants.VisitStatus.pass);
visitsMapper.updateById(visits);
+ approveService.createApproveFlow(visits.getType(),visits.getId(),visits.getReceptMemberId());
}else{
throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵逛笉璧凤紝鍙戣捣鎷滆瀹℃壒鐢宠澶辫触锛�");
}
@@ -490,7 +494,6 @@
.eq(ApproveParam::getMemberType,Constants.ZERO)
.last("limit 1"));
return Objects.isNull(approveParam)?null:approveParam.getId();
-
}
@@ -1356,8 +1359,6 @@
dto.setId(systemUser.getId());
dto.setOperaUserId(systemUser.getId());
systemUserBiz.resetPwd(dto);
-
-
}
}
--
Gitblit v1.9.3