1.新增补打生产条码功能(还没全实现)2.生产开报工页面末道工序打印入库条码
已修改5个文件
149 ■■■■ 文件已修改
src/api/produceManager.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/systemSettings.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/produceManager/produceStartOrder.vue 82 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/produceManager/workOrder.vue 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/qualityManager/processCheck.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/produceManager.js
@@ -409,3 +409,11 @@
    method: 'post'
  })
}
// 补打生产入库条码
export function ProductInHouseLabCode(data) {
  return request({
    url: 'ProductionManagement/ProductInHouseLabCode',
    method: 'get',
    params: data
  })
}
src/api/systemSettings.js
@@ -52,3 +52,12 @@
    params: data
  })
}
// 生成系统条码(自定义)
export function LabelBarCode(data) {
  return request({
    url: 'SystemSetting/LabelBarCode',
    method: 'get',
    params: data
  })
}
src/views/produceManager/produceStartOrder.vue
@@ -1051,8 +1051,8 @@
            <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 style="width:60px;margin-left: 5px;">{{ qrForm.nextstepname?'下道工序':'产品规格' }}:</div>
              <div>{{ qrForm.nextstepname?qrForm.nextstepname:qrForm.partspec?qrForm.partspec:'/' }}</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>
@@ -1270,6 +1270,7 @@
import { handleDatetime2 } from '@/utils/global'
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
import { LabelBarCode } from '@/api/systemSettings'
const SER_HZ = /^[\u4e00-\u9fa5]+$/
export default {
@@ -1307,8 +1308,8 @@
      WXradioSelected: '', // 工序选中
      form: {
        orderstepqrcode: '', // 扫描的二维码信息
        prop: 'wo_code', // 排序字段
        order: 'asc', // 排序字段
        prop: 'lm_date', // 排序字段
        order: 'desc', // 排序字段
        page: 1, // 第几页
        rows: 20 // 每页多少条
      },
@@ -1316,8 +1317,8 @@
      tableData: [],
      WXform: { // 外协表单
        orderstepqrcode: '', // 扫描的二维码信息
        prop: 'wo_code', // 排序字段z
        order: 'asc', // 排序字段
        prop: 'lm_date', // 排序字段
        order: 'desc', // 排序字段
        page: 1, // 第几页
        rows: 20 // 每页多少条
      },
@@ -1340,6 +1341,7 @@
        stepcode: '', // 工序编码
        stepname: '', // 当前工序名
        nextstepname: '', // 下一道工序名
        nextstepcode: '', // 下一道工序编码
        stepdesc: '', // 工序描述
        planqty: '', // 任务数量
        reportqty: '', // 已报数量
@@ -1368,7 +1370,9 @@
        reckway: 'group', // 计件方式
        operation: getCookie('navTabId'), // 报工人(收料人)
        remarks: ''// 备注
        remarks: '', // 备注
        inbarcode: ''// 末道工序时 打印的入库码
      },
      ZZuserArr: [], // 自制用户所有
@@ -1445,14 +1449,15 @@
        wo_code: '',
        partcode: '',
        partname: '',
        partspec: '',
        nextstepname: '',
        operator: '', // 操作人
        operatorTime: ''// 操作时间
      },
      badForm: {
        orderstepqrcode: '', // 扫描的二维码
        prop: 'wo_code',
        order: 'asc',
        prop: 'lm_date',
        order: 'desc',
        page: 1,
        rows: 20
      },
@@ -1812,7 +1817,7 @@
        this.dialogForm.startqty = obj.noreportqty
        this.dialogForm.nextstepname = obj.nextstepname
        this.dialogForm.nextstepcode = obj.nextstepcode ? obj.nextstepcode : obj.stepcode
        this.dialogForm.nextstepcode = obj.nextstepcode
        this.dialogForm.startqtySum = obj.noreportqty
@@ -1875,7 +1880,7 @@
        this.dialogForm.stepcode = obj.stepcode
        this.dialogForm.nextstepname = obj.nextstepname
        this.dialogForm.nextstepcode = obj.nextstepcode ? obj.nextstepcode : obj.stepcode
        this.dialogForm.nextstepcode = obj.nextstepcode
        this.dialogForm.noputqty = obj.noputqty
        this.dialogForm.stepseq = obj.seq
@@ -2104,6 +2109,8 @@
      this.dialogForm.nextstepcode = '' // 下道工序编码
      // this.dialogForm.inbarcode = '' // 入库码
      this.dialogForm.reckway = 'group'
      this.dialogForm.remarks = '' // 备注
