hanchaobo před 2 roky
rodič
revize
47600d3316

+ 8
- 0
api/handlecase/index.js Zobrazit soubor

@@ -128,4 +128,12 @@ export function caseAppSubmit(data) {
128 128
 		method: 'post',
129 129
 		data: data
130 130
 	})
131
+}
132
+/** 根据id查询案件信息 */
133
+export function caseApplicationSelectById(data) {
134
+  return request({
135
+    url: '/caseApplication/selectById',
136
+    method: 'get',
137
+    params: data
138
+  })
131 139
 }

+ 20
- 0
pages/handlecase/component/list.vue Zobrazit soubor

@@ -41,6 +41,7 @@
41 41
 			</view>
42 42
 		</view>
43 43
 		<view class="btn" v-if="sysType == 2">
44
+			<button class="btnItem" type="primary" size="mini" @tap="modify">修改</button>
44 45
 			<!-- <button class="btnItem" type="primary" size="mini" @tap="clickPay">申请人缴费</button>
45 46
 			<button class="btnItem" type="primary" size="mini" @tap="caseDetail">选择调解员</button> -->
46 47
 			<button class="btnItem" type="primary" @tap="clickType(item.id)" size="mini" v-for="(item) in buttonList"
@@ -146,6 +147,25 @@
146 147
 					this.$emit("getList");
147 148
 				})
148 149
 			},
150
+			// 修改
151
+			modify(){
152
+				uni.redirectTo({
153
+					url: `/pages/handlecase/component/newlyAddedCase?id=${this.defalutVal.id}`,
154
+				})
155
+			},
156
+			/**查询按钮列表 */
157
+			getButtonList() {
158
+				queryCaseFlowInfo({
159
+					pageNum: 1,
160
+					pageSize: 100000
161
+				}).then(res => {
162
+					res.rows.forEach(item => {
163
+						if (item.id != 11 && item.id != 17) {
164
+							this.buttonList.push(item)
165
+						}
166
+					});
167
+				})
168
+			},
149 169
 		},
