loulijun2021
2023-01-31 13c58d78112a8bb63abd288a51165f122fc0965b
src/views/scgl/gd.vue
@@ -15,9 +15,9 @@
        <el-form
          ref="form"
          :model="form"
          label-width="80px"
          label-width="100px"
          inline
          style="display: flex;justify-content: space-between"
          style="display: flex;"
        >
          <div class="elForm">
            <el-form-item label="订单状态" style=" display: flex;">
@@ -59,7 +59,7 @@
                />
              </el-select>
            </el-form-item>
            <el-form-item label="产品编码" style=" display: flex;">
            <el-form-item v-show="isExpandForm" label="产品编码" style=" display: flex;">
              <el-input v-model="form.partcode" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item v-show="isExpandForm" label="产品名称" style=" display: flex;">
@@ -92,44 +92,41 @@
              />
            </el-form-item>
          </div>
          <div>
            <div style="display: flex;align-items: start;justify-content:end;margin-top: 5px;z-index: 2">
              <el-button type="primary" icon="el-icon-search" @click="search">查询</el-button>
              <el-button type="info" icon="el-icon-refresh" @click="reset">重置</el-button>
            </div>
            <!--            <div v-if="!isIpad" style="display: flex;align-items: start; margin-top: 15px;z-index: 2">-->
            <!--              <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">新增</el-button>-->
            <!--              <el-button type="primary" icon="el-icon-connection" @click="send('send')">派发</el-button>-->
            <!--              <el-button type="primary" icon="el-icon-switch-button">订单关闭</el-button>-->
            <!--            </div>-->
            <!--            <div v-if="isIpad" style="display: flex;flex-direction: column;align-items: end">-->
            <!--              <div style="display: flex;margin: 10px 0">-->
            <!--                <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">新增</el-button>-->
            <!--                <el-button type="primary" icon="el-icon-connection" @click="send('send')">派发</el-button>-->
            <!--              </div>-->
            <!--              <el-button type="primary" icon="el-icon-switch-button">订单关闭</el-button>-->
            <!--            </div>-->
          <div class="bodySearchReset" :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}">
            <el-button type="primary" icon="el-icon-search" @click="search">查询</el-button>
            <el-button type="info" icon="el-icon-refresh" @click="reset">重置</el-button>
          </div>
        </el-form>
        <div
          class="bodyTopFormExpand"
        >
          <svg-icon
            v-show="mouseHoverType==='mouseout'"
            style="cursor: pointer"
            :icon-class="!isExpandForm?'doubleDown3':'doubleUp3'"
            @mouseenter="mouseHoverType=$event.type"
          />
          <svg-icon
            v-show="mouseHoverType==='mouseenter'"
            style="cursor: pointer"
            :icon-class="!isExpandForm?'doubleDown':'doubleUp'"
            @click="isExpandForm=!isExpandForm"
            @mouseout="mouseHoverType=$event.type"
          />
        </div>
      </div>
      <div
        class="bodyTopFormExpand"
        @click="isExpandForm=!isExpandForm"
      >
        <i
          :class="!isExpandForm?'el-icon-arrow-down':'el-icon-arrow-up'"
          :style="{color:'#42B983'}"
        /></div>
      <div class="elTableDiv" style="margin-top: 0">
      <div class="elTableDiv">
        <el-table
          ref="tableDataRef"
          class="tableFixed"
          :data="tableData"
          :height="isExpandForm?tableHeight:(tableHeight+40)+'px'"
          :height="isExpandForm?tableHeight:(tableHeight+80)+'px'"
          border
          :row-class-name="tableRowClassName"
          :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+40)+'px'}"
          :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+80)+'px'}"
          highlight-current-row
          :header-cell-style="this.$headerCellStyle"
          :cell-style="this.$cellStyle"
@@ -149,8 +146,8 @@
                v-model="radioSelected"
                :label="row.wo_code"
                style="color: transparent;padding-left: 10px;"
                @change.native="getCurrentRow(row.wo_code)"
              />
              <!--              @change.native="getCurrentRow(row.wo_code)"-->
            </template>
          </el-table-column>
          <el-table-column
@@ -164,6 +161,7 @@
            label="订单状态"
            sortable="custom"
            width="110"
            show-tooltip-when-overflow
          >
            <template slot-scope="{row}">
              <div v-if="row.status==='NEW'">新工单</div>
@@ -172,11 +170,14 @@
              <div v-if="row.status==='ALLO'">已派发</div>
              <div v-if="row.status==='START'">开工</div>
              <div v-if="row.status==='CLOSED'">完工</div>
              <div v-if="row.status==='NOSCHED'">待排程</div>
              <div v-if="row.status==='SCHED'">已排程</div>
            </template>
          </el-table-column>
          <el-table-column
            prop="wo_code"
            label="工单编号"
            show-tooltip-when-overflow
            sortable="custom"
            min-width="160"
          />
@@ -184,12 +185,19 @@
            prop="m_po"
            label="源单单号"
            sortable="custom"
            show-tooltip-when-overflow
            min-width="160"
          />
          >
            <template slot-scope="{row}">
              <div v-if="row.m_po">{{ row.m_po }}</div>
              <div v-else>/</div>
            </template>
          </el-table-column>
          <el-table-column
            prop="wotype"
            label="单据类型"
            sortable="custom"
            show-tooltip-when-overflow
            min-width="120"
          >
            <template slot-scope="{row}">
