tangning пре 2 година
родитељ
комит
ec8141d2b9

+ 31 - 6
src/views/work/detail.vue

@@ -50,7 +50,7 @@
               {{ detailData.orderReceivingVo.repairId }}
             </DescriptionsItem>
             <DescriptionsItem label="上次维修单号" :span="2">
-              {{ detailData.orderReceivingVo.repairerId }}
+              {{ detailData.lastRepairId }}
             </DescriptionsItem>
             <DescriptionsItem label="故障描述" :span="3">
               <div>
@@ -235,7 +235,7 @@
               >
               <div class="iamgeList">
                 <PreviewGroup>
-                  <Image
+                  <Image style="overflow:hidden"
                     :width="80"
                     :height="80"
                     v-for="itemSrc in item.imagesInfo"
@@ -334,7 +334,9 @@ export default defineComponent({
       repairPay: {},
       RepairComment: {},
       priceList: [],
+      lastRepairId: null,
     });
+    const priceTotal = ref(0)
     const stepList = ref<any>([]);
     const butList = ref<any>([]);
     onMounted(() => {
@@ -422,7 +424,7 @@ export default defineComponent({
           total: ele.price * ele.count,
         };
       });
-      console.log('id', dataSource);
+      priceTotal.value = countItem.total?.toFixed(2)
       if (countItem.total) {
         setTableData(cloneDeep([...dataSource, countItem]));
       }
@@ -434,10 +436,15 @@ export default defineComponent({
       console.log('handleBut', item, stepList.value[0].repairStatus);
       let status = detailData.value.repairerVo.status;
       let record = {
+        repairId:repairId || detailData.value.orderReceivingVo?.repairId,
         cameraSnCode: detailData.value.repairerVo?.cameraSnCode,
         cameraType: detailData.value.repairerVo?.cameraType,
-        repairId: detailData.value.orderReceivingVo?.repairId,
+        status:status,
+        payAmount:0,
       };
+      if(status == 9){
+        record.payAmount = priceTotal.value
+      }
       let openList = {
         0: openTakingOrders, //检测登记
         1: openCheckModal, //检测登记
@@ -452,10 +459,17 @@ export default defineComponent({
         61: openAddModal, //添加备件
         62: openOutModal, //完成维修
       };
-      openList[status](true, {
+      if(status == 6){
+        openList[item == '添加备件'?61:62](true, {
+        ...record,
+        repairManName: detailData.value.repairRegisterVo?.sysUserName,
+      });
+      }else{
+        openList[status](true, {
         ...record,
         repairManName: detailData.value.repairRegisterVo?.sysUserName,
       });
+      }
     }
     function handleSubmit() {
       createMessage.success(t('common.optSuccess'));
@@ -523,10 +537,16 @@ export default defineComponent({
     width: 100%;
     display: flex;
     justify-content: space-between;
-
+    
     &_right {
       width: 400px;
       padding: 40px 20px;
+      .timeItem{
+        .ant-image-img{
+          width: 100%;
+          height: 100%;
+        }
+      }
     }
     &_left {
       width: calc(100% - 400px);
@@ -549,5 +569,10 @@ export default defineComponent({
     //   text-overflow: ellipsis;
     // }
   }
+  .ant-image-img{
+    width: 100%;
+    height: 100%;
+    object-fit: cover;
+  }
 }
 </style>

+ 1 - 1
src/views/work/followedList.vue

@@ -283,7 +283,7 @@ export default defineComponent({
       openDeliveryModal(true,record);
     }
     function handleOrder() {
-      openModal(true);
+      openModal(true,{});
     }
     function handleQuote(record: Recordable) {
       openQuoteModal(true,record)

+ 2 - 2
src/views/work/query.vue

@@ -171,7 +171,7 @@ export default defineComponent({
       },
       schemas: [
         {
-          field: 'type',
+          field: 'receiverType',
           component: 'Select',
           label: t('routes.device.deviceType'),
           colProps: {
@@ -191,7 +191,7 @@ export default defineComponent({
             ],
           },
         },{
-          field: 'type',
+          field: 'cameraType',
           component: 'Select',
           label: t('routes.device.deviceType'),
           colProps: {

+ 1 - 0
src/views/work/recoveryModal.vue

@@ -318,6 +318,7 @@ export default defineComponent({
     let addListFunc = () => {};
     const [register, { closeModal }] = useModalInner((data) => {
       // console.log(data);
+      resetFields()
       data && onDataReceive(data);
     });
 

+ 36 - 23
src/views/work/repairsparesList.vue

@@ -55,7 +55,7 @@ import { usePermissionStore } from '/@/store/modules/permission';
 import partsListModal from './partsListModal.vue';
 import { useModal } from '/@/components/Modal';
 import { useRouter } from 'vue-router'
-import { supplyOrderList } from '/@/api/spares';
+import { supplyOrderList, getByRoleType } from '/@/api/spares';
 export default defineComponent({
   name:'维修备件管理',
   components: {
@@ -149,12 +149,31 @@ export default defineComponent({
       },
       schemas: [
         {
-          field: 'customerName',
-          component: 'Input',
-          label: '客户名称',
+          field: 'cameraType',
+          component: 'Select',
+          label: '产品类型',
           colProps: {
             xl: 7,
             xxl: 7,
+          },          
+          componentProps: {
+            options: [
+              {
+                label: t('routes.device.type.1'),
+                value: 0,
+                key: '0',
+              },
+              {
+                label: t('routes.device.type.2'),
+                value: 1,
+                key: '1',
+              },
+              {
+                label: t('routes.device.type.3'),
+                value: 2,
+                key: '2',
+              },
+            ],
           },
         },
         {
@@ -167,29 +186,23 @@ export default defineComponent({
           },
         },
         {
-          field: 'trackingNum',
-          component: 'Input',
-          label: '快递单号',
-          colProps: {
-            xl: 7,
-            xxl: 7,
-          },
-        },
-        {
-          field: 'timeList',
-          label: '报修日期',
-          component: 'RangePicker',
+          field: 'repairerId',
+          label: '维修工程师',
+          component: 'ApiSelect',
           componentProps: {
-            maxLength: 100,
-            format: 'YYYY-MM-DD',
-            valueFormat: 'YYYY-MM-DD',
-            showTime: true,
+            api: getByRoleType,
+            numberToString: true,
+            labelField: 'nickName',
+            valueField: 'id',
+            immediate: true,
+            params: {
+              roleType: 3,
+            },
           },
           colProps: {
-            xl: 7,
-            xxl: 7,
+            span: 7,
           },
-        },
+        }
       ],
     };
     const [registerRecovery, { openModal }] = useModal();