loulijun2021
2023-05-10 4ee759bd3226bb2f686c99b3d93e26b4128f07a4
1.物流检验报表提交
已修改4个文件
218 ■■■■ 文件已修改
src/router/index.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/kanbanManager/zhkb.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/produceManager/workOrderBatchClose.vue 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/reportManager/logisticsCheck.vue 179 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js
@@ -150,9 +150,9 @@
    path: '/orderManager',
    component: Layout,
    redirect: '/orderManager/erpProduceOrder',
    name: '生产管理',
    name: '订单管理',
    code: '2004',
    meta: { code: '2004', title: '生产管理', icon: 'production' },
    meta: { code: '2004', title: '订单管理', icon: 'production' },
    alwaysShow: true,
    children: [
      {
src/views/kanbanManager/zhkb.vue
@@ -471,12 +471,13 @@
        const timer = setInterval(() => {
          startValue = startValue + scale
          this.tableDataLeftBottom = this.tableDataLeftBottomTemp.slice(startValue, startValue + scale)
          nowLoop++ // 放在这里可以了,就等待零点几秒
          if (nowLoop === loop) {
            clearInterval(timer)
            this.getLeftBottomData()
          }
          nowLoop++
          // nowLoop++ //之前放在这里逻辑不对,相差了一次的循环,相当于多等待了10秒
        }, 1000 * 10)
      })
    },
src/views/produceManager/workOrderBatchClose.vue
@@ -16,7 +16,22 @@
        >
          <div class="elForm">
            <el-form-item label="工单状态" style=" display: flex;">
              <el-input v-model="form.mesorderstus" placeholder="请输入" style="width: 200px" />
              <!--              <el-input v-model="form.mesorderstus" placeholder="请输入" style="width: 200px" />-->
              <el-select
                v-model="form.mesorderstus"
                :popper-append-to-body="false"
                style="width: 200px"
                placeholder="请选择"
                filterable
                @change="erporderstusChange"
              >
                <el-option
                  v-for="item in erporderstusArr"
                  :key="item.code"
                  :label="item.name"
                  :value="item.code"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="工单编号" style=" display: flex;">
              <el-input v-model="form.mesordercode" placeholder="请输入" style="width: 200px" />
@@ -405,6 +420,17 @@
      total: 10,
      tableData: [],
      erporderstusArr: [
        { code: 'NEW', name: '新工单' },
        // { code: 'CREATING', name: '执行中' },
        // { code: 'CREATED', name: '已关闭' }
        { code: 'ALLO', name: '已派发' },
        { code: 'START', name: '开工' },
        { code: 'CLOSED', name: '完工' },
        { code: 'NOSCHED', name: '待排程' },
        { code: 'SCHED', name: '已排程' }
      ],
      multipleSelection: [],
      title_value: '数据导入 / 点检部位',
@@ -471,6 +497,10 @@
      this.form.createdate = ''
      this.getMesOrderBitchClosedSearch()
    },
    // 订单状态改变时
    erporderstusChange(val) {
      this.form.mesorderstus = val
    },
    handleSelectionChange(val) {
      this.multipleSelection = val
    },
src/views/reportManager/logisticsCheck.vue
@@ -244,12 +244,6 @@
                    @click="edit('edit',row)"
                  />
                </el-tooltip>
                <!--                <el-tooltip class="item" effect="dark" content="编辑" placement="top">-->
                <!--                  <i class="el-icon-edit-outline" @click="edit('edit',row)" />-->
                <!--                </el-tooltip>-->
                <!--                <el-tooltip v-del-tab-index class="item" effect="dark" content="删除" placement="top">-->
                <!--                  <i class="el-icon-delete" @click="del(row)" />-->
                <!--                </el-tooltip>-->
              </div>
            </template>
          </el-table-column>
@@ -272,7 +266,7 @@
      v-el-drag-dialog
      :title="operation==='add'?'新增':'检验明细'"
      :visible.sync="dialogVisible"
      width="800px"
      width="1100px"
      :close-on-click-modal="false"
      top="15vh"
      @closed="handleClose"