@@ -201,6 +209,7 @@
          <el-table-column
            prop="partcode"
            label="产品编码"
            show-tooltip-when-overflow
            sortable="custom"
            min-width="120"
          />
@@ -208,6 +217,7 @@
            prop="partname"
            min-width="150"
            label="产品名称"
            show-tooltip-when-overflow
            sortable="custom"
          />
          <el-table-column
@@ -215,6 +225,7 @@
            label="产品规格"
            sortable="custom"
            width="110"
            show-tooltip-when-overflow
          >
            <template slot-scope="{row}">
              <div v-if="row.partspec">{{ row.partspec }}</div>
@@ -225,11 +236,13 @@
            prop="plan_qty"
            label="工单数"
            sortable="custom"
            show-tooltip-when-overflow
            width="100"
          />
          <el-table-column
            prop="wkshp_name"
            label="生产车间"
            show-tooltip-when-overflow
            sortable="custom"
            width="120"
          >
@@ -263,6 +276,7 @@
          <el-table-column
            prop="plan_startdate"
            label="计划开始时间"
            show-tooltip-when-overflow
            sortable="custom"
            width="160"
          >
@@ -276,6 +290,7 @@
            label="计划结束时间"
            sortable="custom"
            width="160"
            show-tooltip-when-overflow
          >
            <template slot-scope="{row}">
              <div v-if="row.plan_enddate">{{ row.plan_enddate }}</div>
@@ -285,6 +300,7 @@
          <el-table-column
            prop="piroque"
            label="工单等级"
            show-tooltip-when-overflow
            sortable="custom"
            width="120"
          >
@@ -297,6 +313,7 @@
          </el-table-column>
          <el-table-column
            prop="lm_user"
            show-tooltip-when-overflow
            label="创建人员"
            sortable="custom"
            width="120"
@@ -304,6 +321,7 @@
          <el-table-column
            prop="lm_date"
            label="创建时间"
            show-tooltip-when-overflow
            width="160"
            sortable="custom"
          />
@@ -321,13 +339,14 @@
                  <!--                    @click="check(row)"-->
                  <!--                  />-->
                  <i
                    class="el-icon-tickets"
                    style="cursor: pointer;color: #42b983;margin-right: 15px"
                    :style="{color:$store.state.settings.theme}"
                    class="el-icon-printer"
                    style="cursor: pointer;margin-right: 15px"
                    @click="handlePrint(row.wo_code)"
                  />
                </el-tooltip>
                <el-tooltip v-del-tab-index class="item" effect="dark" content="删除" placement="top">
                  <i class="el-icon-delete" @click="del(row)" />
                  <i class="el-icon-delete" :style="{color:$store.state.settings.theme}" @click="del(row)" />
                </el-tooltip>
              </div>
            </template>
@@ -369,6 +388,7 @@
          />
          <el-table-column
            prop="wo_code"
            show-tooltip-when-overflow
            label="工单编号"
            width="160"
          />
@@ -376,30 +396,41 @@
          <el-table-column
            prop="partcode"
            label="产品编码"
            width="150"
            show-tooltip-when-overflow
          />
          <el-table-column
            prop="partname"
            label="产品名称"
            width="200"
            show-tooltip-when-overflow
          />
          <el-table-column
            label="工序编码"
            prop="stepcode"
            show-tooltip-when-overflow
            width="150"
          />
          <el-table-column
            label="工序名称"
            show-tooltip-when-overflow
            prop="stepname"
            width="150"
          />
          <el-table-column
            label="任务数量"
            show-tooltip-when-overflow
            prop="plan_qty"
          />
          <el-table-column
            label="合格数量"
            show-tooltip-when-overflow
            prop="good_qty"
          />
          <el-table-column
            label="不良数量"
            show-tooltip-when-overflow
            prop="ng_qty"
          />
          <el-table-column
@@ -411,8 +442,9 @@
              <div class="operationClass">
                <el-tooltip class="item" effect="dark" content="打印工序" placement="top">
                  <i
                    class="el-icon-tickets"
                    style="cursor: pointer;color: #42b983;margin-right: 15px"
                    class="el-icon-printer"
                    :style="{color:$store.state.settings.theme}"
                    style="cursor: pointer;margin-right: 15px"
                    @click="supplementSmallClick(row)"
                  />
                </el-tooltip>
@@ -424,6 +456,7 @@
    </div>
    <!--新增派发对话框-->
    <el-dialog
      v-el-drag-dialog
      :title="operation==='add'?'新增':'派发'"
      :visible.sync="dialogVisible"
      width="840px"
