From 2e6f381d09669635473faf5dd4a3f01b5797d97e Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期一, 27 五月 2024 16:25:09 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- h5/pages/staff/vehicle/shiwai.vue | 8 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/CheckVisitedDTO.java | 1 server/visits/dmvisit_admin/src/main/resources/bootstrap.yml | 2 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerLogCloudController.java | 9 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java | 3 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java | 20 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDangerLog.java | 8 h5/pages/applicationRecord/applicationRecord.vue | 353 ++++++++++--------- server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java | 4 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 5 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java | 1 h5/api/visitor.js | 43 ++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/HiddenDangerLogJoinMapper.java | 14 h5/pages.json | 45 +- h5/api/index.js | 12 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 32 - server/system_gateway/src/main/resources/bootstrap.yml | 2 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java | 4 h5/pages/userinfo/userinfo.vue | 25 h5/pages/visitorApplication/visitorApplication.vue | 118 ++--- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java | 28 + h5/pages/notice/notice.vue | 236 +++++------- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java | 8 h5/pages/answer/answer.vue | 83 +-- 25 files changed, 552 insertions(+), 514 deletions(-) diff --git a/h5/api/index.js b/h5/api/index.js index 853ae94..b7406b7 100644 --- a/h5/api/index.js +++ b/h5/api/index.js @@ -1,5 +1,6 @@ import { http } from '@/utils/service.js' export * from '@/utils/config.js' +export * from './visitor' // 鏌ヨ瀛楀吀鍊兼暟鎹� export const getSystemDictData = (data) => { @@ -9,15 +10,10 @@ }) } // 鑾峰彇棰樼洰鏁版嵁 -export const getProblemsVO = () => { +export const getProblemsVO = (data) => { return http({ - url: 'visitsAdmin/cloudService/web/problem/getProblemsVO' - }) -} -// 璁垮棰勭害璇︽儏 -export const visitorSubDetail = (data) => { - return http({ - url: 'visitsAdmin/cloudService/web/visitor/detail', + url: 'visitsAdmin/cloudService/web/problem/getProblemsVO', + method: 'get', data }) } \ No newline at end of file diff --git a/h5/api/visitor.js b/h5/api/visitor.js new file mode 100644 index 0000000..bd22d5a --- /dev/null +++ b/h5/api/visitor.js @@ -0,0 +1,43 @@ +import { http } from '@/utils/service.js' +import { methods } from 'uview-ui/libs/mixin/mixin' + +// 璁垮棰勭害璇︽儏 +export const visitorSubDetail = (data) => { + return http({ + url: 'visitsAdmin/cloudService/web/visitor/detail', + data + }) +} + +// 鎻愪氦璁垮淇℃伅 +export const createFk = (data) => { + return http({ + url: 'visitsAdmin/cloudService/web/visitor/createFk', + method: 'post', + data + }) +} +// 鏌ヨ琚浜哄垪琛� +export const getVisitedMember = (data) => { + return http({ + url: 'visitsAdmin/cloudService/web/visitor/getVisitedMember', + method: 'post', + data + }) +} +// 鏌ヨ鏉ヨ浜嬬敱 +export const getVisitedVisitReason = (data) => { + return http({ + url: 'visitsAdmin/cloudService/web/visitor/visitReason', + method: 'post', + data + }) +} +// 璁垮璁板綍 +export const getVisitedRecord = (data) => { + return http({ + url: 'visitsAdmin/cloudService/web/visitor/visitPage', + method: 'post', + data + }) +} \ No newline at end of file diff --git a/h5/pages.json b/h5/pages.json index 51f2613..35dbba4 100644 --- a/h5/pages.json +++ b/h5/pages.json @@ -6,8 +6,7 @@ "path": "pages/notice/notice", "style": { "navigationBarTitleText": "鍏ュ洯椤荤煡", - "enablePullDownRefresh": false, - "navigationStyle": "custom" + "enablePullDownRefresh": false } }, { @@ -321,38 +320,38 @@ } ,{ "path" : "pages/driver/queueUpRecord", - "style" : - { - "navigationBarTitleText": "浣滀笟涓溅杈�", - "enablePullDownRefresh": false - } + "style" : + { + "navigationBarTitleText": "浣滀笟涓溅杈�", + "enablePullDownRefresh": false + } } ,{ "path" : "pages/driver/taskDetail", - "style" : - { - "navigationBarTitleText": "浠诲姟璇︽儏", - "enablePullDownRefresh": false - } + "style" : + { + "navigationBarTitleText": "浠诲姟璇︽儏", + "enablePullDownRefresh": false + } } ,{ "path" : "pages/driver/reservedDetail", - "style" : - { - "navigationBarTitleText": "璁垮瀹℃壒", - "enablePullDownRefresh": false - } + "style" : + { + "navigationBarTitleText": "璁垮瀹℃壒", + "enablePullDownRefresh": false + } } ,{ "path" : "pages/driver/taskConfirm", - "style" : - { - "navigationBarTitleText": "纭浠诲姟", - "enablePullDownRefresh": false - } + "style" : + { + "navigationBarTitleText": "纭浠诲姟", + "enablePullDownRefresh": false + } } ], @@ -455,4 +454,4 @@ "backgroundColor": "#ffffff" }, "uniIdRouter": {} -} +} diff --git a/h5/pages/answer/answer.vue b/h5/pages/answer/answer.vue index 9b2c532..89aaf04 100644 --- a/h5/pages/answer/answer.vue +++ b/h5/pages/answer/answer.vue @@ -1,8 +1,8 @@ <template> <view class="box"> <view class="box_bgimage" :style="{backgroundImage: 'url(' + bg + ')'}"> - <text class="box_bgimage_a">璁垮闂嵎灏忚皟鐮�</text> - <text class="box_bgimage_b">绛旈鍒嗗�奸渶瑕佽揪鍒�30鍒嗘墠鑳界敵璇疯闂摝锝�</text> + <text class="box_bgimage_a">{{ title }}</text> + <text class="box_bgimage_b">{{ content }}</text> </view> <view class="box_list"> <view class="box_list_answer" v-if="list && list.length > 0"> @@ -19,21 +19,27 @@ </template> --> <!-- 鍗曢�� --> <view v-for="(item,index) in list" :key="index" class="list_item"> - <view class="box_list_answer_name"> - {{index + 1}}銆亄{item.title}} + <template v-if="item.type == 1"> + <view class="box_list_answer_name"> + {{index + 1}}銆亄{item.title}}<text style="color:#ED4545;">*</text> </view> - <view class="box_list_answer_item" v-for="(line, lIndex) in item.options" :key="lIndex" @click="select(index)"> - <image src="@/static/video_error@2x.png" /> - <image src="@/static/video@2x.png" /> - <image src="@/static/video_sel@2x.png" /> - <text style="color: rgba(237, 69, 69, 1)" >{{line.code}} {{line.value}}</text> - <text >{{line.code}} {{line.value}}</text> - <text style="color: rgba(2, 94, 239, 1)" >{{line.code}} {{line.value}}</text> + <view class="box_list_answer_item" v-for="(line, lIndex) in item.options" :key="lIndex" @click="select(line, index)"> + <image src="@/static/video@2x.png" v-if="!item.selAnswer || item.selAnswer !== line.code" /> + <image src="@/static/video_sel@2x.png" v-if="item.selAnswer && item.selAnswer == line.code && item.answer === item.selAnswer" /> + <image src="@/static/video_error@2x.png" v-if="item.selAnswer && item.selAnswer == line.code && item.answer !== item.selAnswer" /> + <text v-if="!item.selAnswer"><text class="mr24">{{line.code}}</text> {{line.value}}</text> + <text v-if="item.selAnswer && item.answer === item.selAnswer" style="color: rgba(2, 94, 239, 1)" ><text class="mr24" style="color: rgba(2, 94, 239, 1)">{{line.code}}</text> {{line.value}}</text> + <text v-if="item.selAnswer && item.answer !== item.selAnswer" style="color: rgba(237, 69, 69, 1)" ><text class="mr24" style="color: rgba(237, 69, 69, 1)">{{line.code}}</text> {{line.value}}</text> </view> - <view class="box_list_answer_tips" v-if="success"> + <view class="box_list_answer_tips" v-if="item.selAnswer && item.answer !== item.selAnswer"> <image src="@/static/ic_wrong@2x.png" /> <text>鍥炵瓟閿欒</text> </view> + <view class="box_list_answer_tips" v-if="item.selAnswer && item.answer === item.selAnswer"> + <image src="@/static/meeting/icon/ic_choose_sel@2x.png" /> + <text>鍥炵瓟姝g‘</text> + </view> + </template> </view> <view class="empty"></view> <view class="box_list_answer_btn" @click="next()">鎻愪氦</view> @@ -66,42 +72,7 @@ data() { return { - i: 0, - problemIndex: 0, - multiple: null, - success: true, - list: [ - { - type: '1', - title: '绗竴棰�', - options: [ - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - ] - }, - { - type: '1', - title: '绗竴棰�', - options: [ - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - ] - }, - { - type: '1', - title: '绗竴棰�', - options: [ - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - { code: '骞村垔', value: '111111' }, - ] - } - ], + list: [], bg: require("@/static/banner_dati.jpg"), title: '', content: '' @@ -109,7 +80,7 @@ }, onLoad() { - // this.getProblems() + this.getProblems() this.getInfo() }, @@ -147,9 +118,11 @@ if (item.type === 1 || item.type === 2) { item.options = JSON.parse(item.options) } + item.status = '0' + item.selAnswer = null }) + console.log('options', res.data); this.list = res.data - console.log(this.list) } // res.param.problemsDOList.forEach(item => { // item.options = JSON.parse(item.options) @@ -159,9 +132,13 @@ }) }, // 鍗曢�夐�夋嫨涓鐩� - select(index) { - console.log(index) - this.problemIndex = index + select(line, i) { + this.list.forEach((item,index)=>{ + if(index === i){ + item.selAnswer = line.code + } + }) + // this.problemIndex = index }, sort(arr) { arr.sort(function(a, b) { diff --git a/h5/pages/applicationRecord/applicationRecord.vue b/h5/pages/applicationRecord/applicationRecord.vue index 7f4dc7b..6c647ed 100644 --- a/h5/pages/applicationRecord/applicationRecord.vue +++ b/h5/pages/applicationRecord/applicationRecord.vue @@ -1,177 +1,194 @@ <template> - <view class="box"> - <scroll-view scroll-x class="box_head"> - <view class="box_head_list"> - <view class="box_head_item active">鍏ㄩ儴</view> - <view class="box_head_item">寰呭鏍�</view> - <view class="box_head_item">瀹℃牳閫氳繃</view> - <view class="box_head_item">瀹℃牳椹冲洖</view> - </view> - </scroll-view> - <view class="box_list"> - <view class="box_list_item" v-for="(item, index) in 3" :key="index"> - <view class="box_list_item_head"> - <text>涓佹仼鍑殑鍔冲姟鍏ュ巶鐢宠</text> - <text class="loading">寰呭鏍�</text> - </view> - <view class="box_list_item_nr"> - <view class="box_list_item_nr_item"> - <text>琚闂汉锛�</text> - <text>浜轰簨閮�-鐜嬩簹钃�</text> - </view> - <view class="box_list_item_nr_item"> - <text>杩涘巶鏃堕棿锛�</text> - <text>12-12 09:00</text> - </view> - <view class="box_list_item_nr_item"> - <text>绂诲巶鏃堕棿锛�</text> - <text>12-12 12:00</text> - </view> - <view class="box_list_item_nr_item"> - <text>鍏ュ巶浜烘暟锛�</text> - <text>10</text> - </view> - <view class="box_list_item_nr_item"> - <text>鏉ヨ浜嬬敱锛�</text> - <text>涓氬姟鏉ュ線</text> - </view> - <view class="box_list_item_nr_x"></view> - <view class="box_list_item_nr_text"> - 2023-12-12 09:00鎻愪氦 - </view> - </view> - </view> - </view> - </view> + <view class="box"> + <scroll-view scroll-x class="box_head"> + <view class="box_head_list"> + <view class="box_head_item active">鍏ㄩ儴</view> + <view class="box_head_item">寰呭鏍�</view> + <view class="box_head_item">瀹℃牳閫氳繃</view> + <view class="box_head_item">瀹℃牳椹冲洖</view> + </view> + </scroll-view> + <view class="box_list"> + <view class="box_list_item" v-for="(item, index) in 3" :key="index"> + <view class="box_list_item_head"> + <text>涓佹仼鍑殑鍔冲姟鍏ュ巶鐢宠</text> + <text class="loading">寰呭鏍�</text> + </view> + <view class="box_list_item_nr"> + <view class="box_list_item_nr_item"> + <text>琚闂汉锛�</text> + <text>浜轰簨閮�-鐜嬩簹钃�</text> + </view> + <view class="box_list_item_nr_item"> + <text>杩涘巶鏃堕棿锛�</text> + <text>12-12 09:00</text> + </view> + <view class="box_list_item_nr_item"> + <text>绂诲巶鏃堕棿锛�</text> + <text>12-12 12:00</text> + </view> + <view class="box_list_item_nr_item"> + <text>鍏ュ巶浜烘暟锛�</text> + <text>10</text> + </view> + <view class="box_list_item_nr_item"> + <text>鏉ヨ浜嬬敱锛�</text> + <text>涓氬姟鏉ュ線</text> + </view> + <view class="box_list_item_nr_x"></view> + <view class="box_list_item_nr_text"> 2023-12-12 09:00鎻愪氦 </view> + </view> + </view> + </view> + </view> </template> <script> - export default { - data() { - return { - - }; - } - } +import { getVisitedRecord } from '@/api' +export default { + data() { + return { + pagination: { + page: 1, + capacity: 10 + }, + list: [] + } + }, + onLoad() { + this.getList() + }, + methods: { + getList() { + const { pagination } = this + getVisitedRecord({ + pageWrap: { ...pagination } + }).then(res => { + this.list = res.data + }) + } + + } +} </script> <style> - page { - background-color: #F7F7F7 !important; - } +page { + background-color: #f7f7f7 !important; +} </style> <style lang="scss" scoped> - .box { - width: 100%; - .box_head { - width: 100%; - height: 108rpx; - padding: 0 30rpx; - box-sizing: border-box; - background: #FFFFFF; - position: sticky; - top: 0; - left: 0; - .box_head_list { - width: 100%; - height: 100%; - display: flex; - align-items: center; - .active { - border: 1rpx solid #279BAA !important; - color: #279BAA !important; - } - .box_head_item { - padding: 0 30rpx; - height: 60rpx; - line-height: 60rpx; - box-sizing: border-box; - border-radius: 30rpx; - border: 1rpx solid #999999; - font-size: 26rpx; - font-weight: 400; - color: #333333; - margin-right: 20rpx; - } - } - } - .box_list { - width: 100%; - padding: 30rpx; - box-sizing: border-box; - .box_list_item { - width: 100%; - margin-bottom: 20rpx; - &:last-child { - margin: 0 !important; - } - .box_list_item_head { - width: 100%; - height: 100rpx; - padding: 0 30rpx; - box-sizing: border-box; - background: linear-gradient(270deg, #FEFEFF 0%, #E1F7FE 100%); - border-radius: 8rpx 8rpx 0rpx 0rpx; - display: flex; - align-items: center; - justify-content: space-between; - .loading { - color: #279BAA; - } - .success { - color: #03C68F; - } - .error { - color: #E0312A; - } - text { - &:nth-child(1) { - font-size: 32rpx; - font-weight: 500; - color: #222222; - } - &:nth-child(2) { - font-size: 26rpx; - font-weight: 400; - } - } - } - .box_list_item_nr { - padding: 30rpx; - width: 100%; - box-sizing: border-box; - background-color: #FFFFFF; - .box_list_item_nr_x { - width: 100%; - height: 1rpx; - background-color: #E5E5E5; - } - .box_list_item_nr_text { - width: 100%; - font-size: 26rpx; - font-weight: 400; - color: #999999; - margin-top: 32rpx; - } - .box_list_item_nr_item { - width: 100%; - display: flex; - align-items: center; - margin-bottom: 20rpx; - text { - &:nth-child(1) { - font-size: 26rpx; - font-weight: 400; - color: #666666; - } - &:nth-child(2) { - font-size: 26rpx; - font-weight: 400; - color: #333333; - } - } - } - } - } - } - } +.box { + width: 100%; + .box_head { + width: 100%; + height: 108rpx; + padding: 0 30rpx; + box-sizing: border-box; + background: #ffffff; + position: sticky; + top: 0; + left: 0; + .box_head_list { + width: 100%; + height: 100%; + display: flex; + align-items: center; + .active { + border: 1rpx solid #279baa !important; + color: #279baa !important; + } + .box_head_item { + padding: 0 30rpx; + height: 60rpx; + line-height: 60rpx; + box-sizing: border-box; + border-radius: 30rpx; + border: 1rpx solid #999999; + font-size: 26rpx; + font-weight: 400; + color: #333333; + margin-right: 20rpx; + } + } + } + .box_list { + width: 100%; + padding: 30rpx; + box-sizing: border-box; + .box_list_item { + width: 100%; + margin-bottom: 20rpx; + &:last-child { + margin: 0 !important; + } + .box_list_item_head { + width: 100%; + height: 100rpx; + padding: 0 30rpx; + box-sizing: border-box; + background: linear-gradient(270deg, #fefeff 0%, #e1f7fe 100%); + border-radius: 8rpx 8rpx 0rpx 0rpx; + display: flex; + align-items: center; + justify-content: space-between; + .loading { + color: #279baa; + } + .success { + color: #03c68f; + } + .error { + color: #e0312a; + } + text { + &:nth-child(1) { + font-size: 32rpx; + font-weight: 500; + color: #222222; + } + &:nth-child(2) { + font-size: 26rpx; + font-weight: 400; + } + } + } + .box_list_item_nr { + padding: 30rpx; + width: 100%; + box-sizing: border-box; + background-color: #ffffff; + .box_list_item_nr_x { + width: 100%; + height: 1rpx; + background-color: #e5e5e5; + } + .box_list_item_nr_text { + width: 100%; + font-size: 26rpx; + font-weight: 400; + color: #999999; + margin-top: 32rpx; + } + .box_list_item_nr_item { + width: 100%; + display: flex; + align-items: center; + margin-bottom: 20rpx; + text { + &:nth-child(1) { + font-size: 26rpx; + font-weight: 400; + color: #666666; + } + &:nth-child(2) { + font-size: 26rpx; + font-weight: 400; + color: #333333; + } + } + } + } + } + } +} </style> diff --git a/h5/pages/notice/notice.vue b/h5/pages/notice/notice.vue index fefdc0d..ddd051b 100644 --- a/h5/pages/notice/notice.vue +++ b/h5/pages/notice/notice.vue @@ -1,146 +1,106 @@ <template> - <div class="container"> - <video src="https://vdept3.bdstatic.com/mda-nj7gwfue9kdnbtsh/sc/cae_h264/1665488517815949255/mda-nj7gwfue9kdnbtsh.mp4?v_from_s=hkapp-haokan-hbe&auth_key=1715141591-0-0-6dfdf4d4c3d94b60b9adeb53368a72f3&bcevod_channel=searchbox_feed&pd=1&cr=2&cd=0&pt=3&logid=0791905773&vid=13790089500387859718&klogid=0791905773&abtest="></video> - <scroll-view scroll-y class="content"> - <div class="title">瀹夋嘲鐗╂祦鍘傚鏉ヤ汉鍛樺畨鍏ㄥ憡鐭�</div> - <div class="text"> - <div>{{ content }}</div> - </div> - <div class="empty"></div> - </scroll-view> - <div class="button" @click="toapply">纭浜嗚В</div> - </div> + <div class="container"> + <!-- <video + src="https://vdept3.bdstatic.com/mda-nj7gwfue9kdnbtsh/sc/cae_h264/1665488517815949255/mda-nj7gwfue9kdnbtsh.mp4?v_from_s=hkapp-haokan-hbe&auth_key=1715141591-0-0-6dfdf4d4c3d94b60b9adeb53368a72f3&bcevod_channel=searchbox_feed&pd=1&cr=2&cd=0&pt=3&logid=0791905773&vid=13790089500387859718&klogid=0791905773&abtest=" + ></video> --> + <scroll-view scroll-y class="content"> + <div> + <div v-html="content"></div> + </div> + <div class="empty"></div> + </scroll-view> + <div class="button" @click="toapply">纭浜嗚В</div> + </div> </template> <script> - export default { - name: 'Index', - data() { - return { - content: ` - 1纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - 纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В纭浜嗚В - `, - answer: '' - } - }, - onLoad() { - // this.getInfo() - }, - methods: { - getInfo() { - // 鍏ュ満椤荤煡璇︽儏 - this.$u.api.getSystemDictData({ - dictCode: 'SYSTEM', - label: 'VISIT_NOTICE' - }).then(res => { - if (res.code === 200) { - this.content = res.data.code - } - }) - // 鏄惁闇�瑕佺瓟棰� - this.$u.api.getSystemDictData({ - dictCode: 'SYSTEM', - label: 'PROBLEM_VISIT_REQUIRED' - }).then(res => { - if (res.code === 200) { - this.answer = res.data.code - } - }) - }, - toapply() { - if (this.answer === '0') { - uni.navigateTo({ - url: '/pages/userinfo/userinfo' - }) - } else { - uni.navigateTo({ - url: '/pages/answer/answer' - }) - } - } - } - } +import { getSystemDictData } from "@/api" +export default { + name: 'Index', + data() { + return { + content: ``, + answer: '' + } + }, + onLoad() { + this.getInfo() + }, + methods: { + getInfo() { + // 鍏ュ満椤荤煡璇︽儏 + getSystemDictData({ + dictCode: 'SYSTEM', + label: 'VISIT_NOTICE' + }).then(res => { + if (res.code === 200) { + this.content = res.data.code + } + }) + // 鏄惁闇�瑕佺瓟棰� + getSystemDictData({ + dictCode: 'SYSTEM', + label: 'PROBLEM_VISIT_REQUIRED' + }).then(res => { + if (res.code === 200) { + this.answer = res.data.code + } + }) + }, + toapply() { + if (this.answer === '0') { + uni.navigateTo({ + url: '/pages/userinfo/userinfo' + }) + } else { + uni.navigateTo({ + url: '/pages/answer/answer' + }) + } + } + } +} </script> <style lang="scss" scoped> - .container { - width: 100%; - height: 100vh; - padding: 10rpx 30rpx 0; - box-sizing: border-box; - display: flex; - flex-direction: column; - video{ - width: 690rpx; - height: 388rpx; - margin-bottom: 10rpx; - } - .content { - height: calc( 100% - 400rpx ); - .title{ - color: #333333; - font-weight: 500; - margin-bottom: 16rpx; - } - .text{ - font-weight: 350; - } - .empty{ - height: 160rpx; - } - } - .button { - width: 690rpx; - height: 88rpx; - line-height: 88rpx; - text-align: center; - background: #4d99a8; - border-radius: 44rpx; - font-size: 32rpx; - color: #FFFFFF; - position: absolute; - bottom: 42rpx; - left: 30rpx; - } - } +.container { + width: 100%; + height: 100vh; + padding: 10rpx 30rpx 0; + box-sizing: border-box; + display: flex; + flex-direction: column; + video { + width: 690rpx; + height: 388rpx; + margin-bottom: 10rpx; + } + .content { + height: calc(100% - 170rpx); + .title { + color: #333333; + font-weight: 500; + margin-bottom: 16rpx; + } + .text { + font-weight: 350; + } + .empty { + height: 160rpx; + } + } + .button { + width: 690rpx; + height: 88rpx; + line-height: 88rpx; + text-align: center; + background: #4d99a8; + border-radius: 44rpx; + font-size: 32rpx; + color: #ffffff; + position: absolute; + bottom: 42rpx; + left: 30rpx; + } +} </style> \ No newline at end of file diff --git a/h5/pages/staff/vehicle/shiwai.vue b/h5/pages/staff/vehicle/shiwai.vue index aab042f..197c5e1 100644 --- a/h5/pages/staff/vehicle/shiwai.vue +++ b/h5/pages/staff/vehicle/shiwai.vue @@ -75,13 +75,7 @@ @confirm="seletedDate" @cancel="isShowDate = false" /> - <uni-datetime-picker - v-model="datetimerange" - type="datetimerange" - start="2021-3-20 12:00:00" - end="2021-6-20 20:00:00" - rangeSeparator="鑷�" - /> + </view> </template> diff --git a/h5/pages/userinfo/userinfo.vue b/h5/pages/userinfo/userinfo.vue index b6b9a95..0ad93e5 100644 --- a/h5/pages/userinfo/userinfo.vue +++ b/h5/pages/userinfo/userinfo.vue @@ -10,7 +10,7 @@ <view class="cell"> <view class="title"><b>*</b>鎵嬫満鍙�</view> <view class="content"> - <input class="input" maxlength="11" placeholder-style="color: #999999;" v-model="visitorData.phone" placeholder="璇疯緭鍏ユ偍鐨勬墜鏈哄彿" /> + <input type="number" class="input" maxlength="11" placeholder-style="color: #999999;" v-model="visitorData.phone" placeholder="璇疯緭鍏ユ偍鐨勬墜鏈哄彿" /> </view> </view> <view class="cell"> @@ -75,6 +75,7 @@ import QfImageCropper from '@/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.vue'; import { mapState } from 'vuex' import { uploadUrl } from "@/utils/config" + import { getSystemDictData, visitorSub } from '@/api' export default { data() { return { @@ -130,7 +131,7 @@ } } this.visitorData.userAnswerId = option.userAnswerId - this.getVisit() + // this.getVisit() // uni.$on('update', (data) => { // this.uploadImg(data.tempFilePath) // }) @@ -138,9 +139,7 @@ methods: { submit() { - uni.navigateTo({ - url: `/pages/visitorApplication/visitorApplication?data=${JSON.stringify(this.visitorData)}` - }); + const { visitorData } = this if (!this.visitorData.name) return uni.showToast({ title: '濮撳悕涓嶈兘涓虹┖', icon: 'none' @@ -177,19 +176,19 @@ title: '浜鸿劯鐓х墖涓嶈兘涓虹┖', icon: 'none' }) - if (this.visit === '1') { - if (!this.visitorData.imgurl) return uni.showToast({ - title: '鍋ュ悍璇佷笉鑳戒负绌�', - icon: 'none' - }) - } + // if (this.visit === '1') { + // if (!this.visitorData.imgurl) return uni.showToast({ + // title: '鍋ュ悍璇佷笉鑳戒负绌�', + // icon: 'none' + // }) + // } uni.navigateTo({ url: `/pages/visitorApplication/visitorApplication?data=${JSON.stringify(this.visitorData)}` }); }, getVisit() { - // 鏄惁闇�瑕佺瓟棰� - this.$u.api.getSystemDictData({ + // 鏄惁闇�瑕� 鍋ュ悍璇� + getSystemDictData({ dictCode: 'SYSTEM', label: 'HEALTH_CARD' }).then(res => { diff --git a/h5/pages/visitorApplication/visitorApplication.vue b/h5/pages/visitorApplication/visitorApplication.vue index 9ab254a..6fda6d3 100644 --- a/h5/pages/visitorApplication/visitorApplication.vue +++ b/h5/pages/visitorApplication/visitorApplication.vue @@ -26,7 +26,7 @@ <text>*</text> </view> <view class="list_item_content" @click="showName = true"> - <text :style="{color: form1.name ? '#000000' : ''}">{{form1.name ? form1.name : '璇烽�夋嫨'}}</text> + <text :style="{color: form1.receptMemberName ? '#000000' : ''}">{{form1.receptMemberName ? form1.receptMemberName : '璇烽�夋嫨'}}</text> <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon> </view> </view> @@ -50,25 +50,25 @@ <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon> </view> </view> - <view class="list_item" v-if="accessControl === '1'" @click="show = true"> + <!-- <view class="list_item" v-if="accessControl === '1'" @click="show = true"> <view class="list_item_label"> <text>璁块棶闂ㄧ</text> <text>*</text> </view> - <!-- @click="show6 = true" --> <view class="list_item_content"> <text :style="{color: form1.doorSelectName ? '#000000' : ''}">{{form1.doorSelectName ? form1.doorSelectName : '璇烽�夋嫨'}}</text> <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon> </view> - </view> + </view> --> <div class="empty"></div> <view class="list_item"> <view class="list_item_label"> <text>鎷滆浜嬬敱</text> <text>*</text> </view> - <view class="list_item_content"> - <input type="text" v-model="form1.reason" placeholder="璇疯緭鍏ユ潵璁夸簨鐢�" placeholder-style="color: #999999;" /> + <view class="list_item_content" @click="showReason = true"> + <text :style="{color: form1.reason ? '#000000' : ''}">{{form1.reason ? form1.reason : '璇烽�夋嫨鎷滆浜嬬敱'}}</text> + <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon> </view> </view> <view class="list_item"> @@ -80,13 +80,13 @@ <switch color="#4e99a9" style="transform:scale(0.8)" @change="constructionChange" /> </view> </view> - <view class="list_item"> + <view v-if="form1.type == '1'" class="list_item"> <view class="list_item_label"> <text>鏂藉伐鍐呭</text> <text>*</text> </view> <view class="list_item_content"> - <input type="text" v-model="form1.ss" placeholder="璇疯緭鍏ユ柦宸ュ唴瀹�" placeholder-style="color: #999999;" /> + <input type="text" v-model="form1.constructionReason" placeholder="璇疯緭鍏ユ柦宸ュ唴瀹�" placeholder-style="color: #999999;" /> </view> </view> <view class="list_item"> @@ -100,29 +100,9 @@ </view> </view> </view> - <!-- <view class="cate"> - <view class="cate_head">杞﹁締淇℃伅</view> - <view class="cate_list"> - <view class="cate_list_item" v-for="(item, index) in cars" :key="index"> - <text>{{item}}</text> - <u-icon name="close" color="#999999" size="20" @click="deleCars(index)"></u-icon> - </view> - </view> - <view class="cate_add" @click="show2 = true">+娣诲姞杞﹁締</view> - </view> --> - <view class="cate"> - <view class="cate_head">闅忚浜哄憳淇℃伅</view> - <view class="cate_list"> - <view class="cate_list_item" v-for="(item,index) in personnel" :key="index"> - <text>{{item.name}}</text> - <u-icon name="close" color="#999999" size="20" @click="deleUser(index)"></u-icon> - </view> - </view> - <view class="cate_add" @click="show3 = true">+娣诲姞闅忚浜哄憳</view> - </view> <view class="zw"></view> <view class="footer"> - <view class="footer_btn" @click="submit">鎻愪氦</view> + <view class="footer_btn" @click="onSubmit">鎻愪氦</view> </view> <!-- 鍏ュ満鏃堕棿 --> <u-datetime-picker @@ -130,7 +110,7 @@ :minDate="new Date().getTime()" mode="datetime" @cancel="show4 = false" - @confirm="setinDate" + @confirm="setstarttime" ></u-datetime-picker> <!-- 绂诲満鏃堕棿 --> <u-datetime-picker @@ -139,7 +119,7 @@ :minDate="formatTimeStamp(form1.starttime)" mode="datetime" @cancel="show5 = false" - @confirm="setoutDate" + @confirm="setendtime" ></u-datetime-picker> <!-- 闂ㄧ --> <u-popup :show="show" :round="10" :safeAreaInsetBottom="true" :closeable="true" mode="bottom" @close="closeMJ"> @@ -311,7 +291,8 @@ </view> </u-popup> <u-picker keyName="name" :show="show6" :columns="columns1" @confirm="seleIdcard" @cancel="show6 = false"></u-picker> - <u-picker keyName="name" :show="showName" :columns="columnsNames" @confirm="selectedName" @cancel="showName = false"></u-picker> + <u-picker keyName="name" :show="showName" :columns="VisitPoeple" @confirm="selectedName" @cancel="showName = false"></u-picker> + <u-picker keyName="title" :show="showReason" :columns="VisitReason" @confirm="selectedReason" @cancel="showReason = false"></u-picker> <!-- <tly-picture-cut ref="tlyPictureCut" :pictureSrc="photoSrc" @createImg="uploadImg"></tly-picture-cut> --> <keyboardInput ref="keyboard" @export="setPlate" @close="closeInput" /> <qf-image-cropper ref="cropper" :width="280" :height="280" :radius="30" @crop="uploadImg"></qf-image-cropper> @@ -323,6 +304,12 @@ import keyboardInput from "@/components/keyboard-input/keyboard-input.vue"; import QfImageCropper from '@/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.vue'; import { getDaysAfterDate } from '@/utils/utils.js' + import { + getVisitedMember, + getSystemDictData, + getVisitedVisitReason, + createFk + } from '@/api' export default { data() { return { @@ -338,13 +325,13 @@ show5: false, show6: false, show7: false, + showReason: false, fileList: [], columns1: [ [{name: '韬唤璇�', id: 0}, {name: '娓境璇佷欢', id: 1},{name: '鎶ょ収', id: 2}], ], - columnsNames: [ - [{name: '寮犱笁', id: 0},{name: '寮犱笁', id: 1},{name: '寮犱笁', id: 2},] - ], + VisitReason: [], + VisitPoeple: [], columns: [], cars: [], day: null, @@ -361,7 +348,8 @@ doors: '', doorSelectName: '', reason: '', - carNos: '' + carNos: '', + type: 0 }, withUserList: { name: '', @@ -386,9 +374,11 @@ if (options.data) { this.form = JSON.parse(options.data) } + console.log('this.form', this.form); // this.getvisit() // this.getVisit1() // this.getUserValid() + this.getUser() }, methods: { openInput(type) { @@ -409,6 +399,8 @@ }, constructionChange(e) { console.log(e.detail.value); + this.form1.type = Number(e.detail.value) + console.log(this.form1.type); }, uploadImg(file) { this.$refs.cropper.close() @@ -436,7 +428,7 @@ item.active = false }) }, - submit() { + onSubmit() { if (!this.form1.receptMemberId) return uni.showToast({ title: '璇峰~鍐欐湁鏁堢殑璁块棶浜�', icon: 'none' @@ -462,7 +454,7 @@ let data = JSON.parse(JSON.stringify(this.form1)) data.starttime = data.starttime + ':00' data.endtime = data.endtime + ':00' - this.$u.api.createFk({ + createFk({ ...this.form, ...data, openid: this.$store.state.openId, @@ -489,7 +481,7 @@ } }) // 璧峰鏃堕棿鏃堕暱 - this.$u.api.getSystemDictData({ + getSystemDictData({ dictCode: 'VISIT_CONFIG', label: 'VALIDATE_VISIT' }).then(res => { @@ -599,9 +591,15 @@ this.show6 = false }, selectedName(e) { - this.form1.name = e.value[0].name - this.form1.id = e.value[0].id + this.form1.receptMemberName = e.value[0].name + this.form1.receptMemberId = e.value[0].id + this.form1.receptMemberDepartment = e.value[0].companyId this.showName = false + }, + selectedReason(e) { + this.form1.reason = e.value[0].title + console.log(e.value[0].title); + this.showReason = false }, submitCart() { if (!this.carName) return uni.showToast({ @@ -648,14 +646,14 @@ }) this.show5 = true }, - setinDate(e) { + setstarttime(e) { this.form1.starttime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM'); // this.maxTime = getDaysAfterDate(uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM'), this.day) this.maxTime = this.form1.starttime console.log(this.form1.starttime); this.show4 = false }, - setoutDate(e) { + setendtime(e) { this.form1.endtime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM'); this.show5 = false }, @@ -664,34 +662,16 @@ }, // 鏌ヨ鐢ㄦ埛 getUser() { - if (this.verify === '0') { - if (this.form1.phone1) { - this.$u.api.getVisitedMember({ - mobile: this.form1.phone1 - }).then(res => { - if (res.code === 200) { - this.form1.receptMemberId = res.data.id - this.form1.receptMemberName = res.data.name - } - }) - } - } else { - if (this.form1.phone1 && this.form1.receptMemberName) { - this.$u.api.getVisitedMember({ - mobile: this.form1.phone1, - name: this.form1.receptMemberName - }).then(res => { - if (res.code === 200) { - this.form1.receptMemberId = res.data.id - this.form1.receptMemberName = res.data.name - } - }) - } - } + getVisitedMember().then(res => { + this.VisitPoeple = [res.data || []] + }) + getVisitedVisitReason({}).then(res => { + this.VisitReason = [res.data || []] + }) }, // 琚嫓璁夸汉淇℃伅鏍¢獙鏂瑰紡锛�0鎵嬫満鍙峰崟鐙牎楠� 1鎵嬫満鍙峰拰濮撳悕缁勫悎鏍¢獙锛� getUserValid() { - this.$u.api.getSystemDictData({ + getSystemDictData({ dictCode: 'SYSTEM', label: 'BEVISITED_USER_VALID' }).then(res => { @@ -702,7 +682,7 @@ }, // 鑾峰彇鏄惁闇�瑕侀�夋嫨闂ㄧ/闂ㄧ鍒楄〃 getvisit() { - this.$u.api.getSystemDictData({ + getSystemDictData({ dictCode: 'SYSTEM', label: 'SELECT_DOORS_VISIT_REQUIRED' }).then(res => { diff --git a/server/system_gateway/src/main/resources/bootstrap.yml b/server/system_gateway/src/main/resources/bootstrap.yml index 69895a9..0ccf3f4 100644 --- a/server/system_gateway/src/main/resources/bootstrap.yml +++ b/server/system_gateway/src/main/resources/bootstrap.yml @@ -14,7 +14,7 @@ password: nacos discovery: server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃 - namespace: dmvisit + namespace: dev_renkang username: nacos password: nacos gateway: diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerLogCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerLogCloudController.java index 6b2fe8e..c31a17c 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerLogCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerLogCloudController.java @@ -16,6 +16,8 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; +import java.util.List; + /** * @author 姹熻箘韫� * @since 2024/04/28 16:06 @@ -67,6 +69,13 @@ return ApiResponse.success(hiddenDangerLogService.findPage(pageWrap)); } + @ApiOperation("鍒楄〃鏌ヨ") + @PostMapping("/findList") + @CloudRequiredPermission("business:hiddendangerlog:query") + public ApiResponse<List<HiddenDangerLog>> findList (@RequestBody HiddenDangerLog hiddenDangerLog,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + return ApiResponse.success(hiddenDangerLogService.findList(hiddenDangerLog)); + } + @ApiOperation("瀵煎嚭Excel") @PostMapping("/exportExcel") @CloudRequiredPermission("business:hiddendangerlog:exportExcel") diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java index bd006e1..957db51 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java @@ -8,12 +8,15 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; +import com.doumee.dao.business.model.VisitReason; import com.doumee.dao.business.model.Visits; import com.doumee.dao.web.reqeust.CheckVisitedDTO; import com.doumee.dao.web.response.MemberVO; import com.doumee.dao.web.response.VisitDetailVO; +import com.doumee.dao.web.response.VisitRecordVO; import com.doumee.dao.web.response.WxAuthorizeVO; import com.doumee.service.business.MemberService; +import com.doumee.service.business.VisitReasonService; import com.doumee.service.business.VisitsService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -25,6 +28,7 @@ import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.List; /** * Created by IntelliJ IDEA. @@ -47,6 +51,8 @@ @Autowired private VisitsService visitsService; + @Autowired + private VisitReasonService visitReasonService; @ApiOperation(value = "璁垮寰俊鎺堟潈", notes = "璁垮寰俊鎺堟潈鑾峰彇openId") @GetMapping("/wxAuthorize") @@ -61,7 +67,7 @@ @ApiOperation(value = "鏌ヨ琚闂汉淇℃伅", notes = "鏌ヨ琚闂汉淇℃伅") @PostMapping("/getVisitedMember") - public ApiResponse<MemberVO> getVisitedMember(@Valid @RequestBody CheckVisitedDTO checkVisitedDTO) { + public ApiResponse<List<MemberVO>> getVisitedMember(@Valid @RequestBody CheckVisitedDTO checkVisitedDTO) { return ApiResponse.success("鏌ヨ鎴愬姛", memberService.getVisitedMember(checkVisitedDTO)); } @@ -74,10 +80,18 @@ } + @ApiOperation(value = "鏉ヨ浜嬬敱", notes = "鏉ヨ浜嬬敱") + @PostMapping("/visitReason") + public ApiResponse<List<VisitReason>> visitReason() { + return ApiResponse.success("鏌ヨ鎴愬姛", visitReasonService.findList(null)); + } + + + @ApiOperation(value = "璁垮璁板綍璇︽儏", notes = "璁垮璁板綍璇︽儏") @GetMapping("/detail") - public ApiResponse<VisitDetailVO> detail(@RequestParam Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { - return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.getVisitDetail(id,getLoginUser(token).getMemberId())); + public ApiResponse<VisitDetailVO> detail(@RequestParam Integer id) { + return ApiResponse.success("鏌ヨ鎴愬姛", visitsService.getVisitDetail(id,null)); } diff --git a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml index 1a01249..746ab27 100644 --- a/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml +++ b/server/visits/dmvisit_admin/src/main/resources/bootstrap.yml @@ -31,7 +31,7 @@ # data-id: com.doumee.meeting.admin discovery: server-addr: http://175.27.187.84:8848 #閰嶇疆Nacos鍦板潃 - namespace: dmvisit + namespace: dev_renkang username: nacos password: nacos # swagger閰嶇疆 diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/HiddenDangerLogJoinMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/HiddenDangerLogJoinMapper.java new file mode 100644 index 0000000..dbe7355 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/HiddenDangerLogJoinMapper.java @@ -0,0 +1,14 @@ +package com.doumee.dao.business.join; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.doumee.dao.business.model.HiddenDangerLog; +import com.github.yulichang.base.mapper.MPJJoinMapper; + +/** + * @author 姹熻箘韫� + * @since 2024/04/28 16:06 + */ +public interface HiddenDangerLogJoinMapper extends MPJJoinMapper<HiddenDangerLog> { + + +} 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 e9ce786..f590794 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 @@ -52,8 +52,8 @@ @ExcelColumn(name="澶囨敞") private String remark; - @ApiModelProperty(value = "鍚嶇О 0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害", example = "1") - @ExcelColumn(name="鍚嶇О 0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害") + @ApiModelProperty(value = "鍚嶇О 0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1鏂藉伐浜哄憳璁垮鐢宠 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害", example = "1") + @ExcelColumn(name="鍚嶇О 0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1鏂藉伐浜哄憳璁垮鐢宠 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害") private Integer type; @ApiModelProperty(value = "鍚嶇О") diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDangerLog.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDangerLog.java index 060ddb4..5c772c4 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDangerLog.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDangerLog.java @@ -78,4 +78,12 @@ @ExcelColumn(name="鎿嶄綔鍚庡唴瀹�") private String afterContent; + @ApiModelProperty(value = "鎿嶄綔浜�") + private String createUserName; + + @ApiModelProperty(value = "鎿嶄綔浜哄ご鍍�") + private String avatar; + + @ApiModelProperty(value = "鎿嶄綔缁勭粐淇℃伅") + private String companyName; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java index 2758b5b..bf78546 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java @@ -230,6 +230,10 @@ @ApiModelProperty(value = "鏉ユ簮绫诲瀷锛�0=鏈郴缁燂紱1=ERP", example = "1") private Integer sourceType; + @ApiModelProperty(value = "鏂藉伐浜嬬敱") + @ExcelColumn(name="鏂藉伐浜嬬敱") + private String constructionReason; + @ApiModelProperty(value = "鏅�氳瀹㈢敵璇烽殢璁夸汉鍛�") @TableField(exist = false) private List<Visits> withUserList; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/CheckVisitedDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/CheckVisitedDTO.java index 1d9cbdb..49291cc 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/CheckVisitedDTO.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/CheckVisitedDTO.java @@ -15,7 +15,6 @@ @Data public class CheckVisitedDTO { - @NotBlank(message = "鎵嬫満鍙锋湭褰曞叆") @ApiModelProperty(value = "鎵嬫満鍙�") private String mobile; 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 883b71d..796bded 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 @@ -177,7 +177,7 @@ - MemberVO getVisitedMember(CheckVisitedDTO checkVisitedDTO); + List<MemberVO> getVisitedMember(CheckVisitedDTO checkVisitedDTO); /** 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 19b9c4b..da0ec66 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 @@ -227,7 +227,7 @@ /** * 鍒涘缓瀹℃壒娴佺▼ - * @param tempType 妯℃澘绫诲瀷 0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害 + * @param tempType 妯℃澘绫诲瀷 0闈炴柦宸ヤ汉鍛樿瀹㈢敵璇� 1鏂藉伐浜哄憳璁垮鐢宠 2璁垮鎶ュ 3鍏溅甯傚唴鐢ㄨ溅 4鍏溅瀹ゅ鐢ㄨ溅 5甯傚叕鍙哥墿娴佽溅棰勭害 * @param businessId 涓氬姟涓婚敭 鏍规嵁 tempType * @param createMemberId 鎻愪氦娴佺▼浜哄憳 */ @@ -241,7 +241,7 @@ .last(" limit 1 ") ); if(Objects.isNull(approveTempl)){ - throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌閰嶇疆妯℃澘"); + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌瀹℃壒娴侀厤缃ā鏉�"); } //鏌ヨ閰嶇疆娴佺▼ List<ApproveParam> approveParamAllList = approveParamMapper.selectList(new QueryWrapper<ApproveParam>() @@ -305,6 +305,7 @@ approve.setIsEndCheck((i+1) == approveParamList.size()?Constants.ONE:Constants.ZERO); approve.setObjId(businessId); approve.setLevel(i+1); + approve.setObjType(approveTempl.getType()); approve.setApproveType(approveParam.getApproveType()); approve.setDriverParam(approveParam.getDriverParam()); approve.setAddrParam(approveParam.getAddrParam()); diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java index c9e8154..e200ffb 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java @@ -2,19 +2,28 @@ 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.HiddenDangerLogMapper; +import com.doumee.dao.business.join.HiddenDangerLogJoinMapper; +import com.doumee.dao.business.model.Company; +import com.doumee.dao.business.model.HiddenDanger; import com.doumee.dao.business.model.HiddenDangerLog; +import com.doumee.dao.business.model.Member; +import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.HiddenDangerLogService; 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.github.yulichang.wrapper.MPJLambdaWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; import java.util.List; +import java.util.Objects; /** * 鐞嗚碃鎿嶄綔鍘嗗彶琛⊿ervice瀹炵幇 @@ -26,6 +35,9 @@ @Autowired private HiddenDangerLogMapper hiddenDangerLogMapper; + + @Autowired + private HiddenDangerLogJoinMapper hiddenDangerLogJoinMapper; @Override public Integer create(HiddenDangerLog hiddenDangerLog) { @@ -80,8 +92,20 @@ @Override public List<HiddenDangerLog> findList(HiddenDangerLog hiddenDangerLog) { - QueryWrapper<HiddenDangerLog> wrapper = new QueryWrapper<>(hiddenDangerLog); - return hiddenDangerLogMapper.selectList(wrapper); + List<HiddenDangerLog> hiddenDangerLogList = hiddenDangerLogJoinMapper.selectJoinList(HiddenDangerLog.class, + new MPJLambdaWrapper<HiddenDangerLog>() + .selectAll(HiddenDangerLog.class) + .selectAs(SystemUser::getRealname,HiddenDangerLog::getCreateUserName) + .selectAs(SystemUser::getAvatar,HiddenDangerLog::getAvatar) + .selectAs(Company::getName,HiddenDangerLog::getCompanyName) + .leftJoin(SystemUser.class,SystemUser::getId,HiddenDangerLog::getCreator) + .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId) + .eq(Objects.nonNull(hiddenDangerLog.getHiddenDangerId()),HiddenDangerLog::getHiddenDangerId,hiddenDangerLog.getHiddenDangerId()) + .eq(Objects.isNull(hiddenDangerLog.getHiddenDangerId()),"1",2) + .eq(HiddenDangerLog::getIsdeleted, Constants.ZERO) + .orderByAsc(HiddenDangerLog::getCreateDate) + ); + return hiddenDangerLogList; } @Override 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 56714bf..35f6ec4 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 @@ -162,6 +162,9 @@ throw new BusinessException(ResponseStatus.DATA_EMPTY); } initFiles(model); + + + return model; } private void initFiles(HiddenDanger unionChange) { 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 463e277..97e8b56 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 @@ -1624,30 +1624,24 @@ @Override - public MemberVO getVisitedMember(CheckVisitedDTO checkVisitedDTO){ - Integer validType = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.BEVISITED_USER_VALID).getCode()); - if(Objects.isNull(checkVisitedDTO)||StringUtils.isBlank(checkVisitedDTO.getMobile())||(validType.equals(Constants.ONE)&&StringUtils.isBlank(checkVisitedDTO.getName()))){ - throw new BusinessException(ResponseStatus.BAD_REQUEST); - } - Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda() - .eq(Member::getPhone,checkVisitedDTO.getMobile()) - .eq(validType.equals(Constants.ONE),Member::getName,checkVisitedDTO.getName()) + public List<MemberVO> getVisitedMember(CheckVisitedDTO checkVisitedDTO){ + List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda() + .eq(StringUtils.isNotBlank(checkVisitedDTO.getMobile()),Member::getPhone,checkVisitedDTO.getMobile()) + .eq(StringUtils.isNotBlank(checkVisitedDTO.getName()),Member::getName,checkVisitedDTO.getName()) .eq(Member::getIsdeleted,Constants.ZERO) -// .eq(Member::getStatus,Constants.ZERO) + .eq(Member::getStatus,Constants.ZERO) .eq(Member::getCanVisit,Constants.ONE) - .eq(Member::getType,Constants.memberType.internal) - .last(" limit 1 ") + .eq(Member::getType,Constants.memberType.internal) ); - MemberVO memberVO = new MemberVO(); - if(!Objects.isNull(member)){ - if(!member.getStatus().equals(Constants.ZERO)){ - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"琚浜鸿处鍙峰紓甯革紝璇风‘璁ゅ悗鍐嶈瘯"); + List<MemberVO> memberVOList = new ArrayList<>(); + if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(memberList)) { + for (Member member:memberList) { + MemberVO memberVO = new MemberVO(); + BeanUtils.copyProperties(member,memberVO); + memberVOList.add(memberVO); } - BeanUtils.copyProperties(member,memberVO); - }else{ - throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"璇锋牳瀹炶璁夸汉淇℃伅!"); } - return memberVO; + return memberVOList; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java index 8b6d77b..e21b168 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java @@ -98,6 +98,7 @@ @Override public List<VisitReason> findList(VisitReason visitReason) { QueryWrapper<VisitReason> wrapper = new QueryWrapper<>(visitReason); + wrapper.eq("isdeleted",Constants.ZERO); return visitReasonMapper.selectList(wrapper); } 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 922d615..9017f6a 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 @@ -202,7 +202,7 @@ //妫�鏌ユ槸鍚﹀繀椤荤瓟棰橈紝骞朵笖绗﹀悎绛旈瑕佹眰 ProblemLog problemLog = isValidProblemLog(visits); //鑾峰彇鐢宠鐨勬捣搴疯闂棬绂佺粍淇℃伅 - getHkDeviceRoles(visits,isERP); +// getHkDeviceRoles(visits,isERP); //妫�楠屾嫓璁夸汉鏄惁鍚堟硶 Member visitMember = isValideVisitedUser(visits.getReceptMemberId()); if(Constants.equalsInteger(Constants.ZERO, visits.getIdcardType())&&visits.getIdcardNo().length()!=18 @@ -616,13 +616,15 @@ } //璁垮鎶ュ if(visits.getType().equals(Constants.TWO) - && (StringUtils.isBlank( visits.getName()) + && (StringUtils.isBlank( visits.getName()) || StringUtils.isBlank( visits.getPhone()) || StringUtils.isBlank( visits.getCompanyName())) || StringUtils.isBlank( visits.getCarNos()) - || Objects.isNull( visits.getMemberNum()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝淇℃伅濉啓涓嶆纭紒"); + }else if(visits.getType().equals(Constants.ONE) && StringUtils.isBlank(visits.getConstructionReason())){ + + throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鏈~鍐欐柦宸ヤ簨鐢憋紒"); } if(visits.getEndtime().getTime() < System.currentTimeMillis()){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "瀵逛笉璧凤紝鍏ュ巶鏃堕棿蹇呴』澶т簬褰撳墠鏃堕棿锛�");// -- Gitblit v1.9.3