Compare commits

...

16 Commits

Author SHA1 Message Date
曹鹏飞 969c5eb8df feat: 一些优化 2025-10-11 15:21:48 +08:00
曹鹏飞 0b9d3923b0 Merge branch 'feature/bug-815' into develop 2025-10-11 14:58:18 +08:00
曹鹏飞 f45a3f4ba1 feat: bug-815 厂内调拨单和工厂间调拨单功能调整 2025-10-11 14:58:04 +08:00
曹鹏飞 6789b81523 Merge branch 'feature/bug-813' into develop 2025-10-11 11:46:05 +08:00
曹鹏飞 99176cdca2 feat: bug-813 零部件打包详情查询接口返回工厂编号 2025-10-11 11:45:48 +08:00
曹鹏飞 0035ae3f6a feat: bug-814 调整排序字段 2025-10-11 11:37:23 +08:00
曹鹏飞 c36fa6590d Merge branch 'feature/bug-813' into develop 2025-10-11 11:20:22 +08:00
曹鹏飞 8a4e2de9d2 feat: bug-813 pda所有详情查询接口返回工厂编号 2025-10-11 11:20:06 +08:00
曹鹏飞 7dfa50c084 feat: bug-813 零部件打包详情查询接口返回工厂编号 2025-10-11 11:01:53 +08:00
曹鹏飞 309ec6bdba feat: bug-802 生产补料单取消申请数量不能大于需求量的校验 2025-10-11 10:08:28 +08:00
曹鹏飞 f5ff21cdc1 feat: 增加校验 2025-10-11 10:07:20 +08:00
曹鹏飞 d4121b1e6d Merge branch 'feature/bug-764' into develop
# Conflicts:
#	nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutCostCenterController.java
2025-10-10 17:07:49 +08:00
曹鹏飞 0b399d3ef6 feat: bug-764 扫码记录的时间格式化 2025-10-10 17:06:08 +08:00
曹鹏飞 0a623b70e4 feat: 仓库搜索条件添加工厂编号 2025-10-09 15:08:13 +08:00
曹鹏飞 303cd1164e fix: 修复零部件出库单查询出错的问题 2025-10-09 15:07:28 +08:00
曹鹏飞 ab9af970ea fix: 修复成本中心领料出库时库存查询的仓库未设置为请求参数的仓库信息的问题 2025-10-09 15:06:56 +08:00
30 changed files with 117 additions and 21 deletions

View File