@@ -585,12 +618,36 @@
            </el-select>
          </el-form-item>
        </div>
        <el-form-item label="是否排程" prop="isAps">
          <el-radio-group v-model="dialogForm.isAps" style="width:200px" @change="changeIsAps">
            <el-radio key="Y" label="Y" value="Y">是</el-radio>
            <el-radio key="N" label="N" value="N">否</el-radio>
          </el-radio-group>
        </el-form-item>
        <el-form-item label="物料清单" :prop="dialogForm.isAps==='Y'?'bomId':''">
          <el-select
            v-model="dialogForm.bomId"
            filterable
            :disabled="dialogForm.isAps==='N'"
            :popper-append-to-body="false"
            style="width: 200px;"
            placeholder="请选择"
          >
            <el-option
              v-for="item in bomIdArr"
              :key="item.id"
              :label="item.version"
              :value="item.id"
            />
          </el-select>
        </el-form-item>
        <el-form-item label="计划开始时间" prop="planstartdate">
          <el-date-picker
            v-model="dialogForm.planstartdate"
            type="date"
            :clearable="false"
            value-format="yyyy-MM-dd"
            :picker-options="pickerOptions"
            style="width: 200px"
            placeholder="选择日期"
          />
@@ -603,6 +660,7 @@
            value-format="yyyy-MM-dd"
            style="width: 200px"
            placeholder="选择日期"
            :picker-options="pickerOptions"
          />
        </el-form-item>
        <el-form-item label="工单等级" prop="orderlev">
@@ -621,6 +679,7 @@
            />
          </el-select>
        </el-form-item>
      </el-form>
      <!--        工艺路线放大镜对话框-->
@@ -651,15 +710,18 @@
          />
          <el-table-column
            prop="stepcode"
            show-tooltip-when-overflow
            label="工序编码"
          />
          <el-table-column
            prop="stepname"
            label="工序名称"
            show-tooltip-when-overflow
          />
          <el-table-column
            prop="flwtype"
            label="工序类型"
            show-tooltip-when-overflow
          >
            <template slot-scope="{row}">
              <div v-if="row.flwtype==='W'">外协</div>
@@ -669,6 +731,7 @@
          <el-table-column
            prop="descr"
            label="工序描述"
            show-tooltip-when-overflow
            fixed="right"
          />
        </el-table>
@@ -678,13 +741,19 @@
        <div class="footerButton">
          <el-button @click="dialogVisibleCancel">取 消</el-button>
          <!--          <el-button v-if="operation==='add'" type="primary" @click="dialogVisibleConfirmPreview('add')">预览</el-button>-->
          <el-button type="primary" @click="dialogVisibleConfirm">确 定</el-button>
          <el-button
            type="primary"
            :loading="$store.state.app.buttonIsDisabled"
            :disabled="$store.state.app.buttonIsDisabled"
            @click="dialogVisibleConfirm"
          >确 定</el-button>
        </div>
      </span>
    </el-dialog>
    <!-- 工序任务对话框-->
    <el-dialog
      v-el-drag-dialog
      title="工序任务"
      :visible.sync="dialogVisibleTask"
      width="840px"
@@ -717,15 +786,18 @@
        />
        <el-table-column
          prop="wo_code"
          show-tooltip-when-overflow
          label="工单编号"
          width="200"
        />
        <el-table-column
          prop="stepcode"
          label="工序编码"
          show-tooltip-when-overflow
        />
        <el-table-column
          prop="stepname"
          show-tooltip-when-overflow
          label="工序名称"
        />
        <!--        <el-table-column-->
@@ -743,14 +815,17 @@
        <!--        />-->
        <el-table-column
          prop="plan_qty"
          show-tooltip-when-overflow
          label="任务数量"
        />
        <el-table-column
          prop="good_qty"
          show-tooltip-when-overflow
          label="合格数量"
        />
        <el-table-column
          prop="ng_qty"
          show-tooltip-when-overflow
          label="不良数量"
        />
        <el-table-column
@@ -773,15 +848,16 @@
    <!-- 源单单号对话框-->
    <el-dialog
      v-el-drag-dialog
      title="源单单号"
      :visible.sync="dialogVisibleSource"
      width="1200px"
      top="5vh"
      top="10vh"
      class="dialogVisibleSearch"
      :close-on-click-modal="false"
      @close="dialogVisibleSourceClose"
    >
      <div class="bodyTopFormGroup" style="animation: move 1s linear">
      <div class="bodyTopFormGroup">
        <el-form
          ref="sourceForm"
          :model="sourceForm"
@@ -789,10 +865,8 @@
          inline
          style="display: flex;justify-content: space-between"
        >
          <div class="elForm">
          <div class="elForm" style="justify-content: flex-start">
            <el-form-item
              label="预计开工时间"
              label-width="100px"
              style=" display: flex;font-size: 14px;margin-top: 3px"
