瀏覽代碼

fix(sparepart): 修复备件信息表单验证和数据回填问题

- 将备件价值、品牌、最高库存、最低库存、类型用途、是否专用字段的必填验证改为非必填
- 添加 isAdd 标识用于区分新增、编辑、复制操作场景
- 修复模板导入时只写入typeId未写入parentTypeId导致编辑时类别显示为空的问题
- 在巡检作业页面隐藏导入更新按钮以符合业务流程要求
dazhaxie 2 天之前
父節點
當前提交
df74085964

+ 1 - 1
src/views/check/checkjob/PollingCheckJob.vue

@@ -1,5 +1,5 @@
 <template>
-  <CheckJob :check-type="2"/>
+  <CheckJob :check-type="2" :hide-import-update="true"/>
 </template>
 
 <script>

+ 1 - 1
src/views/check/checkjob/PollingCheckJobFinish.vue

@@ -1,5 +1,5 @@
 <template>
-  <CheckJob :check-type="2" :status="DictCache.VALUE.CHECK_JOB_STATUS.FINISHED" :status-list="[]"/>
+  <CheckJob :check-type="2" :status="DictCache.VALUE.CHECK_JOB_STATUS.FINISHED" :status-list="[]" :hide-import-update="true"/>
 </template>
 
 <script>

+ 16 - 8
src/views/sqarepartmanage/sparepartinfo/modules/BaseForm.vue

@@ -93,7 +93,7 @@
               :step="0.01"
               :formatter="BaseTool.Amount.formatter"
               :parser="BaseTool.Amount.parser"
-              v-decorator="['initialValue', {rules: [{required: true, message: '备件价值不能为空'}]}]" />
+              v-decorator="['initialValue', {rules: [{required: false, message: '备件价值不能为空'}]}]" />
           </a-form-item>
         </row-item>
         <row-item>
@@ -116,7 +116,7 @@
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
             <a-input
-              v-decorator="['brand', {rules: [{required: true, message: '品牌不能为空'}]}]" />
+              v-decorator="['brand', {rules: [{required: false, message: '品牌不能为空'}]}]" />
           </a-form-item>
         </row-item>
         <row-item>
@@ -272,7 +272,7 @@
             <a-input-number
               style="width: 100%"
               :min="1"
-              v-decorator="['maxStock', {rules: [{required: true, message: '最高库存不能为空'}]}]" />
+              v-decorator="['maxStock', {rules: [{required: false, message: '最高库存不能为空'}]}]" />
           </a-form-item>
         </row-item>
         <row-item>
@@ -284,7 +284,7 @@
             <a-input-number
               style="width: 100%"
               :min="0"
-              v-decorator="['minStock', {rules: [{required: true, message: '最低库存不能为空'}]}]" />
+              v-decorator="['minStock', {rules: [{required: false, message: '最低库存不能为空'}]}]" />
           </a-form-item>
         </row-item>
 <!--        <row-item >
@@ -372,7 +372,7 @@
             :labelCol="BaseTool.Constant.labelCol"
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
-            <a-select v-decorator="['yt', {rules: [{required: true, message: '类型用途不能为空'}]}]" placeholder="请选择">
+            <a-select v-decorator="['yt', {rules: [{required: false, message: '类型用途不能为空'}]}]" placeholder="请选择">
               <a-select-option
                 v-for="(label,value) in ytMap"
                 :key="value"
@@ -388,7 +388,7 @@
             :labelCol="BaseTool.Constant.labelCol"
             :wrapperCol="BaseTool.Constant.wrapperCol"
           >
-            <a-select v-decorator="['isSpecial', {rules: [{required: true, message: '是否专用不能为空'}]}]" placeholder="请选择">
+            <a-select v-decorator="['isSpecial', {rules: [{required: false, message: '是否专用不能为空'}]}]" placeholder="请选择">
               <a-select-option
                 v-for="(label,value) in specialMap"
                 :key="value"
@@ -592,6 +592,9 @@ export default {
       this.modalTitle = '编辑'
       if (this.BaseTool.Object.isBlank(record.id)) {
         this.modalTitle = '复制'
+        this.isAdd = true
+      } else {
+        this.isAdd = false
       }
       selectSbModelListBySpareId({ id: record.id }).then(res => {
         this.data = res.data
@@ -604,7 +607,7 @@ export default {
       this.gg = record.ggxh
       // 日期处理
       this.$nextTick(() => {
-        setFieldsValue(Object.assign(pick(record, [
+        const fields = pick(record, [
           'id',
           'no',
           'sbId',
@@ -649,7 +652,12 @@ export default {
           'initStock',
           'remark',
           'brand'
-        ])))
+        ])
+        // 模板导入只写入了 typeId 未写入 parentTypeId,编辑时用 typeId 回填类别,避免类别显示为空
+        if (this.BaseTool.Object.isBlank(fields.parentTypeId)) {
+          fields.parentTypeId = fields.typeId
+        }
+        setFieldsValue(fields)
       })
       this.image = record.image
       const fileList = []