xg
“linengliang”
2024-03-13 b9b0777972f6563075a886cbfc58991e51c1a097
src/views/eam/modules/malfunctionRepair/MalfunctionRepaireModal.vue
@@ -19,7 +19,7 @@
              :wrapperCol="wrapperCol"
            >
              <a-input
                :disabled="disableSubmit"
                :disabled="true"
                placeholder="请输入单据号"
                v-decorator="['num', validatorRules.num]"
              />
@@ -27,26 +27,55 @@
          </a-col>
          <a-col :span="24/2">
            <a-form-item
              label="是否停机维修"
              label="是否停机"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <j-dict-select-tag
                allow-clear
                :disabled="disableSubmit"
                :placeholder="disableSubmit?'':'请选择是否停机维修'"
                :placeholder="disableSubmit?'':'请选择是否停机'"
                :triggerChange="true"
                dictCode="is_stop"
                v-decorator="['isStop', validatorRules.isStop]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="12">
            <a-form-model-item
              label="报修人"
              prop="name"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <a-input
                v-decorator="['errUda2', validatorRules.errUda2]"
                placeholder="请输入报修人"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="24/2">
            <a-form-item
              label="故障时间"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <j-date
                :disabled="true"
                style="width: 100%"
                placeholder="请选择故障时间"
                :showTime="true"
                dateFormat="YYYY-MM-DD HH:mm:ss"
                v-decorator="['faultTime', validatorRules.faultTime]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24/2">
            <a-form-item
              label="设备编码"
              label="统一编号"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
@@ -62,24 +91,6 @@
          </a-col>
          <a-col :span="24/2">
            <a-form-item
              label="故障时间"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <j-date
                :disabled="disableSubmit"
                style="width: 100%"
                placeholder="请选择故障时间"
                :showTime="true"
                dateFormat="YYYY-MM-DD HH:mm:ss"
                v-decorator="['faultTime', validatorRules.faultTime]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24/2">
            <a-form-item
              label="设备名称"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
@@ -92,6 +103,8 @@
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24/2">
            <a-form-item
              label="设备规格"
@@ -106,39 +119,6 @@
              />
            </a-form-item>
          </a-col>
          <a-row
            hidden
            :gutter="24"
          >
            <a-col :span="12">
              <a-form-item
                label="设备Id"
                :labelCol="labelCol"
                :wrapperCol="wrapperCol"
              >
                <a-input
                  :disabled="true"
                  :placeholder="disableSubmit?'':'请输入设备编码/名称/型号'"
                  v-decorator="['equipmentId', validatorRules.equipmentId ]"
                />
              </a-form-item>
            </a-col>
            <a-col :span="12">
              <a-form-item
                label="使用部门Id"
                :labelCol="labelCol"
                :wrapperCol="wrapperCol"
              >
                <a-input
                  :disabled="true"
                  :placeholder="disableSubmit?'':'请输入使用部门id'"
                  v-decorator="['useDepartId', validatorRules.useDepartId ]"
                />
              </a-form-item>
            </a-col>
          </a-row>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24/2">
            <a-form-item
              label="设备型号"
@@ -153,6 +133,39 @@
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row
          hidden
          :gutter="24"
        >
          <a-col :span="12">
            <a-form-item
              label="设备Id"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <a-input
                :disabled="true"
                :placeholder="disableSubmit?'':'请输入统一编号/名称/型号'"
                v-decorator="['equipmentId', validatorRules.equipmentId ]"
              />
            </a-form-item>
          </a-col>
          <a-col :span="12">
            <a-form-item
              label="使用部门Id"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <a-input
                :disabled="true"
                :placeholder="disableSubmit?'':'请输入使用部门id'"
                v-decorator="['useDepartId', validatorRules.useDepartId ]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24/2">
            <a-form-item
              label="使用部门"
@@ -174,34 +187,18 @@
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24/2">
            <a-form-item
              label="紧急程度"
              label="报修类型"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <j-dict-select-tag
                allow-clear
                :disabled="disableSubmit"
                :placeholder="disableSubmit?'':'请选择紧急程度'"
                :placeholder="disableSubmit?'':'请选择报修类型'"
                :triggerChange="true"
                dictCode="urgency"
                v-decorator="['urgency', validatorRules.urgency]"
              />
            </a-form-item>
          </a-col>
          <a-col :span="24/2" v-show="false">
            <a-form-item
              label="故障原因"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
            <a-input
              :disabled="disableSubmit"
                enter-button
                v-decorator="['faultReason', validatorRules.faultReason]"
                dictCode="report_repair_type"
                v-decorator="['type', validatorRules.type]"
              />
            </a-form-item>
          </a-col>
