分架界面添加数量、重量勾选求和,打印流程卡显示打印状态,添加“打印状态”对应中英文
10个文件已修改
200 ■■■■■ 已修改文件
north-glass-erp/northglass-erp/src/lang/en.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/lang/zh.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/AddProcessCard.vue 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintFlowCard.vue 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintProcess.vue 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/lang/en.js
@@ -386,6 +386,7 @@
        halfProductLabel:'Half-finished product label',
        pleaseSelectCustomPrintLabelStyle:'Please select a custom print label style',
        mergePrinting:'Merge printing',
        printStatus:'Print status',
    },
    reportingWorks:{
        glassNumber:'number',
north-glass-erp/northglass-erp/src/lang/zh.js
@@ -387,6 +387,7 @@
        halfProductLabel:'半品标签',
        pleaseSelectCustomPrintLabelStyle:'请选择自定义打印标签样式',
        mergePrinting:'合并打印',
        printStatus:'打印状态',
    },
    reportingWorks:{
        glassNumber:'编号',
north-glass-erp/northglass-erp/src/views/pp/processCard/AddProcessCard.vue
@@ -26,10 +26,6 @@
      router.push({path: '/main/processCard/PrintFlowCard', query: {id: row.id}})
      break
    }
    case 'setType': {
      alert('我接收到子组件传送的删除信息')
      break
    }
    case 'delete': {
      request.post(`/processCard/deleteFlowCard/${row.orderId}/${row.processId}`).then((res) => {
        if (res.code == 200) {
@@ -701,15 +697,20 @@
    return parseFloat((row.baiscQuantity*row.thickness*row.width*row.height*2.5/1000000).toFixed(2))
}
let quantit = ref('')
let weight = ref('')
const handleCheckboxChange=({ row}) =>{
  const $grid = xGrid.value
  //获取右边表格checkbox选中的数据
  const checkedList = $grid.getCheckboxRecords()
  let sum = 0;
  let quantitySum = 0;
  let weightsum=0;
  checkedList.forEach(item => {
    sum += item.baiscQuantity;
    quantitySum += item.baiscQuantity;
    weightsum += weightSum(item);
  });
  //console.log('sum:', sum);
  quantit.value = quantitySum;
  weight.value = parseFloat(weightsum.toFixed(2));
}
</script>
@@ -776,6 +777,10 @@
        <div width="12%">
          <el-main style="">
            <div>
              <span><el-input v-model="quantit"  style="width: 80px;"/></span>
              <span><el-input v-model="weight"  style="width: 80px;"/></span>
            </div>
            <span>{{ $t('processCard.selectedQuantity') }}:<el-input v-model="checkedNum" clearable
                                                                     type="number"></el-input></span><br>
            <el-button type="primary" @click="addRight"> →</el-button>
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintFlowCard.vue
@@ -31,7 +31,6 @@
const xGridDetail =ref(null)
const getTableRow = (row,type) =>{
  switch (type) {
    case 'edit' :{
@@ -136,6 +135,15 @@
  if (res.code == 200) {
    produceList = produceList.value.concat(deepClone(res.data.data))
    titleSelectJson.value.dataType = res.data.type
    console.log(produceList)
    produceList.forEach(item => {
      if(item.print_status == 1){
        item.print_status='已打印'
      }
      else if (item.print_status == 0){
        item.print_status='未打印'
      }
    });
    xGrid.value.reloadData(produceList)
    gridOptions.loading = false
  } else {
@@ -232,6 +240,13 @@
    {field: 'glass_child', title: t('reportingWorks.glassChild'),filters: [{data: ''}], slots: {filter: 'num1_filter'},filterMethod: filterChanged},
    {field: 'founder', title: t('processCard.founder'),},
    {field: 'splitFrame_time', title: t('processCard.splitFrameTime'),},
    {
      field: 'print_status',
      title: t('processCard.printStatus'),
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
    },
  ],//表头按钮
  toolbarConfig: {
@@ -487,6 +502,7 @@
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
    },
  ],
  //表单验证
  editRules: {
@@ -501,6 +517,36 @@
          }
        }}
    ],
  },
  menuConfig: {
    body: {
    //右键菜单
      options: [
        [
          {
            code: 'copyChecked',
            name: t('basicData.selectSame'),
            prefixIcon: 'vxe-icon-copy',
            visible: true,
            disabled: false
          },
          {
            code: 'copyAll',
            name: t('basicData.sameAfterwards'),
            prefixIcon: 'vxe-icon-feedback',
            visible: true,
            disabled: false
          },
          {
            code: 'clearChecked',
            name: t('basicData.clearSelection'),
            prefixIcon: 'vxe-icon-indicator',
            visible: true,
            disabled: false
          },
        ]
      ]
    }
  },
  //表头按钮
  toolbarConfig: {
@@ -531,11 +577,67 @@
  }
})
const gridEventsDetail = {
  menuClick({menu, row, column}) {
    const $grid = xGridDetail.value
    if ($grid) {
      switch (menu.code) {
        case 'copyChecked' : {
          let result = toolbarButtonClickEvent()
          if (result.cell === "sort"){
            if (result) {
              const dataList = xGridDetail.value.getTableData().visibleData
              const val = dataList[result.start][result.cell]
              dataList.forEach((item, index) => {
                if (index >= result.start && index <= result.end) {
                  item[result.cell] = val
                }
              })
            }
          }
          break
        }
        case 'copyAll' : {
          let result = toolbarButtonClickEvent()
          if (result.cell === "sort" ) {
            if (result) {
              const dataList = xGridDetail.value.getTableData().visibleData
              const val = dataList[result.start][result.cell]
              dataList.forEach((item, index) => {
                if (index >= result.start) {
                  item[result.cell] = val
                }
              })
            }
          }
          break
        }
        case 'clearChecked' : {
          let result = toolbarButtonClickEvent()
          if (result.cell === "sort" ) {
            if (result) {
              const dataList = xGridDetail.value.getTableData().visibleData
              dataList.forEach((item, index) => {
                if (index >= result.start && index <= result.end) {
                  item[result.cell] = ''
                }
              })
            }
          }
          break
        }
      }
    }
  },
}
const openedTable = () => {
  let detail =ref(produceDetailList.value)
  xGridDetail.value.reloadData(detail.value)
  addListener(xGridDetail.value, detailGridOptions)
}
</script>
@@ -658,7 +760,7 @@
          height="550px"
          size="small"
          v-bind="detailGridOptions"
          v-on="gridEvents">
          v-on="gridEventsDetail">
        <template #content="{ row }">
          <ul class="expand-wrapper">