@@ -2119,7 +2126,7 @@
    },
    // 对话框确认
    dialogVisibleConfirm() {
      this.$refs.dialogForm.validate(valid => {
      this.$refs.dialogForm.validate(async valid => {
        if (valid) {
          if (this.dialogTitle === '外协发料') {
            if (parseFloat(this.dialogForm.fqty) > parseFloat(this.dialogForm.noreportqty)) {
@@ -2159,6 +2166,21 @@
              }
            }
            this.dialogForm.inbarcode = ''
            // 当为末道的时候
            if (this.dialogForm.nextstepcode === '') {
              const D = {
                rightcode: '2064',
                partcode: this.dialogForm.partcode,
                qty: this.dialogForm.sqty,
                onelabqty: this.dialogForm.sqty
              }
              const r = await LabelBarCode(D)
              this.dialogForm.inbarcode = r.data[0].labcode
              this.qrForm.partspec = this.dialogForm.partspec
            }
            const data = {
              mesordercode: this.dialogForm.wo_code, // 工单编号
              partcode: this.dialogForm.partcode, // 产品编码
@@ -2169,6 +2191,7 @@
              taskqty: this.dialogForm.planqty, // 任务数量
              sqty: this.dialogForm.sqty, // 收料数量
              remarks: this.dialogForm.remarks, // 备注
              inbarcode: this.dialogForm.inbarcode, // 生产入库条码
              ngqty: this.dialogForm.noputqty === '' ? 0 : this.dialogForm.noputqty, // 不良数量
              badcode: this.dialogForm.badcode.length < 1 ? '' : this.dialogForm.badcode.join(';')// 不良原因
            }
@@ -2245,7 +2268,23 @@
            // console.log(this.userTableData, 1)
            // const reportuser = this.userTableData.map(item => item.usercode).join(';')// 主要改的是这里的格式
            console.log(this.dialogForm.operation, 'dialogForm.operation')
            // console.log(this.dialogForm.operation, 'dialogForm.operation')
            this.dialogForm.inbarcode = ''
            // 当为末道的时候
            if (this.dialogForm.nextstepcode === '') {
              const D = {
                rightcode: '2064',
                partcode: this.dialogForm.partcode,
                qty: this.dialogForm.startqty,
                onelabqty: this.dialogForm.startqty
              }
              const r = await LabelBarCode(D)
              this.dialogForm.inbarcode = r.data[0].labcode
              this.qrForm.partspec = this.dialogForm.partspec
            }
            const data = {
              mesordercode: this.dialogForm.wo_code, // 工单编号
              partcode: this.dialogForm.partcode, // 产品编码
@@ -2265,6 +2304,9 @@
              reportqty: this.dialogForm.startqty, // 报工数量
              remarks: this.dialogForm.remarks, // 备注
              reckway: this.dialogForm.reckway, // 计件方式
              inbarcode: this.dialogForm.inbarcode, // 生产入库条码
              ngqty: this.dialogForm.noputqty === '' ? 0 : this.dialogForm.noputqty, // 不良数量
              badcode: this.dialogForm.badcode.length < 1 ? '' : this.dialogForm.badcode.join(';')// 不良原因
            }
@@ -2272,11 +2314,13 @@
            // console.log(JSON.stringify(data), 'data')
            console.log(data, 'data')
            this.$store.state.app.buttonIsDisabled = true
            SavaMesOrderStepReport(data).then(res => {
              if (res.code === '200') {
                this.dialogVisible = false
                this.$message.success('报工成功!')
                // if (this.dialogForm.nextstepcode === '') {
                // this.dialogForm.nextstepcode===''  //当为空的时候  代表是末道工序
                // if (this.dialogForm.nextstepcode !== '') {
                this.ZZprint2(this.OperationArr.find(item => item.usercode === getCookie('navTabId')).username)
                this.dialogVisible2 = true
                // }
@@ -2304,7 +2348,12 @@
      })
    },
    ZZprint2(username) {
      if (this.dialogForm.nextstepcode !== '') {
      this.qrForm.qrvalue = this.dialogForm.wo_code + ';' + this.dialogForm.nextstepcode
      } else {
        this.qrForm.qrvalue = this.dialogForm.inbarcode
      }
      this.qrForm.startqty = this.dialogForm.startqty
      this.qrForm.wo_code = this.dialogForm.wo_code
      this.qrForm.partcode = this.dialogForm.partcode
@@ -2317,7 +2366,11 @@
      })
    },
    WXprint2(username) {
      if (this.dialogForm.nextstepcode !== '') {
      this.qrForm.qrvalue = this.dialogForm.wo_code + ';' + this.dialogForm.nextstepcode
      } else {
        this.qrForm.qrvalue = this.dialogForm.inbarcode
      }
      this.qrForm.startqty = this.dialogForm.sqty
      this.qrForm.wo_code = this.dialogForm.wo_code
      this.qrForm.partcode = this.dialogForm.partcode
@@ -2335,6 +2388,7 @@
      this.qrForm.wo_code = ''
      this.qrForm.partcode = ''
      this.qrForm.partname = ''
      this.qrForm.partspec = ''
      this.qrForm.nextstepname = ''
      this.qrForm.operator = ''
      this.qrForm.operatorTime = ''
src/views/produceManager/workOrder.vue
@@ -445,10 +445,20 @@
              <div class="operationClass">
                <el-tooltip class="item" effect="dark" content="打印工序" placement="top">
                  <i
                    v-if="tableDataDetail.length!==row.seq"
                    class="el-icon-printer"
                    :style="{color:$store.state.settings.theme}"
                    style="cursor: pointer;margin-right: 15px"
                    @click="supplementSmallClick(row)"
                  />
                </el-tooltip>
                <el-tooltip class="item" effect="dark" content="补打生产入库条码" placement="top">
                  <i
                    v-if="tableDataDetail.length===row.seq"
                    class="  el-icon-camera"
                    :style="{color:$store.state.settings.theme}"
                    style="cursor: pointer;margin-right: 15px"
                    @click="getProductInHouseLabCode(row.wo_code)"
                  />
                </el-tooltip>
              </div>
@@ -750,7 +760,7 @@
          <!--          <el-button v-waves v-if="operation==='add'" type="primary" @click="dialogVisibleConfirmPreview('add')">预览</el-button>-->
          <el-button
            v-if="!submitBottonIsDisabled"
            v-if="!submitButtonIsDisabled"
            v-waves
            type="primary"
            :loading="$store.state.app.buttonIsDisabled"
@@ -759,7 +769,7 @@
          >确 定</el-button>
          <el-button
            v-if="submitBottonIsDisabled"
            v-if="submitButtonIsDisabled"
            v-waves
            type="primary"
            disabled
@@ -1389,7 +1399,7 @@
        </div>
        <!-- 要打印的区域 -->
        <!--      <div id="printMe2" :style="{paddingLeft:'10px',paddingTop: '5px'}">-->
        <div id="printMe2" :style="printMe2StylePadding(printSize)">
        <div v-if="!isLastPrint" 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;"
@@ -1635,6 +1645,11 @@
          </div>
        </div>
        <div v-if="isLastPrint">
          123
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
@@ -1773,7 +1788,7 @@
  ClosedMesOrder,
  DeleteMesOrder, MesBadOrderSearch, JobCreationSonAddVison,
  MesOrderSearch, PartSelectRoute, RouteSelectWkshop, SearchWorkStep, SelectRouteOrWkshop,
  SelectRouteStep, AddMesOrderCodeSearch
  SelectRouteStep, AddMesOrderCodeSearch, ProductInHouseLabCode
} from '@/api/produceManager'
import { InventoryFileAssociationRoute, PartSelect, SaveInventoryFile } from '@/api/makeModel'
import { handleDatetime, handleDatetime2, validateCode } from '@/utils/global'
@@ -2020,7 +2035,9 @@
          return time.getTime() < Date.now() - 8.64e7
        }
      },
      submitBottonIsDisabled: false
      submitButtonIsDisabled: false,
      isLastPrint: false// 是否是末道打印
    }
  },
  created() {
@@ -2158,7 +2175,7 @@
      this.dialogForm.wkshopcode = ''
      this.submitBottonIsDisabled = false
      this.submitButtonIsDisabled = false
    },
    // 工艺路线值改变
    async routecodeChange(val) {
@@ -2171,7 +2188,7 @@
      this.wkshopArr = res2
      this.dialogForm.wkshopcode = ''
      this.submitBottonIsDisabled = false
      this.submitButtonIsDisabled = false
    },
    // 生产车间值改变时
    wkshopcodeChange(val) {
@@ -2184,7 +2201,7 @@
        // console.log(res, 1)
      }).catch(err => {
        // console.log(err, 2)
        this.submitBottonIsDisabled = true
        this.submitButtonIsDisabled = true
      })
    },