@@ -862,36 +936,44 @@
            </el-form-item>
          </div>
          <div>
            <div style="display: flex;align-items: start;margin-top: 5px;z-index: 2;justify-content: end">
              <el-button type="primary" icon="el-icon-search" @click="sourceSearch">查询</el-button>
              <el-button type="info" icon="el-icon-refresh" @click="sourceReset">重置</el-button>
            </div>
          <div style="display: flex;align-items: start;margin-top: 3px;z-index: 2;justify-content: end">
            <el-button type="primary" icon="el-icon-search" @click="sourceSearch">查询</el-button>
            <el-button type="info" icon="el-icon-refresh" @click="sourceReset">重置</el-button>
          </div>
        </el-form>
        <div
          class="bodyTopFormExpand"
        >
          <svg-icon
            v-show="mouseHoverTypeDialog==='mouseout'"
            style="cursor: pointer"
            :icon-class="!isExpandDialog?'doubleDown3':'doubleUp3'"
            @mouseenter="mouseHoverTypeDialog=$event.type"
          />
          <svg-icon
            v-show="mouseHoverTypeDialog==='mouseenter'"
            style="cursor: pointer"
            :icon-class="!isExpandDialog?'doubleDown':'doubleUp'"
            @click="isExpandDialog=!isExpandDialog"
            @mouseout="mouseHoverTypeDialog=$event.type"
          />
        </div>
      </div>
      <!--      <el-tooltip  :content="!isExpandDialog?'点击展示更多':'收起'" placement="bottom">-->
      <div
        style="display:flex;justify-content: center;
          align-items:center;background-color:#eee;cursor: pointer"
        @click="isExpandDialog=!isExpandDialog"
      >
        <i
          :class="!isExpandDialog?'el-icon-arrow-down':'el-icon-arrow-up'"
          :style="{color:'#42B983'}"
        /></div>
      <!--      </el-tooltip>-->
      <div class="elTableDiv">
        <el-table
          :data="sourceTableData"
          :height="(tableHeight-100)+'px'"
          :height="isExpandDialog?(tableHeight+60)+'px':(tableHeight+140)+'px'"
          border
          :row-class-name="tableRowClassName"
          :style="{width: 100+'%',height:(tableHeight-100)+'px',}"
          :style="{width: 100+'%',height:isExpandDialog?(tableHeight+60)+'px':(tableHeight+140)+'px',}"
          highlight-current-row
          :header-cell-style="this.$headerCellStyle"
          :cell-style="this.$cellStyle"
          @sort-change="sourceSortChange"
          @row-click="getCurrentRowSource"
        >
          <!--          <el-table-column-->
          <!--            type="selection"-->
@@ -906,8 +988,8 @@
                v-model="radioSelectedId"
                :label="row.id"
                style="color: transparent;padding-left: 10px;"
                @change.native="getCurrentRowSource(row.id)"
              />
              <!--              @change.native="getCurrentRowSource(row.id)"-->
            </template>
          </el-table-column>
          <el-table-column
@@ -919,6 +1001,7 @@
          <el-table-column
            prop="status"
            label="订单状态"
            show-tooltip-when-overflow
            sortable="custom"
            width="110"
          >
@@ -932,6 +1015,7 @@
          <el-table-column
            prop="wo"
            label="订单编号"
            show-tooltip-when-overflow
            sortable="custom"
            min-width="150"
          />
@@ -939,17 +1023,20 @@
            prop="partcode"
            label="产品编码"
            sortable="custom"
            show-tooltip-when-overflow
            min-width="150"
          />
          <el-table-column
            prop="partname"
            label="产品名称"
            sortable="custom"
            show-tooltip-when-overflow
            min-width="150"
          />
          <el-table-column
            prop="partspec"
            label="产品规格"
            show-tooltip-when-overflow
            sortable="custom"
            min-width="110"
          >
@@ -962,10 +1049,12 @@
            prop="qty"
            label="订单数量"
            width="150"
            show-tooltip-when-overflow
            sortable="custom"
          />
          <el-table-column
            prop="relse_qty"
            show-tooltip-when-overflow
            label="已下单数量"
            width="150"
            sortable="custom"
@@ -973,6 +1062,7 @@
          <el-table-column
            prop="wkshp_name"
            label="生产车间"
            show-tooltip-when-overflow
            sortable="custom"
            width="150"
          >
@@ -984,6 +1074,7 @@
          <el-table-column
            prop="planstartdate"
            label="预计开工时间"
            show-tooltip-when-overflow
            sortable="custom"
            width="130"
          >
@@ -995,6 +1086,7 @@
          <el-table-column
            prop="planenddate"
            label="预计完工时间"
            show-tooltip-when-overflow
            sortable="custom"
            width="130"
          >
@@ -1006,6 +1098,7 @@
          <el-table-column
            prop="createuser"
            label="创建人员"
            show-tooltip-when-overflow
            sortable="custom"
            width="150"
          >
@@ -1017,6 +1110,7 @@
          <el-table-column
            prop="createdate"
            label="创建时间"
            show-tooltip-when-overflow
            width="130"
            sortable="custom"
          >
@@ -1065,6 +1159,7 @@
    <!--打印预览对话框  大标签-->
    <el-dialog
      v-el-drag-dialog
      title=""
      :visible.sync="dialogVisibleApprove"
      width="812px"
@@ -1210,6 +1305,7 @@
    <!--打印预览页面  小标签-->
    <el-dialog
      v-el-drag-dialog
      title="预览"
      :visible.sync="dialogVisible2"
      width="1140"