150 170
 		created() {
151 171
 			// this.getButtonList()

+ 86
- 66
pages/handlecase/component/newlyAddedCase.vue Zobrazit soubor

@@ -3,13 +3,19 @@
3 3
 		<view class="assignrbitrators">
4 4
 			<uni-forms ref="form" :modelValue="formData" :rules="rules">
5 5
 				<uni-section title="案件信息" type="line" padding></uni-section>
6
-				<uni-forms-item label="申请人调解请求:" name="arbitratClaims" label-width="120px" required>
6
+				<uni-forms-item label="申请人调解请求:" name="arbitratClaims" label-width="120px" required
7
+				:rules="[{'required': true,errorMessage: '申请人调解请求不能为空'}]"
8
+				>
7 9
 					<uni-easyinput  v-model="formData.arbitratClaims" type="textarea" placeholder="请输入申请人调解请求" />
8 10
 				</uni-forms-item>
9
-				<uni-forms-item label="事实和理由:" name="facts" label-width="120px" required>
11
+				<uni-forms-item label="事实和理由:" name="facts" label-width="120px" required
12
+				:rules="[{'required': true,errorMessage: '事实和理由不能为空'}]"
13
+				>
10 14
 					<uni-easyinput v-model="formData.facts" type="textarea" placeholder="请输入事实和理由" />
11 15
 				</uni-forms-item>
12
-				<uni-forms-item label="案件标的:" name="caseSubjectAmount" label-width="120px" required>
16
+				<uni-forms-item label="案件标的:" name="caseSubjectAmount" label-width="120px" required
17
+				:rules="[{'required': true,errorMessage: '案件标的不能为空'}]"
18
+				>
13 19
 					<uni-easyinput v-model="formData.caseSubjectAmount" type="text" placeholder="请输入案件标的" />
14 20
 				</uni-forms-item>
15 21
 				<uni-forms-item label="模板:" name="templateId" label-width="120px" required 
@@ -18,7 +24,7 @@
18 24
 					<uni-data-select :localdata="templateList" v-model="formData.templateId"></uni-data-select>
19 25
 				</uni-forms-item>
20 26
 				<uni-forms-item label="申请人案件证据资料上传:" name="headImage" label-width="120px">
21
-							<uni-file-picker ref="files" file-mediatype="all" :auto-upload="false" @select="select" :limit='1' />
27
+							<uni-file-picker ref="files" file-mediatype="all" :auto-upload="false" @select="select" :limit='9' />
22 28
 				</uni-forms-item>
23 29
 				<uni-section title="双方信息" type="line" padding></uni-section>
24 30
 				<uni-forms-item label="选择机构或自然人" label-width="120px" name="objectiJuris">
@@ -27,34 +33,14 @@
27 33
 						v-model="formData.affiliate.organizeFlag"
28 34
 						@change='clearValidate'></uni-data-checkbox>
29 35
 				</uni-forms-item>
30
-				<uni-forms-item label="申请人:" name="affiliate.applicationName" 
31
-				:rules="[{'required': true,errorMessage: '申请人不能为空'}]"
32
-				label-width="120px" required v-if="formData.affiliate.organizeFlag==0">
33
-					<uni-easyinput v-model="formData.affiliate.applicationName" type="text" placeholder="请输入申请人名称" />
36
+				<uni-forms-item :label="formData.affiliate.organizeFlag==0 ? '申请人':'申请机构'" :rules="rulesappName" name="affiliate.applicationName" label-width="120px" required >
37
+					<uni-easyinput v-model="formData.affiliate.applicationName" type="text" :placeholder="formData.affiliate.organizeFlag==0 ? '请输入申请人姓名':'请输入申请机构名称'"/>
34 38
 				</uni-forms-item>
35
-				<uni-forms-item label="申请人机构名称:" name="affiliate.applicationName" label-width="120px"
36
-				 :rules="[{'required': true,errorMessage: '申请人机构名称为空'}]" required
37
-				v-if="formData.affiliate.organizeFlag==1"
38
-				>
39
-					<uni-easyinput v-model="formData.affiliate.applicationName" 
40
-					type="text" placeholder="请输入申请人机构名称" />
39
+				<uni-forms-item :label="formData.affiliate.organizeFlag==0 ? '身份证号码':'机构代码'" name="affiliate.code" label-width="120px" required 
40
+				:rules="rulesappNo">
41
+					<uni-easyinput v-model="formData.affiliate.code" type="text" :placeholder="formData.affiliate.organizeFlag==0 ? '请输入身份证号码':'请输入统一社会代码'" />
41 42
 				</uni-forms-item>
42
-				<uni-forms-item label="申请人身份证号码:" name="affiliate.code" label-width="120px" required 
43
-				:rules="[
44
-					{'required': true,errorMessage: '申请人身份证号码为空'},
45
-					{pattern:'^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$',errorMessage:'申请人身份证格式错误'}
46
-					]"
47 43
 				
48
-				v-if="formData.affiliate.organizeFlag==0"
49
-				>
50
-					<uni-easyinput v-model="formData.affiliate.code" type="text" placeholder="请输入申请人身份证号码" />
51
-				</uni-forms-item>
52
-				<uni-forms-item label="统一社会信用代码:" name="affiliate.code" label-width="120px" required
53
-				:rules="[{'required': true,errorMessage: '统一社会信用代码为空'}]"
54
-				v-if="formData.affiliate.organizeFlag==1"
55
-				>
56
-					<uni-easyinput type="text" v-model="formData.affiliate.code" placeholder="请输入统一社会信用代码:" />
57
-				</uni-forms-item>
58 44
 				<uni-forms-item label="申请人邮箱:" name="affiliate.applicationEmail" label-width="120px" required
59 45
 				:rules="[
60 46
 					{'required': true,errorMessage: '申请人邮箱不能为空'},
@@ -181,7 +167,7 @@
181 167
 </template>
182 168
 
183 169
 <script>
184
-	import {getTemplate,getInfoByIdCard,caseApplicationInsert,updateComfire} from '../../../api/handlecase/index.js'
170
+	import {getTemplate,getInfoByIdCard,caseApplicationInsert,updateComfire,caseApplicationSelectById} from '../../../api/handlecase/index.js'
185 171
 	import {
186 172
 		getToken
187 173
 	} from '@/utils/auth'
@@ -197,6 +183,7 @@
197 183
 						columnValueList: [],
198 184
 						caseAttachList: [],
199 185
 					},
186
+					ids:null,
200 187
 					tempFilePaths: null,