@@ -292,73 +286,125 @@
        :cell-style="this.$cellStyle"
      >
        <el-table-column
          type="index"
          prop="checkitem_seq"
          width="50"
          fixed
          label="序号"
        />
        <el-table-column
          prop="stepcheckitem_code"
          width="150"
          prop="checkitem_name"
          min-width="120"
          fixed
          show-tooltip-when-overflow
          label="检验项目"
        >
          <template slot-scope="{row}">
            <el-select
              v-if="row.isVisible===1"
              v-model="row.stepcheckitem_code"
              filterable
              placeholder="请选择"
              style="width: 100%;"
            >
              <!--              @change="val=>tableChange(val,row)"-->
              <el-option
                v-for="item in CheckItemSelectArr"
                :key="item.code"
                :label="item.name"
                :value="item.code"
              />
            </el-select>
            <div v-else>{{
              CheckItemSelectAllArr.find(i => i.code === row.stepcheckitem_code).name
            }}
            </div>
          </template>
        </el-table-column>
        />
        <el-table-column
          prop="stepcheckitem_desc"
          prop="standvalue"
          label="标准要求"
          fixed
          min-width="120"
          show-tooltip-when-overflow
        >
          <template slot-scope="{row}">
            <el-input
              v-if="row.isVisible===1"
              v-model="row.stepcheckitem_desc"
              placeholder="请输入"
            />
            <div v-else>{{ row.stepcheckitem_desc ? row.stepcheckitem_desc : '/' }}</div>
            <!--        ~当三个值都有    -->
            <div v-if="row.standvalue&&row.uppervalue&&row.lowervalue">{{ row.standvalue }}({{
              row.lowervalue
            }}~{{ row.uppervalue }})
            </div>
            <!--            ~当只有标准值和上限值时  -->
            <div v-else-if="row.standvalue&&row.uppervalue">{{ row.standvalue }}(~{{ row.uppervalue }})</div>
            <!--            ~当只有标准值和下限值时-->
            <div v-else-if="row.standvalue&&row.lowervalue">{{ row.standvalue }}({{ row.lowervalue }}~)</div>
            <!--            ~当只有上限值和下限值时-->
            <div v-else-if="row.uppervalue&&row.lowervalue">({{ row.lowervalue }}~{{ row.uppervalue }})</div>
            <!--            ~当只有标准值时     -->
            <div v-else-if="row.standvalue">{{ row.standvalue }}</div>
            <!--            ~当只有上限值时       -->
            <div v-else-if="row.uppervalue">(~{{ row.uppervalue }})</div>
            <!--            ~当只有下限值时      -->
            <div v-else-if="row.lowervalue">({{ row.lowervalue }}~)</div>
            <div v-else>/</div>
          </template>
        </el-table-column>
        <!--        这里写for循环遍历语句-->
        <el-table-column
          v-if="operation!=='check'"
          label="操作"
          width="120"
          fixed="right"
          v-for="(item,index) in dialogTableArrayCol"
          :key="index+dialogTableData"
          :prop="(index+1)+'/'+ dialogTableNumberCol"
          :label="'第'+(index+1)+'件'"
          show-tooltip-when-overflow
          min-width="100"
        >
          <template slot-scope="{row}">
            <div class="operationClass">
              <el-button v-if="row.isVisible===1" v-waves type="text" @click="saveZjlbRow(row)">确认</el-button>
              <el-button v-if="row.isVisible===1&&isCancel" v-waves type="text" @click="cancelZjlbRow(row)">取消
              </el-button>
              <el-button v-if="row.isVisible!==1" v-waves type="text" @click="editZjlbRow(row)">编辑</el-button>
              <el-button v-if="row.isVisible!==1" v-waves type="text" @click="delZjlbRow(row)">删除</el-button>
            <!--        ~当三个值都有    -->
            <div v-if="row.standvalue&&row.uppervalue&&row.lowervalue&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])>=parseFloat(row.lowervalue)&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])<=parseFloat(row.uppervalue)">
              <!--            <div v-if="row[(index + 1) + '/' + dialogTableNumberCol]>=row.lowervalue&&row[(index + 1) + '/' + dialogTableNumberCol]<=row.uppervalue">-->
              <div style="display: flex;align-items: center">
                <i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" />
                {{ row[(index + 1) + '/' + dialogTableNumberCol] }}
              </div>
            </div>
            <!--            ~当只有标准值和上限值时  -->
            <div v-else-if="row.standvalue&&row.uppervalue&&row.lowervalue===''&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])<=parseFloat(row.uppervalue)">
              <div style="display: flex;align-items: center">
                <i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" />
                {{ row[(index + 1) + '/' + dialogTableNumberCol] }}
              </div>
            </div>
            <!--            ~当只有标准值和下限值时-->
            <div v-else-if="row.standvalue&&row.lowervalue&&row.uppervalue===''&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])>=parseFloat(row.lowervalue)">
              <div style="display: flex;align-items: center">
                <i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" />
                {{ row[(index + 1) + '/' + dialogTableNumberCol] }}
              </div>
            </div>
            <!--            ~当只有上限值和下限值时-->
            <div v-else-if="row.uppervalue&&row.lowervalue&&row.standvalue===''&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])>=parseFloat(row.lowervalue)&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])<=parseFloat(row.uppervalue)">
              <div style="display: flex;align-items: center">
                <i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" />
                {{ row[(index + 1) + '/' + dialogTableNumberCol] }}
              </div>
            </div>
            <!--            ~当只有标准值时     -->
            <div v-else-if="row.standvalue&&row.uppervalue===''&&row.lowervalue===''&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])===parseFloat(row.standvalue)">
              <div style="display: flex;align-items: center">
                <i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" />
                {{ row[(index + 1) + '/' + dialogTableNumberCol] }}
              </div>
            </div>
            <!--            ~当只有上限值时       -->
            <div v-else-if="row.uppervalue&&row.lowervalue===''&&row.standvalue===''&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])<=parseFloat(row.uppervalue)">
              <div style="display: flex;align-items: center">
                <i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" />
                {{ row[(index + 1) + '/' + dialogTableNumberCol] }}
              </div>
            </div>
            <!--            ~当只有下限值时      -->
            <div v-else-if="row.lowervalue&& row.uppervalue===''&&row.standvalue===''&&parseFloat(row[(index + 1) + '/' + dialogTableNumberCol])>=parseFloat(row.lowervalue)">
              <div style="display: flex;align-items: center">
                <i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" />
                {{ row[(index + 1) + '/' + dialogTableNumberCol] }}
              </div></div>
            <div v-else>
              <div style="display: flex;align-items: center">
                <i class="el-icon-error" style="color: red;margin-right: 2px" />
                {{ row[(index + 1) + '/' + dialogTableNumberCol] }}
              </div>
            </div>
          </template>
        </el-table-column>
      </el-table>
      <span slot="footer" class="dialog-footer">
