zss
2024-01-04 d2c182e7310c30a38ec6ce0d8a1d2ce00d51ac8f
src/views/plan/manufacturingorder/index.vue
@@ -101,6 +101,7 @@
          </el-button> -->
          <el-button
          v-if="permissions.manufacturingorder_export"
            @click="exportExcel"
            type="primary"
            style="margin-left:10px;"
@@ -108,6 +109,7 @@
            >导出
          </el-button>
          <el-button
          v-if="permissions.manufacturingorder_label_print"
            @click="labelPrint"
            type="primary"
            style="margin-left:10px;"
@@ -199,7 +201,7 @@
      </el-dialog>
    </basic-container>
    <!-- 标签打印 -->
    <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px" top="5vh">
    <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="28%" top="5vh">
      <div style="width:100%;height: 400px;overflow-y: auto;">
        <div class="dia_body">
          <el-checkbox 
@@ -211,19 +213,50 @@
            <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 15px; font-size: 16px !important;">
                  <el-checkbox :label="i" :key="i" style="position: relative;top:-20px;left:5px"><br></el-checkbox>
                  <!-- <el-row>
                    <el-col :span="10" :offset="3">序号:</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
                  </el-row> -->
                  <el-row>
                    <el-col :span="10" :offset="3">批次号:</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.moNo2 }}</el-col>
                    <el-col :span="10" :offset="3">批次号</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.code.moNo2 }}</el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="10" :offset="3">订单二维码:</el-col>
                    <el-col :span="10" :offset="3">订单号:</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.orderNo }}</el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="10" :offset="3">客户名称:</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.cName }}</el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="10" :offset="3">零件名称:</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.pName }}</el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="10" :offset="3">车间订单二维码:</el-col>
                    <el-col :span="10">
                      <vueQr :text="JSON.stringify(item)" :size="80" :margin="2"></vueQr>
                      <vueQr :text="JSON.stringify(item.code)" :size="80" :margin="2"></vueQr>
                    </el-col>
                  </el-row>
                  </el-row> -->
                   <div>
                    <el-row style="font-size: 14px;padding-left: 20px;">
                          <el-col  style="font-weight: bold;">{{ item.pName }}</el-col>
                    </el-row>
                    <div style="display: flex;">
                      <div>
                        <el-col :span="8" :offset="4">
                          <vueQr :text="JSON.stringify(item.code)" :size="120" :margin="2"></vueQr>
                        </el-col>
                      </div>
                      <div style="margin-left: 50px;width: 100%;">
                        <el-row style="margin-top: 10px;">
                          <el-col  style="font-weight: bold;font-size: 14px;"><span>批&nbsp; 次&nbsp;号:&nbsp; </span>{{ item.code.moNo2 }}</el-col>
                        </el-row>
                        <el-row style="margin-top: 9px;font-size: 14px;">
                          <el-col  style="font-weight: bold;"><span>订&nbsp; 单&nbsp;号:&nbsp; </span>{{ item.orderNo }}</el-col>
                        </el-row>
                        <el-row style="margin-top: 9px;font-size: 14px;">
                          <el-col  style="font-weight: bold;"><span>客户名称:&nbsp; </span>{{ item.cName }}</el-col>
                        </el-row>
                      </div>
                  </div>
                  </div>
            </el-card>
          </el-checkbox-group>
        </div>
@@ -233,23 +266,52 @@
        <el-button type="primary" @click="printFun">打 印</el-button>
      </span>
    </el-dialog>
    <div class="el-dialog__body" style="width:448.8px;overflow-y: auto;position: absolute;top:9999px;padding: 0;">
    <div class="el-dialog__body" style="width:448.8px;overflow-y: auto;position: absolute;top:9999px;margin-top: 0;">
        <div id="printMOrder">
          <el-card class="box-card" v-for="(item, i) in checkDataList" :key="i" style="margin-bottom:10px;font-size: 16px !important;">
              <!-- <el-row>
                <el-col :span="10" :offset="3">序号:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
              </el-row> -->
              <el-row>
                <el-col :span="10" :offset="3">批次号:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ item.moNo2 }}</el-col>
              </el-row>
              <el-row>
                <el-col :span="10" :offset="3">订单二维码:</el-col>
                <el-col :span="10">
                  <vueQr :text="JSON.stringify(item)" :size="110" :margin="2"></vueQr>
                </el-col>
              </el-row>
          <el-card class="box-card" v-for="(item, i) in checkDataList" :key="i" style="margin-top-top:0px;margin-bottom:10px;font-size: 16px !important;">
            <!-- <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">批次号</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.code.moNo2 }}</el-col>
            </el-row>
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">订单号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.orderNo }}</el-col>
            </el-row>
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">客户名称:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.cName }}</el-col>
            </el-row>
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">零件名称:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.pName }}</el-col>
            </el-row>
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">订单二维码:</el-col>
              <el-col :span="10">
                <vueQr :text="JSON.stringify(item.code)" :size="80" :margin="2"></vueQr>
              </el-col>
            </el-row> -->
            <el-row style="font-size: 14px;padding-left: 20px;">
                          <el-col  style="font-weight: bold;">{{ item.pName }}</el-col>
                    </el-row>
                    <div style="display: flex;">
                      <div>
                        <el-col :span="8" :offset="4">
                          <vueQr :text="JSON.stringify(item.code)" :size="120" :margin="2"></vueQr>
                        </el-col>
                      </div>
                      <div style="margin-left: 50px;width: 100%;">
                        <el-row style="margin-top: 10px;">
                          <el-col  style="font-weight: bold;font-size: 14px;"><span>批&nbsp; 次&nbsp;号:&nbsp; </span>{{ item.code.moNo2 }}</el-col>
                        </el-row>
                        <el-row style="margin-top: 9px;font-size: 14px;">
                          <el-col  style="font-weight: bold;"><span>订&nbsp; 单&nbsp;号:&nbsp; </span>{{ item.orderNo }}</el-col>
                        </el-row>
                        <el-row style="margin-top: 9px;font-size: 14px;">
                          <el-col  style="font-weight: bold;"><span>客户名称:&nbsp; </span>{{ item.cName }}</el-col>
                        </el-row>
                      </div>
                    </div>
          </el-card>
        </div>
      </div>
