salesOrderDetails.vue 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627
  1. <template>
  2. <view style="padding-top: 1rpx;">
  3. <u--form labelPosition="left" :labelStyle="{color: '#fd4b09'}" :model="form" ref="form"
  4. labelWidth="180rpx"
  5. style="margin-top: 10rpx;padding-bottom: 130rpx;">
  6. <view style="width: calc(96%);margin: 0 auto;background-color: #fff;border-radius: 20rpx;">
  7. <u-cell-group :border="false">
  8. <u-cell :border="false" center title="基本信息" arrow-direction="down">
  9. <view slot="icon" style="width: 10rpx;height: 35rpx;
  10. background-color: #fd4b09;"></view>
  11. </u-cell>
  12. </u-cell-group>
  13. <view style="padding: 0 10rpx;">
  14. <u-form-item leftIcon="account" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  15. label="业务对象" prop="cname" borderBottom >
  16. <u-input v-model="form.customerName" inputAlign="right"
  17. border="none" placeholder="请填写业务对象" disabled
  18. disabledColor="#ffffff" />
  19. </u-form-item>
  20. <u-form-item leftIcon="account" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  21. label="仓库" prop="home" borderBottom
  22. @click="filterAll(['storageName','storageId'])">
  23. <u-input v-model="form.storageName" placeholder="请选择仓库"
  24. inputAlign="right" border="none" disabled
  25. disabledColor="#ffffff" />
  26. </u-form-item>
  27. <u-form-item leftIcon="account" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  28. label="库管" prop="cname" borderBottom
  29. @click="filterAll(['stockClerkIdName','stockClerkId'])">
  30. <u-input v-model="form.stockClerkName" inputAlign="right" border="none" disabled
  31. disabledColor="#ffffff" />
  32. </u-form-item>
  33. <u-form-item leftIcon="calendar" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  34. label="业务日期" prop="cname" borderBottom>
  35. <u-input v-model="form.businesDate" inputAlign="right" border="none" disabled
  36. disabledColor="#ffffff" />
  37. </u-form-item>
  38. <!-- <u-form-item label="入库单号" prop="cname" borderBottom>
  39. <u-input v-model="form.billno" border="none" inputAlign="right"
  40. placeholder="请输入入库单号" disabled
  41. disabledColor="#ffffff" />
  42. </u-form-item>
  43. <u-form-item label="来源单号" prop="cname" borderBottom>
  44. <u-input v-model="form.ordNo" border="none" inputAlign="right"
  45. placeholder="请输入来源单号" disabled
  46. disabledColor="#ffffff" />
  47. </u-form-item> -->
  48. <u-form-item leftIcon="car" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  49. label="配送方式" prop="cname" borderBottom
  50. @click="filterAll(['shipType','shipType'])">
  51. <u-input v-model="form.shipType" inputAlign="right" border="none"
  52. placeholder="请选择配送方式" disabled
  53. disabledColor="#ffffff" />
  54. </u-form-item>
  55. <u-form-item leftIcon="home" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  56. label="物流公司" prop="cname" borderBottoms
  57. @click="filterAll(['logisticsCorpName','logisticsCorpId'])">
  58. <u-input v-model="form.logisticsCorpName" inputAlign="right" border="none"
  59. placeholder="请选择物流公司" disabled
  60. disabledColor="#ffffff" />
  61. </u-form-item>
  62. <u-form-item leftIcon="file-text" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  63. label="物流单号" prop="cname" borderBottom >
  64. <u-input v-model="form.expressNo" inputAlign="right" border="none"
  65. placeholder="请输入物流单号" :disabled="form.statusName == '已出库'"
  66. disabledColor="#ffffff" />
  67. </u-form-item>
  68. <u-form-item leftIcon="edit-pen" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  69. label="订单数量" prop="cname" borderBottom>
  70. <u-input v-model="form.goodsTotalNum" border="none" inputAlign="right"
  71. placeholder="请输入订单数量" disabled
  72. disabledColor="#ffffff" />
  73. </u-form-item>
  74. <u-form-item leftIcon="edit-pen" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  75. label="出库数量" prop="cname" borderBottom>
  76. <u-input v-model="form.sendTotalNum" border="none" inputAlign="right"
  77. placeholder="0" disabled
  78. disabledColor="#ffffff" />
  79. </u-form-item>
  80. <u-form-item leftIcon="file-text" :leftIconStyle="{color: '#FD4B09',fontSize:'40rpx'}"
  81. label="备注" prop="cname" borderBottom>
  82. <u--textarea v-model="form.remarks" height="40"
  83. :disabled="form.statusName == '已出库'"
  84. border="none" placeholder="请输入备注" ></u--textarea>
  85. </u-form-item>
  86. </view>
  87. </view>
  88. <view
  89. style="width: calc(96%);margin: 0 auto;
  90. border-radius: 20rpx;margin-top: 20rpx;">
  91. <u-cell-group :border="false">
  92. <u-cell :border="false" center>
  93. <view slot="icon" style="width: 10rpx;height: 35rpx;
  94. background-color: #fd4b09;"></view>
  95. <view slot="title">
  96. <view style="display: flex;">
  97. <view>出库明细({{form.shipItemsList.length}})</view>
  98. </view>
  99. </view>
  100. </u-cell>
  101. </u-cell-group>
  102. <view style="font-size: 30rpx;">
  103. <view v-for="(item,index) in form.shipItemsList" :key="index" @click="tanchufun(item,index)"
  104. style="padding: 20rpx; background-color: #fff;margin-bottom: 20rpx;
  105. border-radius: 12rpx;">
  106. <view style="display: flex;align-items: center;justify-content: space-between;
  107. margin-bottom: 20rpx;">
  108. <text style="color: #FD4B09;font-size: 32rpx">序号{{index+1}}</text>
  109. <view style="color: #fff;font-size: 30rpx;
  110. background: #FD4B09;padding: 10rpx;border-radius: 10rpx;"
  111. @click.stop="shipItemsDelfun(index,item.id)">
  112. 删除
  113. </view>
  114. </view>
  115. <view>
  116. <view>{{item.goodsName}}</view>
  117. <!-- <view>轮胎编码:{{item.goodsNo}}</view> -->
  118. <view style="display: flex;align-items: center;justify-content: space-between;">
  119. <view>品牌:{{item.brandName}}</view>
  120. <view>规格:{{item.propertyName}}</view>
  121. </view>
  122. <view>花纹:{{item.pattern}}</view>
  123. <!-- <view>轮胎描述:{{item.goodsDescription}}</view> -->
  124. <view style="display: flex;align-items: center;justify-content: space-between;">
  125. <view>批次号:{{item.dot}}</view>
  126. <view>单位:{{item.units}}</view>
  127. </view>
  128. <view style="display: flex;align-items: center;justify-content: space-between;">
  129. <view>出库数量:{{item.goodsNum}}</view>
  130. <view>实际数量:{{item.sendNum}}</view>
  131. </view>
  132. </view>
  133. </view>
  134. </view>
  135. </view>
  136. <view
  137. style="width: calc(96%);margin: 0 auto;background-color: #fff;
  138. border-radius: 20rpx;margin-top: 20rpx;">
  139. <u-cell-group :border="false">
  140. <u-cell :border="false" center title="图片信息" arrow-direction="down">
  141. <view slot="icon" style="width: 10rpx;height: 35rpx;
  142. background-color: #fd4b09;"></view>
  143. </u-cell>
  144. </u-cell-group>
  145. <view style="padding: 0 10rpx;">
  146. <u-upload :fileList="fileList1" @afterRead="afterRead"
  147. @delete="deletePic" name="1" multiple :maxCount="10"></u-upload>
  148. </view>
  149. </view>
  150. </u--form>
  151. <view style="width: 100%;position: fixed;
  152. bottom: 0;background-color: #fff;display: flex;">
  153. <view style="width: 48%;;margin: 20rpx auto;">
  154. <u-button v-if="form.statusName == '待出库' || form.statusName == '撤销出库'"
  155. @click="shipSubmitfun(true)" type="success" color="#67C23A" shape="circle"
  156. text="出库完成"></u-button>
  157. <u-button v-if="form.statusName == '已出库'"
  158. @click="shipRevokeOutboundCompletedfun()" type="success" color="#E6A23C" shape="circle"
  159. text="撤销出库"></u-button>
  160. </view>
  161. <view style="width: 48%;;margin: 20rpx auto;">
  162. <u-button @click="shipSubmitfun(false)" type="success" color="#fd4b09" shape="circle" text="保存数据"></u-button>
  163. </view>
  164. </view>
  165. <!-- 弹窗数据 -->
  166. <u-popup :show="popupShow" @close="popupShow = false"
  167. :closeable="true" mode="center" customStyle="width: 90%;margin: 0 auto;">
  168. <view style="padding: 40rpx 25rpx;box-sizing: border-box;">
  169. <view style="text-align: center;margin: 10rpx 0;">
  170. <view style="font-size: 36rpx;word-break:break-all;">
  171. {{popupForm.cname}}
  172. </view>
  173. </view>
  174. <view style="width: 96%;margin: 0 auto;clear: both;">
  175. <u-cell-group>
  176. <u-cell title="商品名称">
  177. <view slot="value">
  178. {{popupForm.goodsName?popupForm.goodsName:'--'}}
  179. </view>
  180. </u-cell>
  181. <!-- <u-cell title="轮胎编码">
  182. <view slot="value">
  183. {{popupForm.goodsNo?popupForm.goodsNo:'--'}}
  184. </view>
  185. </u-cell> -->
  186. <u-cell title="花纹">
  187. <view slot="value">
  188. {{popupForm.pattern?popupForm.pattern:'--'}}
  189. </view>
  190. </u-cell>
  191. <!-- <u-cell title="轮胎描述">
  192. <view slot="value">
  193. {{popupForm.goodsDescription?popupForm.goodsDescription:'--'}}
  194. </view>
  195. </u-cell> -->
  196. <u-cell title="品牌">
  197. <view slot="value">
  198. {{popupForm.brandName?popupForm.brandName:'--'}}
  199. </view>
  200. </u-cell>
  201. <u-cell title="规格">
  202. <view slot="value">
  203. {{popupForm.propertyName?popupForm.propertyName:'--'}}
  204. </view>
  205. </u-cell>
  206. <u-cell title="批次号(DOT)" @click="dotClickfun">
  207. <view slot="value">
  208. {{popupForm.dot?popupForm.dot:'--'}}
  209. </view>
  210. </u-cell>
  211. <u-cell title="单位">
  212. <view slot="value">
  213. {{popupForm.units?popupForm.units:'--'}}
  214. </view>
  215. </u-cell>
  216. <u-cell title="出库数量">
  217. <view slot="value">
  218. {{popupForm.goodsNum?popupForm.goodsNum:0}}
  219. </view>
  220. </u-cell>
  221. <u-cell title="实际数量">
  222. <view slot="value">
  223. <u-number-box v-model="popupForm.sendNum"
  224. :min="0" :disabled="form.statusName == '已出库'">
  225. </u-number-box>
  226. </view>
  227. </u-cell>
  228. <u-cell title="备注">
  229. <view slot="value">
  230. <u--textarea style="width: 400rpx;" height="40"
  231. v-model="popupForm.remarks"
  232. :disabled="form.statusName == '已出库'"
  233. border="none" placeholder="请输入备注" ></u--textarea>
  234. </view>
  235. </u-cell>
  236. </u-cell-group>
  237. </view>
  238. <view style="margin-top: 40rpx;text-align: center;
  239. font-size: 32rpx;">
  240. <view style="display: flex; color: #fff;justify-content: space-around;">
  241. <view style="color: #FD4B09; border: 1rpx solid #FD4B09;
  242. width: 200rpx; height: 80rpx;
  243. line-height: 80rpx; border-radius: 12rpx;"
  244. @click="popupShow = false">取消</view>
  245. <view style="background-color: #FF6F3B; width: 200rpx; height: 80rpx; line-height: 80rpx; border-radius: 12rpx;"
  246. @click="popupConserve()">保存</view>
  247. </view>
  248. </view>
  249. </view>
  250. </u-popup>
  251. <u-picker :show="showOpen" :columns="columns" :keyName="keyName" @cancel="showOpen = false"
  252. @confirm="showPicker"></u-picker>
  253. <u-toast ref="uToast"></u-toast>
  254. </view>
  255. </template>
  256. <script>
  257. import {
  258. quickBilling
  259. } from '@/api/views/sale/index.js'
  260. import {
  261. queryBrand
  262. } from '@/api/views/stock/index.js'
  263. import { storageDescListAll,stockClerkList } from '@/api/OutboundTask/index.js'
  264. import {
  265. shipDetail,
  266. removeFile,
  267. confirm,
  268. confirmReceipt,
  269. shipSubmit,
  270. shipItemsUpdate,
  271. shipOutboundCompleted,
  272. shipRevokeOutboundCompleted
  273. } from '@/api/views/sale/salesOrderDetails.js'
  274. import http from '@/http/api.js'
  275. import {
  276. clientId,
  277. clientSecret
  278. } from '@/common/setting'
  279. import {
  280. dateFormat
  281. } from '@/common/dateFormat'
  282. export default {
  283. data() {
  284. return {
  285. form: {
  286. shipItemsList: []
  287. },
  288. // 附件
  289. fileList1: [],
  290. // 集合传的数据
  291. screen: [],
  292. // 单列的弹窗
  293. showOpen: false,
  294. columns: [],
  295. keyName:'',
  296. // 库管请求到的数据
  297. stockClerkData:[],
  298. // 发货仓库请求到的数据
  299. storageDescData:[],
  300. // 物流配送方式请求到的数据
  301. selectData:[],
  302. // 物流公司请求的数据
  303. logisticsCorpData:[],
  304. // 明细弹窗暂存的数据
  305. popupForm:{},
  306. popupIndex:0,
  307. popupShow:false,
  308. }
  309. },
  310. onLoad(data) {
  311. this.stockClerkListfun()
  312. this.storageDescListAllfun()
  313. // 获取物流配送方式数据
  314. this.queryBrandfun()
  315. this.HYqueryBrandfun()
  316. this.shipDetailfun(data.id)
  317. },
  318. methods: {
  319. // 出库明细删除
  320. shipItemsDelfun(index,id){
  321. if (this.form.statusName == '已出库') return
  322. uni.showModal({
  323. title: '提示',
  324. content: '是否确认删除',
  325. success: (rest)=> {
  326. if (rest.confirm == true) {
  327. if (id) {
  328. shipItemsUpdate({id:id}).then(res=>{
  329. this.form.shipItemsList.splice(index, 1)
  330. uni.showToast({
  331. icon: "none",
  332. title: '删除成功',
  333. mask: true
  334. });
  335. })
  336. }else {
  337. this.form.shipItemsList.splice(index, 1)
  338. }
  339. }
  340. }
  341. })
  342. },
  343. // 保存数据 false 普通保存 true 出库任务和保存
  344. shipSubmitfun(type){
  345. if (!this.form.storageId) {
  346. return uni.showToast({
  347. title: '仓库不能为空',
  348. icon: 'none',
  349. mask: true
  350. });
  351. }
  352. if (!this.form.stockClerkId) {
  353. return uni.showToast({
  354. title: '库管不能为空',
  355. icon: 'none',
  356. mask: true
  357. });
  358. }
  359. uni.showLoading({
  360. title: '加载中',
  361. mask: true
  362. });
  363. shipSubmit({
  364. ...this.form,
  365. bizTypeName: "FHGD",
  366. filesList:this.fileList1
  367. }).then(res=>{
  368. if (type) {
  369. this.shipOutboundCompletedfun()
  370. }else {
  371. uni.hideLoading();
  372. uni.showToast({
  373. icon: "none",
  374. title: '保存成功',
  375. mask: true
  376. });
  377. this.shipDetailfun(res.data.id)
  378. }
  379. })
  380. },
  381. // 出库完成接口
  382. shipOutboundCompletedfun(){
  383. shipOutboundCompleted({
  384. ...this.form,
  385. bizTypeName: "FHGD",
  386. filesList:this.fileList1
  387. }).then(res=>{
  388. uni.hideLoading();
  389. // uni.showToast({
  390. // icon: "none",
  391. // title: '出库成功',
  392. // mask: true
  393. // });
  394. this.$refs.uToast.show({
  395. type: 'success',
  396. message: "出库成功",
  397. })
  398. this.shipDetailfun(res.data.id,true)
  399. })
  400. },
  401. // 撤销出库接口
  402. shipRevokeOutboundCompletedfun(){
  403. uni.showLoading({
  404. title: '加载中',
  405. mask: true
  406. });
  407. shipRevokeOutboundCompleted({
  408. ...this.form,
  409. bizTypeName: "FHGD",
  410. filesList:this.fileList1
  411. }).then(res=>{
  412. // uni.showToast({
  413. // icon: "none",
  414. // title: '撤销出库成功',
  415. // mask: true
  416. // });
  417. uni.hideLoading();
  418. this.$refs.uToast.show({
  419. type: 'success',
  420. message: "撤销出库成功",
  421. })
  422. this.shipDetailfun(res.data.id,true)
  423. })
  424. },
  425. // 修改弹窗打开
  426. tanchufun(item,index){
  427. this.popupForm = item
  428. this.popupIndex = index
  429. this.popupShow = true
  430. },
  431. //修改弹窗点击保存事件
  432. popupConserve() {
  433. if (this.popupForm.sendNum <= 0 || this.popupForm.sendNum > this.popupForm.goodsNum) {
  434. return uni.showToast({
  435. title: '实际数量不能为零或大于出库数量',
  436. icon: 'none',
  437. mask: true
  438. });
  439. }
  440. this.form.shipItemsList[this.popupIndex] = this.popupForm
  441. this.popupShow = false
  442. },
  443. // 获取业务员数据
  444. stockClerkListfun(){
  445. stockClerkList().then(res=>{
  446. this.stockClerkData = res.data
  447. })
  448. },
  449. // 获取发货仓库数据
  450. storageDescListAllfun(){
  451. storageDescListAll().then(res=>{
  452. this.storageDescData = res.data
  453. })
  454. },
  455. // 获取物流配送方式数据
  456. queryBrandfun(){
  457. queryBrand({code:'deliveryMethod'}).then(res=>{
  458. this.selectData = res.data
  459. })
  460. },
  461. // 获取货运公司数据
  462. HYqueryBrandfun(){
  463. queryBrand({code:'tyre_express_company'}).then(res=>{
  464. this.logisticsCorpData = res.data
  465. })
  466. },
  467. deleteProduct(index) {
  468. let this_ = this
  469. this_.form.shipItemsList.splice(index, 1)
  470. },
  471. // 下拉选择
  472. showPicker(e) {
  473. if (this.screen[1] == "storageId") {
  474. this.form.storageId = e.value[0].id
  475. this.form.storageName = e.value[0].cname
  476. this.showOpen = false
  477. }else if (this.screen[1] == "stockClerkId"){
  478. this.form.stockClerkId = e.value[0].id
  479. this.form.stockClerkName = e.value[0].name
  480. this.showOpen = false
  481. }else if (this.screen[1] == "shipType") {
  482. this.form.shipType = e.value[0].dictValue
  483. this.showOpen = false
  484. }else if (this.screen[1] == "logisticsCorpId") {
  485. this.form.logisticsCorpName = e.value[0].dictValue
  486. this.form.logisticsCorpId = e.value[0].dictKey
  487. this.showOpen = false
  488. }
  489. },
  490. //集合筛选条件
  491. filterAll(screen) {
  492. if(this.form.statusName == '已出库') return
  493. this.screen = screen
  494. switch (screen[1]) {
  495. case "storageId":
  496. this.columns = [this.storageDescData]
  497. this.keyName = 'cname'
  498. this.showOpen = true
  499. break;
  500. case "stockClerkId":
  501. this.columns = [this.stockClerkData]
  502. this.keyName = 'name'
  503. this.showOpen = true
  504. break;
  505. case "shipType":
  506. this.columns = [this.selectData]
  507. this.keyName = 'dictValue'
  508. this.showOpen = true
  509. break;
  510. case "logisticsCorpId":
  511. this.columns = [this.logisticsCorpData]
  512. this.keyName = 'dictValue'
  513. this.showOpen = true
  514. break;
  515. }
  516. },
  517. // 详情接口
  518. shipDetailfun(id,type) {
  519. if (!type) {
  520. uni.showLoading({
  521. title: '加载中',
  522. mask: true
  523. });
  524. }
  525. shipDetail({
  526. id: id
  527. }).then(res => {
  528. this.form = res.data
  529. this.fileList1 = res.data.filesList
  530. uni.hideLoading();
  531. })
  532. },
  533. // 新增图片
  534. async afterRead(event) {
  535. // 当设置 mutiple 为 true 时, file 为数组格式,否则为对象格式
  536. let lists = [].concat(event.file)
  537. let fileListLen = this[`fileList${event.name}`].length
  538. lists.map((item) => {
  539. this[`fileList${event.name}`].push({
  540. ...item,
  541. })
  542. })
  543. for (let i = 0; i < lists.length; i++) {
  544. const result = await this.uploadFilePromise(lists[i].url)
  545. let item = this[`fileList${event.name}`][fileListLen]
  546. this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, {
  547. fileName: JSON.parse(result).data.originalName,
  548. url: JSON.parse(result).data.link
  549. }))
  550. console.log(this[`fileList${event.name}`],416);
  551. fileListLen++
  552. }
  553. },
  554. uploadFilePromise(url) {
  555. return new Promise((resolve, reject) => {
  556. let a = uni.uploadFile({
  557. url: http.config.baseURL +
  558. '/blade-resource/oss/endpoint/put-file', // 仅为示例,非真实的接口地址
  559. filePath: url,
  560. name: 'file',
  561. formData: {
  562. user: 'test'
  563. },
  564. header: {
  565. // 客户端认证参数
  566. 'Authorization': 'Basic ' + Base64.encode(clientId + ':' +
  567. clientSecret),
  568. 'Blade-Auth': 'bearer ' + uni.getStorageSync('accessToken')
  569. },
  570. success: (res) => {
  571. setTimeout(() => {
  572. resolve(res.data)
  573. }, 1000)
  574. }
  575. });
  576. })
  577. },
  578. // 删除图片
  579. deletePic(event) {
  580. let this_ = this
  581. uni.showModal({
  582. title: '提示',
  583. content: '是否确认删除',
  584. success: function(rest) {
  585. if (rest.confirm == true) {
  586. if (this_[`fileList${event.name}`][event.index].id) {
  587. removeFile({
  588. ids: this_[`fileList${event.name}`][event.index].id
  589. }).then(res => {
  590. this_[`fileList${event.name}`].splice(event.index, 1)
  591. })
  592. } else {
  593. this_[`fileList${event.name}`].splice(event.index, 1)
  594. }
  595. }
  596. }
  597. })
  598. },
  599. }
  600. }
  601. </script>
  602. <style lang="scss" scoped>
  603. ::v-deep .u-cell__body {
  604. padding: 20rpx 10rpx;
  605. }
  606. </style>