cf998da8 by 张猛

ztx个人审核

1 parent d598ebdd
...@@ -1932,3 +1932,12 @@ export function GroupGetLogs(id) { ...@@ -1932,3 +1932,12 @@ export function GroupGetLogs(id) {
1932 }) 1932 })
1933 } 1933 }
1934 1934
1935
1936 // 新个人会员审批
1937 export function auditList(params) {
1938 return request({
1939 url: '/person/paymentRangeNew/list',
1940 method: 'get',
1941 params: params
1942 })
1943 }
......
1 // dev 1 // dev
2 // const baseUrl_api = 'http://192.168.1.137:8787' 2 const baseUrl_api = 'http://192.168.1.137:8787'
3 const baseUrl_api = 'http://tk001.wxjylt.com/stage-api' 3 // const baseUrl_api = 'http://tk001.wxjylt.com/stage-api'
4 const loginImage_api = 'http://tk001.wxjylt.com/stage-api' 4 const loginImage_api = 'http://tk001.wxjylt.com/stage-api'
5 const payUrl = 'https://wxpay.cmbc.com.cn/mobilePlatform/appserver/lcbpPay.do' 5 const payUrl = 'https://wxpay.cmbc.com.cn/mobilePlatform/appserver/lcbpPay.do'
6 6
......
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
1 <template> 1 <template>
2 <view> 2 <view>
3 <view class="text-center whitebg" v-if="userType=='2'"> 3 <!-- <view class="text-center whitebg" v-if="userType=='2'">-->
4 <view class="cardNav" v-if="userType=='2'"> 4 <!-- <view class="cardNav" v-if="userType=='2'">-->
5 <view class="active">审核</view> 5 <!-- <view class="active">审核</view>-->
6 <view @click="goMerge">合并</view> 6 <!-- <view @click="goMerge">合并</view>-->
7 <view @click="goMergeUp">提交</view> 7 <!-- <view @click="goMergeUp">提交</view>-->
8 </view> 8 <!-- </view>-->
9 </view> 9 <!-- </view>-->
10 <uni-segmented-control class="whitebg" :current="current" :values="navs" @clickItem="onClickItem" 10 <uni-segmented-control
11 styleType="text" activeColor="#AD181F"></uni-segmented-control> 11 :current="current"
12 :values="navs"
13 activeColor="#AD181F"
14 class="whitebg"
15 styleType="text"
16 @clickItem="onClickItem">
17 </uni-segmented-control>
12 18
13 <!-- 缴费审核 --> 19 <!-- 缴费审核 -->
14 <view v-if="total>0" class="vipData" style="flex-wrap: wrap;"> 20 <view v-if="total>0" class="vipData" style="flex-wrap: wrap;">
15 <view class="w50">人数合计 <text>{{ statistical.personCount }}</text></view> 21 <view class="w50">费用合计
16 <view class="w50">新会员合计 <text>{{ statistical.newPersonCount }}</text></view> 22 <text>{{ statistical.totalCost?.toFixed(2) }}</text>
17 <view class="w50">续费合计 <text>{{ statistical.oldPersonCount }}</text></view> 23 </view>
18 <view class="w50">年限合计 <text>{{ statistical.totalYear }}</text></view> 24 <view class="w50">人数合计
25 <text>{{ statistical.personCount }}</text>
26 </view>
27 <view class="w50">新会员合计
28 <text>{{ statistical.newPersonCount }}</text>
29 </view>
30 <view class="w50">续费合计
31 <text>{{ statistical.oldPersonCount }}</text>
32 </view>
33 <view class="w50">年限合计
34 <text>{{ statistical.totalYear }}</text>
35 </view>
19 </view> 36 </view>
20 <view class="appList"> 37 <view class="appList">
21 <view class="appItem" v-for="(item,index) in list" :key="index"> 38 <view v-for="(item,index) in list" :key="index" class="appItem">
22 <view class="status" @click="goDetail(item)"> 39 <view class="status" @click="goDetail(item)">
23 <text v-if="item.auditStatus==0" class="text-primary">审核中</text> 40 <text v-if="item.auditStatus==1" class="text-primary">审核中</text>
24 <text v-if="item.auditStatus==1" class="text-success"> 审核通过</text> 41 <text v-if="item.auditStatus==2" class="text-success"> 审核通过</text>
25 <text v-if="item.auditStatus==2" class="text-danger"> 审核拒绝</text> 42 <text v-if="item.auditStatus==3" class="text-danger"> 审核拒绝</text>
26 <text v-if="item.auditStatus==3" class="text-warning">已撤回</text>
27 </view> 43 </view>
28 <view class="date" @click="goDetail(item)"> 44 <view class="date" @click="goDetail(item)">
29 <uni-icons type="calendar-filled" size="16" color="#AD181F"></uni-icons> 45 <uni-icons color="#AD181F" size="16" type="calendar-filled"></uni-icons>
30 {{item.content.commitTime}} 提交 46 {{ item.content?.commitTime }} 提交
31 </view> 47 </view>
32 <view class="text-primary" v-if="item.content?.wfCode" @click="goDetail(item)">{{item.content?.wfCode}} 48 <view v-if="item?.wfCode" class="text-primary" @click="goDetail(item)">{{ item?.wfCode }}
33 </view> 49 </view>
34 <view class="name" @click="goDetail(item)">{{item.content.name}}</view> 50 <view class="name" @click="goDetail(item)">{{ item.name }}</view>
35 <view class="flexbox" @click="goDetail(item)"> 51 <view class="flexbox" @click="goDetail(item)">
36 <view> 52 <view>
37 人数合计 53 人数合计
38 <view>{{item.content.personCount}}</view> 54 <view>{{ item.personCount }}</view>
39 </view> 55 </view>
40 <view> 56 <view>
41 年限合计 57 年限合计
42 <view>{{item.content.totalYear}}</view> 58 <view>{{ item.totalYear }}</view>
43 </view> 59 </view>
44 <view> 60 <view>
45 提交单位 61 提交单位
46 <view>{{item.content.memberName}}</view> 62 <view>{{ item.memberName }}</view>
47 </view> 63 </view>
48 </view> 64 </view>
49 <view class="func" v-if="item.auditStatus==0"> 65 <view v-if="item.auditStatus==0" class="func">
50 <button @click="audit(item.recordId,'0')">拒绝</button> 66 <button @click="audit(item.recordId,'0')">拒绝</button>
51 <button @click="audit(item.recordId,'1')">同意</button> 67 <button @click="audit(item.recordId,'1')">同意</button>
52 </view> 68 </view>
53 <view class="func" v-if="item.auditStatus==1 && item.isView == 1"> 69 <view v-if="item.auditStatus==1 && item.isView == 1" class="func">
54 <button @click="handleDelete(item)">撤回</button> 70 <button @click="handleDelete(item)">撤回</button>
55 </view> 71 </view>
56 </view> 72 </view>
57 </view> 73 </view>
58 74
59 75
60 76 <view v-if="list.length==0" class="nodata">
61 <view class="nodata" v-if="list.length==0"> 77 <image :src="config.baseUrl_api + '/fs/static/nodata.png'" mode="aspectFit"></image>
62 <image mode="aspectFit" :src="config.baseUrl_api + '/fs/static/nodata.png'"></image>
63 <text>暂无数据</text> 78 <text>暂无数据</text>
64 </view> 79 </view>
65 <!-- <view v-if="userType=='2'" class="block-btn-box"> 80 <!-- <view v-if="userType=='2'" class="block-btn-box">
...@@ -69,29 +84,33 @@ ...@@ -69,29 +84,33 @@
69 </template> 84 </template>
70 85
71 <script setup> 86 <script setup>
72 import * as api from '@/common/api.js' 87 import * as api from '@/common/api.js'
73 import config from '@/config.js' 88 import config from '@/config.js'
74 import { 89 import {
75 onMounted, 90 onMounted,
76 ref 91 ref
77 } from 'vue' 92 } from 'vue'
78 import { 93 import {
79 onShow 94 onShow
80 } from '@dcloudio/uni-app' 95 } from '@dcloudio/uni-app'
81 const app = getApp(); 96 import {auditList} from "@/common/api.js";
82 const queryParams = ref({ 97
98 const app = getApp();
99 const queryParams = ref({
83 // pageNum: 1, 100 // pageNum: 1,
84 // pageSize: 10 101 // pageSize: 10
85 auditStatus: '0' 102 auditStatus: "1",
86 }) 103 auditFlag: "1"
87 const navs = ref(['待审核', '审核通过', '审核拒绝', '撤回']) 104
88 const current = ref(0) 105 })
89 const list = ref([]) 106 const navs = ref(['待审核', '审核通过', '审核拒绝',])
90 const statistical = ref({}) 107 const current = ref(0)
91 const total = ref(0) 108 const list = ref([])
92 const deptType = ref('') 109 const statistical = ref({})
93 const userType = ref('') 110 const total = ref(0)
94 onShow(() => { 111 const deptType = ref('')
112 const userType = ref('')
113 onShow(() => {
95 if (app.globalData.isLogin) { 114 if (app.globalData.isLogin) {
96 init() 115 init()
97 } else { 116 } else {
...@@ -99,54 +118,57 @@ ...@@ -99,54 +118,57 @@
99 init() 118 init()
100 }; 119 };
101 } 120 }
102 }) 121 })
103 122
104 function init() { 123 function init() {
105 userType.value = app.globalData.userType 124 userType.value = app.globalData.userType
106 deptType.value = app.globalData.deptType 125 deptType.value = app.globalData.deptType
107 getList() 126 getList()
108 } 127 }
109 128
110 function onClickItem(e) { 129 function onClickItem(e) {
111 console.log(e) 130 queryParams.value.auditStatus = e.currentIndex + 1
112 queryParams.value.auditStatus = e.currentIndex 131 console.log(queryParams.value.auditStatus)
113 getList() 132 getList()
114 } 133 }
115 134
116 function getList() { 135 async function getList() {
117 uni.showLoading({ 136 uni.showLoading({
118 title: `加载中`, 137 title: `加载中`,
119 mask: true 138 mask: true
120 }) 139 })
140 if (deptType.value == 2 || deptType.value == 3) {
141 queryParams.value.mergeFlag = 0
142 }
143 const res = await api.auditList(queryParams.value)
144 list.value = res.rows
145 total.value = res.total
146
121 statistical.value = { 147 statistical.value = {
148 totalCost: 0,
122 personCount: 0, 149 personCount: 0,
123 newPersonCount: 0, 150 newPersonCount: 0,
124 oldPersonCount: 0, 151 oldPersonCount: 0,
125 totalYear: 0 152 totalYear: 0
126 } 153 }
127 if (deptType.value == 2 || deptType.value == 3) { 154 for (const item of list.value) {
128 queryParams.value.mergeFlag = 0
129 }
130 api.getVerifyList(queryParams.value).then(res => {
131 list.value = res.rows
132 list.value.forEach(item => {
133 item.content = JSON.parse(item.content) 155 item.content = JSON.parse(item.content)
156 item.doc = JSON.parse(item.doc)
157 statistical.value.totalCost += (item.content.allFee * 1)
134 statistical.value.personCount += (item.content.personCount * 1) 158 statistical.value.personCount += (item.content.personCount * 1)
135 statistical.value.newPersonCount += (item.content.newPersonCount * 1) 159 statistical.value.newPersonCount += (item.content.newPersonCount * 1)
136 statistical.value.oldPersonCount += (item.content.oldPersonCount * 1) 160 statistical.value.oldPersonCount += (item.content.oldPersonCount * 1)
137 statistical.value.totalYear += (item.content.totalYear * 1) 161 statistical.value.totalYear += (item.content.totalYear * 1)
138
139 })
140 total.value = res.total
141 uni.hideLoading()
142 })
143 } 162 }
163 uni.hideLoading()
164
165 }
144 166
145 function handleDelete(row) { 167 function handleDelete(row) {
146 uni.showModal({ 168 uni.showModal({
147 title: '提示', 169 title: '提示',
148 content: `确定撤回 ${row.content.name}?`, 170 content: `确定撤回 ${row.name}?`,
149 success: function(res) { 171 success: function (res) {
150 if (res.confirm) { 172 if (res.confirm) {
151 api.withDraw({ 173 api.withDraw({
152 recordId: row.recordId, 174 recordId: row.recordId,
...@@ -160,24 +182,24 @@ ...@@ -160,24 +182,24 @@
160 } 182 }
161 } 183 }
162 }) 184 })
163 } 185 }
164 186
165 function audit(recordId, flag) { 187 function audit(recordId, flag) {
166 if (flag == '0') { 188 if (flag == '0') {
167 // 拒绝 189 // 拒绝
168 // 弹出框填写理由 190 // 弹出框填写理由
169 uni.showModal({ 191 uni.showModal({
170 title: '请输入拒绝理由', 192 title: '请输入拒绝理由',
171 editable: true, 193 editable: true,
172 success: function(res) { 194 success: function (res) {
173 if (res.confirm) { 195 if (res.confirm) {
174 if (!res.content) { 196 if (!res) {
175 uni.showToast({ 197 uni.showToast({
176 title: '请输入拒绝理由', 198 title: '请输入拒绝理由',
177 icon: 'none' 199 icon: 'none'
178 }) 200 })
179 } else { 201 } else {
180 doApproval(recordId, flag, res.content) 202 doApproval(recordId, flag, res)
181 } 203 }
182 } 204 }
183 } 205 }
...@@ -187,16 +209,16 @@ ...@@ -187,16 +209,16 @@
187 uni.showModal({ 209 uni.showModal({
188 title: '提示', 210 title: '提示',
189 content: `确定审批通过吗`, 211 content: `确定审批通过吗`,
190 success: function(res) { 212 success: function (res) {
191 if (res.confirm) { 213 if (res.confirm) {
192 doApproval(recordId, flag) 214 doApproval(recordId, flag)
193 } 215 }
194 } 216 }
195 }) 217 })
196 } 218 }
197 } 219 }
198 220
199 function doApproval(recordId, flag, reason) { 221 function doApproval(recordId, flag, reason) {
200 var obj = { 222 var obj = {
201 flag: flag, 223 flag: flag,
202 reason: reason || '', 224 reason: reason || '',
...@@ -216,9 +238,9 @@ ...@@ -216,9 +238,9 @@
216 }) 238 })
217 getList() 239 getList()
218 }) 240 })
219 } 241 }
220 242
221 function goDetail(item) { 243 function goDetail(item) {
222 const form = encodeURIComponent(JSON.stringify(item)) 244 const form = encodeURIComponent(JSON.stringify(item))
223 // console.log(userType.value) 245 // console.log(userType.value)
224 246
...@@ -229,21 +251,21 @@ ...@@ -229,21 +251,21 @@
229 }); 251 });
230 252
231 253
232 } 254 }
233 255
234 function goMerge() { 256 function goMerge() {
235 let path = `/personalVip/sheng/merge` 257 let path = `/personalVip/sheng/merge`
236 uni.redirectTo({ 258 uni.redirectTo({
237 url: path 259 url: path
238 }); 260 });
239 } 261 }
240 262
241 function goMergeUp() { 263 function goMergeUp() {
242 let path = `/personalVip/sheng/mergeUp` 264 let path = `/personalVip/sheng/mergeUp`
243 uni.redirectTo({ 265 uni.redirectTo({
244 url: path 266 url: path
245 }); 267 });
246 } 268 }
247 </script> 269 </script>
248 270
249 <style> 271 <style>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!