newlyAddedCase.vue 35KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884
  1. <template>
  2. <view class="conent">
  3. <view class="assignrbitrators">
  4. <uni-forms ref="form" :modelValue="formData" :rules="rules">
  5. <uni-section title="案件信息" type="line" padding></uni-section>
  6. <uni-forms-item label="案件压缩包:" name="headZip" label-width="120px">
  7. <uni-file-picker ref="files" file-mediatype="all" return-type='object' v-model="fileListZip"
  8. :auto-upload="false" @select="selectZip" :limit='1' />
  9. </uni-forms-item>
  10. <uni-forms-item label="申请人调解请求:" name="arbitratClaims" label-width="120px" required
  11. :rules="[{required: true,errorMessage: '申请人调解请求不能为空'}]">
  12. <uni-easyinput v-model="formData.arbitratClaims" type="textarea" placeholder="请输入申请人调解请求" />
  13. </uni-forms-item>
  14. <uni-forms-item label="事实和理由:" name="facts" label-width="120px" required
  15. :rules="[{required: true,errorMessage: '事实和理由不能为空'}]">
  16. <uni-easyinput v-model="formData.facts" type="textarea" placeholder="请输入事实和理由" />
  17. </uni-forms-item>
  18. <uni-forms-item label="申请人案件证据资料上传:" name="headImage" label-width="120px">
  19. <uni-file-picker ref="files" file-mediatype="all" return-type='object' v-model="fileList"
  20. :auto-upload="false" @select="select" :limit='1' />
  21. </uni-forms-item>
  22. <uni-forms-item label="证据:" label-width="120px" v-if="ids">
  23. <view class="" v-for="item in formData.caseAttachList">
  24. <uni-link v-if="item.annexType==2" :href="baseUrl+item.annexPath" color="#007BFF"
  25. :text="item.annexName"></uni-link>
  26. </view>
  27. </uni-forms-item>
  28. <uni-forms-item label="调解申请书:" label-width="120px" v-if="ids">
  29. <view class="" v-for="item in formData.caseAttachList">
  30. <uni-link v-if="item.annexType==3" :href="baseUrl+item.annexPath" color="#007BFF"
  31. :text="item.annexName"></uni-link>
  32. </view>
  33. </uni-forms-item>
  34. <uni-forms-item label="选择机构或自然人" label-width="120px" name="objectiJuris">
  35. <uni-data-checkbox class='checkbox' :disabled="ids?true:false" :localdata="objectiJurisArr"
  36. v-model="formData.organizeFlag" @change='clearValidate'></uni-data-checkbox>
  37. </uni-forms-item>
  38. <button type="primary" @click="addMultiple" style="margin-bottom: 20px;">新增多个信息</button>
  39. <view v-for="(item ,index ) in formData.affiliate" :key="index">
  40. <button class="mini-btn" type="primary" size="mini" @tap="delValue(index)" v-if="delShow">删除</button>
  41. <uni-section :title="'双方信息' + (index + 1)" type="line" padding></uni-section>
  42. <uni-forms-item label="是否操作人" label-width="120px">
  43. <uni-data-checkbox
  44. v-model="formData.affiliate[index].applicant.operatorFlag"
  45. :localdata="isOperate"
  46. ></uni-data-checkbox>
  47. </uni-forms-item>
  48. <uni-forms-item :label="formData.organizeFlag==0 ? '申请人':'申请机构'" :rules="rulesPersonName"
  49. :name="['affiliate',index,'applicant','name']" label-width="120px" required>
  50. <uni-easyinput v-model="formData.affiliate[index].applicant.name" type="text"
  51. :placeholder="formData.organizeFlag==0 ? '请输入申请人姓名':'请输入申请机构名称'" />
  52. </uni-forms-item>
  53. <uni-forms-item label="证件类型" label-width="120px" v-if="formData.organizeFlag==0">
  54. <uni-data-select
  55. v-model="formData.affiliate[index].applicant.idType"
  56. :localdata="certificate"
  57. @change="changeDocment"
  58. ></uni-data-select>
  59. </uni-forms-item>
  60. <uni-forms-item label="地区" label-width="120px">
  61. <uni-data-select
  62. v-model="formData.affiliate[index].applicant.nationality"
  63. :localdata="nationality"
  64. @change="changeArea"
  65. ></uni-data-select>
  66. </uni-forms-item>
  67. <uni-forms-item key = 'code' v-if="formData.organizeFlag==1" label="机构代码" required label-width="120px" :name="['affiliate',index,'applicant','code']" :rules="[{required: true,errorMessage: '机构代码不能为空'}]">
  68. <uni-easyinput v-model="formData.affiliate[index].applicant.code" type="text"
  69. placeholder="请输入统一社会代码" />
  70. </uni-forms-item>
  71. <uni-forms-item label="证件号码" key = 'idCard' v-if="formData.organizeFlag==0" :name="['affiliate',index,'applicant','idCard']"
  72. label-width="120px" required :rules="[
  73. {required: true,errorMessage: '申请人身份证号不能为空'},
  74. {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:'申请人身份证格式错误'}]">
  75. <uni-easyinput v-model="formData.affiliate[index].applicant.idCard" type="text"
  76. placeholder="请输入证件号码" />
  77. </uni-forms-item>
  78. <uni-forms-item label="申请人邮箱:" key="email" v-if="formData.organizeFlag==0"
  79. :name="['affiliate',index,'applicant','email']" label-width="120px" required :rules="[
  80. {required: true,errorMessage: '被申请人邮箱不能为空'},
  81. {pattern:'^\\S+?@\\S+?\\.\\S+?$',errorMessage:'邮箱格式不正确'}
  82. ]">
  83. <uni-easyinput v-model="formData.affiliate[index].applicant.email"
  84. type="text" placeholder="请输入申请人邮箱" />
  85. </uni-forms-item>
  86. <uni-forms-item label="申请人电话:" key="phone" v-if="formData.organizeFlag==0"
  87. :name="['affiliate',index,'applicant','phone']" label-width="120px" :required="testVerify" :rules="rulesRespondentPhone">
  88. <uni-easyinput v-model="formData.affiliate[index].applicant.phone"
  89. type="text" placeholder="请输入申请人电话" />
  90. </uni-forms-item>
  91. <uni-forms-item label="法定代表人:" v-if="formData.organizeFlag==1"
  92. :name="['affiliate',index,'applicant','compLegalPerson']" key="compLegalPerson" label-width="120px" required :rules="[{required: true,errorMessage: '法定代表人不能为空'}]">
  93. <uni-easyinput v-model="formData.affiliate[index].applicant.compLegalPerson" type="text" placeholder="请输入法定代表人" />
  94. </uni-forms-item>
  95. <uni-forms-item label="申请人住所:" :name="['affiliate',index,'applicant','home']" label-width="120px" required
  96. :rules="[{required: true,errorMessage: '申请人住所不能为空'}]">
  97. <uni-easyinput v-model="formData.affiliate[index].applicant.home" type="text" placeholder="请输入申请人住所" />
  98. </uni-forms-item>
  99. <uni-forms-item label="申请人联系地址:" :name="['affiliate',index,'applicant','address']" label-width="120px" required
  100. :rules="[{required: true,errorMessage: '申请人联系地址不能为空'}]">
  101. <uni-easyinput v-model="formData.affiliate[index].applicant.address" type="text" placeholder="请输入申请人联系地址" />
  102. </uni-forms-item>
  103. <uni-section title="申请代理人" type="line" padding></uni-section>
  104. <uni-forms-item label="是否操作人" label-width="120px">
  105. <uni-data-checkbox
  106. v-model="formData.affiliate[index].applicantAgent.operatorFlag"
  107. :localdata="isProxyApplicant"
  108. ></uni-data-checkbox>
  109. </uni-forms-item>
  110. <uni-forms-item label="代理人联系电话:" label-width="120px">
  111. <uni-easyinput v-model="formData.affiliate[index].applicantAgent.phone" type="text"
  112. placeholder="请输入代理人联系电话" />
  113. </uni-forms-item>
  114. <uni-forms-item label="代理人姓名:" label-width="120px">
  115. <uni-easyinput v-model="formData.affiliate[index].applicantAgent.name" type="text"
  116. placeholder="请输入委托代理人姓名" />
  117. </uni-forms-item>
  118. <uni-forms-item label="代理人邮箱:" label-width="120px">
  119. <uni-easyinput v-model="formData.affiliate[index].applicantAgent.email" type="text"
  120. placeholder="请输入代理人邮箱" />
  121. </uni-forms-item>
  122. <uni-section title="被申请人" type="line" padding></uni-section>
  123. <uni-forms-item label="是否操作人" label-width="120px">
  124. <uni-data-checkbox
  125. v-model="formData.affiliate[index].res.operatorFlag"
  126. :localdata="isRespondent"
  127. ></uni-data-checkbox>
  128. </uni-forms-item>
  129. <uni-forms-item label="被申请人姓名:" :name="['affiliate',index,'res','name']" label-width="120px" required
  130. :rules="[{required: true,errorMessage: '被申请人姓名不能为空'}]">
  131. <uni-easyinput v-model="formData.affiliate[index].res.name" type="text" placeholder="请输入被申请人姓名" />
  132. </uni-forms-item>
  133. <uni-forms-item label="被申请人联系电话:" :name="['affiliate',index,'res','phone']" label-width="120px" :required="testVerify" :rules="rulesRespondentPhone">
  134. <uni-easyinput v-model="formData.affiliate[index].res.phone" type="text" placeholder="请输入被申请人联系电话" />
  135. </uni-forms-item>
  136. <uni-forms-item label="被申请人身份证号:" :name="['affiliate',index,'res','idCard']" label-width="120px" required
  137. :rules="[
  138. {required: true,errorMessage: '被申请人身份证号不能为空'},
  139. {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:'被申请人身份证格式错误'}
  140. ]">
  141. <uni-easyinput v-model="formData.affiliate[index].res.idCard" @blur="handleBlur(index)" type="text"
  142. placeholder="请输入被申请人身份证号" />
  143. </uni-forms-item>
  144. <uni-forms-item label="被申请人性别" label-width="120px" required>
  145. <uni-data-checkbox class='checkbox' :disabled='true' v-model="formData.affiliate[index].res.sex"
  146. :localdata="respondentSexy"></uni-data-checkbox>
  147. </uni-forms-item>
  148. <uni-forms-item label="被申请人出生年月日" label-width="120px">
  149. <uni-datetime-picker v-model="formData.affiliate[index].res.birth" :disabled='true' type="date"
  150. :clear-icon="false" />
  151. </uni-forms-item>
  152. <uni-forms-item label="被申请人住所:" :name="['affiliate',index,'res','home']" label-width="120px" required
  153. :rules="[{required: true,errorMessage: '被申请人住所不能为空'}]">
  154. <uni-easyinput v-model="formData.affiliate[index].res.home" type="text" placeholder="请输入被申请人住所" />
  155. </uni-forms-item>
  156. <uni-forms-item label="被申请人邮箱:" :name="['affiliate',index,'res','email']" label-width="120px" required :rules="[
  157. {required: true,errorMessage: '被申请人邮箱不能为空'},
  158. {pattern:'^\\S+?@\\S+?\\.\\S+?$',errorMessage:'邮箱格式不正确'}
  159. ]">
  160. <uni-easyinput v-model="formData.affiliate[index].res.email" type="text" placeholder="请输入被申请人邮箱" />
  161. </uni-forms-item>
  162. <uni-section title="被申请代理人" type="line" padding></uni-section>
  163. <uni-forms-item label="是否操作人" label-width="120px">
  164. <uni-data-checkbox
  165. v-model="formData.affiliate[index].resAgent.operatorFlag"
  166. :localdata="isResApplicant"
  167. ></uni-data-checkbox>
  168. </uni-forms-item>
  169. <uni-forms-item label="代理人联系电话:" label-width="120px">
  170. <uni-easyinput v-model="formData.affiliate[index].resAgent.phone" type="text"
  171. placeholder="请输入代理人联系电话" />
  172. </uni-forms-item>
  173. <uni-forms-item label="代理人姓名:" label-width="120px">
  174. <uni-easyinput v-model="formData.affiliate[index].resAgent.name" type="text"
  175. placeholder="请输入委托代理人姓名" />
  176. </uni-forms-item>
  177. <uni-forms-item label="代理人邮箱:" label-width="120px">
  178. <uni-easyinput v-model="formData.affiliate[index].resAgent.email" type="text"
  179. placeholder="请输入代理人邮箱" />
  180. </uni-forms-item>
  181. </view>
  182. </uni-forms>
  183. <view class="determine" style="text-align: center;">
  184. <button class="mini-btn" type="primary" size="mini" @tap="submitReasont">确定</button>
  185. <button style="margin-left:30rpx;" class="mini-btn" type="default" size="mini"
  186. @tap="cencalBut">取消</button>
  187. </view>
  188. </view>
  189. </view>
  190. </template>
  191. <script>
  192. import {
  193. getTemplate,
  194. getInfoByIdCard,
  195. caseApplicationInsert,
  196. updateComfire,
  197. caseApplicationSelectById,
  198. getUserInfo,
  199. idType
  200. } from '../../../api/handlecase/index.js'
  201. import {
  202. getToken
  203. } from '@/utils/auth'
  204. import config from '@/config'
  205. import constant from '../../../utils/constant.js'
  206. export default {
  207. data() {
  208. return {
  209. baseUrl: config.baseUrlTJ,
  210. certificate: [],
  211. dynamicLists: [],
  212. nationality: [
  213. { value: 0, text: "境内" },
  214. { value: 1, text: "境外" },
  215. ],
  216. isOperate:[
  217. { value: 1, text: "是" },
  218. { value: 0, text: "否" },
  219. ],
  220. isProxyApplicant:[
  221. { value: 1, text: "是" },
  222. { value: 0, text: "否" },
  223. ],
  224. isRespondent:[
  225. { value: 1, text: "是" },
  226. { value: 0, text: "否" },
  227. ],
  228. isResApplicant:[
  229. { value: 1, text: "是" },
  230. { value: 0, text: "否" },
  231. ],
  232. delShow:false,
  233. formZipData: {},
  234. formData: {
  235. organizeFlag: 0,
  236. // affiliate: {
  237. // roleType:1,
  238. // respondentSex: 0,
  239. // },
  240. affiliate:[{
  241. applicant: {
  242. roleType: 1,
  243. name: "",
  244. idCard: "",
  245. code: "",
  246. phone: "",
  247. compLegalPerson: "",
  248. email: "",
  249. home: "",
  250. address: "",
  251. idType: 0,
  252. nationality: 1,
  253. birth: "",
  254. sex: "",
  255. group_order: 1,
  256. operatorFlag:1
  257. },
  258. applicantAgent: {
  259. roleType: 2,
  260. name: "",
  261. idCard: "",
  262. code: "",
  263. phone: "",
  264. compLegalPerson: "",
  265. email: "",
  266. home: "",
  267. address: "",
  268. idType: 0,
  269. nationality: 1,
  270. birth: "",
  271. sex: "",
  272. group_order: 1,
  273. operatorFlag:1
  274. },
  275. res:{
  276. roleTyp: 3,
  277. name: "",
  278. idCard: "",
  279. code: "",
  280. phone: "",
  281. compLegalPerson: "",
  282. email: "",
  283. home: "",
  284. address: "",
  285. idType: 0,
  286. nationality: 1,
  287. birth: "",
  288. sex: "0",
  289. group_order: 1,
  290. operatorFlag:1
  291. },
  292. resAgent: {
  293. roleType: 4,
  294. name: "",
  295. idCard: "",
  296. code: "",
  297. phone: "",
  298. compLegalPerson: "",
  299. email: "",
  300. home: "",
  301. address: "",
  302. idType: 0,
  303. nationality: 1,
  304. birth: "",
  305. sex: "",
  306. group_order: 1,
  307. operatorFlag:1
  308. }
  309. }],
  310. columnValueList: [],
  311. caseAttachList: [],
  312. },
  313. testVerify:true,
  314. getUserInfoList: {},
  315. ids: null,
  316. tempFilePaths: null,
  317. tempFilePathsZip: null,
  318. templateList: [],
  319. objectiJurisArr: [{
  320. text: '自然人',
  321. value: 0
  322. }, {
  323. text: '机构',
  324. value: 1
  325. }],
  326. respondentSexy: [{
  327. text: '女',
  328. value: 1
  329. }, {
  330. text: '男',
  331. value: 0
  332. }],
  333. disabledVal: false,
  334. disabledApplicat: false,
  335. fileList: {},
  336. fileListZip: {},
  337. rules: {},
  338. rulesRespondentPhone:[
  339. {required:true ,errorMessage: '被申请人联系电话不能为空'},
  340. {pattern:'^[1][3,4,5,6,7,8,9][0-9]{9}$',errorMessage:'被申请人联系电话格式不正确'}
  341. ],
  342. rulesPersonName:[{'required': true,errorMessage: '不能为空'}],
  343. rulesappNo: [{
  344. required: true,
  345. errorMessage: '输入信息不能为空',
  346. }, {
  347. validateFunction: (rule, value, data, callback) => {
  348. //判断手机号格
  349. if (this.formData.organizeFlag == 0) {
  350. let pNoReg =
  351. /^[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]$/
  352. if (!pNoReg.test(value)) {
  353. callback('请输入正确的身份证号码')
  354. }
  355. } else {
  356. if (!value) {
  357. callback('请输入正确的机构信息')
  358. }
  359. }
  360. return true
  361. }
  362. }]
  363. }
  364. },
  365. methods: {
  366. submitReasont() {
  367. this.$refs.form.validate().then(res => {
  368. console.log("pppppppppppp")
  369. if (this.ids) {
  370. this.modifyData(this.formData)
  371. } else {
  372. this.insertFn(this.formData)
  373. }
  374. }).catch(err => {
  375. console.log(err)
  376. })
  377. },
  378. // 获取新增默认值
  379. getUserInfoNumber() {
  380. let indexs = ""
  381. this.formData.affiliate.forEach((item,index)=>{
  382. indexs = index
  383. })
  384. getUserInfo().then(res => {
  385. this.getUserInfoList = res.data
  386. if (this.formData.organizeFlag == 0) {
  387. this.$set(this.formData.affiliate[indexs].applicant, 'name', res.data.nickName)
  388. this.$set(this.formData.affiliate[indexs].applicant, 'idCard', res.data.idCard)
  389. this.$set(this.formData.affiliate[indexs].applicant, 'email', res.data.email)
  390. this.$set(this.formData.affiliate[indexs].applicant, 'phone', res.data.phonenumber)
  391. this.$set(this.formData.affiliate[indexs].applicant, 'idType', res.data.idType)
  392. this.$set(this.formData.affiliate[indexs].applicant, 'nationality', res.data.nationality)
  393. } else if (this.formData.organizeFlag == 1) {
  394. console.log(this.formData.organizeFlag)
  395. this.$set(this.formData.affiliate[indexs].applicantAgent, 'name', res.data.nickName)
  396. this.$set(this.formData.affiliate[indexs].applicantAgent, 'email', res.data.email)
  397. this.$set(this.formData.affiliate[indexs].applicantAgent, 'phone', res.data.phonenumber)
  398. this.$set(this.formData.affiliate[indexs].applicantAgent, 'nationality', res.data.nationality)
  399. }
  400. })
  401. },
  402. clearValidate(val) {
  403. let indexs = ""
  404. this.formData.affiliate.forEach((item,index)=>{
  405. indexs = index
  406. })
  407. if (this.formData.organizeFlag == 0) {
  408. this.$set(this.formData.affiliate[indexs].applicant, 'name', this.getUserInfoList.nickName)
  409. this.$set(this.formData.affiliate[indexs].applicant, 'idCard', this.getUserInfoList.idCard)
  410. this.$set(this.formData.affiliate[indexs].applicant, 'email', this.getUserInfoList.email)
  411. this.$set(this.formData.affiliate[indexs].applicant, 'phone', this.getUserInfoList.phonenumber)
  412. if (this.formZipData.affiliate) {
  413. this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
  414. this.$set(this.formData, 'facts', this.formZipData.facts);
  415. this.$set(this.formData.affiliate, 'applicantHome', this.formZipData.affiliate
  416. .applicantHome);
  417. this.$set(this.formData.affiliate, 'applicantAddress', this.formZipData.affiliate
  418. .applicantAddress);
  419. this.$set(this.formData.affiliate, 'contactTelphoneAgent', this.formZipData
  420. .affiliate.contactTelphoneAgent);
  421. this.$set(this.formData.affiliate, 'nameAgent', this.formZipData.affiliate
  422. .nameAgent);
  423. this.$set(this.formData.affiliate, 'agentEmail', this.formZipData.affiliate
  424. .agentEmail);
  425. this.$set(this.formData.affiliate, 'respondentName', this.formZipData.affiliate
  426. .respondentName);
  427. this.$set(this.formData.affiliate, 'respondentPhone', this.formZipData.affiliate
  428. .respondentPhone);
  429. this.$set(this.formData.affiliate, 'respondentIdentityNum', this.formZipData
  430. .affiliate.respondentIdentityNum);
  431. this.$set(this.formData.affiliate, 'respondentSex', Number(this.formZipData
  432. .affiliate.respondentSex));
  433. this.$set(this.formData.affiliate, 'respondentBirth', this.formZipData.affiliate
  434. .respondentBirth);
  435. this.$set(this.formData.affiliate, 'respondentHome', this.formZipData.affiliate
  436. .respondentHome);
  437. this.$set(this.formData.affiliate, 'respondentEmail', this.formZipData.affiliate
  438. .respondentEmail);
  439. this.$set(this.formData.affiliate, 'compLegalPerson', this.formZipData.affiliate
  440. .compLegalPerson);
  441. } else {
  442. this.$set(this.formData.affiliate[indexs].applicantAgent, 'name', null)
  443. this.$set(this.formData.affiliate[indexs].applicantAgent, 'email', null)
  444. this.$set(this.formData.affiliate[indexs].applicantAgent, 'phone', null)
  445. }
  446. this.disabledVal = false
  447. this.disabledApplicat = true
  448. } else if (this.formData.organizeFlag == 1) {
  449. this.$set(this.formData.affiliate[indexs].applicantAgent, 'name', this.getUserInfoList.nickName)
  450. this.$set(this.formData.affiliate[indexs].applicantAgent, 'email', this.getUserInfoList.email)
  451. this.$set(this.formData.affiliate[indexs].applicantAgent, 'phone', this.getUserInfoList.phonenumber)
  452. if (this.formZipData.affiliate) {
  453. this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
  454. this.$set(this.formData, 'facts', this.formZipData.facts);
  455. this.$set(this.formData.affiliate, 'applicationName', this.formZipData.affiliate
  456. .applicationName);
  457. this.$set(this.formData.affiliate, 'code', this.formZipData.affiliate.code);
  458. this.$set(this.formData.affiliate, 'applicantHome', this.formZipData.affiliate
  459. .applicantHome);
  460. this.$set(this.formData.affiliate, 'applicantAddress', this.formZipData.affiliate
  461. .applicantAddress);
  462. this.$set(this.formData.affiliate, 'compLegalPerson', this.formZipData.affiliate
  463. .compLegalPerson);
  464. this.$set(this.formData.affiliate, 'applicationEmail', this.formZipData.affiliate
  465. .applicationEmail);
  466. this.$set(this.formData.affiliate, 'applicationPhone', this.formZipData.affiliate
  467. .applicationPhone);
  468. this.$set(this.formData.affiliate, 'respondentName', this.formZipData.affiliate
  469. .respondentName);
  470. this.$set(this.formData.affiliate, 'respondentPhone', this.formZipData.affiliate
  471. .respondentPhone);
  472. this.$set(this.formData.affiliate, 'respondentIdentityNum', this.formZipData
  473. .affiliate.respondentIdentityNum);
  474. this.$set(this.formData.affiliate, 'respondentSex', Number(this.formZipData
  475. .affiliate.respondentSex));
  476. this.$set(this.formData.affiliate, 'respondentBirth', this.formZipData.affiliate
  477. .respondentBirth);
  478. this.$set(this.formData.affiliate, 'respondentHome', this.formZipData.affiliate
  479. .respondentHome);
  480. this.$set(this.formData.affiliate, 'respondentEmail', this.formZipData.affiliate
  481. .respondentEmail);
  482. } else {
  483. this.$set(this.formData.affiliate[indexs].applicant, 'name', null)
  484. this.$set(this.formData.affiliate[indexs].applicant, 'idCard', null)
  485. this.$set(this.formData.affiliate[indexs].applicant, 'email', null)
  486. this.$set(this.formData.affiliate[indexs].applicant, 'phone', null)
  487. }
  488. this.disabledVal = true
  489. this.disabledApplicat = false
  490. }
  491. // this.formData.affiliate.applicationName =null
  492. // this.formData.affiliate.code =null
  493. this.$refs["form"].clearValidate()
  494. },
  495. /** 获取裁决书模板 */
  496. getTemplateFn(data) {
  497. getTemplate(data).then((res) => {
  498. //this.templateList = res.rows;
  499. res.rows.forEach(item => {
  500. this.templateList.push({
  501. value: item.id,
  502. text: item.temName
  503. })
  504. })
  505. });
  506. },
  507. /** 根据案件id获取对应信息 */
  508. caseApplicationSelectByIdFn(data) {
  509. caseApplicationSelectById(data).then(res => {
  510. res.data.affiliate.respondentSex = Number(res.data.affiliate.respondentSex)
  511. this.formData = res.data
  512. console.log(this.formData)
  513. })
  514. },
  515. // 被申请人获取性别出生年月
  516. handleBlur(index) {
  517. console.log(this.formData.affiliate[index].res.idCard)
  518. let idCards = {
  519. idCard: this.formData.affiliate[index].res.idCard,
  520. };
  521. getInfoByIdCard(idCards).then(res => {
  522. this.formData.affiliate[index].res.sex = Number(res.respondentSex);
  523. this.formData.affiliate[index].res.birth= res.respondentBirth;
  524. })
  525. },
  526. // 新增案件
  527. insertFn(data) {
  528. caseApplicationInsert(data).then((res) => {
  529. uni.showToast({
  530. title: '新增成功',
  531. icon: 'none',
  532. duration: 1000
  533. })
  534. uni.navigateTo({
  535. url: '../index'
  536. })
  537. // this.$router.go(-1)
  538. });
  539. },
  540. //修改案件
  541. modifyData(data) {
  542. updateComfire(data).then((res) => {
  543. uni.showToast({
  544. title: '修改成功',
  545. icon: 'none',
  546. duration: 1000
  547. })
  548. uni.navigateBack({
  549. delta: 1
  550. })
  551. });
  552. },
  553. // 压缩包上传
  554. selectZip(e) {
  555. if (e.tempFiles[0].extname != 'zip') {
  556. uni.showToast({
  557. title: '上传类型为zip',
  558. icon: 'none',
  559. duration: 1000
  560. })
  561. return
  562. }
  563. // loading
  564. this.tempFilePathsZip = e.tempFilePaths;
  565. uni.showLoading({
  566. title: '上传中'
  567. });
  568. uni.uploadFile({
  569. url: config.baseUrlTJ + "/caseApplication/userIdentify",
  570. filePath: this.tempFilePathsZip[0],
  571. header: {
  572. Authorization: getToken() || '',
  573. },
  574. name: 'file',
  575. success: (res) => {
  576. let result = JSON.parse(res.data)
  577. uni.showToast({
  578. title: '上传成功',
  579. icon: 'none',
  580. duration: 1000
  581. })
  582. this.formZipData = result.data;
  583. if (this.formData.organizeFlag == 0) {
  584. this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
  585. this.$set(this.formData, 'facts', this.formZipData.facts);
  586. this.$set(this.formData.affiliate, 'applicantHome', this.formZipData.affiliate
  587. .applicantHome);
  588. this.$set(this.formData.affiliate, 'applicantAddress', this.formZipData.affiliate
  589. .applicantAddress);
  590. this.$set(this.formData.affiliate, 'contactTelphoneAgent', this.formZipData
  591. .affiliate.contactTelphoneAgent);
  592. this.$set(this.formData.affiliate, 'nameAgent', this.formZipData.affiliate
  593. .nameAgent);
  594. this.$set(this.formData.affiliate, 'agentEmail', this.formZipData.affiliate
  595. .agentEmail);
  596. this.$set(this.formData.affiliate, 'respondentName', this.formZipData.affiliate
  597. .respondentName);
  598. this.$set(this.formData.affiliate, 'respondentPhone', this.formZipData.affiliate
  599. .respondentPhone);
  600. this.$set(this.formData.affiliate, 'respondentIdentityNum', this.formZipData
  601. .affiliate.respondentIdentityNum);
  602. this.$set(this.formData.affiliate, 'respondentSex', Number(this.formZipData
  603. .affiliate.respondentSex));
  604. this.$set(this.formData.affiliate, 'respondentBirth', this.formZipData.affiliate
  605. .respondentBirth);
  606. this.$set(this.formData.affiliate, 'respondentHome', this.formZipData.affiliate
  607. .respondentHome);
  608. this.$set(this.formData.affiliate, 'respondentEmail', this.formZipData.affiliate
  609. .respondentEmail);
  610. this.$set(this.formData.affiliate, 'compLegalPerson', this.formZipData.affiliate
  611. .compLegalPerson);
  612. } else if (this.formData.organizeFlag == 1) {
  613. this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
  614. this.$set(this.formData, 'facts', this.formZipData.facts);
  615. this.$set(this.formData.affiliate, 'applicationName', this.formZipData.affiliate
  616. .applicationName);
  617. this.$set(this.formData.affiliate, 'code', this.formZipData.affiliate.code);
  618. this.$set(this.formData.affiliate, 'applicantHome', this.formZipData.affiliate
  619. .applicantHome);
  620. this.$set(this.formData.affiliate, 'applicantAddress', this.formZipData.affiliate
  621. .applicantAddress);
  622. this.$set(this.formData.affiliate, 'compLegalPerson', this.formZipData.affiliate
  623. .compLegalPerson);
  624. this.$set(this.formData.affiliate, 'applicationEmail', this.formZipData.affiliate
  625. .applicationEmail);
  626. this.$set(this.formData.affiliate, 'applicationPhone', this.formZipData.affiliate
  627. .applicationPhone);
  628. this.$set(this.formData.affiliate, 'respondentName', this.formZipData.affiliate
  629. .respondentName);
  630. this.$set(this.formData.affiliate, 'respondentPhone', this.formZipData.affiliate
  631. .respondentPhone);
  632. this.$set(this.formData.affiliate, 'respondentIdentityNum', this.formZipData
  633. .affiliate.respondentIdentityNum);
  634. this.$set(this.formData.affiliate, 'respondentSex', Number(this.formZipData
  635. .affiliate.respondentSex));
  636. this.$set(this.formData.affiliate, 'respondentBirth', this.formZipData.affiliate
  637. .respondentBirth);
  638. this.$set(this.formData.affiliate, 'respondentHome', this.formZipData.affiliate
  639. .respondentHome);
  640. this.$set(this.formData.affiliate, 'respondentEmail', this.formZipData.affiliate
  641. .respondentEmail);
  642. }
  643. uni.hideLoading();
  644. },
  645. fail: (err) => {
  646. uni.showToast({
  647. title: '上传失败',
  648. icon: 'none',
  649. duration: 1000
  650. })
  651. uni.hideLoading()
  652. }
  653. })
  654. },
  655. // 文件上传
  656. select(e) {
  657. this.tempFilePaths = e.tempFilePaths;
  658. // loading
  659. uni.showLoading({
  660. title: '上传中'
  661. });
  662. uni.uploadFile({
  663. url: config.baseUrlTJ + "/common/upload",
  664. filePath: this.tempFilePaths[0],
  665. header: {
  666. Authorization: getToken() || '',
  667. },
  668. formData: {
  669. annexType: 2,
  670. id: this.formData.id
  671. },
  672. name: 'file',
  673. success: (res) => {
  674. let result = JSON.parse(res.data)
  675. this.formData.caseAttachList.push({
  676. annexId: result.annexId,
  677. annexName: result.fileName
  678. });
  679. console.log(result.fileName)
  680. uni.showToast({
  681. title: '上传成功',
  682. icon: 'none',
  683. duration: 1000
  684. })
  685. uni.hideLoading();
  686. },
  687. fail: (err) => {
  688. uni.showToast({
  689. title: '上传失败',
  690. icon: 'none',
  691. duration: 1000
  692. })
  693. uni.hideLoading()
  694. }
  695. })
  696. },
  697. cencalBut() {
  698. uni.navigateBack({
  699. delta: 1
  700. })
  701. },
  702. // 改变证件类型
  703. changeDocment(e){
  704. console.log(e)
  705. },
  706. //改变地区类型
  707. changeArea(e){
  708. if(e==0){
  709. this.testVerify = true
  710. this.rulesRespondentPhone[0].required = true;
  711. }else if(e==1){
  712. this.testVerify = false
  713. this.rulesRespondentPhone[0].required = false;
  714. }
  715. },
  716. // 获取证件类型
  717. getIdType(){
  718. idType().then(res =>{
  719. console.log(res)
  720. res.data.forEach(item =>{
  721. this.certificate.push({value:item.dictSort,text:item.dictLabel})
  722. })
  723. })
  724. },
  725. // 新增多个申请代理人
  726. addMultiple(){
  727. this.delShow =true
  728. this.formData.affiliate.push({
  729. applicant:{
  730. roleType: 1,
  731. name: "",
  732. idCard: "",
  733. code: "",
  734. phone: "",
  735. compLegalPerson: "",
  736. email: "",
  737. home: "",
  738. address: "",
  739. idType: 0,
  740. nationality: 1,
  741. birth: "",
  742. sex: "",
  743. group_order: 1,
  744. operatorFlag:1
  745. },
  746. applicantAgent: {
  747. roleType: 2,
  748. name: "",
  749. idCard: "",
  750. code: "",
  751. phone: "",
  752. compLegalPerson: "",
  753. email: "",
  754. home: "",
  755. address: "",
  756. idType: 0,
  757. nationality: 1,
  758. birth: "",
  759. sex: "",
  760. group_order: 1,
  761. operatorFlag:1
  762. },
  763. res:{
  764. roleTyp: 3,
  765. name: "",
  766. idCard: "",
  767. code: "",
  768. phone: "",
  769. compLegalPerson: "",
  770. email: "",
  771. home: "",
  772. address: "",
  773. idType: 0,
  774. nationality: 1,
  775. birth: "",
  776. sex: "0",
  777. group_order: 1,
  778. operatorFlag:1
  779. },
  780. resAgent: {
  781. roleType: 4,
  782. name: "",
  783. idCard: "",
  784. code: "",
  785. phone: "",
  786. compLegalPerson: "",
  787. email: "",
  788. home: "",
  789. address: "",
  790. idType: 0,
  791. nationality: 1,
  792. birth: "",
  793. sex: "",
  794. group_order: 1,
  795. operatorFlag:1
  796. }
  797. })
  798. let idnexVal = ""
  799. this.formData.affiliate.forEach((item,index)=>{
  800. idnexVal = index
  801. })
  802. getUserInfo().then(res => {
  803. this.getUserInfoList = res.data
  804. if (this.formData.organizeFlag == 0) {
  805. this.$set(this.formData.affiliate[idnexVal].applicant, 'name', res.data.nickName)
  806. this.$set(this.formData.affiliate[idnexVal].applicant, 'idCard', res.data.idCard)
  807. this.$set(this.formData.affiliate[idnexVal].applicant, 'email', res.data.email)
  808. this.$set(this.formData.affiliate[idnexVal].applicant, 'phone', res.data.phonenumber)
  809. this.$set(this.formData.affiliate[idnexVal].applicant, 'idType', res.data.idType)
  810. this.$set(this.formData.affiliate[idnexVal].applicant, 'nationality', res.data.nationality)
  811. } else if (this.formData.organizeFlag == 1) {
  812. this.$set(this.formData.affiliate[idnexVal].applicantAgent, 'name', res.data.nickName)
  813. this.$set(this.formData.affiliate[idnexVal].applicantAgent, 'email', res.data.email)
  814. this.$set(this.formData.affiliate[idnexVal].applicantAgent, 'phone', res.data.phonenumber)
  815. this.$set(this.formData.affiliate[idnexVal].applicantAgent, 'nationality', res.data.nationality)
  816. }
  817. })
  818. },
  819. //删除新增的多个申请代理人
  820. delValue(id){
  821. let index = this.formData.affiliate.findIndex(v => v.id === id)
  822. this.formData.affiliate.splice(index, 1)
  823. }
  824. },
  825. onLoad(data) {
  826. this.ids = data.id
  827. if (this.ids) {
  828. this.caseApplicationSelectByIdFn({
  829. id: data.id
  830. })
  831. uni.setNavigationBarTitle({
  832. title: "案件修改"
  833. })
  834. } else {
  835. uni.setNavigationBarTitle({
  836. title: "案件新增"
  837. })
  838. }
  839. if(this.formData.affiliate.nationality == 0){
  840. this.testVerify = true
  841. this.rulesRespondentPhone[0].required = true;
  842. }else if(this.formData.affiliate.idType==1){
  843. this.testVerify = false
  844. this.rulesRespondentPhone[0].required = false;
  845. }
  846. this.getTemplateFn()
  847. this.getUserInfoNumber()
  848. this.getIdType() //获取证件类型
  849. },
  850. onReady() {
  851. this.$refs.form.setRules(this.rules)
  852. }
  853. }
  854. </script>
  855. <style lang="scss">
  856. page {
  857. background-color: #ffffff;
  858. }
  859. .assignrbitrators {
  860. margin: 30rpx;
  861. }
  862. ::v-deep .uni-icons[data-v-a2e81f6e]{
  863. display: none;
  864. }
  865. </style>