打印功能修改

master
zpl 4 years ago
parent 7b1e26eb36
commit a46a0b8a34

@ -160,6 +160,8 @@ public interface Constants {
String PRINT_TYPE_INV = "INV";
// 在制品标签
String PRINT_TYPE_SFC = "SFC";
// 余料标签
String PRINT_TYPE_EXM = "EXM";
/**
* Y-使N-/

@ -61,14 +61,31 @@ public class PrintLogServiceImpl extends ServiceImpl<PrintLogMapper, PrintLog> i
@Override
public void labelPrint(String site, String user, List<PrintLog> printList) {
List<LabelPrintDto> labelPrintDtoList = new ArrayList<>();
StringBuffer stringBuffer = new StringBuffer("");
for (PrintLog printLog : printList) {
LabelPrintDto labelPrintDto = new LabelPrintDto();
// 打印机名称、打印模板
labelPrintDto.setPrinter(printLog.getPrintName());
labelPrintDto.setPrintTemplate(printLog.getPrintTemplate());
// {"ITEM":"500100010001","INVENTORY":"500100010001*20210721","ITEM_DESC":"测试物料","SUPPLIER":"BA002"}
// 打印参数:物料编号、物料描述、供应商、批次号
String printParam = printLog.getPrintParam();
JSONObject jsonObject = JSONObject.parseObject(printParam);
String item = jsonObject.getString("ITEM");
String item_desc = jsonObject.getString("ITEM_DESC");
String supplier = jsonObject.getString("SUPPLIER");
String inventory = jsonObject.getString("INVENTORY");
labelPrintDto.setItem(item);
labelPrintDto.setItemDescription(item_desc);
labelPrintDto.setSupplier(supplier);
labelPrintDto.setBatch(inventory);
/*
labelPrintDto.setItem(printLog.getItem());
labelPrintDto.setItemDescription(printLog.getItemDescription());
labelPrintDto.setItemDescription(printLog.getItemDescription());*/
labelPrintDtoList.add(labelPrintDto);
stringBuffer.append(printParam).append(",");
}
String jsonList = JSON.toJSONString(labelPrintDtoList);
String post = HttpUtil.post(printServer, JSON.toJSONString(labelPrintDtoList), 30000);
/**
* {"msg":"打印成功","code":0}

@ -1,12 +1,17 @@
package com.foreverwin.mesnac.dispatch.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.foreverwin.mesnac.common.constant.Constants;
import com.foreverwin.mesnac.common.enums.HandleEnum;
import com.foreverwin.mesnac.common.model.PrintLog;
import com.foreverwin.mesnac.common.service.PrintLogService;
import com.foreverwin.mesnac.common.util.ExceptionUtil;
import com.foreverwin.mesnac.common.util.NumberUtil;
import com.foreverwin.mesnac.common.util.StringUtil;
import com.foreverwin.mesnac.dispatch.model.SurplusInventory;
import com.foreverwin.mesnac.dispatch.service.SurplusInventoryService;
import com.foreverwin.mesnac.meapi.model.Inventory;
import com.foreverwin.mesnac.meapi.model.InventoryAssyData;
import com.foreverwin.mesnac.meapi.service.InventoryAssyDataService;
import com.foreverwin.mesnac.meapi.service.InventoryService;
import com.foreverwin.modular.core.exception.BusinessException;
@ -51,7 +56,10 @@ public class SurplusReturnServiceImpl extends ServiceImpl<SurplusReturnMapper, S
private SurplusReturnMapper surplusReturnMapper;
@Autowired
private SurplusInventoryService surplusInventoryService;
@Autowired
private PrintLogService printLogService;
@Autowired
private InventoryAssyDataService inventoryAssyDataService;
@Override
public Map<String, Object> getInventoryData(String site, String inventory) {
@ -181,5 +189,35 @@ public class SurplusReturnServiceImpl extends ServiceImpl<SurplusReturnMapper, S
surplusItemReturn.setModifyUser(user);
surplusItemReturn.setModifiedDateTime(dateTime);
surplusReturnMapper.insert(surplusItemReturn);
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 记录余料信息,提供打印
// {"ITEM":"500100010001","INVENTORY":"500100010001*20210721","ITEM_DESC":"测试物料","SUPPLIER":"BA002"}
PrintLog printLog = new PrintLog();
printLog.setHandle(UUID.randomUUID().toString());
printLog.setSfc(site);
printLog.setCategory(Constants.PRINT_TYPE_EXM);
printLog.setPrintTemplate(Constants.PRINT_TYPE_EXM);
//打印模板参数
JSONObject jsonObject = new JSONObject();
jsonObject.put("ITEM", inventoryModel.getItemBo().split(",")[1]); // 物料编号
jsonObject.put("ITEM_DESC", inventoryModel.getDescription()); // 物料描述
InventoryAssyData inventoryAssyData = new InventoryAssyData();
inventoryAssyData.setInventoryBo(inventoryBo);
inventoryAssyData.setDataField("VENDOR_NAME");
List<InventoryAssyData> inventoryAssyDataList = inventoryAssyDataService.selectList(inventoryAssyData);
if (inventoryAssyDataList.size() == 1){
jsonObject.put("SUPPLIER", inventoryAssyDataList.get(0).getDataAttr()); // 供应商
}else {
throw BusinessException.build("未正确找到当前批次的供应商!");
}
jsonObject.put("INVENTORY", surplusInventory); // 批次号
printLog.setPrintParam(jsonObject.toString());
printLog.setInventory(surplusInventory);
printLog.setItemBo(inventoryModel.getItemBo());
//printLog.setIsPrint("false");
printLog.setCreateUser(user);
printLog.setCreatedDateTime(dateTime);
printLogService.save(printLog);
}
}
Loading…
Cancel
Save