@@ -388,6 +450,16 @@
        data: [],
        // 标题
        column: [
          {
            minWidth: '120',
            prop: 'moNo',
            label: '车间订单号',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text',
            render: { fun: this.addOrUpdateHandle }
          },
          {
            minWidth: '140',
            prop: 'state',
@@ -529,16 +601,7 @@
              return this.bomTypeDbOptions
            }
          },
          {
            minWidth: '120',
            prop: 'moNo',
            label: '车间订单号',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text',
            render: { fun: this.addOrUpdateHandle }
          },
          {
            minWidth: '120',
            prop: 'manufactureAttr',
@@ -980,21 +1043,6 @@
  },
  created() {
    this.getManufactureAttrs()
    /**
 * {
            text: '新增',
            type: 'primary',
            fun: this.addOrUpdateHandle
          },
          {
            text: '按客户订单查询',
            fun: this.getOperationTaskByCustomer
          },
          {
            text: '订单合并',
            fun: this.openOrderMerge
          }
 */
    if (this.permissions.plan_manufacturingorder_add) {
      this.table.toolbar.push({
        text: '新增',
@@ -1008,28 +1056,6 @@
        fun: this.getOperationTaskByCustomer
      })
    }
    // if (this.permissions.manufacturingorder_order_merge) {
    //   this.table.toolbar.push({
    //     text: '订单合并',
    //     fun: this.openOrderMerge
    //   })
    // }
    /**
     * {
          label: '手动新增',
          command: 'MANUAL',
          disabled: false,
          permitArr: ['01planned', '02issued']
        },
        {
          label: '自动新增',
          command: 'AUTO',
          disabled: false,
          permitArr: ['01planned', '02issued']
        }
     */
    if (this.permissions.manufacturingorder_create_task_manual) {
      this.taskTypeArr.push({
        label: '手动新增',
@@ -1046,21 +1072,7 @@
        permitArr: ['01planned', '02issued']
      })
    }
    // 初始化queryParam
    // this.initSearchCondition()
    // if (!this.options.cancelRunCreated) {
    //   this.getDataList()
    // }
    // const queryParam = []
    //       queryParam.push(
    //         Object.assign({
    //           prop: 'state',
    //           searchInfoType: 'select',
    //           propVal: '01planned'
    //         })
    //       )
    //   this.$refs.manufacturingOrderTable.setQueryParam(queryParam)
    //   this.getData()
    this.getBomTypeDbOptions()
    // 车间订单是否同步IFS
@@ -1152,15 +1164,21 @@
    initQrData(data){
      this.qrData = []
      if(data){
        console.log(data);
        let index = Number(data.qtyRequired) + Number(data.scrapQty)
        if(index>0){
          for(var i=1;i<= index;i++){
            let obj = {
              moNo: data.moNo,
              moNo2: null,
              orderNo: data.customerOrderNo,
              cName: data.customerName,
              pName: data.partName,
              code: {
                moNo: data.moNo,
                moNo2: null,
              }
            }
            let no = (i+"").padStart(3,'0')
            obj.moNo2 = data.moNo + no
            obj.code.moNo2 = data.moNo + no
            this.qrData.push(obj)
          }
        }
@@ -1258,6 +1276,10 @@
    },
    // 新增 / 修改
    addOrUpdateHandle(row) {
      if(!this.permissions.plan_manufacturingorder_edit && row.id!=null){
        this.$message.error("该角色没有操作权限")
        return
      }
      this.$router.push({
        name: 'productorderForm',
        query: { id: row == null ? null : row.id }