@@ -694,4 +796,12 @@
  height: 100%;
}
.vxe-grid {
  /* 禁用浏览器默认选中 */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
</style>
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintProcess.vue
@@ -144,6 +144,21 @@
    body.removeChild(style);
  }, 20);
}
// 监听打印完成事件
window.addEventListener('afterprint', function() {
  //修改打印
  let printState=1
  request.post(`/processCard/updatePrintState/${printState}`, data.value).then((res) => {
    if (res.code == 200 && res.data === true) {
    } else {
      ElMessage.warning(t('basicData.msg.saveFail'))
    }
  })
});
</script>
<template>
@@ -172,7 +187,7 @@
        <td class="tdNowrap">项目名称:</td>
        <td colspan="2">{{ items.project }}</td>
        <td class="tdNowrap">工艺流程:</td>
        <td colspan="17">{{ items.process }}</td>
        <td colspan="17" style="width: 500px">{{ items.process }}</td>
      </tr>
      <tr v-for="(itemTr,index) in item.detail" :key="index">
        <td class="tdNowrap">磨边类型:</td>
@@ -383,7 +398,7 @@
@page {
  size: auto;  /* auto is the initial value */
  margin: 13mm 6mm 0mm 6mm  /* this affects the margin in the printer settings */
  margin: 2mm 0mm 0mm 1mm  /* this affects the margin in the printer settings */
}
north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
@@ -213,6 +213,7 @@
  },
  menuConfig: {
    /*body: {
    //右键菜单
      options: [
        [
          {
north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java
@@ -252,4 +252,14 @@
            @PathVariable Date selectTime2) {
        return Result.seccess(flowCardService.selectPrintFlowCard(selectTime1, selectTime2));
    }
    @ApiOperation("修改是否打印状态")
    @PostMapping("/updatePrintState/{printState}")
    public Result updatePrintState(
            @PathVariable Integer printState,
            @RequestBody Map<String, Object> object
    ) {
        return Result.seccess(flowCardService.updatePrintStateSv(printState,object));
    }
}
north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java
@@ -105,4 +105,6 @@
    List<Map<String, Object>> getRepairPrintCustomData(String processId, Integer technologyNumber);
    List<Map<String, Object>> getGlassNumber(Integer technologyNumber, String processId);
    Boolean updatePrintStateMp(Integer printState, String processId, Integer technologyNumber);
}
north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
@@ -359,6 +359,19 @@
        return map;
    }
    public Boolean updatePrintStateSv(Integer printState, Map<String, Object> object) {
        List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class);
        if (!flowCardList.isEmpty()) {
            for (FlowCard flowCard : flowCardList) {
                // 更新打印状态
                flowCardMapper.updatePrintStateMp(printState,flowCard.getProcessId(),flowCard.getTechnologyNumber());
            }
            return true;
        } else {
            return false;
        }
    }
}
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -459,7 +459,9 @@
               od.product_name,
               ogd.glass_child,
               fc.founder,
               date(fc.splitFrame_time) as splitFrame_time
               date(fc.splitFrame_time) as splitFrame_time,
              /* if(fc.print_status=0,'未打印','已打印') as  print_status*/
        fc.print_status
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on ogd.order_id = fc.order_id and ogd.order_number = fc.order_number and
@@ -551,7 +553,8 @@
               ogd.glass_child,
               e.type_name,
               opd.stock_id,
               od.quantity
               od.quantity,
               od.other_columns
        from pp.optimize_detail opd
                 left join sd.`order` o on SUBSTR(opd.process_id, 1, 10) = o.order_id
                 left join sd.order_detail od
@@ -576,7 +579,8 @@
               ogd.glass_child,
               c.customer_abbreviation as customer_name,
               ifnull(od.processing_note,'') as processing_note,
               bgt.type_name
               bgt.type_name,
               od.other_columns
        from sd.order as o
                 left join sd.order_detail as od on o.order_id = od.order_id
                 left join sd.order_glass_detail as ogd on ogd.order_id=od.order_id and ogd.order_number=od.order_number
@@ -686,7 +690,8 @@
               od.product_name      as productName,
               od.edging_type       as edgingType,
               p.remarks,
               c.customer_abbreviation as customerAbbreviation
               c.customer_abbreviation as customerAbbreviation,
               od.other_columns
        from sd.order as o
                 left join sd.order_detail as od on o.order_id = od.order_id
                 left join flow_card as fc on o.order_id = fc.order_id and
@@ -780,4 +785,9 @@
        order by IF(fc.sort != NULL || fc.sort != '', fc.sort, fc.order_number)
    </select>
    <update id="updatePrintStateMp">
        update  pp.flow_card
        set print_status = #{printState}
        where process_id = #{processId} and technology_number = #{technologyNumber}
    </update>
</mapper>