@@ -2349,7 +2366,7 @@
      this.bomIdArr = []
      this.$refs.dialogForm.clearValidate()
      this.submitBottonIsDisabled = false
      this.submitButtonIsDisabled = false
    },
    // 对话框取消
    dialogVisibleCancel() {
@@ -2596,6 +2613,15 @@
      this.dialogVisible2 = true
      console.log(this.qrForm, 1111)
    },
    // 补打生产入库条码
    async  getProductInHouseLabCode(ordercode) {
      const res = await ProductInHouseLabCode({ ordercode })
      console.log(res)
      this.isLastPrint = true
      // 做一些打印多选的操作
      this.dialogVisible2 = true
    },
    dialogVisible2Close() {
      this.qrForm.qrvalue = ''
      this.qrForm.startqty = ''
@@ -2606,6 +2632,7 @@
      this.qrForm.operator = ''
      this.qrForm.operatorTime = ''
      // this.$refs.qrCodeDiv2 = ''
      this.isLastPrint = false
    },
    // 生成二维码    工序标签二维码
    bindQRCode2(text) {
src/views/qualityManager/processCheck.vue
@@ -362,7 +362,10 @@
      this.form.checkstandcode = res.chekstand[0].checkstandcode
      this.form.checkstandname = res.chekstand[0].checkstandname
      this.form.sampmethod = res.chekstand[0].sampmethod
      this.form.sampscare = res.chekstand[0].sampscare // 下午写这里   *比例
      this.form.sampscare = res.chekstand[0].sampmethod === 'FIXED' ? res.data.chekstand[0].sampscare
        : res.data.labcont[0].good_qty * res.data.chekstand[0].sampscare / 100
      this.form.sampscare = this.form.sampscare <= this.form.good_qty ? this.form.sampscare : this.form.good_qty
      await this.getMesOrderStepCheckItemList()
    },