春风项目四线(合箱线、总装线)
hdy
2024-01-18 2cc5a1afe8296d148f0a32989395d538e5323a8e
jcdm-ui/src/views/main/om/productionOrde/index.vue
@@ -30,23 +30,20 @@
      <el-form-item style="margin-left: 14px" label="产品编号" prop="productCode">
        <el-input v-model="queryParams.productCode" placeholder="请输入产品编号" clearable @keyup.enter.native="handleQuery"/>
      </el-form-item>
      <el-form-item label="订单编号" prop="salesOrderCode">
        <el-input v-model="queryParams.salesOrderCode" placeholder="请输入订单编号" clearable @keyup.enter.native="handleQuery"/>
      <el-form-item label="机型" prop="typeZ">
        <el-input v-model="queryParams.typeZ" placeholder="请输入机型" clearable @keyup.enter.native="handleQuery"/>
      </el-form-item>
      <el-form-item label="车间编号" prop="workshopCode">
        <el-input v-model="queryParams.workshopCode" placeholder="请输入车间编号" clearable @keyup.enter.native="handleQuery"/>
      </el-form-item>
      <el-form-item label="产线编号" prop="lineCode">
        <el-input v-model="queryParams.lineCode" placeholder="请输入产线编号" clearable @keyup.enter.native="handleQuery"/>
      </el-form-item>
      <el-form-item style="margin-left: 7px" label-width="80" label="产品BOM" prop="bomCode">
        <el-input v-model="queryParams.bomCode" placeholder="请输入产品BOM" clearable @keyup.enter.native="handleQuery"/>
      </el-form-item>
      <el-form-item label="工艺流程" prop="routeCode">
        <el-input v-model="queryParams.routeCode" placeholder="请输入工艺流程" clearable @keyup.enter.native="handleQuery"/>
      </el-form-item>
      <el-form-item label="工艺配方" prop="recipeCode">
        <el-input v-model="queryParams.recipeCode" placeholder="请输入工艺配方" clearable @keyup.enter.native="handleQuery"/>
      <el-form-item label-width="130" label="通知单生成日期" prop="dateConditions">
        <el-date-picker
          v-model="queryParams.dateConditions"
          type="datetimerange"
          :picker-options="pickerOptions"
          value-format="yyyy-MM-dd HH:mm:ss"
          range-separator="至"
          start-placeholder="开始日期"
          end-placeholder="结束日期"
          align="right">
        </el-date-picker>
      </el-form-item>
    </el-form>
    </el-card>
@@ -117,18 +114,19 @@
<!--      </el-col>-->
      <el-col :span="1.5">
        <el-button
          type="warning"
          type="success"
          plain
          icon="el-icon-download"
          icon="el-icon-wind-power"
          size="mini"
          @click="getProductionNotice"
          v-hasPermi="['om:productionOrde:receive']"
        >接收</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-createUpdate"
          icon="el-icon-edit"
          size="mini"
          :disabled="single"
          @click="CreatehandleUpdate"
@@ -145,7 +143,7 @@
        </el-table-column>
        <el-table-column label="生产订单" width="160" align="center">
          <template slot-scope="scope">
            <router-link :to="{path: '/main/workReport-data/index/', query: {workOrderNo: scope.row.workOrderNo} }" class="link-type">
            <router-link :to="{path: '/main/orderScheduling-data/index/', query: {workOrderNo: scope.row.workOrderNo} }" class="link-type">
              <span>{{ scope.row.workOrderNo }}</span>
            </router-link>
          </template>
@@ -349,9 +347,9 @@
        <i class="el-icon-s-order"></i>
        {{titleName}}
      </span>
      <el-form ref="form" inline  :model="form" :rules="CreateRules" label-width="80px">
        <el-form-item   label="种类" prop="typeZ">
          <el-input disabled v-model="form.typeZ"  placeholder="请输入种类" />
      <el-form ref="form" inline  :model="form" :rules="CreateRules" label-width="100px">
        <el-form-item   label="机型" prop="typeZ">
          <el-input disabled v-model="form.typeZ"  placeholder="请输入机型" />
        </el-form-item>
        <el-form-item  label="日期" prop="dateTime">
          <el-date-picker clearable
