Merge branch 'develop' into dev_zhangke
This commit is contained in:
commit
73dc55cc4a
|
|
@ -439,9 +439,10 @@ public class OutProduceController extends BaseController {
|
|||
Map<String, List<MaterialQRCodeContentDTO>> dmaps = dtos.stream().collect(Collectors.groupingBy(MaterialQRCodeContentDTO::getKey));
|
||||
Zwm3a10VO vo = sapService.zwm3A10(new Zwm3a10QO()
|
||||
.setAufnr(order.getAufnr())
|
||||
.setType(order.getType() == 0 ? "A" : "B")
|
||||
.setInput1(dmaps.values().stream().map(its -> {
|
||||
WmsOutProduceItem item = datas.stream().filter(d -> StrUtil.equals(d.getMatnr(), its.get(0).getMaterialNo())).findFirst().get();
|
||||
return new Zwm3a10Input1QO()
|
||||
WmsOutProduceItem item = datas.stream().filter(d -> StrUtil.equals(d.getMatnr(), its.get(0).getMaterialNo())).findFirst().get();
|
||||
return new Zwm3a10Input1QO()
|
||||
.setCharg(its.get(0).getBatchNo())
|
||||
.setRspos(item.getRspos())
|
||||
.setMatnr(item.getMatnr())
|
||||
|
|
|
|||
|
|
@ -21,10 +21,10 @@ import com.nflg.wms.admin.util.ThymeleafUtil;
|
|||
import com.nflg.wms.common.pojo.ApiResult;
|
||||
import com.nflg.wms.common.pojo.PageData;
|
||||
import com.nflg.wms.common.pojo.dto.AllocationOrderDTO;
|
||||
import com.nflg.wms.common.pojo.dto.InventoryDTO;
|
||||
import com.nflg.wms.common.pojo.dto.MaterialQRCodeContentDTO;
|
||||
import com.nflg.wms.common.pojo.qo.*;
|
||||
import com.nflg.wms.common.pojo.vo.*;
|
||||
import com.nflg.wms.common.util.PageUtil;
|
||||
import com.nflg.wms.common.util.UserUtil;
|
||||
import com.nflg.wms.common.util.VUtil;
|
||||
import com.nflg.wms.repository.entity.WmsTransferCompany;
|
||||
|
|
@ -82,33 +82,10 @@ public class TransferCompanyController extends BaseController {
|
|||
* 查询SAP订单数据
|
||||
*/
|
||||
@PostMapping("searchSAP")
|
||||
public ApiResult<List<AllocationOrderDTO>> searchSAP0(@Valid @RequestBody AllocationOrderQO request) {
|
||||
public ApiResult<PageData<AllocationOrderDTO>> searchSAP0(@Valid @RequestBody AllocationOrderQO request) {
|
||||
List<AllocationOrderDTO> datas = sapService.zwm3a15(request);
|
||||
return ApiResult.success(PageUtil.Page(datas, request.getPage(), request.getPageSize()));
|
||||
// return ApiResult.success(sapService.zwm3a15(request));
|
||||
List<AllocationOrderDTO> vos = new ArrayList<>();
|
||||
for (int i = 0, count = RandomUtil.randomInt(3, 30); i < count; i++) {
|
||||
vos.add(new AllocationOrderDTO()
|
||||
.setMatnr(RandomUtil.randomNumbers(11))
|
||||
.setEbeln(RandomUtil.randomNumbers(10))
|
||||
.setEbelp(RandomUtil.randomNumbers(5))
|
||||
.setMaktx(RandomUtil.randomString(20))
|
||||
.setLgort(RandomUtil.randomNumbers(4))
|
||||
.setLgfsb1(RandomUtil.randomNumbers(4))
|
||||
.setWamng(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
.setTxz01(RandomUtil.randomString(20))
|
||||
.setWerks(RandomUtil.randomNumbers(4))
|
||||
.setReswk("1010")
|
||||
.setLgobe(RandomUtil.randomString(20))
|
||||
.setLgpro(RandomUtil.randomString(20))
|
||||
.setLgpbe1(RandomUtil.randomString(20))
|
||||
.setLgpbe(RandomUtil.randomString(20))
|
||||
.setEkgrp(RandomUtil.randomString(10))
|
||||
.setMeins(RandomUtil.randomString(2))
|
||||
.setLabst(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
.setSqsl(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("30")))
|
||||
.setSqsl2(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("30")))
|
||||
);
|
||||
}
|
||||
return ApiResult.success(vos);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -134,15 +111,15 @@ public class TransferCompanyController extends BaseController {
|
|||
order.setCreateTime(LocalDateTime.now());
|
||||
transferCompanyService.save(order);
|
||||
items.forEach(item -> {
|
||||
//TODO 需要移除
|
||||
inventoryService.in(List.of(new InventoryDTO()
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setWarehouseNo(item.getLgfsb1())
|
||||
.setFactoryNo(item.getReswk())
|
||||
.setBatchNumber(DateUtil.format(DateUtil.date(), "yyyyMMdd"))
|
||||
.setNum(item.getNum())
|
||||
)
|
||||
);
|
||||
// //TODO 需要移除
|
||||
// inventoryService.in(List.of(new InventoryDTO()
|
||||
// .setMaterialNo(item.getMatnr())
|
||||
// .setWarehouseNo(item.getLgfsb1())
|
||||
// .setFactoryNo(item.getReswk())
|
||||
// .setBatchNumber(DateUtil.format(DateUtil.date(), "yyyyMMdd"))
|
||||
// .setNum(item.getNum())
|
||||
// )
|
||||
// );
|
||||
BigDecimal max = inventoryService.getNumOne(item.getReswk(), item.getLgfsb1(), item.getMatnr());
|
||||
VUtil.trueThrowBusinessError(item.getNum().compareTo(max) > 0)
|
||||
.throwMessage("物料" + item.getMatnr() + "的申请数量超出库存限制");
|
||||
|
|
@ -416,22 +393,25 @@ public class TransferCompanyController extends BaseController {
|
|||
*/
|
||||
@GetMapping("export")
|
||||
public void export(HttpServletResponse response, @Valid @RequestParam @NotNull Long id) throws Exception {
|
||||
// WmsTransferCompany order = transferCompanyService.getById(id);
|
||||
// VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("转储单不存在");
|
||||
// List<WmsTransferCompanyItem> list = transferCompanyItemService.getList(id);
|
||||
WmsTransferCompany order = new WmsTransferCompany();
|
||||
order.setNo(NoUtil.getTransferCompanyNo());
|
||||
List<WmsTransferCompanyItem> list = new ArrayList<>();
|
||||
for (int i = 0, count = RandomUtil.randomInt(1, 100); i < count; i++) {
|
||||
list.add(new WmsTransferCompanyItem().setMatnr(RandomUtil.randomNumbers(11)).setMaktx("非金属联件和紧固件等 M6 DIN 982 不锈钢304"));
|
||||
}
|
||||
WmsTransferCompany order = transferCompanyService.getById(id);
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(order)).throwMessage("转储单不存在");
|
||||
List<TransferCompanyItemVO> list = Convert.toList(TransferCompanyItemVO.class, transferCompanyItemService.getList(id));
|
||||
// WmsTransferCompany order = new WmsTransferCompany();
|
||||
// order.setNo(NoUtil.getTransferCompanyNo());
|
||||
// List<WmsTransferCompanyItem> list = new ArrayList<>();
|
||||
// for (int i = 0, count = RandomUtil.randomInt(1, 100); i < count; i++) {
|
||||
// list.add(new WmsTransferCompanyItem().setMatnr(RandomUtil.randomNumbers(11)).setMaktx("非金属联件和紧固件等 M6 DIN 982 不锈钢304"));
|
||||
// }
|
||||
list.forEach(it -> {
|
||||
it.setEbeln(order.getEbeln());
|
||||
});
|
||||
Map<String, String> base = new HashMap<>();
|
||||
base.put("date", DateUtil.format(LocalDateTime.now(), "yyyy-MM-dd"));
|
||||
base.put("qrcode", QRCodeUtil.generateQRCodeBase64(order.getNo(), 100, 100));
|
||||
Map<String, Object> variables = new HashMap<>();
|
||||
variables.put("info", order);
|
||||
variables.put("base", base);
|
||||
variables.put("pages", PdfPageDTO.create(list, 17, new WmsTransferCompanyItem()));
|
||||
variables.put("pages", PdfPageDTO.create(list, 17, new TransferCompanyItemVO()));
|
||||
String html = ThymeleafUtil.generator("/template/", "转储单", ".html", variables);
|
||||
PdfGeneratorUtil.generatePdf("转储单" + order.getNo(), html, response);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import cn.hutool.core.collection.CollectionUtil;
|
|||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.RandomUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.nflg.wms.admin.pojo.document.OutMaterialScanRecord;
|
||||
import com.nflg.wms.admin.pojo.dto.PdfPageDTO;
|
||||
|
|
@ -22,6 +21,7 @@ import com.nflg.wms.common.pojo.dto.TransferOrderDTO;
|
|||
import com.nflg.wms.common.pojo.dto.ZWM00MB113DTO;
|
||||
import com.nflg.wms.common.pojo.qo.*;
|
||||
import com.nflg.wms.common.pojo.vo.*;
|
||||
import com.nflg.wms.common.util.PageUtil;
|
||||
import com.nflg.wms.common.util.UserUtil;
|
||||
import com.nflg.wms.common.util.VUtil;
|
||||
import com.nflg.wms.repository.entity.WmsTransferFactory;
|
||||
|
|
@ -82,31 +82,32 @@ public class TransferFactoryController extends BaseController {
|
|||
* 查询SAP领料订单数据
|
||||
*/
|
||||
@PostMapping("searchSAP")
|
||||
public ApiResult<List<TransferOrderDTO>> searchSAP0(@Valid @RequestBody TransferOrderQO request) {
|
||||
// return ApiResult.success(sapService.zwm3a16(request));
|
||||
List<TransferOrderDTO> vos = new ArrayList<>();
|
||||
for (int i = 0, count = RandomUtil.randomInt(3, 30); i < count; i++) {
|
||||
vos.add(new TransferOrderDTO()
|
||||
.setMatnr(RandomUtil.randomNumbers(11))
|
||||
.setWerks(RandomUtil.randomString(4))
|
||||
.setLgort(RandomUtil.randomString(4))
|
||||
.setMaktx(RandomUtil.randomString(20))
|
||||
.setAufnr(RandomUtil.randomNumbers(10))
|
||||
.setMenge(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
.setNum(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
.setUmlgo(RandomUtil.randomNumbers(10))
|
||||
.setBdmng(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
.setMeins(RandomUtil.randomString(2))
|
||||
.setSgtxt(RandomUtil.randomString(20))
|
||||
.setLgpbe(RandomUtil.randomString(4))
|
||||
.setBwart(RandomUtil.randomString(4))
|
||||
.setBudat(DateUtil.format(DateUtil.date(), "yyyyMMdd"))
|
||||
.setZeile(RandomUtil.randomNumbers(10))
|
||||
.setBdmng1(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("30")))
|
||||
.setEnmng(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
);
|
||||
}
|
||||
return ApiResult.success(vos);
|
||||
public ApiResult<PageData<TransferOrderDTO>> searchSAP0(@Valid @RequestBody TransferOrderQO request) {
|
||||
List<TransferOrderDTO> datas = sapService.zwm3a16(request);
|
||||
return ApiResult.success(PageUtil.Page(datas, request.getPage(), request.getPageSize()));
|
||||
// List<TransferOrderDTO> vos = new ArrayList<>();
|
||||
// for (int i = 0, count = RandomUtil.randomInt(3, 30); i < count; i++) {
|
||||
// vos.add(new TransferOrderDTO()
|
||||
// .setMatnr(RandomUtil.randomNumbers(11))
|
||||
// .setWerks(RandomUtil.randomString(4))
|
||||
// .setLgort(RandomUtil.randomString(4))
|
||||
// .setMaktx(RandomUtil.randomString(20))
|
||||
// .setAufnr(RandomUtil.randomNumbers(10))
|
||||
// .setMenge(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
// .setNum(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
// .setUmlgo(RandomUtil.randomNumbers(10))
|
||||
// .setBdmng(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
// .setMeins(RandomUtil.randomString(2))
|
||||
// .setSgtxt(RandomUtil.randomString(20))
|
||||
// .setLgpbe(RandomUtil.randomString(4))
|
||||
// .setBwart(RandomUtil.randomString(4))
|
||||
// .setBudat(DateUtil.format(DateUtil.date(), "yyyyMMdd"))
|
||||
// .setZeile(RandomUtil.randomNumbers(10))
|
||||
// .setBdmng1(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("30")))
|
||||
// .setEnmng(RandomUtil.randomBigDecimal(BigDecimal.ZERO, new BigDecimal("100")))
|
||||
// );
|
||||
// }
|
||||
// return ApiResult.success(vos);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -132,15 +133,15 @@ public class TransferFactoryController extends BaseController {
|
|||
order.setCreateTime(LocalDateTime.now());
|
||||
transferFactoryService.save(order);
|
||||
items.forEach(item -> {
|
||||
//TODO 需要移除
|
||||
inventoryService.in(List.of(new InventoryDTO()
|
||||
.setMaterialNo(item.getMatnr())
|
||||
.setWarehouseNo(item.getLgort())
|
||||
.setFactoryNo(item.getWerks())
|
||||
.setBatchNumber(DateUtil.format(DateUtil.date(), "yyyyMMdd"))
|
||||
.setNum(item.getNum())
|
||||
)
|
||||
);
|
||||
// //TODO 需要移除
|
||||
// inventoryService.in(List.of(new InventoryDTO()
|
||||
// .setMaterialNo(item.getMatnr())
|
||||
// .setWarehouseNo(item.getLgort())
|
||||
// .setFactoryNo(item.getWerks())
|
||||
// .setBatchNumber(DateUtil.format(DateUtil.date(), "yyyyMMdd"))
|
||||
// .setNum(item.getNum())
|
||||
// )
|
||||
// );
|
||||
BigDecimal max = inventoryService.getNumOne(item.getWerks(), item.getLgort(), item.getMatnr());
|
||||
VUtil.trueThrowBusinessError(item.getNum().compareTo(max) > 0)
|
||||
.throwMessage("物料" + item.getMatnr() + "的申请数量超出库存限制");
|
||||
|
|
@ -210,6 +211,7 @@ public class TransferFactoryController extends BaseController {
|
|||
.setRsnum(order.getRsnum())
|
||||
.setMblnr(order.getMblnr())
|
||||
.setBwart(order.getBwart())
|
||||
.setLgort(order.getLgort())
|
||||
.setItems(datas.stream()
|
||||
.map(item -> new TransferFactoryPdaItemVO()
|
||||
.setMatnr(item.getMatnr())
|
||||
|
|
@ -217,8 +219,8 @@ public class TransferFactoryController extends BaseController {
|
|||
.setUmlgo(order.getUmlgo())
|
||||
.setLgort(order.getLgort())
|
||||
.setNum(item.getLeft())
|
||||
.setBinIn(storageService.getBinNos(item.getMatnr(), order.getWerks(), order.getUmlgo()))
|
||||
.setBinOut(storageService.getBinNos(item.getMatnr(), order.getWerks(), order.getLgort()))
|
||||
.setBinIn(StrUtil.join("/", storageService.getBinNos(item.getMatnr(), order.getWerks(), order.getUmlgo())))
|
||||
.setBinOut(StrUtil.join("/", storageService.getBinNos(item.getMatnr(), order.getWerks(), order.getLgort())))
|
||||
).toList()
|
||||
)
|
||||
);
|
||||
|
|
@ -271,6 +273,7 @@ public class TransferFactoryController extends BaseController {
|
|||
.setTicketItemId(pti.getId())
|
||||
.setMaterialNo(materialNo)
|
||||
.setUnit(item.getMeins())
|
||||
.setRspos(item.getRspos())
|
||||
.setContent(qrCode)
|
||||
.setBatchNo(qrCodeContent.getBatchNo())
|
||||
.setSerialNo(qrCodeContent.getSerialNo())
|
||||
|
|
@ -313,8 +316,9 @@ public class TransferFactoryController extends BaseController {
|
|||
.setLgort(ticket.getLgort())
|
||||
.setUmlgo(ticket.getUmlgo())
|
||||
.setNum(it.getNum())
|
||||
.setBinIn(storageService.getBinNos(it.getMatnr(), ticket.getWerks(), ticket.getUmlgo()))
|
||||
.setBinOut(storageService.getBinNos(it.getMatnr(), ticket.getWerks(), ticket.getLgort()))).toList())
|
||||
.setBinIn(StrUtil.join("/", storageService.getBinNos(it.getMatnr(), ticket.getWerks(), ticket.getUmlgo())))
|
||||
.setBinOut(StrUtil.join("/", storageService.getBinNos(it.getMatnr(), ticket.getWerks(), ticket.getLgort())))
|
||||
).toList())
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -353,29 +357,29 @@ public class TransferFactoryController extends BaseController {
|
|||
.setNum(list.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add))
|
||||
).toList()
|
||||
);
|
||||
List<TransferFactoryItemVO> ticketItems = transferFactoryTicketItemService.getList(ticket.getId());
|
||||
ZWM00MB113DTO vo = sapService.zwm00_mb113(new ZWM00MB113QO()
|
||||
.setIRsnum(ticket.getRsnum())
|
||||
.setIUmlgo(ticket.getUmlgo())
|
||||
.setT_list1(records.stream().collect(Collectors.groupingBy(OutMaterialScanRecord::getKey))
|
||||
.values().stream().map(its -> new ZWM00MB113LIST1QO()
|
||||
.setRspos(ticket.getRsnum())
|
||||
.setMatnr(its.get(0).getMaterialNo())
|
||||
.setErfmg(its.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add))
|
||||
.setMeins(its.get(0).getUnit())
|
||||
.setT_list1(ticketItems.stream().map(item -> new ZWM00MB113LIST1QO()
|
||||
.setRspos(item.getRspos())
|
||||
.setMatnr(item.getMatnr())
|
||||
.setErfmg(item.getNum())
|
||||
.setMeins(item.getMeins())
|
||||
.setWerks(ticket.getWerks())
|
||||
.setLgort(ticket.getLgort())).toList()
|
||||
)
|
||||
.setT_list2(records.stream()
|
||||
.filter(record -> StrUtil.isNotBlank(record.getKey1()))
|
||||
.collect(Collectors.groupingBy(OutMaterialScanRecord::getKey1))
|
||||
.collect(Collectors.groupingBy(OutMaterialScanRecord::getKey6))
|
||||
.values()
|
||||
.stream()
|
||||
.map(ls -> new ZWM00MB113LIST2QO()
|
||||
.setRspos(ticket.getRsnum())
|
||||
.setRspos(ls.get(0).getRspos())
|
||||
.setSernr(ls.get(0).getSerialNo())
|
||||
.setFlag("X")
|
||||
)
|
||||
.toList())
|
||||
.toList()
|
||||
)
|
||||
);
|
||||
transferFactoryTicketService.lambdaUpdate()
|
||||
.set(WmsTransferFactoryTicket::getMatDoc, vo.getEMblnr())
|
||||
|
|
@ -446,6 +450,10 @@ public class TransferFactoryController extends BaseController {
|
|||
// for (int i = 0, count = RandomUtil.randomInt(1, 100); i < count; i++) {
|
||||
// list.add(new TransferFactoryItemVO().setMatnr(RandomUtil.randomNumbers(11)).setMaktx("非金属联件和紧固件等 M6 DIN 982 不锈钢304"));
|
||||
// }
|
||||
list.forEach(it -> {
|
||||
it.setLgort(order.getLgort());
|
||||
it.setUmlgo(order.getUmlgo());
|
||||
});
|
||||
Map<String, String> base = new HashMap<>();
|
||||
base.put("date", DateUtil.format(LocalDateTime.now(), "yyyy-MM-dd"));
|
||||
base.put("qrcode", QRCodeUtil.generateQRCodeBase64(order.getNo(), 100, 100));
|
||||
|
|
|
|||
|
|
@ -97,6 +97,8 @@ public class OutMaterialScanRecord {
|
|||
*/
|
||||
private String ebelp;
|
||||
|
||||
private String rspos;
|
||||
|
||||
/**
|
||||
* 扩展字段
|
||||
*/
|
||||
|
|
@ -146,4 +148,11 @@ public class OutMaterialScanRecord {
|
|||
public String getKey5() {
|
||||
return this.ebelp + "|" + this.serialNo;
|
||||
}
|
||||
|
||||
@Transient
|
||||
private String key6;
|
||||
|
||||
public String getKey6() {
|
||||
return this.rspos + "|" + this.serialNo;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -665,6 +665,7 @@ public class SapService {
|
|||
// 构造函数调用所需的输入参数
|
||||
Map<String, Object> parameters = new HashMap<>();
|
||||
parameters.put("AUFNR", query.getAufnr());
|
||||
parameters.put("I_TYPE", query.getType());
|
||||
|
||||
// 将构造好的表数据放入输入参数中
|
||||
Map<String, List<Map<String, Object>>> tables = new HashMap<>();
|
||||
|
|
@ -979,12 +980,10 @@ public class SapService {
|
|||
VUtil.trueThrowBusinessError(!StrUtil.equals(exportParam.getString("E_TYPE"), "S"))
|
||||
.throwMessage(exportParam.getString("E_MSG"));
|
||||
JCoTable tOut = function.getTableParameterList().getTable("OUTPUT1");
|
||||
log.info("SAP返回: {}", tOut);
|
||||
|
||||
// 将SAP返回的表数据转换为DTO对象列表
|
||||
List<TransferOrderDTO> result = JCoUtil.toBeanList(tOut, TransferOrderDTO.class);
|
||||
|
||||
log.debug("数据:{}", JSONUtil.toJsonStr(result));
|
||||
log.debug("数据OUTPUT1:{}", JSONUtil.toJsonStr(result));
|
||||
log.info("SAP原始数据OUTPUT1: {}", tOut);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
@ -1092,22 +1091,19 @@ public class SapService {
|
|||
// 调用 SAP RFC 函数 ZWM00_MB112
|
||||
JCoFunction function = exec("ZWM00_MB113", parameters, tables);
|
||||
|
||||
// 处理返回表 T_RETURN,判断执行是否成功
|
||||
JCoTable returnTable = function.getTableParameterList().getTable("T_RETURN");
|
||||
VUtil.trueThrowBusinessError(returnTable.getNumRows() <= 0).throwMessage("获取Type信息有误");
|
||||
returnTable.setRow(0);
|
||||
VUtil.trueThrowBusinessError(!StrUtil.equals(returnTable.getString("TYPE"), "S"))
|
||||
.throwMessage(returnTable.getString("MESSAGE"));
|
||||
log.info("SAP返回: {}", returnTable);
|
||||
|
||||
// 获取导出参数,构造返回结果对象
|
||||
JCoParameterList exportParam = function.getExportParameterList();
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(exportParam)).throwMessage("无法获取到有效的物料凭证信息");
|
||||
ZWM00MB113DTO result = new ZWM00MB113DTO()
|
||||
if (StrUtil.isNotBlank(exportParam.getString("E_MJAHR"))) {
|
||||
log.info("SAP返回物料凭证信息: MBLNR={}, MJAHR={}", exportParam.getString("E_MBLNR"), exportParam.getString("E_MJAHR"));
|
||||
return new ZWM00MB113DTO()
|
||||
.setEMjahr(exportParam.getString("E_MJAHR"))
|
||||
.setEMblnr(exportParam.getString("E_MBLNR"));
|
||||
log.info("SAP返回物料凭证信息: MBLNR={}, MJAHR={}", result.getEMblnr(), result.getEMjahr());
|
||||
return result;
|
||||
} else {
|
||||
JCoTable returnTable = function.getTableParameterList().getTable("T_RETURN");
|
||||
log.info("SAP返回: {}", returnTable);
|
||||
returnTable.setRow(0);
|
||||
throw new NflgException(STATE.BusinessError, "SAP错误:" + returnTable.getString("MESSAGE"));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -267,7 +267,7 @@ public class UserControllerService {
|
|||
public void resetPassword(@Valid UserResetPasswordQO request) {
|
||||
User user = uService.getById(request.getId());
|
||||
VUtil.trueThrowBusinessError(Objects.isNull(user)).throwMessage("用户不存在");
|
||||
VUtil.trueThrowBusinessError(PASSWORDENCODER.matches(request.getOldPassword(), user.getPassword()))
|
||||
VUtil.trueThrowBusinessError(!PASSWORDENCODER.matches(request.getOldPassword(), user.getPassword()))
|
||||
.throwMessage("原密码不正确");
|
||||
uService.update(new User()
|
||||
.setId(request.getId())
|
||||
|
|
|
|||
|
|
@ -178,8 +178,8 @@
|
|||
<td th:text="${item.meins}">PC</td>
|
||||
<td th:text="${item.bdmng}">10.00</td>
|
||||
<td th:text="${item.num}">10.00</td>
|
||||
<td th:text="${info.lgort}"></td>
|
||||
<td th:text="${info.umlgo}"></td>
|
||||
<td th:text="${item.lgort}"></td>
|
||||
<td th:text="${item.umlgo}"></td>
|
||||
<td th:text="${item.wempf}"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="UTF-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<title>成本中心领料单</title>
|
||||
<title>成品/半成品入库单</title>
|
||||
<style>
|
||||
@page {
|
||||
size: A4 landscape; /* 横向 A4 */
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="UTF-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<title>生产领料出库单</title>
|
||||
<title>生产订单发料单</title>
|
||||
<style>
|
||||
@page {
|
||||
size: A4 landscape; /* 横向 A4 */
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="UTF-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<title>生产领料单</title>
|
||||
<title>生产订单领料单</title>
|
||||
<style>
|
||||
@page {
|
||||
size: A4 landscape; /* 横向 A4 */
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="UTF-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<title>转储单</title>
|
||||
<title>采购入(退)库单</title>
|
||||
<style>
|
||||
@page {
|
||||
size: A4 landscape; /* 横向 A4 */
|
||||
|
|
|
|||
|
|
@ -177,7 +177,7 @@
|
|||
<td style="width: 50px">实发数量</td>
|
||||
</tr>
|
||||
<tr class="filled-row" th:each="item,iterStat : ${page.datas}">
|
||||
<td th:text="${info.ebeln}">7700070131</td>
|
||||
<td th:text="${item.ebeln}">7700070131</td>
|
||||
<td th:text="${item.ebelp}">10</td>
|
||||
<td th:text="${item.matnr}">2100701424</td>
|
||||
<td th:text="${item.maktx}" class="col-left">非金属联件和紧固件等 M6 DIN 982 不锈钢304</td>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.nflg.wms.common.pojo.dto;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.nflg.wms.common.util.BomUtil;
|
||||
import com.nflg.wms.common.util.DateTimeUtil;
|
||||
|
|
@ -34,11 +35,19 @@ public class AllocationOrderDTO{
|
|||
*/
|
||||
private String matnr;
|
||||
|
||||
public String getMatnr() {
|
||||
return StrUtil.removeAllPrefix(matnr, "0");
|
||||
}
|
||||
|
||||
/**
|
||||
* 采购凭证的项目编号
|
||||
*/
|
||||
private String ebelp;
|
||||
|
||||
public String getEbelp() {
|
||||
return StrUtil.removeAllPrefix(ebelp, "0");
|
||||
}
|
||||
|
||||
/**
|
||||
* 未发数量
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -24,6 +24,10 @@ public class TransferOrderDTO {
|
|||
*/
|
||||
private String matnr;
|
||||
|
||||
public String getMatnr() {
|
||||
return StrUtil.removeAllPrefix(matnr, "0");
|
||||
}
|
||||
|
||||
/**
|
||||
* 工位
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import java.util.Objects;
|
|||
@Data
|
||||
@Accessors(chain = true)
|
||||
//转储单的查询参数
|
||||
public class AllocationOrderQO {
|
||||
public class AllocationOrderQO extends PageQO {
|
||||
|
||||
//工厂
|
||||
private String werks;
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ import java.util.Objects;
|
|||
@Data
|
||||
@Accessors(chain = true)
|
||||
//场内调拨清单的查询参数
|
||||
public class TransferOrderQO {
|
||||
public class TransferOrderQO extends PageQO {
|
||||
|
||||
//工厂
|
||||
@NotBlank
|
||||
|
|
|
|||
|
|
@ -14,6 +14,11 @@ public class Zwm3a10QO {
|
|||
*/
|
||||
private String aufnr;
|
||||
|
||||
/**
|
||||
* A领料 B补料
|
||||
*/
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 领料的明细
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -87,6 +87,11 @@ public class InProduceBackTicketItemVO {
|
|||
return BomUtil.changeMeins(meins);
|
||||
}
|
||||
|
||||
/**
|
||||
* 库存地点
|
||||
*/
|
||||
private String lgort2;
|
||||
|
||||
/**
|
||||
* 库存仓位
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -22,6 +22,11 @@ public class TransferCompanyItemVO {
|
|||
*/
|
||||
private String aedat;
|
||||
|
||||
/**
|
||||
* 采购凭证号
|
||||
*/
|
||||
private String ebeln;
|
||||
|
||||
/**
|
||||
* 采购凭证的项目编号
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -105,4 +105,14 @@ public class TransferFactoryItemVO {
|
|||
* 调库数量
|
||||
*/
|
||||
private BigDecimal num;
|
||||
|
||||
/**
|
||||
* 调出仓
|
||||
*/
|
||||
private String lgort;
|
||||
|
||||
/**
|
||||
* 调入仓
|
||||
*/
|
||||
private String umlgo;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import lombok.Data;
|
|||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Set;
|
||||
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
|
|
@ -33,12 +32,12 @@ public class TransferFactoryPdaItemVO {
|
|||
/**
|
||||
* 调出储位
|
||||
*/
|
||||
private Set<String> binOut;
|
||||
private String binOut;
|
||||
|
||||
/**
|
||||
* 调入储位
|
||||
*/
|
||||
private Set<String> binIn;
|
||||
private String binIn;
|
||||
|
||||
/**
|
||||
* 数量
|
||||
|
|
|
|||
|
|
@ -24,5 +24,10 @@ public class TransferFactoryPdaVO {
|
|||
*/
|
||||
private String bwart;
|
||||
|
||||
/**
|
||||
* 库位
|
||||
*/
|
||||
private String lgort;
|
||||
|
||||
private List<TransferFactoryPdaItemVO> items;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.nflg.wms.common.pojo.vo;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
|
@ -64,6 +65,15 @@ public class TransferFactoryTicketVO {
|
|||
*/
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/**
|
||||
* 状态,0-未入库,1-已入库
|
||||
*/
|
||||
private Integer state;
|
||||
|
||||
public Integer getState() {
|
||||
return StrUtil.isBlank(updateBy) ? 0 : 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* 最后更新人
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -0,0 +1,9 @@
|
|||
package com.nflg.wms.common.pojo.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class TransferFactoryVO {
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -3,6 +3,7 @@ package com.nflg.wms.common.util;
|
|||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.nflg.wms.common.pojo.PageData;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
|
@ -17,4 +18,13 @@ public class PageUtil {
|
|||
pageData.setItems(page.getRecords().stream().map(mapper).filter(Objects::nonNull).collect(Collectors.toList()));
|
||||
return pageData;
|
||||
}
|
||||
|
||||
public static <T> PageData<T> Page(List<T> datas, Integer page, Integer pageSize) {
|
||||
PageData<T> pageData = new PageData<>();
|
||||
pageData.setPage(page);
|
||||
pageData.setPageSize(pageSize);
|
||||
pageData.setTotal(datas.size());
|
||||
pageData.setItems(datas.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()));
|
||||
return pageData;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,5 +36,6 @@
|
|||
AND icb."kostl" LIKE CONCAT('%',#{request.kostl},'%')
|
||||
</if>
|
||||
</where>
|
||||
order by icbt.id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -31,5 +31,6 @@
|
|||
and create_time <= #{request.endDate}
|
||||
</if>
|
||||
</where>
|
||||
order by id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,10 @@
|
|||
<mapper namespace="com.nflg.wms.repository.mapper.WmsInProduceBackTicketItemMapper">
|
||||
|
||||
<select id="getList" resultType="com.nflg.wms.common.pojo.vo.InProduceBackTicketItemVO">
|
||||
SELECT ipbti.id,ipbti.num AS "in_num",ipbi.*
|
||||
SELECT ipbti.id,ipbti.num,ipb.lgort2,ipbi.*
|
||||
FROM wms_in_produce_back_ticket_item ipbti
|
||||
INNER JOIN wms_in_produce_back_item ipbi ON ipbti.produce_back_item_id=ipbi."id"
|
||||
INNER JOIN wms_in_produce_back_item ipbi ON ipbti.produce_back_item_id=ipbi."id"
|
||||
inner join wms_in_produce_back ipb on ipb.id=ipbi.order_id
|
||||
WHERE ipbti.ticket_id=#{id}
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
LEFT JOIN wms_warehouse wh ON wh."id"=icti.warehouse_id
|
||||
LEFT JOIN dictionary_item di ON wh.factory_id=di."id"
|
||||
WHERE ict.state=2 and icti.charge_user_id=#{userId}
|
||||
order by icti.id desc
|
||||
</select>
|
||||
|
||||
<select id="getInfo" resultType="com.nflg.wms.common.pojo.vo.InventoryCheckTaskItemVO">
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@
|
|||
and task_no like concat('%', #{request.no}, '%')
|
||||
</if>
|
||||
</where>
|
||||
order by id desc
|
||||
</select>
|
||||
|
||||
<select id="getMaterials" resultType="com.nflg.wms.common.pojo.vo.InventoryCheckTaskItemMaterialVO">
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
and o.material_no like concat('%', #{request.materialNo}, '%')
|
||||
</if>
|
||||
</where>
|
||||
order by o.id desc
|
||||
</select>
|
||||
|
||||
<select id="getList" resultType="com.nflg.wms.common.pojo.vo.DeliverNormalOrderVO">
|
||||
|
|
@ -39,5 +40,6 @@
|
|||
<foreach item="item" collection="ids" separator="," open="(" close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
order by o.id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -25,5 +25,6 @@
|
|||
and create_time <= #{request.endDate}
|
||||
</if>
|
||||
</where>
|
||||
order by id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -7,5 +7,6 @@
|
|||
FROM wms_out_assistance_ticket_item oati
|
||||
INNER JOIN wms_out_assistance_item oai ON oati.order_item_id=oai."id"
|
||||
WHERE oati.ticket_id=#{id}
|
||||
order by oati.id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@
|
|||
and oat.create_time <= #{request.endDate}
|
||||
</if>
|
||||
</where>
|
||||
order by oat.id desc
|
||||
</select>
|
||||
|
||||
<select id="getInfo" resultType="com.nflg.wms.common.pojo.vo.OutAssistanceInfoVO">
|
||||
|
|
|
|||
|
|
@ -6,5 +6,6 @@
|
|||
select *
|
||||
from wms_out_costcenter_item
|
||||
where order_id = #{id}
|
||||
order by id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -7,5 +7,6 @@
|
|||
FROM wms_out_costcenter_ticket_item octi
|
||||
INNER JOIN wms_out_costcenter_item oci ON octi.order_item_id=oci."id"
|
||||
WHERE octi.ticket_id=#{id}
|
||||
order by octi.id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
and oc.kostl like concat('%', #{request.kostl}, '%')
|
||||
</if>
|
||||
</where>
|
||||
order by oct.id desc
|
||||
</select>
|
||||
|
||||
<select id="getInfo" resultType="com.nflg.wms.common.pojo.vo.OutCostcenterInfoVO">
|
||||
|
|
|
|||
|
|
@ -15,5 +15,6 @@
|
|||
select *
|
||||
from wms_out_produce_item
|
||||
where order_id=#{id}
|
||||
order by id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -7,5 +7,6 @@
|
|||
FROM wms_out_produce_ticket_item opti
|
||||
INNER JOIN wms_out_produce_item opi ON opti.produce_item_id=opi."id"
|
||||
WHERE opti.ticket_id=#{id}
|
||||
order by opti.id desc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@
|
|||
<if test="request.endDate!=null">
|
||||
and opt.create_time <= #{request.endDate}
|
||||
</if>
|
||||
order by opt.id desc
|
||||
</select>
|
||||
|
||||
<select id="getInfo" resultType="com.nflg.wms.common.pojo.vo.OutProduceTicketVO">
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
and t."binNos" like concat('%', #{request.binNo}, '%')
|
||||
</if>
|
||||
</where>
|
||||
order by id desc
|
||||
</select>
|
||||
|
||||
<select id="getList" resultType="com.nflg.wms.common.pojo.vo.StorageVO">
|
||||
|
|
|
|||
|
|
@ -7,10 +7,10 @@
|
|||
from wms_transfer_factory
|
||||
<where>
|
||||
<if test="request.startDate!=null">
|
||||
and create_time >= #{request.startDate}
|
||||
and bdter::date >= #{request.startDate}
|
||||
</if>
|
||||
<if test="request.endDate!=null">
|
||||
and create_time <= #{request.endDate}
|
||||
and bdter::date <= #{request.endDate}
|
||||
</if>
|
||||
<if test="request.no != null and request.no!=''">
|
||||
and "no" like concat('%',#{request.no},'%')
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<mapper namespace="com.nflg.wms.repository.mapper.WmsTransferFactoryTicketItemMapper">
|
||||
|
||||
<select id="getList" resultType="com.nflg.wms.common.pojo.vo.TransferFactoryItemVO">
|
||||
select tfi.*
|
||||
select tfti.id,tfti.num,tfi.*
|
||||
from wms_transfer_factory_item tfi
|
||||
inner join wms_transfer_factory_ticket_item tfti on tfi.id = tfti.order_item_id
|
||||
where tfti.ticket_id = #{id}
|
||||
|
|
|
|||
|
|
@ -3,15 +3,16 @@
|
|||
<mapper namespace="com.nflg.wms.repository.mapper.WmsTransferFactoryTicketMapper">
|
||||
|
||||
<select id="search" resultType="com.nflg.wms.common.pojo.vo.TransferFactoryTicketVO">
|
||||
SELECT tft."id",tft."no" AS "ticket_no",tft.create_by,tft.create_time,tft.doc_year,tft.mat_doc,tf.*
|
||||
SELECT tft."id",tft."no" AS "ticket_no",tft.create_by,tft.create_time,tft.update_time,tft.update_by
|
||||
,tft.doc_year,tft.mat_doc,tf.*
|
||||
FROM wms_transfer_factory_ticket tft
|
||||
INNER JOIN wms_transfer_factory tf ON tft.order_id=tf."id"
|
||||
<where>
|
||||
<if test="request.startDate!=null">
|
||||
and tft.create_time >= #{request.startDate}
|
||||
and tf.bdter::date >= #{request.startDate}
|
||||
</if>
|
||||
<if test="request.endDate!=null">
|
||||
and tft.create_time <= #{request.endDate}
|
||||
and tf.bdter::date <= #{request.endDate}
|
||||
</if>
|
||||
<if test="request.no != null and request.no!=''">
|
||||
and tf."no" like concat('%',#{request.no},'%')
|
||||
|
|
|
|||
Loading…
Reference in New Issue