@@ -379,7 +425,7 @@
import ImportPicker from '@/components/ImportPicker'
import { handleDatetime } from '@/utils/global'
import {
  MaintenanceDetailsReportExcelSearch, LogisticsCheckSearch
  MaintenanceDetailsReportExcelSearch, LogisticsCheckSearch, LogisticsCheckSubSearch
} from '@/api/reportManager'
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
@@ -426,7 +472,9 @@
      dialogVisible: false,
      operation: '',
      dialogTableData: []
      dialogTableData: [],
      dialogTableNumberCol: 0, // 对话框动态的列数
      dialogTableArrayCol: []// 对话框动态的数组
    }
  },
@@ -540,10 +588,30 @@
    async edit(operation, row) {
      this.operation = operation
      this.dialogVisible = true
      const { data: res } = await LogisticsCheckSubSearch({ checkid: row.id })
      this.dialogTableData = res
      this.dialogTableData.forEach((item, index) => {
        for (const it in item) {
          if (it.indexOf('/') !== -1) {
            const i = it.split('/')[1]
            this.dialogTableNumberCol = i
          }
        }
      })
      this.dialogTableArrayCol = []
      for (let i = 0; i < this.dialogTableNumberCol; i++) {
        this.dialogTableArrayCol.push(i)
      }
      this.$nextTick(() => {
        this.$refs.tableDataRef2.doLayout()
      })
    },
    // 对话框关闭事件
    handleClose() {
      this.dialogTableData = []
    },
    // 对话框取消
    dialogVisibleCancel() {
@@ -655,6 +723,7 @@
::v-deep .el-table__body-wrapper {
  background-color: #f8f8fa;
  z-index:2
}
::v-deep .el-table__body .el-table__row.hover-row td {