@ -11,7 +11,6 @@ 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.ZWM3A19DTO;
import com.nflg.wms.common.pojo.dto.ZWM3A19ITEMDTO;
import com.nflg.wms.common.pojo.qo.ComponentOrderQO;
import com.nflg.wms.common.pojo.qo.ComponentPackingEditInputQO;
import com.nflg.wms.common.pojo.qo.ComponentPackingInputQO;
@ -30,10 +29,7 @@ import jakarta.validation.constraints.NotNull;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -168,13 +164,15 @@ public class ComponentPackingController {
/**
* 装箱单详情列表
* 装箱单详情列表
*
* @param packingId 装箱单号或是分销凭证号
* @return 装箱单详情列表
* @return 装箱单详情列表
*/
@GetMapping("pda/taskitem")
public ApiResult<List<ComponentPackingItemPdaVO>> getPackingPdaItem(@RequestParam @NotNull Long packingId) {
WmsComponentPacking packing = wmscomponentPackingService.getById(packingId);
VUtil.trueThrowBusinessError(Objects.isNull(packing)).throwMessage("装箱单不存在");
// 查询退库单对应的明细项
List<WmsComponentPackingItem> tasks = wmsComponentPackingItemService.lambdaQuery()
.select(WmsComponentPackingItem::getId, WmsComponentPackingItem::getIdnrk,

View File

@ -167,6 +167,7 @@ public class InCostCenterBackController extends BaseController {
.setId(order.getId())
.setAufnr(order.getAufnr())
.setRsnum(order.getRsnum())
.setFactoryNo(order.getWerks())
.setItems(datas.stream()
.filter(item -> item.getLeft().compareTo(BigDecimal.ZERO) > 0)
.map(item -> {

View File

@ -214,6 +214,7 @@ public class InProduceBackController extends BaseController {
.setId(order.getId())
.setAufnr(order.getAufnr())
.setRsnum(order.getRsnum())
.setFactoryNo(order.getDwerk())
.setItems(datas.stream()
.filter(item -> item.getSqsl().compareTo(item.getNum()) > 0)
.map(item -> new OutProduceItemVO()

View File

@ -168,6 +168,7 @@ public class OutAssistanceController extends BaseController {
.setAufnr(order.getEbeln())
.setRsnum("")
.setLgort(order.getLgort1())
.setFactoryNo(order.getWerks())
.setItems(datas.stream()
.filter(item -> item.getLeft().compareTo(BigDecimal.ZERO) > 0)
.map(item -> new OutProduceItemVO()

View File

@ -163,6 +163,7 @@ public class OutCostCenterController extends BaseController {
.setId(order.getId())
.setAufnr(order.getAufnr())
.setRsnum(order.getRsnum())
.setFactoryNo(order.getWerks())
.setItems(datas.stream()
.filter(item -> item.getLeft().compareTo(BigDecimal.ZERO) > 0)
.map(item -> new OutProduceItemVO()

View File

@ -170,15 +170,15 @@ public class OutProduceController extends BaseController {
@Transactional
@PostMapping("1/save")
public ApiResult<Void> save1(@Valid @RequestBody @NotEmpty List<Zwm3a07VO> datas) {
List<String> materialNos = new ArrayList<>();
datas.forEach(item -> {
BigDecimal max = item.getBdmng();
if (item.getSqsl().compareTo(max) > 0) {
materialNos.add(item.getMatnr());
}
});
VUtil.trueThrowBusinessError(CollectionUtil.isNotEmpty(materialNos))
.throwMessage("以下物料的申请数量超出限制:" + StrUtil.join(",", materialNos));
// List<String> materialNos = new ArrayList<>();
// datas.forEach(item -> {
// BigDecimal max = item.getBdmng();
// if (item.getSqsl().compareTo(max) > 0) {
// materialNos.add(item.getMatnr());
// }
// });
// VUtil.trueThrowBusinessError(CollectionUtil.isNotEmpty(materialNos))
// .throwMessage("以下物料的申请数量超出限制:" + StrUtil.join(",", materialNos));
Map<String, List<Zwm3a07VO>> maps = datas.stream().collect(Collectors.groupingBy(Zwm3a07VO::getKey2));
maps.forEach((key, items) -> {
WmsOutProduce order = Convert.convert(WmsOutProduce.class, items.get(0));
@ -272,6 +272,7 @@ public class OutProduceController extends BaseController {
.setAufnr(order.getAufnr())
.setRsnum(order.getRsnum())
.setLgort(order.getLgort2())
.setFactoryNo(order.getDwerk())
.setItems(datas.stream()
.filter(item -> item.getSqsl().subtract(item.getNum()).compareTo(BigDecimal.ZERO) > 0)
.map(item -> new OutProduceItemVO()

View File

@ -39,6 +39,7 @@ import com.nflg.wms.starter.BaseController;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.extern.slf4j.Slf4j;
@ -313,6 +314,15 @@ public class TransferCompanyController extends BaseController {
return ApiResult.success();
}
/**
* 查询出库单列表PDA使用
* @param no 调拨单单号
*/
@GetMapping("pda/getTicketForIn")
public ApiResult<List<TransferCompanyTicketVO>> getTicketForOut(@Valid @RequestParam @NotBlank String no) {
return ApiResult.success(transferCompanyTicketService.getVOByOrderNo(no));
}
/**
* 查询出库单信息PDA使用
* @param no 出库单单号

View File

@ -192,6 +192,7 @@ public class TransferFactoryController extends BaseController {
.setMblnr(order.getMblnr())
.setBwart(order.getBwart())
.setLgort(order.getLgort())
.setFactoryNo(order.getWerks())
.setItems(datas.stream()
.map(item -> new TransferFactoryPdaItemVO()
.setId(item.getId())
@ -293,6 +294,15 @@ public class TransferFactoryController extends BaseController {
return ApiResult.success();
}
/**
* 查询出库单列表PDA使用
* @param no 调拨单单号
*/
@GetMapping("pda/getTicketForIn")
public ApiResult<List<TransferFactoryTicketVO>> getTicketForOut(@Valid @RequestParam @NotBlank String no) {
return ApiResult.success(transferFactoryTicketService.getVOByOrderNo(no));
}
/**
* 查询出库单信息PDA使用
* @param no 出库单单号
@ -309,6 +319,7 @@ public class TransferFactoryController extends BaseController {
.setMblnr(ticket.getMblnr())
.setLgort(ticket.getLgort())
.setLgort1(ticket.getUmlgo())
.setFactoryNo(ticket.getWerks())
.setItems(itemVOS.stream().map(it -> new TransferFactoryPdaItemVO()
.setId(it.getId())
.setMatnr(it.getMatnr())

View File

@ -1,5 +1,6 @@
package com.nflg.wms.admin.pojo.document;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id;
@ -113,6 +114,7 @@ public class InMaterialScanRecord {
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Instant createTime;
@Transient

View File

@ -1,5 +1,6 @@
package com.nflg.wms.admin.pojo.document;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Builder;
import lombok.Data;
import lombok.experimental.Accessors;
@ -76,5 +77,6 @@ public class InventoryCheckTaskScanRecord {
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Instant createTime;
}

View File

@ -1,5 +1,6 @@
package com.nflg.wms.admin.pojo.document;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id;
@ -112,6 +113,7 @@ public class OutMaterialScanRecord {
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Instant createTime;
@Transient

View File

@ -1,5 +1,6 @@
package com.nflg.wms.admin.pojo.document;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id;
@ -79,5 +80,6 @@ public class PackageMaterialScanRecord {
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Instant createTime;
}

View File

@ -18,6 +18,7 @@ public class InProduceOrderReceiveMaterialQO {
/**
* 储位编号列表
*/
@NotBlank
private String binNos;
/**

View File

@ -1,5 +1,6 @@
package com.nflg.wms.common.pojo.qo;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import lombok.Data;
@ -18,6 +19,7 @@ public class InProduceOrderReceiveQO {
/**
* 物料列表
*/
@Valid
@NotEmpty
private List<InProduceOrderReceiveMaterialQO> items;
}

View File

@ -16,7 +16,7 @@ public class OutProduceSubmitQO {
/**
* 仓库编号
*/
@NotBlank
// @NotBlank
private String lgort;
/**

View File

@ -42,7 +42,7 @@ public class WarehouseAddQO {
/**
* 是否启用
*/
@NotBlank
@NotNull
private Boolean enable;
/**

View File

@ -53,5 +53,4 @@ public class ComponentPackingItemPdaVO {
public BigDecimal getRemainQty() {
return menge.subtract(outQty);
}
}

View File

@ -42,4 +42,9 @@ public class ComponentPackingPdaVO {
* 设备名称
*/
private String maktx;
/**
* 工厂
*/
private String factoryNo;
}

View File

@ -36,5 +36,10 @@ public class OutProduce1VO {
*/
private String supplierName;
/**
* 工厂
*/
private String factoryNo;
private List<OutProduceItemVO> items;
}

View File

@ -34,5 +34,10 @@ public class TransferFactoryPdaVO {
*/
private String lgort1;
/**
* 工厂
*/
private String factoryNo;
private List<TransferFactoryPdaItemVO> items;
}

View File

@ -7,6 +7,8 @@ import com.nflg.wms.common.pojo.qo.TransferCompanySearchQO;
import com.nflg.wms.common.pojo.vo.TransferCompanyTicketVO;
import com.nflg.wms.repository.entity.WmsTransferCompanyTicket;
import java.util.List;
/**
* <p>
* Mapper 接口
@ -21,4 +23,6 @@ public interface WmsTransferCompanyTicketMapper extends BaseMapper<WmsTransferCo
TransferCompanyTicketVO getInfo(Long id);
TransferCompanyTicketVO getByNo(String no);
List<TransferCompanyTicketVO> getVOByOrderNo(String no);
}

View File

@ -8,6 +8,8 @@ import com.nflg.wms.common.pojo.vo.TransferFactoryTicketInfoVO;
import com.nflg.wms.common.pojo.vo.TransferFactoryTicketVO;
import com.nflg.wms.repository.entity.WmsTransferFactoryTicket;
import java.util.List;
/**
* <p>
* Mapper 接口
@ -22,4 +24,6 @@ public interface WmsTransferFactoryTicketMapper extends BaseMapper<WmsTransferFa
TransferFactoryTicketInfoVO getInfo(Long id);
TransferFactoryTicketInfoVO getByNo(String no);
List<TransferFactoryTicketVO> getVOByOrderNo(String no);
}

View File

@ -6,8 +6,11 @@ import com.nflg.wms.common.pojo.qo.TransferCompanySearchQO;
import com.nflg.wms.common.pojo.vo.TransferCompanyTicketVO;
import com.nflg.wms.repository.entity.WmsTransferCompanyTicket;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import java.util.List;
/**
* <p>
* 服务类
@ -22,4 +25,6 @@ public interface IWmsTransferCompanyTicketService extends IService<WmsTransferCo
TransferCompanyTicketVO getInfo(@Valid @NotNull Long id);
TransferCompanyTicketVO getByNo(String no);
List<TransferCompanyTicketVO> getVOByOrderNo(@Valid @NotBlank String no);
}

View File

@ -10,6 +10,8 @@ import jakarta.validation.Valid;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import java.util.List;
/**
* <p>
* 服务类
@ -24,4 +26,6 @@ public interface IWmsTransferFactoryTicketService extends IService<WmsTransferFa
TransferFactoryTicketInfoVO getInfo(@Valid @NotNull Long id);
TransferFactoryTicketInfoVO getByNo(@Valid @NotBlank String no);
List<TransferFactoryTicketVO> getVOByOrderNo(@Valid @NotBlank String no);
}

View File

@ -10,6 +10,8 @@ import com.nflg.wms.repository.mapper.WmsTransferCompanyTicketMapper;
import com.nflg.wms.repository.service.IWmsTransferCompanyTicketService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 服务实现类
@ -34,4 +36,9 @@ public class WmsTransferCompanyTicketServiceImpl extends ServiceImpl<WmsTransfer
public TransferCompanyTicketVO getByNo(String no) {
return baseMapper.getByNo(no);
}
@Override
public List<TransferCompanyTicketVO> getVOByOrderNo(String no) {
return baseMapper.getVOByOrderNo(no);
}
}

View File

@ -11,6 +11,8 @@ import com.nflg.wms.repository.mapper.WmsTransferFactoryTicketMapper;
import com.nflg.wms.repository.service.IWmsTransferFactoryTicketService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 服务实现类
@ -35,4 +37,9 @@ public class WmsTransferFactoryTicketServiceImpl extends ServiceImpl<WmsTransfer
public TransferFactoryTicketInfoVO getByNo(String no) {
return baseMapper.getByNo(no);
}
@Override
public List<TransferFactoryTicketVO> getVOByOrderNo(String no) {
return baseMapper.getVOByOrderNo(no);
}
}

View File

@ -37,7 +37,7 @@
<select id="getOutboundTask" resultType="com.nflg.wms.common.pojo.vo.ComponentPackingPdaVO">
select
id,no,vbeln,create_time,datum,vbelv,matnr,maktx
id,no,vbeln,create_time,datum,vbelv,matnr,maktx,factory_no
from wms_component_packing
where is_completed=0
<if test="no !=null and no !=''">

View File

@ -54,4 +54,12 @@
inner join wms_transfer_company_ticket tct on tc.id = tct.order_id
where tct."no"=#{no}
</select>
<select id="getVOByOrderNo" resultType="com.nflg.wms.common.pojo.vo.TransferCompanyTicketVO">
select tct.id,tct.no as "ticket_no",tct.create_by,tct.create_time,tct.update_by,tct.update_time,tct.mat_doc
,tct.doc_year,tct.state,tc.*
from wms_transfer_company tc
inner join wms_transfer_company_ticket tct on tc.id = tct.order_id
where tct.state=0 and tc."no"=#{no}
</select>
</mapper>

View File

@ -46,4 +46,12 @@
INNER JOIN wms_transfer_factory tf ON tft.order_id=tf."id"
WHERE tft."no"=#{no}
</select>
<select id="getVOByOrderNo" resultType="com.nflg.wms.common.pojo.vo.TransferFactoryTicketVO">
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 tft.state=0 AND tf."no"= #{no}
</select>
</mapper>

View File

@ -57,7 +57,7 @@
<if test="factoryNo!=null and factoryNo!=''">
and di.code=#{factoryNo}
</if>
order by di.code,w.id desc
order by di.code,w.no
</select>
<select id="getListByIds" resultType="com.nflg.wms.common.pojo.vo.WarehouseVO">