no message
Showing
9 changed files
with
264 additions
and
42 deletions
| ... | @@ -220,7 +220,14 @@ export function addPersonToMyDept(data) { | ... | @@ -220,7 +220,14 @@ export function addPersonToMyDept(data) { |
| 220 | params: data | 220 | params: data |
| 221 | }) | 221 | }) |
| 222 | } | 222 | } |
| 223 | 223 | // 提交人工审核 | |
| 224 | export function addPersonCommit(data) { | ||
| 225 | return request({ | ||
| 226 | url: `/system/input/commit?fileUrl=${data.fileUrl}`, | ||
| 227 | method: 'post', | ||
| 228 | params: data | ||
| 229 | }) | ||
| 230 | } | ||
| 224 | // 图片上传 | 231 | // 图片上传 |
| 225 | export function uploadImg(e) { | 232 | export function uploadImg(e) { |
| 226 | const tempFilePaths = e.tempFilePaths; | 233 | const tempFilePaths = e.tempFilePaths; | ... | ... |
| ... | @@ -4,7 +4,7 @@ | ... | @@ -4,7 +4,7 @@ |
| 4 | 4 | ||
| 5 | // staging 会员系统 | 5 | // staging 会员系统 |
| 6 | // const baseUrl_api = "http://22yidpjzjifv.ngrok.xiaomiqiu123.top/stage-api/"; | 6 | // const baseUrl_api = "http://22yidpjzjifv.ngrok.xiaomiqiu123.top/stage-api/"; |
| 7 | const baseUrl_api = "http://36.153.235.222:7899/stage-api"; | 7 | const baseUrl_api = "https://ztx.itechtop.cn:8443/stage-api"; |
| 8 | // const baseUrl_api = 'http://192.168.1.132:8787' | 8 | // const baseUrl_api = 'http://192.168.1.132:8787' |
| 9 | // const baseUrl_api = 'https://tkcn.19wk.cn:8443/stage-api' | 9 | // const baseUrl_api = 'https://tkcn.19wk.cn:8443/stage-api' |
| 10 | 10 | ... | ... |
| ... | @@ -10,7 +10,7 @@ | ... | @@ -10,7 +10,7 @@ |
| 10 | <text v-if="item.record.auditStatus==0" class="text-primary">审核中</text> | 10 | <text v-if="item.record.auditStatus==0" class="text-primary">审核中</text> |
| 11 | <text v-if="item.record.auditStatus==1" class="text-success"> 审核通过</text> | 11 | <text v-if="item.record.auditStatus==1" class="text-success"> 审核通过</text> |
| 12 | <text v-if="item.record.auditStatus==2" class="text-danger"> 审核拒绝</text> | 12 | <text v-if="item.record.auditStatus==2" class="text-danger"> 审核拒绝</text> |
| 13 | <text v-if="item.record.auditStatus==3" class="text-warning">已撤回</text> | 13 | <text v-if="item.record.auditStatus==3" class="text-warning">审核撤回</text> |
| 14 | </view> | 14 | </view> |
| 15 | <view class="date" @click="goDetail(item)" v-if="item.payTime"> | 15 | <view class="date" @click="goDetail(item)" v-if="item.payTime"> |
| 16 | <uni-icons type="calendar-filled" size="16" color="#AD181F"></uni-icons> | 16 | <uni-icons type="calendar-filled" size="16" color="#AD181F"></uni-icons> |
| ... | @@ -44,8 +44,18 @@ | ... | @@ -44,8 +44,18 @@ |
| 44 | </view> | 44 | </view> |
| 45 | </view> | 45 | </view> |
| 46 | <view class="func"> | 46 | <view class="func"> |
| 47 | <button v-if="deptType == 1" :disabled="!(item.payEvidence?.[0]?.url)" | ||
| 48 | @click="downloadOrder(item)"> | ||
| 49 | 下载凭证 | ||
| 50 | </button> | ||
| 51 | <button v-if="(deptType == 2 || deptType == 3)&&item.settleFlag != 1" | ||
| 52 | :disabled="!(item.payEvidence?.[0]?.url)" | ||
| 53 | @click="downloadOrder(item)"> | ||
| 54 | 下载凭证 | ||
| 55 | </button> | ||
| 47 | <button | 56 | <button |
| 48 | v-if="(deptType == 2 || deptType == 3)&&item?.record?.auditStatus != 2 && item?.record?.auditStatus != 3" | 57 | v-if="(deptType == 2 || deptType == 3)&&item.settleFlag == 1" |
| 58 | :disabled="!item.record?.auditStatus||item.record?.auditStatus == 2||item.record?.auditStatus == 3" | ||
| 49 | @click="handleUpdate(item)">上传凭证</button> | 59 | @click="handleUpdate(item)">上传凭证</button> |
| 50 | </view> | 60 | </view> |
| 51 | </view> | 61 | </view> |
| ... | @@ -201,9 +211,77 @@ function goDetail(item) { | ... | @@ -201,9 +211,77 @@ function goDetail(item) { |
| 201 | url: path | 211 | url: path |
| 202 | }); | 212 | }); |
| 203 | } | 213 | } |
| 214 | |||
| 215 | function downloadOrder(item) { | ||
| 216 | //下载凭证 | ||
| 217 | showImg(item.payEvidence[0]?.url) | ||
| 218 | } | ||
| 219 | function showImg(url) { | ||
| 220 | var str = config.baseUrl_api + url | ||
| 221 | if (url.indexOf('png') > -1 || url.indexOf('jpg') > -1 || url.indexOf('jpeg') > -1) { | ||
| 222 | uni.previewImage({ | ||
| 223 | urls: [str], | ||
| 224 | success: function(res) { | ||
| 225 | console.log('success', res) | ||
| 226 | }, | ||
| 227 | fail: function(res) { | ||
| 228 | console.log('fail', res) | ||
| 229 | }, | ||
| 230 | complete: function(res) { | ||
| 231 | console.log('complete', res) | ||
| 232 | } | ||
| 233 | }) | ||
| 234 | } else { | ||
| 235 | goWebView(str) | ||
| 236 | } | ||
| 237 | } | ||
| 238 | |||
| 239 | function goWebView(url) { | ||
| 240 | url = url.replace("http://", "https://") | ||
| 241 | uni.showLoading({ | ||
| 242 | title: '下载中' | ||
| 243 | }); | ||
| 244 | uni.downloadFile({ | ||
| 245 | url: url, | ||
| 246 | success: function(res) { | ||
| 247 | uni.hideLoading(); | ||
| 248 | var filePath = res.tempFilePath; | ||
| 249 | uni.showLoading({ | ||
| 250 | title: '正在打开' | ||
| 251 | }); | ||
| 252 | uni.openDocument({ | ||
| 253 | filePath: filePath, | ||
| 254 | showMenu: true, | ||
| 255 | success: function(res) { | ||
| 256 | uni.hideLoading(); | ||
| 257 | }, | ||
| 258 | fail: function(err) { | ||
| 259 | uni.hideLoading(); | ||
| 260 | uni.showToast({ | ||
| 261 | title: err, | ||
| 262 | icon: 'none', | ||
| 263 | duration: 2000 | ||
| 264 | }); | ||
| 265 | } | ||
| 266 | }); | ||
| 267 | }, | ||
| 268 | fail: function(error) { | ||
| 269 | uni.hideLoading(); | ||
| 270 | uni.showToast({ | ||
| 271 | title: `下载失败`, | ||
| 272 | icon: 'none', | ||
| 273 | duration: 2000 | ||
| 274 | }); | ||
| 275 | } | ||
| 276 | }); | ||
| 277 | } | ||
| 278 | |||
| 204 | </script> | 279 | </script> |
| 205 | 280 | ||
| 206 | <style scoped lang="scss"> | 281 | <style scoped lang="scss"> |
| 282 | .appList .appItem .func button[disabled]{ | ||
| 283 | opacity: 0.3; | ||
| 284 | } | ||
| 207 | .popBody { | 285 | .popBody { |
| 208 | font-size: 28rpx; | 286 | font-size: 28rpx; |
| 209 | line-height: 1.5; | 287 | line-height: 1.5; | ... | ... |
| ... | @@ -76,7 +76,6 @@ | ... | @@ -76,7 +76,6 @@ |
| 76 | 考试级别 | 76 | 考试级别 |
| 77 | <!-- <text style="padding: 15rpx 0;">{{ szToHz(n.levelNew) }}级</text> --> | 77 | <!-- <text style="padding: 15rpx 0;">{{ szToHz(n.levelNew) }}级</text> --> |
| 78 | <view @click="changeLevelfather(n)"> | 78 | <view @click="changeLevelfather(n)"> |
| 79 | |||
| 80 | <uni-data-select v-model="n.levelNew" :localdata="levelArr" | 79 | <uni-data-select v-model="n.levelNew" :localdata="levelArr" |
| 81 | @change="changeLevel"></uni-data-select> | 80 | @change="changeLevel"></uni-data-select> |
| 82 | </view> | 81 | </view> |
| ... | @@ -278,7 +277,6 @@ | ... | @@ -278,7 +277,6 @@ |
| 278 | }) | 277 | }) |
| 279 | 278 | ||
| 280 | function updateData(e) { | 279 | function updateData(e) { |
| 281 | // console.log(e) | ||
| 282 | examinerArr.push(e.obj) | 280 | examinerArr.push(e.obj) |
| 283 | form.value[`examiner_${e.ec}`] = e.obj.name | 281 | form.value[`examiner_${e.ec}`] = e.obj.name |
| 284 | } | 282 | } |
| ... | @@ -534,19 +532,24 @@ | ... | @@ -534,19 +532,24 @@ |
| 534 | api.jiDropDownBox({ | 532 | api.jiDropDownBox({ |
| 535 | perId: row.perId | 533 | perId: row.perId |
| 536 | }).then(res => { | 534 | }).then(res => { |
| 537 | console.log(res.data) | 535 | levelArr.value = res.data |
| 538 | for (var l of res.data) { | 536 | for (var l of levelArr.value) { |
| 539 | l.text = l.name | 537 | l.text = l.name |
| 540 | l.disabled = l.status | 538 | l.disabled = !(l.status) |
| 541 | } | 539 | } |
| 542 | levelArr.value = res.data | ||
| 543 | |||
| 544 | }) | 540 | }) |
| 545 | } | 541 | } |
| 546 | 542 | ||
| 547 | 543 | ||
| 548 | function changeLevel(e) { | 544 | function changeLevel(e) { |
| 549 | console.log(e) | 545 | if (e == nowRow.levelOld) { |
| 546 | uni.showToast({ | ||
| 547 | title: `考试级别重复,请重新选择!`, | ||
| 548 | icon: 'none' | ||
| 549 | }) | ||
| 550 | nowRow.levelNew = nowRow.levelRecommend | ||
| 551 | return | ||
| 552 | } | ||
| 550 | if (e !== nowRow.levelRecommend) { | 553 | if (e !== nowRow.levelRecommend) { |
| 551 | uni.showModal({ | 554 | uni.showModal({ |
| 552 | title: '提示', | 555 | title: '提示', |
| ... | @@ -566,6 +569,23 @@ | ... | @@ -566,6 +569,23 @@ |
| 566 | } | 569 | } |
| 567 | 570 | ||
| 568 | function submitForm2(flag) { | 571 | function submitForm2(flag) { |
| 572 | //循环infoList.value 如果item.levelNew == item.levelOld 提示错误 | ||
| 573 | for (var item of infoList.value) { | ||
| 574 | if (item.levelNew == item.levelOld) { | ||
| 575 | uni.showToast({ | ||
| 576 | title: `${item.realName}考试级别重复,请重新选择!`, | ||
| 577 | icon: 'none' | ||
| 578 | }) | ||
| 579 | return | ||
| 580 | } | ||
| 581 | if (!item.levelNew) { | ||
| 582 | uni.showToast({ | ||
| 583 | title: `${item.realName}请选择考试级别!`, | ||
| 584 | icon: 'none' | ||
| 585 | }) | ||
| 586 | return | ||
| 587 | } | ||
| 588 | } | ||
| 569 | if (flag === 1) { | 589 | if (flag === 1) { |
| 570 | if (infoList.value.length == 0) { | 590 | if (infoList.value.length == 0) { |
| 571 | uni.showToast({ | 591 | uni.showToast({ |
| ... | @@ -574,6 +594,7 @@ | ... | @@ -574,6 +594,7 @@ |
| 574 | }) | 594 | }) |
| 575 | return | 595 | return |
| 576 | } | 596 | } |
| 597 | |||
| 577 | // if (!form.value.transcript) { | 598 | // if (!form.value.transcript) { |
| 578 | // uni.showToast({ | 599 | // uni.showToast({ |
| 579 | // title: '请上传成绩单', | 600 | // title: '请上传成绩单', |
| ... | @@ -638,7 +659,6 @@ | ... | @@ -638,7 +659,6 @@ |
| 638 | } | 659 | } |
| 639 | for (const n in e.tempFiles) { | 660 | for (const n in e.tempFiles) { |
| 640 | api.uploadFileList(e.tempFilePaths[n]).then(data => { | 661 | api.uploadFileList(e.tempFilePaths[n]).then(data => { |
| 641 | console.log(data) | ||
| 642 | selectFileValue = { | 662 | selectFileValue = { |
| 643 | url: data, | 663 | url: data, |
| 644 | name: e.tempFiles[n].name, | 664 | name: e.tempFiles[n].name, |
| ... | @@ -659,11 +679,9 @@ | ... | @@ -659,11 +679,9 @@ |
| 659 | transcript.value = _.remove(transcript.value, function(n) { | 679 | transcript.value = _.remove(transcript.value, function(n) { |
| 660 | return n.name != e.tempFile.name; | 680 | return n.name != e.tempFile.name; |
| 661 | }); | 681 | }); |
| 662 | console.log(transcript.value) | ||
| 663 | } | 682 | } |
| 664 | 683 | ||
| 665 | function uploadSure() { | 684 | function uploadSure() { |
| 666 | console.log(transcript.value) | ||
| 667 | // 上传确定 | 685 | // 上传确定 |
| 668 | if (transcript.value.length == 0) { | 686 | if (transcript.value.length == 0) { |
| 669 | uni.showToast({ | 687 | uni.showToast({ | ... | ... |
| ... | @@ -38,7 +38,7 @@ | ... | @@ -38,7 +38,7 @@ |
| 38 | <view class="func" v-if="item.status=='0'||item.status=='3'||item.status=='4'"> | 38 | <view class="func" v-if="item.status=='0'||item.status=='3'||item.status=='4'"> |
| 39 | <button @click="handleDelete(item)">删除</button> | 39 | <button @click="handleDelete(item)">删除</button> |
| 40 | <button @click="editThis(item)">编辑</button> | 40 | <button @click="editThis(item)">编辑</button> |
| 41 | <button @click="handleSubmit(item)">提交审核</button> | 41 | <button :disabled="!(item.totalNum?item.totalNum:(item.pass+item.noPass))" @click="handleSubmit(item)">提交审核</button> |
| 42 | </view> | 42 | </view> |
| 43 | </view> | 43 | </view> |
| 44 | </view> | 44 | </view> | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <view> | 2 | <view> |
| 3 | <view class="searchbar"> | 3 | <view class="nolineform"> |
| 4 | <uni-easyinput placeholderStyle="font-size:30rpx" :input-border="false" prefixIcon="search" | 4 | <uni-form @submit="getList"> |
| 5 | v-model="query.idcCode" placeholder="证件号码" @blur="getList"> | 5 | <uni-forms-item label="考官姓名"> |
| 6 | <uni-easyinput :placeholderStyle="placeholderStyle" | ||
| 7 | :input-border="false" | ||
| 8 | v-model="query.name" placeholder="考官姓名"> | ||
| 6 | </uni-easyinput> | 9 | </uni-easyinput> |
| 10 | </uni-forms-item> | ||
| 11 | <uni-forms-item label="考官编号"> | ||
| 12 | <uni-easyinput :placeholderStyle="placeholderStyle" | ||
| 13 | :input-border="false" | ||
| 14 | v-model="query.certCode" placeholder="考官编号"> | ||
| 15 | </uni-easyinput> | ||
| 16 | </uni-forms-item> | ||
| 17 | </uni-form> | ||
| 18 | <view class="button-group"> | ||
| 19 | <button size="mini" @click="resetQuery">重置</button> | ||
| 20 | <button type="primary" size="mini" @click="getList">查询</button> | ||
| 21 | </view> | ||
| 7 | </view> | 22 | </view> |
| 8 | <view class="indexboxre"> | 23 | <view class="indexboxre"> |
| 9 | <view class="userlist"> | 24 | <view class="userlist"> |
| ... | @@ -15,9 +30,11 @@ | ... | @@ -15,9 +30,11 @@ |
| 15 | <view> | 30 | <view> |
| 16 | <view class="name">{{n.name}}</view> | 31 | <view class="name">{{n.name}}</view> |
| 17 | <view class="date">会员号:{{n.perCode||'-'}}</view> | 32 | <view class="date">会员号:{{n.perCode||'-'}}</view> |
| 33 | <view class="date">证件号码:{{n.idcCode||'-'}}</view> | ||
| 34 | <view class="date">注册地:{{n.memName||'-'}}</view> | ||
| 18 | </view> | 35 | </view> |
| 19 | <view class="status"> | 36 | <view class="status"> |
| 20 | <text v-if="n.disabled">选择</text> | 37 | <text v-if="n.disabled">已选</text> |
| 21 | <text v-else class="text-primary" @click="handleChoose(n)">选择</text> | 38 | <text v-else class="text-primary" @click="handleChoose(n)">选择</text> |
| 22 | 39 | ||
| 23 | </view> | 40 | </view> |
| ... | @@ -25,7 +42,7 @@ | ... | @@ -25,7 +42,7 @@ |
| 25 | </view> | 42 | </view> |
| 26 | <view class="nodata" v-if="list.length==0"> | 43 | <view class="nodata" v-if="list.length==0"> |
| 27 | <image mode="aspectFit" src="/static/nodata.png"></image> | 44 | <image mode="aspectFit" src="/static/nodata.png"></image> |
| 28 | <text>请输入证件号查找</text> | 45 | <text>请输入考官姓名和编号精确查找</text> |
| 29 | </view> | 46 | </view> |
| 30 | </view> | 47 | </view> |
| 31 | 48 | ||
| ... | @@ -49,6 +66,7 @@ | ... | @@ -49,6 +66,7 @@ |
| 49 | const query = ref({ | 66 | const query = ref({ |
| 50 | 67 | ||
| 51 | }) | 68 | }) |
| 69 | const placeholderStyle = ref('text-align: right;font-size:30rpx') | ||
| 52 | const list = ref([]) | 70 | const list = ref([]) |
| 53 | const total = ref(0) | 71 | const total = ref(0) |
| 54 | const userType = ref('') | 72 | const userType = ref('') |
| ... | @@ -60,16 +78,22 @@ | ... | @@ -60,16 +78,22 @@ |
| 60 | ec = option.ec | 78 | ec = option.ec |
| 61 | console.log(chosen) | 79 | console.log(chosen) |
| 62 | }) | 80 | }) |
| 63 | 81 | function resetQuery() { | |
| 82 | query.value = {} | ||
| 83 | list.value = [] | ||
| 84 | } | ||
| 64 | function getList() { | 85 | function getList() { |
| 65 | if (!query.value.idcCode) { | 86 | if (!query.value.name) { |
| 87 | return | ||
| 88 | } | ||
| 89 | if (!query.value.certCode) { | ||
| 66 | return | 90 | return |
| 67 | } | 91 | } |
| 68 | uni.showLoading({ | 92 | uni.showLoading({ |
| 69 | title: `查找中` | 93 | title: `查找中` |
| 70 | }) | 94 | }) |
| 71 | api.getCoachList(query.value).then(res => { | 95 | api.getCoachList(query.value).then(res => { |
| 72 | if (res.data.length == 0) { | 96 | if (res.rows.length == 0) { |
| 73 | uni.showToast({ | 97 | uni.showToast({ |
| 74 | title: '未查询到考官信息', | 98 | title: '未查询到考官信息', |
| 75 | icon: "error" | 99 | icon: "error" |
| ... | @@ -77,11 +101,11 @@ | ... | @@ -77,11 +101,11 @@ |
| 77 | list.value = [] | 101 | list.value = [] |
| 78 | return | 102 | return |
| 79 | } | 103 | } |
| 80 | list.value = res.data | 104 | list.value = res.rows |
| 81 | for(var l of list.value){ | 105 | for(var l of list.value){ |
| 82 | if(l.photo&&l.photo.indexOf('http')==-1){ | 106 | // if(l.photo&&l.photo.indexOf('http')==-1){ |
| 83 | l.photo = config.baseUrl_api + l.photo | 107 | // l.photo = config.baseUrl_api + l.photo |
| 84 | } | 108 | // } |
| 85 | for(var t of chosen){ | 109 | for(var t of chosen){ |
| 86 | if(t.perId == l.perId){ | 110 | if(t.perId == l.perId){ |
| 87 | l.disabled = true | 111 | l.disabled = true |
| ... | @@ -99,6 +123,14 @@ | ... | @@ -99,6 +123,14 @@ |
| 99 | } | 123 | } |
| 100 | 124 | ||
| 101 | function handleChoose(row) { | 125 | function handleChoose(row) { |
| 126 | if (row.canChoose != 1){ | ||
| 127 | uni.showToast({ | ||
| 128 | title: '该考官资质已过期!', | ||
| 129 | icon: "error" | ||
| 130 | }) | ||
| 131 | return | ||
| 132 | } | ||
| 133 | |||
| 102 | var pages = getCurrentPages() | 134 | var pages = getCurrentPages() |
| 103 | var prevPage = pages[pages.length - 2] | 135 | var prevPage = pages[pages.length - 2] |
| 104 | var obj = { | 136 | var obj = { |
| ... | @@ -151,4 +183,11 @@ | ... | @@ -151,4 +183,11 @@ |
| 151 | font-size: 26rpx; | 183 | font-size: 26rpx; |
| 152 | } | 184 | } |
| 153 | } | 185 | } |
| 186 | .button-group { | ||
| 187 | text-align: right; | ||
| 188 | |||
| 189 | button { | ||
| 190 | margin-left: 30rpx; | ||
| 191 | } | ||
| 192 | } | ||
| 154 | </style> | 193 | </style> | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <view class="hasfixedbottom"> | 2 | <view class="hasfixedbottom"> |
| 3 | <view class="nolineform"> | 3 | <view class="nolineform"> |
| 4 | <uni-forms :border="true" :modelValue="baseFormData" label-width="120"> | 4 | <uni-forms :border="true" :modelValue="baseFormData" label-width="90"> |
| 5 | <!-- <uni-forms-item label="姓名" required name="name"> | 5 | <!-- <uni-forms-item label="姓名" required name="name"> |
| 6 | <uni-easyinput :styles="inputstyle" :clearable='false' :placeholderStyle="placeholderStyle" | 6 | <uni-easyinput :styles="inputstyle" :clearable='false' :placeholderStyle="placeholderStyle" |
| 7 | v-model="baseFormData.name" placeholder="请输入姓名" /> | 7 | v-model="baseFormData.name" placeholder="请输入姓名" /> |
| ... | @@ -34,7 +34,7 @@ | ... | @@ -34,7 +34,7 @@ |
| 34 | <view> | 34 | <view> |
| 35 | {{n.perName}} | 35 | {{n.perName}} |
| 36 | <view class="date"> | 36 | <view class="date"> |
| 37 | {{idcTypeList[n.perIdcType].text}}: {{n.perIdcCode}} | 37 | {{getIdcType(n.perIdcType)}}: {{n.perIdcCode}} |
| 38 | </view> | 38 | </view> |
| 39 | </view> | 39 | </view> |
| 40 | </view> | 40 | </view> |
| ... | @@ -79,15 +79,15 @@ | ... | @@ -79,15 +79,15 @@ |
| 79 | }, | 79 | }, |
| 80 | { | 80 | { |
| 81 | value: '1', | 81 | value: '1', |
| 82 | text: "港澳台通信身份证" | 82 | text: "来往大陆(内地)通行证 " |
| 83 | }, | 83 | }, |
| 84 | { | 84 | { |
| 85 | value: '3', | 85 | value: '3', |
| 86 | text: "外国护照" | 86 | text: "护照" |
| 87 | }, | 87 | }, |
| 88 | { | 88 | { |
| 89 | value: '4', | 89 | value: '5', |
| 90 | text: "其他" | 90 | text: "香港身份证" |
| 91 | } | 91 | } |
| 92 | ]) | 92 | ]) |
| 93 | const baseFormData = ref({ | 93 | const baseFormData = ref({ |
| ... | @@ -106,6 +106,14 @@ | ... | @@ -106,6 +106,14 @@ |
| 106 | getList() | 106 | getList() |
| 107 | } | 107 | } |
| 108 | }) | 108 | }) |
| 109 | function getIdcType(type) { | ||
| 110 | for (var item of idcTypeList.value){ | ||
| 111 | if (item.value == type) { | ||
| 112 | return item.text | ||
| 113 | } | ||
| 114 | } | ||
| 115 | } | ||
| 116 | |||
| 109 | // 查询会员 | 117 | // 查询会员 |
| 110 | function selectMember() { | 118 | function selectMember() { |
| 111 | // if (!baseFormData.value.name) { | 119 | // if (!baseFormData.value.name) { | ... | ... |
| ... | @@ -145,7 +145,7 @@ | ... | @@ -145,7 +145,7 @@ |
| 145 | idcType: '0', | 145 | idcType: '0', |
| 146 | perType: '1', // (1:个人会员;2:教练;3:考官;4:裁判;5:临时会员;) | 146 | perType: '1', // (1:个人会员;2:教练;3:考官;4:裁判;5:临时会员;) |
| 147 | }) | 147 | }) |
| 148 | const items = ref(['手动录入', '自动录入']) | 148 | const items = ref(['身份证添加', '证件照录入']) |
| 149 | const idcTypeList = ref([{ | 149 | const idcTypeList = ref([{ |
| 150 | value: '0', | 150 | value: '0', |
| 151 | text: "身份证" | 151 | text: "身份证" |
| ... | @@ -502,9 +502,9 @@ | ... | @@ -502,9 +502,9 @@ |
| 502 | delete baseFormData.value.card | 502 | delete baseFormData.value.card |
| 503 | 503 | ||
| 504 | const time = new Date().valueOf() + '' | 504 | const time = new Date().valueOf() + '' |
| 505 | baseFormData.t = time + Math.floor(Math.random() * 10) | 505 | baseFormData.value.t = time + Math.floor(Math.random() * 10) |
| 506 | baseFormData.signT = aes2.AESEncrypt(baseFormData.idcType + time) | 506 | baseFormData.value.signT = aes2.AESEncrypt(baseFormData.value.idcType + time) |
| 507 | 507 | console.log(baseFormData.value) | |
| 508 | api.addPersonToMyDept(baseFormData.value).then(Response => { | 508 | api.addPersonToMyDept(baseFormData.value).then(Response => { |
| 509 | if (Response.data == 0) { | 509 | if (Response.data == 0) { |
| 510 | let msg = '该成员,实名认证未通过,注册失败!' | 510 | let msg = '该成员,实名认证未通过,注册失败!' | ... | ... |
| ... | @@ -21,9 +21,10 @@ | ... | @@ -21,9 +21,10 @@ |
| 21 | <view> | 21 | <view> |
| 22 | 缴费状态 | 22 | 缴费状态 |
| 23 | <view> | 23 | <view> |
| 24 | <text v-if="item.settleFlag == 0" class="text-warning">已结算</text> | 24 | <text v-if="item.settleFlag == 0" class="text-success">已结算</text> |
| 25 | <text v-if="item.settleFlag == 1 && item.payFlag == 0" class="text-success">已上传</text> | 25 | <text v-if="item.settleFlag == 1" class="text-danger">未结算</text> |
| 26 | <text v-if="item.settleFlag == 1 && item.payFlag == 1" class="text-danger">未上传</text> | 26 | <!-- <text v-if="item.settleFlag == 1 && item.payFlag == 0" class="text-success">已上传</text>--> |
| 27 | <!-- <text v-if="item.settleFlag == 1 && item.payFlag == 1" class="text-danger">未上传</text>--> | ||
| 27 | </view> | 28 | </view> |
| 28 | </view> | 29 | </view> |
| 29 | <view> | 30 | <view> |
| ... | @@ -41,8 +42,11 @@ | ... | @@ -41,8 +42,11 @@ |
| 41 | 42 | ||
| 42 | </view> | 43 | </view> |
| 43 | <view class="func"> | 44 | <view class="func"> |
| 45 | <button v-if="item.settleFlag == 0" :disabled="!(item.payFlag == 0)" | ||
| 46 | @click="downloadOrder(item)">下载凭证</button> | ||
| 44 | <button | 47 | <button |
| 45 | v-if="(deptType == 2 || deptType == 3)&&item?.record?.auditStatus != 2 && item?.record?.auditStatus != 3" | 48 | v-if="(deptType == 2 || deptType == 3) && item.settleFlag != 0" |
| 49 | :disabled="item?.record?.auditStatus == 2 || item?.record?.auditStatus == 3||item.yjFlag==1" | ||
| 46 | @click="handleUpdate(item)">上传凭证</button> | 50 | @click="handleUpdate(item)">上传凭证</button> |
| 47 | </view> | 51 | </view> |
| 48 | </view> | 52 | </view> |
| ... | @@ -121,6 +125,71 @@ function handleUpdate(item) { | ... | @@ -121,6 +125,71 @@ function handleUpdate(item) { |
| 121 | form.value.docId = item.docId | 125 | form.value.docId = item.docId |
| 122 | UpPop.value.open() | 126 | UpPop.value.open() |
| 123 | } | 127 | } |
| 128 | function downloadOrder(item) { | ||
| 129 | //下载凭证 | ||
| 130 | var arr = JSON.parse(item.payEvidence) || [] | ||
| 131 | showImg(arr[0]?.url) | ||
| 132 | } | ||
| 133 | function showImg(url) { | ||
| 134 | var str = config.baseUrl_api + url | ||
| 135 | if (url.indexOf('png') > -1 || url.indexOf('jpg') > -1 || url.indexOf('jpeg') > -1) { | ||
| 136 | uni.previewImage({ | ||
| 137 | urls: [str], | ||
| 138 | success: function(res) { | ||
| 139 | console.log('success', res) | ||
| 140 | }, | ||
| 141 | fail: function(res) { | ||
| 142 | console.log('fail', res) | ||
| 143 | }, | ||
| 144 | complete: function(res) { | ||
| 145 | console.log('complete', res) | ||
| 146 | } | ||
| 147 | }) | ||
| 148 | } else { | ||
| 149 | goWebView(str) | ||
| 150 | } | ||
| 151 | } | ||
| 152 | |||
| 153 | function goWebView(url) { | ||
| 154 | url = url.replace("http://", "https://") | ||
| 155 | uni.showLoading({ | ||
| 156 | title: '下载中' | ||
| 157 | }); | ||
| 158 | uni.downloadFile({ | ||
| 159 | url: url, | ||
| 160 | success: function(res) { | ||
| 161 | uni.hideLoading(); | ||
| 162 | var filePath = res.tempFilePath; | ||
| 163 | uni.showLoading({ | ||
| 164 | title: '正在打开' | ||
| 165 | }); | ||
| 166 | uni.openDocument({ | ||
| 167 | filePath: filePath, | ||
| 168 | showMenu: true, | ||
| 169 | success: function(res) { | ||
| 170 | uni.hideLoading(); | ||
| 171 | }, | ||
| 172 | fail: function(err) { | ||
| 173 | uni.hideLoading(); | ||
| 174 | uni.showToast({ | ||
| 175 | title: err, | ||
| 176 | icon: 'none', | ||
| 177 | duration: 2000 | ||
| 178 | }); | ||
| 179 | } | ||
| 180 | }); | ||
| 181 | }, | ||
| 182 | fail: function(error) { | ||
| 183 | uni.hideLoading(); | ||
| 184 | uni.showToast({ | ||
| 185 | title: `下载失败`, | ||
| 186 | icon: 'none', | ||
| 187 | duration: 2000 | ||
| 188 | }); | ||
| 189 | } | ||
| 190 | }); | ||
| 191 | } | ||
| 192 | |||
| 124 | let selectFileValue = {} | 193 | let selectFileValue = {} |
| 125 | function selectFile(e) { | 194 | function selectFile(e) { |
| 126 | let file = e.tempFiles[0] | 195 | let file = e.tempFiles[0] |
| ... | @@ -166,6 +235,9 @@ function goDetail(item) { | ... | @@ -166,6 +235,9 @@ function goDetail(item) { |
| 166 | </script> | 235 | </script> |
| 167 | 236 | ||
| 168 | <style scoped lang="scss"> | 237 | <style scoped lang="scss"> |
| 238 | .appList .appItem .func button[disabled]{ | ||
| 239 | opacity: 0.3; | ||
| 240 | } | ||
| 169 | .popBody { | 241 | .popBody { |
| 170 | font-size: 28rpx; | 242 | font-size: 28rpx; |
| 171 | line-height: 1.5; | 243 | line-height: 1.5; | ... | ... |
-
Please register or sign in to post a comment