@@ -368,7 +366,7 @@
          <el-input type="number"   :maxlength="3"  :pattern="'[0-9]{3}'" v-model="form.startCode"  placeholder="请输入起始编号" @input="handleCodeChange"/>
        </el-form-item>
        <el-form-item   label="起止编号" prop="startEndCode">
          <el-input disabled v-model="form.startEndCode"/>
          <el-input type="textarea" disabled v-model="form.startEndCode"/>
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
@@ -396,6 +394,7 @@
  generateNumbers
} from "@/api/main/bs/orderScheduling/orderScheduling";
import {listMaterial} from "@/api/main/bs/material/material";
import {listModelNumber} from "@/api/main/bs/modelNumber/modelNumber";
export default {
  name: "ProductionOrde",
@@ -459,6 +458,7 @@
        flag: null,
        adds:null,
        productionNotice: null,
        dateConditions: [],
      },
      materialQueryParams: {
        pageNum: 1,
@@ -501,6 +501,33 @@
        year: '',
      },
      markNo: '',
      pickerOptions: {
        shortcuts: [{
          text: '最近一周',
          onClick(picker) {
            const end = new Date();
            const start = new Date();
            start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
            picker.$emit('pick', [start, end]);
          }
        }, {
          text: '最近一个月',
          onClick(picker) {
            const end = new Date();
            const start = new Date();
            start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
            picker.$emit('pick', [start, end]);
          }
        }, {
          text: '最近三个月',
          onClick(picker) {
            const end = new Date();
            const start = new Date();
            start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
            picker.$emit('pick', [start, end]);
          }
        }]
      },
    };
  },
  created() {
@@ -540,15 +567,18 @@
        //日
        dateTimeRule = dateTimeRule + day;
        dateTimeRule = dateTimeRule + this.markNo;
        this.form.dateTimeRule = dateTimeRule;
        this.form.dateTimeRule = dateTimeRule;//此处赋值不加机型
        dateTimeRule = dateTimeRule + this.form.typeZ;//此处加机型,顺序不能颠倒
        //赋值起始编码
        this.form.startEndCode = dateTimeRule +  startCode + "----" + dateTimeRule + String(parseInt(startCode) + parseInt(planQty)-1).padStart(3, '0') ;
        this.form.startEndCode = dateTimeRule +  String(parseInt(startCode)).padStart(3, '0') + "         " + dateTimeRule + String(parseInt(startCode) + parseInt(planQty)-1).padStart(3, '0') ;
      }
    },
    getProductionNotice(){
      getProductionNotice(this.queryParams).then(response => {
        this.$modal.msgSuccess("接收成功");
        this.$modal.msgSuccess(response.msg);
        this.queryParams = {}
        this.getList();
      });
@@ -728,6 +758,7 @@
        this.materialQueryParams.materialCode = response.data.productCode;
        listMaterial(this.materialQueryParams).then(response => {
          this.markNo = response.rows[0].mark
          this.form.typeL = response.rows[0].typeL;
        });
        this.form = response.data;
        this.Createopen = true;
@@ -770,6 +801,33 @@
    /** 生成箱体条码提交按钮 */
    submitFormForBoxCode() {
      let startCode = parseInt(this.form.startCode);
      let queryParams = {
        model: this.form.typeZ,
        modelDate: this.form.dateTimeRule,
      }
      if(startCode>999){
        this.$message.error('起始编号超出最大范围,请输入1-999的数字!');
        return;
      }else if(startCode<1){
        this.$message.error('起始编号超出最小范围,请输入1-999的数字!');
        return;
      }
      listModelNumber(queryParams).then(response => {
        if(response.rows.length === 0){
          this.saveBoxCode()
        }else {
          let maxNumValue = response.rows[0].maxnumValue;
          if(startCode<=maxNumValue){
            this.$message.error('箱体条码重复,请重新输入起始编号!');
          }else {
            this.saveBoxCode()
          }
        }
      });
    },
    saveBoxCode(){
      this.$refs["form"].validate(valid => {
        if (valid) {
          if (this.form.id != null) {