201 188
 					templateList:[],
202 189
 					objectiJurisArr: [{
@@ -215,52 +202,68 @@
215 202
 							value: 0
216 203
 						}
217 204
 					],
218
-					rules: {
219
-						arbitratClaims: {
220
-							rules:[
221
-								{
222
-									required: true,
223
-									errorMessage: '申请人调解请求不能为空',
224
-								},
225
-							],
226
-						},
227
-						facts:{
228
-							rules:[
229
-								{
230
-									required: true,
231
-									errorMessage: '事实和理由不能空',
232
-								},
233
-							],
234
-						},
235
-						caseSubjectAmount:{
236
-							rules:[
237
-								{
238
-									required: true,
239
-									errorMessage: '案件标的不能为空',
240
-								},
241
-							],
242
-						},
243
-						respondentEmail:{
244
-							rules:[
245
-								{
246
-									required: true,
247
-									errorMessage: '邮箱不能为空',
205
+					rules:{},
206
+					rulesappName: [
207
+						{  
208
+							required: true,    
209
+							errorMessage: '输入信息不能为空',    
210
+						},{
211
+							
212
+							validateFunction: (rule, value, data, callback) => {
213
+								//判断手机号格式时候正确
214
+								if (value.length<1) {
215
+									if(this.formData.affiliate.organizeFlag == 0){
216
+										callback('请输入申请人姓名')
217
+									}else{
218
+										callback('请输入机构名称')
219
+									}
248 220
 								}
249
-							],
250
-						},
251
-						
252
-					}
221
+								return true
222
+							}
223
+													
224
+						}
225
+					],
226
+					rulesappNo: [
227
+						{  
228
+							required: true,    
229
+							errorMessage:'输入信息不能为空',    
230
+						},{
231
+							
232
+							validateFunction: (rule, value, data, callback) => {
233
+								//判断手机号格
234
+								if(this.formData.affiliate.organizeFlag == 0){
235
+									let pNoReg = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
236
+									if(!pNoReg.test(value)){
237
+										callback('请输入正确的身份证号码')
238
+									}
239
+								}else{
240
+									if(!value){
241
+										callback('请输入正确的机构信息')
242
+									}
243
+								}
244
+								return true
245
+							}
246
+													
247
+						}
248
+					]
253 249
 				}
254 250
 			
255 251
 			
256 252
 		},
257 253
 		methods:{
258 254
 			clearValidate(val){
255
+				 this.formData.affiliate.applicationName = null
256
+				 this.formData.affiliate.code = null
259 257
 				 this.$refs["form"].clearValidate()
260 258
 			},
261 259
 			submitReasont(){
262 260
 				this.$refs.form.validate().then(res=>{
263
-						this.insertFn(this.formData)
261
+						if(this.ids){
262
+							this.modifyData(this.formData)
263
+						}else{
264
+							this.insertFn(this.formData)
265
+						}
266
+						
264 267
 					}).catch(err =>{
265 268
 						
266 269
 				})
@@ -274,7 +277,14 @@
274 277
 					})
275 278
 			      });
276 279
 			},
277
-			// 被申请人获取性别喝出生年月
280
+			 /** 根据案件id获取对应信息 */
281
+			 caseApplicationSelectByIdFn(data) {
282
+				  caseApplicationSelectById(data).then(res=>{
283
+					 res.data.affiliate.respondentSex = Number(res.data.affiliate.respondentSex)
284
+					 this.formData = res.data
285
+				  })
286
+			 },
287
+			// 被申请人获取性别出生年月
278 288
 			handleBlur(){
279 289
 				let idCards = {
280 290
 				        idCard: this.formData.affiliate.respondentIdentityNum,
@@ -358,7 +368,17 @@
358 368
 			}
359 369
 		},
360 370
 		onLoad(data) {
371
+			this.ids = data.id
372
+			if(this.ids){
373
+				this.caseApplicationSelectByIdFn({id:data.id})
374
+				uni.setNavigationBarTitle({title:"案件修改"})
375
+			}else{
376
+				uni.setNavigationBarTitle({title:"案件新增"})
377
+			}
361 378
 			this.getTemplateFn()
379
+		},
380
+		onReady() {
381
+			this.$refs.form.setRules(this.rules)
362 382
 		}
363 383
 	}
364 384