@@ -1217,63 +1313,212 @@
      :close-on-click-modal="false"
      @close="dialogVisible2Close"
    >
      <!-- 要打印的区域 -->
      <div id="printMe2" style="padding: 0px;">
        <div
          style="display: flex;width: 280px;height: 150px;border: 1px solid #000;text-align: center;font-size: 10px;"
        >
      <div style="height: 300px">
        <!--      下拉框选择打印尺寸-->
        <div style="display: flex;align-items: center;margin: 0 0 20px 0">
          <div>选择打印尺寸:</div>
          <el-select
            v-model="printSize"
            :popper-append-to-body="false"
            style="width: 200px"
            placeholder="请选择"
            @change="printSizeChange"
          >
          <div style="width: 90px;display: flex;flex-direction: column;border-right: 1px solid #000">
            <div
              style="display: flex;height: 90px;border-bottom:1px solid #000;
            <el-option
              v-for="item in printSizeSelectArr"
              :key="item.code"
              :label="item.name"
              :value="item.code"
            />
          </el-select>
        </div>
        <!-- 要打印的区域 -->
        <!--      <div id="printMe2" :style="{paddingLeft:'10px',paddingTop: '5px'}">-->
        <div id="printMe2" :style="printMe2StylePadding(printSize)">
          <div
            v-if="printSize===0"
            style="display: flex;width: 280px;height: 160px;border: 1px solid #000;text-align: center;font-size: 10px;"
          >
            <div style="width: 90px;display: flex;flex-direction: column;border-right: 1px solid #000">
              <div
                style="display: flex;height: 96px;border-bottom:1px solid #000;
              justify-content: center;align-items: center;position: relative"
            >
              <div id="qrCode2" ref="qrCodeDiv2" style="overflow-y: hidden;height:60px;position: absolute;left: 14px;" />
              >
                <div
                  id="qrCode2"
                  ref="qrCodeDiv2"
                  style="overflow-y: hidden;height:60px;position: absolute;left: 14px;"
                />
              </div>
              <div
                style="display: flex;height: 32px;justify-content: flex-start;border-bottom:1px solid #000;align-items: center"
              >
                <div style="margin-left: 5px;width: 28px">数量:</div>
                {{ qrForm.startqty }}
              </div>
              <div style="display: flex;height: 32px;justify-content: flex-start;align-items: center">
                <div style="margin-left: 5px;width: 42px">处理人:</div>
                {{ qrForm.operator }}
              </div>
            </div>
            <div
              style="display: flex;height: 30px;justify-content: flex-start;border-bottom:1px solid #000;align-items: center"
            >
              <div style="margin-left: 5px;width: 28px">数量:</div>
              {{ qrForm.startqty }}
            </div>
            <div style="display: flex;height: 30px;justify-content: flex-start;align-items: center">
              <div style="margin-left: 5px;width: 42px">处理人:</div>
              {{ qrForm.operator }}
            </div>
          </div>
          <div style="width:190px;display: flex;flex-direction: column">
            <div
              style="display: flex;height: 20%;border-bottom:1px solid #000;justify-content: flex-start;align-items: center;text-align: left"
            >
              <div style="width: 60px;margin-left: 5px;">工单编号:</div>
              <div>{{ qrForm.wo_code }}</div>
            </div>
            <div
              style="display: flex;height: 20%;border-bottom:1px solid #000;justify-content: flex-start;align-items: center ;text-align: left"
            >
              <div style="width: 60px;margin-left: 5px;">产品编码:</div>
              <div>{{ qrForm.partcode }}</div>
            </div>
            <div
              style="display: flex;height: 20%;border-bottom:1px solid #000 ;justify-content: flex-start;align-items: center;text-align: left"
            >
              <div style="width:60px;margin-left: 5px;">产品名称:</div>
              <div>{{ qrForm.partname }}</div>
            </div>
            <div
              style="display: flex;height: 20%;border-bottom:1px solid #000 ;justify-content: flex-start;align-items: center;text-align: left"
            >
              <div style="width:60px;margin-left: 5px;">下道工序:</div>
              <div>{{ qrForm.nextstepname }}</div>
            </div>
            <div style="display: flex;height: 20%;justify-content: flex-start;align-items: center;text-align: left">
              <div style="width: 60px;margin-left: 5px;">处理时间:</div>
              <div>{{ qrForm.operatorTime }}</div>
            <div style="width:190px;display: flex;flex-direction: column">
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000;justify-content: flex-start;align-items: center;text-align: left"
              >
                <div style="width: 60px;margin-left: 5px;">工单编号:</div>
                <div>{{ qrForm.wo_code }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000;justify-content: flex-start;align-items: center ;text-align: left"
              >
                <div style="width: 60px;margin-left: 5px;">产品编码:</div>
                <div>{{ qrForm.partcode }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000 ;justify-content: flex-start;align-items: center;text-align: left"
              >
                <div style="width:60px;margin-left: 5px;">产品名称:</div>
                <div>{{ qrForm.partname }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000 ;justify-content: flex-start;align-items: center;text-align: left"
              >
                <div style="width:60px;margin-left: 5px;">下道工序:</div>
                <div>{{ qrForm.nextstepname }}</div>
              </div>
              <div style="display: flex;height: 20%;justify-content: flex-start;align-items: center;text-align: left">
                <div style="width: 60px;margin-left: 5px;">处理时间:</div>
                <div>{{ qrForm.operatorTime }}</div>
              </div>
            </div>
          </div>
          <div
            v-if="printSize===1"
            style="display: flex;width: 280px;height: 160px;border: 1px solid #000;text-align: center;font-size: 10px;"
          >
            <div style="width: 90px;display: flex;flex-direction: column;border-right: 1px solid #000">
              <div
                style="display: flex;height: 96px;border-bottom:1px solid #000;
              justify-content: center;align-items: center;position: relative"
              >
                <div
                  id="qrCode2"
                  ref="qrCodeDiv2"
                  style="overflow-y: hidden;height:60px;position: absolute;left: 14px;"
                />
              </div>
              <div
                style="display: flex;height: 32px;justify-content: flex-start;border-bottom:1px solid #000;align-items: center"
              >
                <div style="margin-left: 5px;width: 28px">数量:</div>
                {{ qrForm.startqty }}
              </div>
              <div style="display: flex;height: 32px;justify-content: flex-start;align-items: center">
                <div style="margin-left: 5px;width: 42px">处理人:</div>
                {{ qrForm.operator }}
              </div>
            </div>
            <div style="width:190px;display: flex;flex-direction: column">
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000;justify-content: flex-start;align-items: center;text-align: left"
              >
                <div style="width: 60px;margin-left: 5px;">工单编号:</div>
                <div>{{ qrForm.wo_code }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000;justify-content: flex-start;align-items: center ;text-align: left"
              >
                <div style="width: 60px;margin-left: 5px;">产品编码:</div>
                <div>{{ qrForm.partcode }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000 ;justify-content: flex-start;align-items: center;text-align: left"
              >
                <div style="width:60px;margin-left: 5px;">产品名称:</div>
                <div>{{ qrForm.partname }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000 ;justify-content: flex-start;align-items: center;text-align: left"
              >
                <div style="width:60px;margin-left: 5px;">下道工序:</div>
                <div>{{ qrForm.nextstepname }}</div>
              </div>
              <div style="display: flex;height: 20%;justify-content: flex-start;align-items: center;text-align: left">
                <div style="width: 60px;margin-left: 5px;">处理时间:</div>
                <div>{{ qrForm.operatorTime }}</div>
              </div>
            </div>
          </div>
          <div
            v-if="printSize===5"
            style="display: flex;width: 140px;height: 80px;border: 1px solid #000;text-align: center;font-size: 10px;"
          >
            <div v-if="false" style="width: 45px;display: flex;flex-direction: column;border-right: 1px solid #000">
              <div
                style="display: flex;height: 60px;border-bottom:1px solid #000;
              justify-content: center;align-items: center;position: relative"
              >
                <div
                  id="qrCode2"
                  ref="qrCodeDiv2"
                  style="overflow-y: hidden;height:60px;position: absolute;left: 14px;"
                />
              </div>
              <div
                style="display: flex;height: 20px;justify-content: flex-start;border-bottom:1px solid #000;align-items: center"
              >
                <div style="margin-left: 5px;width: 28px">数量:</div>
                {{ qrForm.startqty }}
              </div>
              <div style="display: flex;height: 20px;justify-content: flex-start;align-items: center">
                <div style="margin-left: 5px;width: 42px">处理人:</div>
                {{ qrForm.operator }}
              </div>
            </div>
            <div style="width:100%;display: flex;flex-direction: column;">
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000;justify-content: center;align-items: center;text-align: left"
              >
                <!--              <div style="width: 60px;margin-left: 5px;">工单编号:</div>-->
                <div>{{ qrForm.wo_code }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000;justify-content: center;align-items: center ;text-align: left"
              >
                <!--              <div style="width: 60px;margin-left: 5px;">产品编码:</div>-->
                <div>{{ qrForm.partcode }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000 ;justify-content: center;align-items: center;text-align: left"
              >
                <!--              <div style="width:60px;margin-left: 5px;">产品名称:</div>-->
                <div>{{ qrForm.partname }}</div>
              </div>
              <div
                style="display: flex;height: 20%;border-bottom:1px solid #000 ;justify-content: center;align-items: center;text-align: left"
              >
                <!--              <div style="width:60px;margin-left: 5px;">下道工序:</div>-->
                <div>{{ qrForm.nextstepname }}</div>
              </div>
              <div style="display: flex;height: 20%;justify-content: center;align-items: center;text-align: left">
                <!--              <div style="width: 60px;margin-left: 5px;">处理时间:</div>-->
                <div>{{ qrForm.operatorTime }}</div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
@@ -1286,6 +1531,7 @@
    <!--    工艺路线对话框-->
    <el-dialog
      v-el-drag-dialog
      :close-on-click-modal="false"
      title="关联工艺路线"
      :visible.sync="dialogVisibleRoute"
@@ -1369,10 +1615,12 @@
          <el-table-column
            prop="stepcode"
            label="工序编码"
            show-tooltip-when-overflow
          />
          <el-table-column
            prop="stepname"
            label="工序名称"
            show-tooltip-when-overflow
          />
          <el-table-column
            prop="enable"
@@ -1408,7 +1656,7 @@
import {
  AddUpdateMesOrder,
  ClosedMesOrder,
  DeleteMesOrder, ErpOrderSearch,
  DeleteMesOrder, ErpOrderSearch, JobCreationSonAddVison,
  MesOrderSearch, PartSelectRoute, RouteSelectWkshop, SearchWorkStep,
  SelectRouteStep
} from '@/api/scgl'
@@ -1419,14 +1667,19 @@
import { urlAddRandomNo, webapp_ws_ajax_run, webapp_ws_autoupdate } from '@/utils/grwebapp'
import QRCode from 'qrcodejs2'
import $ from 'jquery'
import elDragDialog from '@/directive/el-drag-dialog'
export default {
  name: 'GD',
  components: {
    Pagination
  },
  directives: { elDragDialog },
  data() {
    return {
      mouseHoverType: 'mouseout',
      mouseHoverTypeDialog: 'mouseout',
      isExpandForm: false,
      isIpad: false,
      mainHeight: 0,
      tableHeight: 0,
@@ -1452,7 +1705,9 @@
        // { code: 'CREATED', name: '已关闭' }
        { code: 'ALLO', name: '已派发' },
        { code: 'START', name: '开工' },
        { code: 'CLOSED', name: '完工' }
        { code: 'CLOSED', name: '完工' },
        { code: 'NOSCHED', name: '待排程' },
        { code: 'SCHED', name: '已排程' }
      ],
      total: 10,
      radioSelected: '',
@@ -1477,9 +1732,11 @@
        planstartdate: '', // 计划开始时间
        planenddate: '', // 计划完成时间
        orderlev: '', // 工单等级
        isAps: 'N', // 是否排程
        bomId: '', // 物料清单id
        OperType: '' // 操作类型
      },
      bomIdArr: [], // 物料清单下拉
      ordertypeArr: [// 工单类型
        { code: 'PO', name: '标准工单' },
        { code: 'FO', name: '报废补单' }
@@ -1520,6 +1777,12 @@
        ],
        orderlev: [
          { required: true, message: '请选择工单等级', trigger: ['blur', 'change'] }
        ],
        isAps: [
          { required: true, message: '请选择是否排程', trigger: ['blur', 'change'] }
        ],
        bomId: [
          { required: true, message: '请选择物料清单', trigger: ['blur', 'change'] }
        ]
      },
@@ -1571,7 +1834,7 @@
        closeCallback(vue) { // 关闭打印的回调事件(无法确定点击的是确认还是取消)
          console.log('11212', vue)
          // vue.dialogVisible = false
          vue.dialogVisible2 = false
          // vue.dialogVisible2 = false
          // vue.dialogVisible = false
        },
        beforeOpenCallback(vue) {
@@ -1624,8 +1887,21 @@
      defaultroute_code: '', // 默认工艺路线选中值
      defaultroute_codeArr: '', // 默认工艺路线数组
      projectTableData: [], // 设备列表
      isExpandForm: false, // 表单是否展开,默认不展开
      tableDataDetail: []// 点击工单表的行 显示详细信息
      tableDataDetail: [], // 点击工单表的行 显示详细信息
      printSize: 1,
      printSizeSelectArr: [// 宽*高
        { code: 0, name: '80*50' },
        { code: 1, name: '78*60' }
        // { code: 2, name: '50*60' },
        // { code: 3, name: '50*40' },
        // { code: 4, name: '50*80' },
        // { code: 5, name: '40*30' }
      ],
      pickerOptions: {
        disabledDate(time) {
          return time.getTime() < Date.now() - 8.64e7
        }
      }
    }
  },
  created() {
@@ -1742,10 +2018,8 @@
      this.dialogForm.planenddate = handleDatetime(new Date())
      this.dialogForm.orderlev = 3
    },
    // 产品信息值改变
    async partcodeChange(val) {
      console.log(val, 22)
      const { data: res } = await PartSelectRoute({ partcode: val })
      this.routeArr = res
@@ -1773,6 +2047,18 @@
      const { data: res2 } = await RouteSelectWkshop(data)
      this.wkshopArr = res2
      this.dialogForm.wkshopcode = ''
    },
    // 是否排程值改变时
    changeIsAps(val) {
      if (val === 'N') {
        this.dialogForm.bomId = ''
      }
      if (val === 'Y') {
        JobCreationSonAddVison({ partnumber: this.dialogForm.partcode }).then(res => {
          this.bomIdArr = res.data
          this.dialogForm.bomId = this.bomIdArr[0].id
        })
      }
    },
    // 工序任务
    async check(row) {
@@ -1821,7 +2107,7 @@
    },
    // 删除按钮
    async del(row) {
      if (row.status === 'START' || row.status === 'CLOSED') {
      if (row.status === 'START' || row.status === 'CLOSED' || row.status === 'SCHED') {
        return this.$message.info('此工单不可删除!')
      }
      this.$confirm('是否确认删除?', '提示', {
@@ -1831,7 +2117,7 @@
      }).then(() => {
        console.log(row, 1)
        const data = {
          souceid: row.sourceid,
          souceid: row.sourceid ? row.sourceid : '',
          wocode: row.wo_code,
          m_po: row.m_po,
          orderqty: row.plan_qty
@@ -1894,6 +2180,8 @@
      // const { data: res } = await PartSelectRpute({ partcode: val })
      // this.routeArr = res
      // this.dialogForm.routecode = ''
      this.dialogForm.isAps = 'N'
      this.dialogForm.bomId = ''
      this.partcodeChange(val)
    },
    // 对话框关闭事件
@@ -1916,7 +2204,10 @@
      this.dialogForm.planstartdate = '' // 计划开始时间
      this.dialogForm.planenddate = '' // 计划完成时间
      this.dialogForm.orderlev = '' // 工单等级
      this.dialogForm.isAps = 'N' // 是否排程
      this.dialogForm.bomId = ''
      this.bomIdArr = []
      this.$refs.dialogForm.clearValidate()
    },
    // 对话框取消
@@ -1930,6 +2221,7 @@
          if (this.dialogForm.ordertype === 'FO' && this.dialogForm.sourceorder.toString().trim().length <= 0) {
            return this.$message.info('源单单号不能为空!')
          }
          const data = {
            // partname: this.dialogForm.partname, // 产品名称
            // partspec: this.dialogForm.partspec, // 产品规格
@@ -1947,9 +2239,11 @@
            planstartdate: this.dialogForm.planstartdate, // 计划开始时间
            planenddate: this.dialogForm.planenddate, // 计划完成时间
            orderlev: this.dialogForm.orderlev, // 工单等级
            is_aps: this.dialogForm.isAps, // 是否排程
            bom_id: this.dialogForm.bomId, // 物料清单id
            OperType: this.operation === 'add' ? 'Add' : 'Update'
          }
          this.$store.state.app.buttonIsDisabled = true
          AddUpdateMesOrder(data).then(res => {
            if (res.code === '200') {
              this.dialogVisible = false
@@ -1959,6 +2253,7 @@
              this.$message.success(this.operation === 'add' ? '添加成功!' : '派发成功!')
              // this.dialogVisible = false
              this.getMesOrderSearch()
              this.$store.state.app.buttonIsDisabled = false
            } else {
              this.$message.error(this.operation === 'add' ? '添加失败!' : '派发失败!')
            }
@@ -1992,11 +2287,12 @@
      this.$nextTick(() => {
        this.mainHeight = window.innerHeight - 85
        // this.tableHeight = this.mainHeight - 250
        this.tableHeight = this.mainHeight - 470
        this.tableHeight = this.mainHeight - 515
        if (window.innerHeight < 769) {
          this.tableHeight = this.tableHeight - 20
        }
        this.isIpad = window.innerHeight < 769 && window.innerWidth < 1367
        this.$refs.tableDataRef.doLayout()
      })
    },
    // 工艺路线放大镜点击
@@ -2046,9 +2342,9 @@
            // div.scrollTop = div.scrollHeight // 滚动条位于最底部
            div.scrollTop = 0 // 滚动条位于最顶部
          })
          this.dialogVisibleApprove = true
        }
      })
      this.dialogVisibleApprove = true
    },
    dialogVisibleTaskClose() {
      this.dialogForm.mesordercode = ''
@@ -2076,7 +2372,7 @@
    //     }
    //   })
    // },
    // 生成二维码
    // 生成二维码    工单报表二维码
    bindQRCode(seq, text, size) {
      if (size === 'big') {
        console.log(text, 1)
@@ -2165,7 +2461,7 @@
      this.qrForm.operatorTime = ''
      // this.$refs.qrCodeDiv2 = ''
    },
    // 生成二维码
    // 生成二维码    工序标签二维码
    bindQRCode2(text) {
      new QRCode(this.$refs.qrCodeDiv2, {
        text: text,
@@ -2219,8 +2515,12 @@
      this.sourceFormTotal = res.count
    },
    // 单选框选中获取当前行信息
    getCurrentRowSource(id) {
      this.radioSelectedId = id
    // getCurrentRowSource2(id) {
    //   this.radioSelectedId = id
    // },
    // 单选框选中获取当前行信息
    getCurrentRowSource(row, event, column) {
      this.radioSelectedId = row.id
    },
    sourceSearch() {
      this.getErpOrderSearch()
@@ -2361,15 +2661,28 @@
      this.defaultroute_codeArr = this.dialogFormRoute.routeOperationArr.filter(item => item.isSelected2)
    },
    //  行点击事件
    async   rowClick(row, event, column) {
      console.log(row, event, column)
      console.log(row.wo_code, event, column)
    async rowClick(row, event, column) {
      this.radioSelected = row.wo_code
      const { data: res } = await SearchWorkStep({ wo_code: row.wo_code })
      this.tableDataDetail = res
    },
    // 打印工单
    printOrder() {
    },
    //  选择打印尺寸的大小值改变
    printSizeChange(val) {
      this.$nextTick(() => {
        this.bindQRCode2(this.qrForm.qrvalue)
      })
    },
    printMe2StylePadding(val) {
      if (val === 0) {
        return { paddingLeft: '10px', paddingTop: '5px' }
      }
      if (val === 5) {
        return { paddingLeft: '15px', paddingTop: '7px' }
      }
    }
  }
}
@@ -2495,12 +2808,12 @@
  margin-bottom: 0;
}
//.elTableDiv {
::v-deep .el-radio__label {
  display: none;
}
.elTableDiv {
  ::v-deep .el-radio__label {
    display: none;
  }
//}
}
.el-table::before {
  height: 0;
@@ -2669,6 +2982,21 @@
  //}
}
::v-deep .el-select__caret {
  display: flex;
  align-items: center;
  justify-content: center;
}
.tableFixed {
  ::v-deep .el-table__fixed-right {
    height: 100% !important;
  }
  ::v-deep .el-table__fixed {
    height: 100% !important;
  }
}
</style>
<style>