132ee8c8 by 张猛

ztx个人审核

1 parent 6c6dcc02
...@@ -43,32 +43,36 @@ ...@@ -43,32 +43,36 @@
43 </view> 43 </view>
44 <view class="date" @click="goDetail(item)"> 44 <view class="date" @click="goDetail(item)">
45 <uni-icons color="#AD181F" size="16" type="calendar-filled"></uni-icons> 45 <uni-icons color="#AD181F" size="16" type="calendar-filled"></uni-icons>
46 {{ item.content?.commitTime }} 提交 46 {{ item.commitTime }} 提交
47 </view> 47 </view>
48 <view v-if="item?.wfCode" class="text-primary" @click="goDetail(item)">{{ item?.wfCode }} 48 <view v-if="item?.wfCode" class="text-primary" @click="goDetail(item)">{{ item.wfCode }}
49 </view> 49 </view>
50 <view class="name" @click="goDetail(item)">{{ item.name }}</view> 50 <view class="name" @click="goDetail(item)">{{ item.memName }}</view>
51 <view class="flexbox" @click="goDetail(item)"> 51 <view class="flexbox" @click="goDetail(item)">
52 <view> 52 <view>
53 人数合计 53 人数合计
54 <view>{{ item.personCount }}</view> 54 <view>{{ item.allCount }}</view>
55 </view> 55 </view>
56 <view> 56 <view>
57 年限合计 57 年限合计
58 <view>{{ item.totalYear }}</view> 58 <view>{{ item.yearCount }}</view>
59 </view> 59 </view>
60 <view> 60 <view>
61 提交单位 61 新会员
62 <view>{{ item.memberName }}</view> 62 <view>{{ item.newCount }}</view>
63 </view>
64 <view>
65 费用
66 <view>{{ (item.price * 1).toFixed(2) }}</view>
63 </view> 67 </view>
64 </view> 68 </view>
65 <view v-if="item.auditStatus==0" class="func"> 69 <view v-if="item.auditStatus==0" class="func">
66 <button @click="audit(item.recordId,'0')">拒绝</button> 70 <button @click="audit(item.recordId,'0')">拒绝</button>
67 <button @click="audit(item.recordId,'1')">同意</button> 71 <button @click="audit(item.recordId,'1')">同意</button>
68 </view> 72 </view>
69 <view v-if="item.auditStatus==1 && item.isView == 1" class="func"> 73 <!-- <view v-if="item.auditStatus==1 && item.isView == 1" class="func">-->
70 <button @click="handleDelete(item)">撤回</button> 74 <!-- <button @click="handleDelete(item)">撤回</button>-->
71 </view> 75 <!-- </view>-->
72 </view> 76 </view>
73 </view> 77 </view>
74 78
...@@ -143,7 +147,6 @@ async function getList() { ...@@ -143,7 +147,6 @@ async function getList() {
143 const res = await api.auditList(queryParams.value) 147 const res = await api.auditList(queryParams.value)
144 list.value = res.rows 148 list.value = res.rows
145 total.value = res.total 149 total.value = res.total
146
147 statistical.value = { 150 statistical.value = {
148 totalCost: 0, 151 totalCost: 0,
149 personCount: 0, 152 personCount: 0,
...@@ -151,14 +154,12 @@ async function getList() { ...@@ -151,14 +154,12 @@ async function getList() {
151 oldPersonCount: 0, 154 oldPersonCount: 0,
152 totalYear: 0 155 totalYear: 0
153 } 156 }
154 for (const item of list.value) { 157 for (const val of list.value) {
155 item.content = JSON.parse(item.content) 158 statistical.value.totalCost += val.price * 1
156 item.doc = JSON.parse(item.doc) 159 statistical.value.personCount += val.allCount * 1
157 statistical.value.totalCost += (item.content.allFee * 1) 160 statistical.value.newPersonCount += val.newCount * 1
158 statistical.value.personCount += (item.content.personCount * 1) 161 statistical.value.oldPersonCount += val.oldCount * 1
159 statistical.value.newPersonCount += (item.content.newPersonCount * 1) 162 statistical.value.totalYear += val.yearCount * 1
160 statistical.value.oldPersonCount += (item.content.oldPersonCount * 1)
161 statistical.value.totalYear += (item.content.totalYear * 1)
162 } 163 }
163 uni.hideLoading() 164 uni.hideLoading()
164 165
...@@ -244,8 +245,14 @@ function goDetail(item) { ...@@ -244,8 +245,14 @@ function goDetail(item) {
244 const form = encodeURIComponent(JSON.stringify(item)) 245 const form = encodeURIComponent(JSON.stringify(item))
245 // console.log(userType.value) 246 // console.log(userType.value)
246 247
248 // let path =
249 // `/personalVip/auditDetail?form=${form}`
250 // uni.navigateTo({
251 // url: path
252 // });
253
247 let path = 254 let path =
248 `/personalVip/auditDetail?form=${form}` 255 `/personalVip/paymentDetail?form=${form}`
249 uni.navigateTo({ 256 uni.navigateTo({
250 url: path 257 url: path
251 }); 258 });
......
1 <template> 1 <template>
2 <view> 2 <view>
3 <view class="wBox"> 3 <view class="wBox">
4 <view class="tt">{{form.paymentName}}</view> 4 <view class="tt">{{ form.memName }}</view>
5 <view class="info" style="flex-wrap: wrap;">
6 <view class="w45">
7 <text class="text-danger"> {{ form?.allCount }}</text>
8
9 </view>
10 <view class="w45">新会员
11 <text class="text-primary"> {{ form?.newCount }}</text>
12
13 </view>
14 <view class="w45">续费合计
15 <text class="text-primary"> {{ form?.oldCount }}</text>
16
17 </view>
18 <view class="w45">费用合计
19 <text class="text-danger">{{ form?.price }}</text>
20
21 </view>
22 </view>
23 </view>
24
25
26 <view class="wBox">
27 <!-- <view class="tt">{{ // form.paymentName }}</view>-->
5 <view class="info"> 28 <view class="info">
6 <view><text>{{list.length}}</text></view> 29 <view>
30 <text>{{ list.length }}</text>
31
32 </view>
7 </view> 33 </view>
8 <view class="userlist"> 34 <view class="userlist">
9 <view class="item" v-for="(n,index) in list" :key="index"> 35 <view v-for="(n,index) in list" :key="index" class="item">
10 <view> 36 <view>
11 <view class="name">{{n.perName}}<text v-if="n.memberInfoName">({{n.memberInfoName || ''}})</text></view> 37 <view class="name">{{ n.perName }}
12 <view class="date">原有效期至 {{n.originValidityDate ? n.originValidityDate.slice(0,10) : '--'}}</view> 38 <text v-if="n.memberInfoName">({{ n.memberInfoName || '' }})</text>
39 </view>
40 <view class="date">原有效期至 {{ n.originValidityDate ? n.originValidityDate.slice(0, 10) : '--' }}</view>
13 </view> 41 </view>
14 <view class="nian"> 42 <view class="nian">
15 {{n.payYear}} 43 {{ n.payYear }}
16 </view> 44 </view>
17 </view> 45 </view>
18 </view> 46 </view>
19 </view> 47 </view>
20 48
21 <view class="h3-padding" v-if="feelList.length>0">审核流程</view> 49 <view v-if="feelList.length>0" class="h3-padding">审核流程</view>
22 <view class="wBox" v-if="feelList.length>0"> 50 <view v-if="feelList.length>0" class="wBox">
23 <view class="stepItem" v-for="(n,index) in feelList" :key="index"> 51 <view v-for="(n,index) in feelList" :key="index" class="stepItem">
24 <view class="time">{{n.auditTime || '待审批'}}</view> 52 <view class="time">{{ n.auditTime || '待审批' }}</view>
25 <view class="content"> 53 <view class="content">
26 <view class="status"> 54 <view class="status">
27 <text v-if="n.auditResult==0" class="text-primary"> 审核中</text> 55 <text v-if="n.auditResult==0" class="text-primary"> 审核中</text>
...@@ -29,9 +57,9 @@ ...@@ -29,9 +57,9 @@
29 <text v-if="n.auditResult==2" class="text-danger"> 审核拒绝</text> 57 <text v-if="n.auditResult==2" class="text-danger"> 审核拒绝</text>
30 <text v-if="n.auditResult==3" class="text-warning"> 已撤回</text> 58 <text v-if="n.auditResult==3" class="text-warning"> 已撤回</text>
31 </view> 59 </view>
32 <view class="name">{{index+1}}</view> 60 <view class="name">{{ index + 1 }}</view>
33 <view class="deptName">{{n.auditDeptName || n.auditBy}}</view> 61 <view class="deptName">{{ n.auditDeptName || n.auditBy }}</view>
34 <view>备注:{{n.auditMsg || '/' }}</view> 62 <view>备注:{{ n.auditMsg || '/' }}</view>
35 </view> 63 </view>
36 </view> 64 </view>
37 </view> 65 </view>
...@@ -39,32 +67,33 @@ ...@@ -39,32 +67,33 @@
39 </template> 67 </template>
40 68
41 <script setup> 69 <script setup>
42 import * as api from '@/common/api.js' 70 import * as api from '@/common/api.js'
43 import { ref } from 'vue' 71 import {ref} from 'vue'
44 import { onLoad } from '@dcloudio/uni-app' 72 import {onLoad} from '@dcloudio/uni-app'
45 73
46 // 查询参数(和PC保持一致) 74 // 查询参数(和PC保持一致)
47 const queryParams = ref({ 75 const queryParams = ref({
48 rangeId: '', 76 rangeId: '',
49 pageNum: 1, 77 pageNum: 1,
50 pageSize: 999 78 pageSize: 999
51 }) 79 })
52 80
53 const form = ref({}) 81 const form = ref({})
54 const list = ref([]) 82 const list = ref([])
55 const feelList = ref([]) 83 const feelList = ref([])
56 84
57 onLoad((option) => { 85 onLoad((option) => {
58 if (option.form) { 86 if (option.form) {
59 form.value = JSON.parse(decodeURIComponent(option.form)) 87 form.value = JSON.parse(decodeURIComponent(option.form))
60 queryParams.value.rangeId = form.value.rangId || form.value.rangeId 88 queryParams.value.rangeId = form.value.rangId || form.value.rangeId
61
62 getList() 89 getList()
63 getAuditLogs() 90 getAuditLogs()
64 } 91 }
65 })
66 92
67 async function getList() { 93 console.log(form.value)
94 })
95
96 async function getList() {
68 try { 97 try {
69 const res = await api.listAPI(queryParams.value) 98 const res = await api.listAPI(queryParams.value)
70 list.value = res.rows || [] 99 list.value = res.rows || []
...@@ -72,9 +101,9 @@ ...@@ -72,9 +101,9 @@
72 list.value = [] 101 list.value = []
73 console.error('获取成员失败', e) 102 console.error('获取成员失败', e)
74 } 103 }
75 } 104 }
76 105
77 function getAuditLogs() { 106 function getAuditLogs() {
78 if (form.value.auditLogs) { 107 if (form.value.auditLogs) {
79 try { 108 try {
80 feelList.value = JSON.parse(form.value.auditLogs) 109 feelList.value = JSON.parse(form.value.auditLogs)
...@@ -82,11 +111,11 @@ ...@@ -82,11 +111,11 @@
82 feelList.value = [] 111 feelList.value = []
83 } 112 }
84 } 113 }
85 } 114 }
86 </script> 115 </script>
87 116
88 <style scoped lang="scss"> 117 <style lang="scss" scoped>
89 .wBox { 118 .wBox {
90 width: 700rpx; 119 width: 700rpx;
91 padding: 30rpx; 120 padding: 30rpx;
92 margin: 20rpx auto 0; 121 margin: 20rpx auto 0;
...@@ -98,9 +127,9 @@ ...@@ -98,9 +127,9 @@
98 color: #0A1629; 127 color: #0A1629;
99 font-size: 30rpx; 128 font-size: 30rpx;
100 } 129 }
101 } 130 }
102 131
103 .userlist { 132 .userlist {
104 .item { 133 .item {
105 border-bottom: 1px dashed #e5e5e5; 134 border-bottom: 1px dashed #e5e5e5;
106 position: relative; 135 position: relative;
...@@ -114,6 +143,7 @@ ...@@ -114,6 +143,7 @@
114 143
115 .name { 144 .name {
116 font-size: 30rpx; 145 font-size: 30rpx;
146
117 text { 147 text {
118 margin-left: 1em; 148 margin-left: 1em;
119 color: #4C5359; 149 color: #4C5359;
...@@ -129,9 +159,9 @@ ...@@ -129,9 +159,9 @@
129 color: #AD181F; 159 color: #AD181F;
130 } 160 }
131 } 161 }
132 } 162 }
133 163
134 .info { 164 .info {
135 display: flex; 165 display: flex;
136 margin: 30rpx 0 20rpx; 166 margin: 30rpx 0 20rpx;
137 font-size: 28rpx; 167 font-size: 28rpx;
...@@ -139,19 +169,20 @@ ...@@ -139,19 +169,20 @@
139 view { 169 view {
140 color: #7D8592; 170 color: #7D8592;
141 margin-right: 20rpx; 171 margin-right: 20rpx;
172
142 text { 173 text {
143 color: #AD181F; 174 color: #AD181F;
144 } 175 }
145 } 176 }
146 } 177 }
147 178
148 .h3-padding { 179 .h3-padding {
149 padding: 20rpx 30rpx 0; 180 padding: 20rpx 30rpx 0;
150 font-size: 30rpx; 181 font-size: 30rpx;
151 font-weight: 500; 182 font-weight: 500;
152 } 183 }
153 184
154 .stepItem { 185 .stepItem {
155 border-left: 2rpx solid #E60012; 186 border-left: 2rpx solid #E60012;
156 padding-left: 20rpx; 187 padding-left: 20rpx;
157 position: relative; 188 position: relative;
...@@ -190,5 +221,5 @@ ...@@ -190,5 +221,5 @@
190 color: #666; 221 color: #666;
191 } 222 }
192 } 223 }
193 } 224 }
194 </style> 225 </style>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!