@@ -238,22 +235,76 @@
            </a-form-item>
          </a-col>
        </a-row>
        <!-- <a-row :gutter="24">
        <a-row :gutter="24">
          <a-col :span="24/2">
            <a-form-item
              label="故障照片"
              label="是否在加工零件"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <j-image-upload
                :disabled="disableSubmit"
                :isMultiple="true"
                v-decorator="['photo', {}]"
              ></j-image-upload>
              <j-dict-select-tag
                allow-clear
                :placeholder="disableSubmit?'':'请选择是否在加工零件'"
                :triggerChange="true"
                @change="(e) => statusChange(e)"
                dictCode="is_product"
                v-decorator="['errUda1', validatorRules.errUda1]"
              />
            </a-form-item>
          </a-col>
        </a-row> -->
          <a-col
            :span="24/2"
            v-if="workingStatus"
          >
            <a-form-item
              label="加工零件号"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <a-input
                allow-clear
                :placeholder="disableSubmit?'':'请输入加工零件号'"
                v-decorator="['partNumber', validatorRules.partNumber ]"
              />
            </a-form-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col
            :span="24/2"
            v-if="workingStatus"
          >
            <a-form-item
              label="批次号"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <a-input
                allow-clear
                :placeholder="disableSubmit?'':'请输入批次号'"
                v-decorator="['batchNo', validatorRules.batchNo ]"
              />
            </a-form-item>
          </a-col>
          <a-col
            :span="24/2"
            v-if="workingStatus"
          >
            <a-form-item
              label="件数"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
            >
              <a-input-number
                allow-clear
                style="width: 100%;"
                :placeholder="disableSubmit?'':'请输入件数'"
                :min="1"
                v-decorator="['quantity', validatorRules.quantity]"
              />
            </a-form-item>
          </a-col>
        </a-row>
      </a-form>
    </a-spin>
@@ -290,6 +341,8 @@
// import JImageUpload from '@/components/jeecg/JImage2Upload'
import EquipmentList from './EquipmentList'
import Vue from 'vue'
import dayjs from 'dayjs'
export default {
  name: "MalfunctionRepaireModal",
@@ -297,7 +350,8 @@
    JMultiSelectTag,
    Tooltip,
    // JImageUpload,
    EquipmentList
    EquipmentList,
    dayjs
  },
  data() {
    return {
@@ -338,14 +392,52 @@
            { required: true, message: '请选择故障时间!' },
          ]
        },
        faultDescription: {
          rules: [
            { required: true, message: '请描述故障!' },
            { max: 1000, min: 1, message: '最多可描述1000字!' },
          ]
        },
        errUda1: {
          rules: [
            { required: true, message: '请选择是否在加工零件!' },
          ]
        },
        errUda2: {
          rules: [
            { required: true, message: '请输入报修人!' },
            { min: 1, max: 10, message: '长度不能大于10个字符!' },
          ]
        },
        // partNumber: {
        //   rules: [
        //     { required: true, message: '请输入零件图号!' },
        //   ]
        // },
        // batchNo: {
        //   rules: [
        //     { required: true, message: '请输入批次号!' },
        //   ]
        // },
        // quantity: {
        //   rules: [
        //     { required: true, message: '请输入件数!' },
        //   ]
        // },
        type: {
          rules: [
            { required: true, message: '请选择报修类型!' },
          ]
        },
      },
      url: {
        add: "/eam/equipmentReportRepair/add",
        edit: "/eam/equipmentReportRepair/edit",
        getSysDeparts: "/eam/equipment/getSysDeparts",
        getNum: '/eam/sysIdentity/getNumNew'
      },
      dataSource: [],
      workingStatus: false
    }
  },
@@ -354,9 +446,24 @@
  },
  methods: {
    add() {
      this.edit({})
      let that = this;
      let param = {
        type: 'EquipmentReportRepair',
        length: 4
      };
      let modelDefault = {};
      getAction(this.url.getNum, param).then(res => {
        if (res.success) {
          modelDefault.num = res.result;
          this.workingStatus = false;
          modelDefault.faultTime = dayjs(new Date()).format('YYYY-MM-DD HH:mm:ss');
          that.edit(modelDefault);
        }
      })
    },
    edit(record) {
      let that = this;
@@ -365,7 +472,8 @@
      that.model = Object.assign({}, record);
      that.visible = true;
      that.$nextTick(() => {
        that.form.setFieldsValue(pick(that.model, 'num', 'isStop', 'equipmentId', 'equipmentNum', 'equipmentName', 'equipmentModel', 'equipmentSpecification', 'urgency', 'useDepartId', 'departName', 'faultDescription', 'faultTime', 'remark', "photo"));
        that.form.setFieldsValue(pick(that.model, 'errUda1', 'num', 'isStop', 'equipmentId', 'equipmentNum', 'equipmentName', 'equipmentModel', 'equipmentSpecification', 'urgency', 'useDepartId', 'departName', 'faultDescription', 'faultTime', 'remark', "photo"));
        that.form.setFieldsValue({ type: "1" });
      });
      if (record.id) {
        this.codeDisable = true;
@@ -426,7 +534,9 @@
      let record = data.record;
      this.form.setFieldsValue({ equipmentName: record.name, equipmentId: record.id, equipmentNum: record.num, equipmentModel: record.model, equipmentSpecification: record.specification, useDepartId: record.useId, departName: record.useId_dictText });
    },
    statusChange(val) {
      this.workingStatus = val === 'no' ? false : true;
    }
  },
}
</script>