应用层PC端前端服务

paymentdetailsDialog.vue 7.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. <template>
  2. <div>
  3. <el-dialog
  4. :title="title"
  5. :visible="openDialog"
  6. width="1000px"
  7. @close="cancel"
  8. :destroy-on-close="true"
  9. >
  10. <el-descriptions title="案件信息" border style="margin-bottom: 30px">
  11. <el-descriptions-item label="案件编号">{{
  12. form.caseNum
  13. }}</el-descriptions-item>
  14. <el-descriptions-item label="案件标的">{{
  15. form.caseSubjectAmount
  16. }}</el-descriptions-item>
  17. <el-descriptions-item label="借款开始日期">{{
  18. form.loanStartDate
  19. }}</el-descriptions-item>
  20. <el-descriptions-item label="借款结束日期">{{
  21. form.loanEndDate
  22. }}</el-descriptions-item>
  23. <el-descriptions-item label="合同编号">{{
  24. form.contractNumber
  25. }}</el-descriptions-item>
  26. <el-descriptions-item label="申请人主张欠本金">{{
  27. form.claimPrinciOwed
  28. }}</el-descriptions-item>
  29. <el-descriptions-item label="申请人主张欠利息">{{
  30. form.claimInterestOwed
  31. }}</el-descriptions-item>
  32. <el-descriptions-item label="申请人主张违约金">{{
  33. form.claimLiquidDamag
  34. }}</el-descriptions-item>
  35. <el-descriptions-item label="申请人案件证据资料">{{
  36. form.aaa
  37. }}</el-descriptions-item>
  38. <el-descriptions-item label="被申请人案件证据资料">{{
  39. form.aaa
  40. }}</el-descriptions-item>
  41. <el-descriptions-item label="裁决书附件">{{
  42. form.aaa
  43. }}</el-descriptions-item>
  44. </el-descriptions>
  45. <el-form
  46. ref="form"
  47. :model="arbitrateRecord"
  48. label-width="300px"
  49. label-position="left"
  50. :rules="rules"
  51. >
  52. <el-form-item
  53. label="经庭审质证,对各方提供的证据认定如下"
  54. prop="evidenDetermi"
  55. >
  56. <el-input
  57. type="textarea"
  58. autosize
  59. placeholder="请输入内容"
  60. v-model="arbitrateRecord.evidenDetermi"
  61. />
  62. </el-form-item>
  63. <el-form-item
  64. label="仲裁庭经审理查明(写明仲裁庭认定的事实)"
  65. prop="factDetermi"
  66. >
  67. <el-input
  68. type="textarea"
  69. autosize
  70. placeholder="请输入内容"
  71. v-model="arbitrateRecord.factDetermi"
  72. />
  73. </el-form-item>
  74. <el-form-item label="综上所述" prop="caseSketch">
  75. <el-input
  76. type="textarea"
  77. autosize
  78. placeholder="请输入内容"
  79. v-model="arbitrateRecord.caseSketch"
  80. />
  81. </el-form-item>
  82. <el-form-item label="本庭认为" prop="arbitrateThink">
  83. <el-input
  84. type="textarea"
  85. autosize
  86. placeholder="请输入内容"
  87. v-model="arbitrateRecord.arbitrateThink"
  88. />
  89. </el-form-item>
  90. <el-form-item label="裁决如下" prop="rulingFollows">
  91. <el-input
  92. type="textarea"
  93. autosize
  94. placeholder="请输入内容"
  95. v-model="arbitrateRecord.rulingFollows"
  96. />
  97. </el-form-item>
  98. <el-form-item label="核验裁决书意见:" prop="verificaOpinion">
  99. <el-input
  100. type="textarea"
  101. autosize
  102. placeholder="请输入内容"
  103. v-model="arbitrateRecord.verificaOpinion"
  104. />
  105. </el-form-item>
  106. <el-form-item
  107. label="审核裁决书意见:"
  108. prop="checkOpinion"
  109. v-if="flag == 2"
  110. >
  111. <el-input
  112. type="textarea"
  113. autosize
  114. placeholder="请输入内容"
  115. v-model="arbitrateRecord.checkOpinion"
  116. />
  117. </el-form-item>
  118. </el-form>
  119. <!-- 画布 -->
  120. <h4 v-if="flag == 3">签名区域</h4>
  121. <div class="esign" v-if="flag == 3">
  122. <vue-esign ref="esign" :width="900" :height="300" bgColor="#ffffff" />
  123. </div>
  124. <!-- 清除画布 -->
  125. <el-button v-if="flag == 3" type="info" @click="handleReset"
  126. >清除画布</el-button
  127. >
  128. <div slot="footer" class="dialog-footer">
  129. <el-button type="primary" @click="submitForm(0)" v-if="flag == 1"
  130. >提 交</el-button
  131. >
  132. <el-button type="primary" @click="submitForm(1)" v-if="flag == 2"
  133. >同 意</el-button
  134. >
  135. <el-button type="danger" @click="submitForm(2)" v-if="flag == 2"
  136. >驳 回</el-button
  137. >
  138. <el-button type="primary" @click="submitForm(3)" v-if="flag == 3"
  139. >提 交</el-button
  140. >
  141. <el-button @click="cancel">取 消</el-button>
  142. </div>
  143. </el-dialog>
  144. </div>
  145. </template>
  146. <script>
  147. import {
  148. verificationArbitrateRecord,
  149. checkArbitrateRecord,
  150. } from "@/api/awardManagement/awardManagement";
  151. export default {
  152. props: ["openDialog", "title", "flag", "detailform"],
  153. data() {
  154. return {
  155. // key: value
  156. form: {},
  157. arbitrateRecord: {},
  158. // 表单校验
  159. rules: {
  160. evidenDetermi: [
  161. {
  162. required: true,
  163. message: "不能为空",
  164. trigger: "blur",
  165. },
  166. ],
  167. factDetermi: [
  168. {
  169. required: true,
  170. message: "不能为空",
  171. trigger: "blur",
  172. },
  173. ],
  174. caseSketch: [
  175. {
  176. required: true,
  177. message: "不能为空",
  178. trigger: "blur",
  179. },
  180. ],
  181. arbitrateThink: [
  182. {
  183. required: true,
  184. message: "不能为空",
  185. trigger: "blur",
  186. },
  187. ],
  188. rulingFollows: [
  189. {
  190. required: true,
  191. message: "不能为空",
  192. trigger: "blur",
  193. },
  194. ],
  195. verificaOpinion: [
  196. {
  197. required: true,
  198. message: "意见不能为空",
  199. trigger: "blur",
  200. },
  201. ],
  202. // checkOpinion: [
  203. // {
  204. // required: true,
  205. // message: "意见不能为空",
  206. // trigger: "blur",
  207. // },
  208. // ],
  209. },
  210. };
  211. },
  212. watch: {
  213. openDialog: {
  214. handler(val) {
  215. if (val) {
  216. setTimeout(() => {
  217. this.form = this.detailform;
  218. this.arbitrateRecord = this.form.arbitrateRecord;
  219. console.log(this.form, "this.form");
  220. }, 1000);
  221. }
  222. },
  223. },
  224. },
  225. methods: {
  226. // 校验裁决书
  227. verificationArbitrateRecordFn(parms) {
  228. verificationArbitrateRecord(parms).then((res) => {
  229. this.cancel();
  230. this.$emit("updataList");
  231. this.$message("成功");
  232. });
  233. },
  234. //审核裁决书
  235. checkArbitrateRecordFn(parms) {
  236. checkArbitrateRecord(parms).then((res) => {
  237. this.cancel();
  238. this.$emit("updataList");
  239. this.$message("成功");
  240. });
  241. },
  242. submitForm(parms) {
  243. this.$refs["form"].validate((valid) => {
  244. if (valid) {
  245. if (parms == 0) {
  246. this.verificationArbitrateRecordFn({
  247. id: this.form.id,
  248. arbitrateRecord: this.arbitrateRecord,
  249. });
  250. } else if (parms == 1) {
  251. this.checkArbitrateRecordFn({
  252. id: this.form.id,
  253. agreeOrNotCheck: 1,
  254. arbitrateRecord: this.arbitrateRecord,
  255. });
  256. } else if (parms == 2) {
  257. this.checkArbitrateRecordFn({
  258. id: this.form.id,
  259. agreeOrNotCheck: 2,
  260. arbitrateRecord: this.arbitrateRecord,
  261. });
  262. }
  263. }
  264. });
  265. },
  266. cancel() {
  267. this.$emit("cancelpaymentdetails");
  268. },
  269. // 清除画布
  270. handleReset() {
  271. this.$refs["esign"].reset(); //清空画布
  272. },
  273. },
  274. };
  275. </script>
  276. <style lang="scss" scoped>
  277. ::v-deep .el-dialog {
  278. border-radius: 30px;
  279. }
  280. .esign {
  281. border: 1px solid;
  282. }
  283. </style>