chenlu
2024-08-26 480866646d0998d2e2c07809325388a9e89b232d
补片流程卡合并二维码,流程卡、标签打印数量查询修改
10个文件已修改
117 ■■■■■ 已修改文件
north-glass-erp/northglass-erp/src/components/pp/PrintProcess.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/pp/PrintProcessReplenish.vue 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/Replenish/PrintReplenishFlowCard.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/Replenish/SelectReplenish.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/rework/PrintReworkFlowCard.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/rework/SelectRework.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | 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 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/pp/PrintProcess.vue
@@ -141,7 +141,6 @@
       technologyNumber = produceList.value[i].detail[0].qrcode.toString(); // 转换为字符串以便处理每个字符,合并标签
    }else {
       technologyNumber = produceList.value[i].detail[0].technologyNumber.toString(); // 转换为字符串以便处理每个字符
      console.log(produceList.value[i].detail[0])
    }
    produceList.value[i].detail[0]["qrcodeList"] = []; // 初始化一个空数组用来存储 QR Code
north-glass-erp/northglass-erp/src/components/pp/PrintProcessReplenish.vue
@@ -25,12 +25,14 @@
let props = defineProps({
  printList:null,
  printMerge:null,
  printLike: null
  printLike: null,
  mergeTechnologyNumber:null
})
const {currentRoute} = useRouter()
const route = currentRoute.value
const printMerge = props.printMerge
let mergeTechnologyNumber=props.mergeTechnologyNumber
let merge=props.printMerge
if (merge == '') {
  merge = null
@@ -56,7 +58,7 @@
// data.value.printList = Object.values(uniqueObjects);
let flowCardCount = null
onMounted(() => {
  request.post(`/processCard/getSelectPrintingRefund/${merge}/${like}`, data.value).then((res) => {
  request.post(`/processCard/getSelectPrintingRefund/${merge}/${like}/${mergeTechnologyNumber}`, data.value).then((res) => {
        if (res.code == 200) {
          produceList.value = deepClone(res.data.data)
          //处理单片厚度
@@ -155,7 +157,7 @@
            return acc;
          }, {});
// 将合并后的对象转换回数组
          // 将合并后的对象转换回数组
          produceList.value = Object.values(mergedData);
           flowCardCount=produceList.value.length
@@ -174,22 +176,19 @@
const handleGetQRCode = async () => {
  let technologyNumber=''
  for (let i = 0; i < produceList.value.length; i++) {
    const technologyNumber = produceList.value[i].detail[0].technologyNumber.toString(); // 转换为字符串以便处理每个字符
    const technologyNumber = produceList.value[i].detail[0].mergeTechnologyNumber.toString(); // 转换为字符串以便处理每个字符
    produceList.value[i].detail[0]["qrcodeList"] = []; // 初始化一个空数组用来存储 QR Code
    for (let j = 0; j < technologyNumber.length; j++) {
      const processId = produceList.value[i].detail[0].process_id;
      const url = `${processId}/${technologyNumber[j]}`;
      // 生成 QR Code 并存储到数组中
      const qrcodeData = await QRCode.toDataURL(url);
      produceList.value[i].detail[0]["qrcodeList"].push({
        qrcode: qrcodeData,
        technologyNumber: technologyNumber[j]
      });
    }
    const processId = produceList.value[i].detail[0].process_id;
    const url = `${processId}/${technologyNumber}`;
    // 生成 QR Code 并存储到数组中
    const qrcodeData = await QRCode.toDataURL(url);
    produceList.value[i].detail[0]["qrcodeList"].push({
      qrcode: qrcodeData,
      technologyNumber: technologyNumber
    });
  }
};
north-glass-erp/northglass-erp/src/views/pp/Replenish/PrintReplenishFlowCard.vue
@@ -87,7 +87,8 @@
//打印
let  printRow = ref({
  list:null,
  printMergeVal:null
  printMergeVal:null,
  mergeTechnologyNumber:null,
})
//标签
@@ -317,6 +318,14 @@
    },
    {field: 'technology_number', title: t('processCard.technologyNumber'), showOverflow: "ellipsis",
      width:90},
    {
      field: 'glassNumber',
      title: t('reportingWorks.glassNumber'),
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged,
      width:100
    },
    {field: 'glass_address', title: t('processCard.glassAddress'),
      width:110},
    {field: 'patch_num', title:  t('order.quantity'),
@@ -380,15 +389,19 @@
          }
          let id = ""
          let technologyNumber = ""
          for (let i = 0; i < selectRecords.length; i++) {
            if (i + 1 === selectRecords.length) {
              id += selectRecords[i].id
              technologyNumber+=selectRecords[i].technology_number
            } else {
              id += selectRecords[i].id + "|"
              technologyNumber+=selectRecords[i].technology_number
            }
          }
          printRow.value.list = JSON.stringify(selectRecords)
          printRow.value.printMergeVal=printMerge.value
          printRow.value.mergeTechnologyNumber=technologyNumber
          // router.push({path: '/main/processCard/printProcess', query: {printList: JSON.stringify(selectRecords),printMerge:printMergeVal}})
          dialogTableVisible.value=true
          break
@@ -778,6 +791,7 @@
        <el-button v-print="printContent"   :icon="Printer" circle />
      </template>
      <print-process id="child" :printList="printRow.list" :printMerge="printRow.printMergeVal" :printLike="printRow.like"
                     :mergeTechnologyNumber="printRow.mergeTechnologyNumber"
                     style="width: 100%;height: 100%" />
    </el-dialog>
north-glass-erp/northglass-erp/src/views/pp/Replenish/SelectReplenish.vue
@@ -147,10 +147,10 @@
      'name': t('basicData.review'),status: 'primary',
      'code':'add'
        },
      // {
      //   'name': t('basicData.delete'),status: 'primary',
      //   'code':'delete'
      // }
      {
        'name': t('basicData.delete'),status: 'primary',
        'code':'delete'
      }
    ],
    /*import: false,
    export: true,
north-glass-erp/northglass-erp/src/views/pp/rework/PrintReworkFlowCard.vue
@@ -295,6 +295,14 @@
      width:100
    },
    {field: 'technology_number', title: t('processCard.technologyNumber'), showOverflow: "ellipsis",width:90},
    {
      field: 'glassNumber',
      title: t('reportingWorks.glassNumber'),
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged,
      width:100
    },
    {field: 'glass_address', title: t('processCard.glassAddress'),width:90},
    {field: 'rework_num', title:  t('order.quantity'),width:70},
    {field: 'rework_area', title:  t('order.area'),width:70},
north-glass-erp/northglass-erp/src/views/pp/rework/SelectRework.vue
@@ -154,10 +154,10 @@
        'name': t('basicData.review'),status: 'primary',
        'code':'add'
      },
      // {
      //   'name': t('basicData.delete'),status: 'primary',
      //   'code':'delete'
      // }
      {
        'name': t('basicData.delete'),status: 'primary',
        'code':'delete'
      }
      ],
    /*import: false,
    export: true,
north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java
@@ -289,12 +289,13 @@
    }
    @ApiOperation("打印流程卡补片数据查询接口")
    @PostMapping("/getSelectPrintingRefund/{printMerge}/{printLike}")
    @PostMapping("/getSelectPrintingRefund/{printMerge}/{printLike}/{mergeTechnologyNumber}")
    public Result getSelectPrintingRefund(
            @PathVariable String printMerge,
            @PathVariable String printLike,
            @PathVariable String mergeTechnologyNumber,
            @RequestBody Map<String, Object> object) {
        return Result.seccess(flowCardService.getSelectPrintingRefundSv(object,printMerge,printLike));
        return Result.seccess(flowCardService.getSelectPrintingRefundSv(object,printMerge,printLike,mergeTechnologyNumber));
    }
    @ApiOperation("打印流程卡返工数据查询接口")
north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java
@@ -126,7 +126,7 @@
    List<Map<String, Object>> getDetailListRefund(String processId, Integer technologyNumber, Integer orderNumber, String reportingWorkId);
    List<Map<String, String>> getPrimaryListRefund(String processId, String technologyNumber, Integer orderNumber, String reportingWorkId);
    List<Map<String, String>> getPrimaryListRefund(String processId, String technologyNumber, Integer orderNumber, String reportingWorkId, String mergeTechnologyNumber);
    List<Map<String, Object>> getDetailListLikeRefund(String processId, String technologyNumber, Integer orderNumber, String reportingWorkId);
north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
@@ -499,7 +499,7 @@
        return true;
    }
    public Map<String, Object> getSelectPrintingRefundSv(Map<String, Object> object, String printMerge, String printLike) {
    public Map<String, Object> getSelectPrintingRefundSv(Map<String, Object> object, String printMerge, String printLike, String mergeTechnologyNumber) {
        if (printMerge == null){
            printMerge= "";
        }
@@ -515,7 +515,7 @@
                //流程卡表头表尾数据
                //是否传入合并层数
                if (printMerge.equals("")||printMerge.equals("null") ){
                    itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId()));
                    itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId(),mergeTechnologyNumber));
                    List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                    itemmap.put("detailList", detailList);
                }
@@ -529,7 +529,7 @@
                        itemmap.put("detailList", detailList);
                    }
                    else {
                        itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId()));
                        itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId(), mergeTechnologyNumber));
                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRefund(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                        itemmap.put("detailList", detailList);
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -480,8 +480,8 @@
                      ogdss.technology_number,
                      ogd.glass_address,
                      ROUND(sum(fc.quantity) / (count(DISTINCT fc.technology_number))) as quantity,
                      sum(ogd.total_area)                                              as total_area,
                      # SUM(ogd.child_width*child_height*fc.quantity/(count(DISTINCT ogd.technology_number))) as total_area,
                      # sum(ogd.total_area)                                              as total_area,
                      ROUND(SUM(ogd.child_width*ogd.child_height*fc.quantity)/1000000/(count(DISTINCT fc.technology_number)),2) as total_area,
                      od.product_name,
                      ogdss.concatenated_glass_child                                   as glass_child,
                      fc.founder,
@@ -523,8 +523,8 @@
                      ogdss.technology_number,
                      ogd.glass_address,
                      ROUND(sum(fc.quantity) / (count(DISTINCT fc.technology_number))) as quantity,
                      sum(ogd.total_area)                                              as total_area,
                      # SUM(ogd.child_width*child_height*fc.quantity/(count(DISTINCT ogd.technology_number))) as total_area,
                     #  sum(ogd.total_area)                                              as total_area,
                      ROUND(SUM(ogd.child_width*ogd.child_height*fc.quantity)/1000000/(count(DISTINCT fc.technology_number)),2) as total_area,
                      od.product_name,
                      ogdss.concatenated_glass_child                                   as glass_child,
                      fc.founder,
@@ -562,7 +562,7 @@
                      ogdss.technology_number,
                      ogd.glass_address,
                      ROUND(sum(fc.quantity) / (count(DISTINCT fc.technology_number))) as quantity,
                      sum(ogd.total_area)                                              as total_area,
                      ROUND(SUM(ogd.child_width*ogd.child_height*fc.quantity)/1000000/(count(DISTINCT fc.technology_number)),2) as total_area,
                      od.product_name,
                      ogdss.concatenated_glass_child                                   as glass_child,
                      fc.founder,
@@ -759,7 +759,7 @@
               o.customer_id,
               ogd.child_width                as width,
               ogd.child_height               as height,
               od.quantity,
               fc.quantity,
               od.order_number                as orderNumber,
               fc.technology_number           as technologyNumber,
               ogd.glass_child,
@@ -945,7 +945,9 @@
               od.product_name,
               ogd.glass_child,
               fc.print_status,
               pl.reporting_work_id
               pl.reporting_work_id,
               JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01'))                AS glassNumber
        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
@@ -1128,7 +1130,8 @@
               pl.rework_processes,
               od.product_name,
               ogd.glass_child,
               pl.reporting_work_id
               pl.reporting_work_id,
               JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')) AS glassNumber
        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
@@ -1218,7 +1221,7 @@
    <select id="getDetailListRefund">
        select fc.order_number,
               concat(round(ogd.child_width), "*", round(ogd.child_height))   as child_width,
               (pl.patch_num)                                                 as quantity,
               sum(pl.patch_num)                                                 as quantity,
               round(ogd.total_area, 2)                                       as total_area,
               od.perimeter,
               od.bend_radius,
@@ -1264,7 +1267,8 @@
               dd.responsible_process,
               dd.responsible_team,
               concat('对应我司单号', o.batch)                 AS otherRemarks,
               dd.responsible_personnel
               dd.responsible_personnel,
               #{mergeTechnologyNumber} as  mergeTechnologyNumber
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
@@ -1501,7 +1505,7 @@
               od.processing_note                                    as processingNote,
               round(ogd.child_width)                                as width,
               round(ogd.child_height)                               as height,
               od.quantity,
               fc.quantity,
               od.order_number                                       as orderNumber,
               fc.technology_number                                  as technologyNumber,
               od.building_number                                    as buildingNumber,
@@ -1541,7 +1545,7 @@
                               and fcs.process = #{process}
        where fc.process_id = #{processId}
          and position(fc.technology_number in #{technologyNumber})
        group by od.order_number, ogd.technology_number, ogd.child_width, ogd.child_height
        group by fc.process_id,od.order_number, ogd.technology_number, ogd.child_width, ogd.child_height
        order by IF(fcs.sort != NULL or fcs.sort != '', fcs.sort, fc.order_number)
    </select>
@@ -1554,8 +1558,8 @@
               fc.order_number,
               ogd.technology_number,
               ogd.glass_address,
               sum(od.quantity)         as quantity,
               sum(ogd.total_area)      as total_area,
               sum(fc.quantity)                                                          as quantity,
               round(sum(ogd.child_width * ogd.child_height * fc.quantity / 1000000), 2) as total_area,
               od.product_name,
               ogd.glass_child,
               fc.founder,