Browse Source

selectBoxListTX

ecss-tx
han\hanst 2 months ago
parent
commit
f72f8e6b9f
  1. 7
      src/main/java/com/xujie/sys/modules/ecss/controller/CoDelController.java
  2. 2
      src/main/java/com/xujie/sys/modules/ecss/mapper/CoDelMapper.java
  3. 5
      src/main/java/com/xujie/sys/modules/ecss/service/CoDelService.java
  4. 8
      src/main/java/com/xujie/sys/modules/ecss/service/impl/CoDelExcelTXServiceImpl.java
  5. 5
      src/main/java/com/xujie/sys/modules/ecss/service/impl/CoDelServiceImpl.java
  6. 21
      src/main/resources/mapper/ecss/CoDelMapper.xml

7
src/main/java/com/xujie/sys/modules/ecss/controller/CoDelController.java

@ -283,6 +283,13 @@ public class CoDelController {
return R.ok().put("rows", rows);
}
@PostMapping("/selectBoxListTX")
@ResponseBody
public R selectBoxListTX(@RequestBody EcssCoDelNotifyHeaderData inData){
List<Map> rows =coDelService.selectBoxListTX(inData);
return R.ok().put("rows", rows);
}
@PostMapping("/searchCoDelPalletDataNew")
@ResponseBody
public R searchCoDelPalletDataNew(@RequestBody EcssCoDelNotifyHeaderData inData){

2
src/main/java/com/xujie/sys/modules/ecss/mapper/CoDelMapper.java

@ -270,6 +270,8 @@ public interface CoDelMapper {
List<Map> selectBoxList(EcssCoDelNotifyHeaderData inData);
List<Map> selectBoxListTX(EcssCoDelNotifyHeaderData inData);
void updateBoxInfo(Map<String, Object> boxData);
void deleteBoxInfo(Map<String, Object> boxData);

5
src/main/java/com/xujie/sys/modules/ecss/service/CoDelService.java

@ -18,7 +18,7 @@ public interface CoDelService {
List<EcssCoDelNotifyDetailData> searchEcssCoDelNotifyDetail(EcssCoDelNotifyHeaderData data);
void updateEcssDelHeader(EcssCoDelNotifyHeaderData data);
// 专门更新客户信息
void updateCustomerInfo(EcssCoDelNotifyHeaderData data);
@ -58,6 +58,9 @@ public interface CoDelService {
List<Map> selectBoxList(EcssCoDelNotifyHeaderData inData);
List<Map> selectBoxListTX(EcssCoDelNotifyHeaderData inData);
void updateBoxInfo(Map<String, Object> boxData);
void deleteBoxInfo(Map<String, Object> boxData);

8
src/main/java/com/xujie/sys/modules/ecss/service/impl/CoDelExcelTXServiceImpl.java

@ -1520,7 +1520,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService {
if (palletHeaderDataList.isEmpty()) {
totalKgs = BigDecimal.valueOf(0.1);
}
List<Map> list = coDelMapper.selectBoxList(notifyHeader);
List<Map> list = coDelMapper.selectBoxListTX(notifyHeader);
BigDecimal totalCartons = BigDecimal.valueOf(0.0);
for (int m = 0; m < list.size(); m++) {
totalCartons = totalCartons.add(new BigDecimal(list.get(m).get("box_qty") != null ?
@ -1586,7 +1586,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService {
StringBuilder ponos = new StringBuilder();
poNoMap.forEach((key, value) -> ponos.append(key + " "));
template.addVar("poNo", ponos);
List<Map> list = coDelMapper.selectBoxList(notifyHeader);
List<Map> list = coDelMapper.selectBoxListTX(notifyHeader);
// DB中item_no可能是字符串区间"127~127""2~26"直接查询顺序可能不稳定导出前做自然排序
sortBoxListBySeqAndItemNo(list);
BigDecimal totalCartons = BigDecimal.valueOf(0.0);
@ -1821,7 +1821,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService {
StringBuilder ponos = new StringBuilder();
poNoMap.forEach((key, value) -> ponos.append(key + " "));
template.addVar("poNo", ponos);
List<Map> list = coDelMapper.selectBoxList(notifyHeader);
List<Map> list = coDelMapper.selectBoxListTX(notifyHeader);
// DB中item_no可能是字符串区间"127~127""2~26"直接查询顺序可能不稳定导出前做自然排序
sortBoxListBySeqAndItemNo(list);
BigDecimal totalCartons = BigDecimal.valueOf(0.0);
@ -2186,7 +2186,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService {
private BigDecimal calculateVolumeByMaterials(EcssCoDelNotifyHeaderData notifyHeader) {
try {
// 1. 查询箱子列表每个箱子包含box_qty长宽高等信息
List<Map> boxList = coDelMapper.selectBoxList(notifyHeader);
List<Map> boxList = coDelMapper.selectBoxListTX(notifyHeader);
if (boxList == null || boxList.isEmpty()) {
log.debug("未找到装箱数据,发货单号: {}", notifyHeader.getDelNo());

5
src/main/java/com/xujie/sys/modules/ecss/service/impl/CoDelServiceImpl.java

@ -546,6 +546,11 @@ public class CoDelServiceImpl implements CoDelService {
return coDelMapper.selectBoxList(inData);
}
@Override
public List<Map> selectBoxListTX(EcssCoDelNotifyHeaderData inData) {
return coDelMapper.selectBoxListTX(inData);
}
@Override
public List<EcssCoDelPalletData> searchCoDelPalletDataNew(EcssCoDelNotifyHeaderData inData) {
return coDelMapper.searchCoDelPalletDataNew(inData);

21
src/main/resources/mapper/ecss/CoDelMapper.xml

@ -1328,11 +1328,28 @@ left join ecss_CoDelNotifyHeader noHeader on a.site=noHeader.site and a.delNo=no
left join part_sub_properties_value w on d.part_no = w.part_no and w.site = d.site and w.bu_no = d.bu_no
and w.record_type='ECSSPART' and w.code_no='BG001' and w.properties_item_no='BOXWEIGHT'
where a.site = #{site} and a.bu_no = #{buNo} and a.delNo = #{delNo}
</select>
<select id="selectBoxListTX" resultType="java.util.Map">
select a.*,
CONVERT(DECIMAL(20, 3),a.gross_weight) as grossWeight,
CONVERT(DECIMAL(20, 3),a.net_weight) as netWeight,
CONVERT(DECIMAL(20, 3),w.num_value) as boxWeight
from ecss_CoDelBoxList a
left join (
select b.site, b.bu_no, b.delNo, b.seq_no, b.part_no,
ROW_NUMBER() OVER (PARTITION BY b.site, b.bu_no, b.delNo, b.seq_no ORDER BY b.part_no) as rn
from ecss_CoDelPalletDetail b
where b.site = #{site} and b.bu_no = #{buNo} and b.delNo = #{delNo}
) d on a.site = d.site and a.bu_no = d.bu_no and a.delNo = d.delNo and a.item_no = d.seq_no and d.rn = 1
left join part_sub_properties_value w on d.part_no = w.part_no and w.site = d.site and w.bu_no = d.bu_no
and w.record_type='ECSSPART' and w.code_no='BG001' and w.properties_item_no='BOXWEIGHT'
where a.site = #{site} and a.bu_no = #{buNo} and a.delNo = #{delNo}
order by
ISNULL(TRY_CONVERT(int, LEFT(a.item_no, CHARINDEX('~', a.item_no + '~') - 1)), 2147483647),
ISNULL(
TRY_CONVERT(int, SUBSTRING(a.item_no, CHARINDEX('~', a.item_no + '~') + 1, LEN(a.item_no))),
ISNULL(TRY_CONVERT(int, LEFT(a.item_no, CHARINDEX('~', a.item_no + '~') - 1)), 2147483647)
TRY_CONVERT(int, SUBSTRING(a.item_no, CHARINDEX('~', a.item_no + '~') + 1, LEN(a.item_no))),
ISNULL(TRY_CONVERT(int, LEFT(a.item_no, CHARINDEX('~', a.item_no + '~') - 1)), 2147483647)
),
a.item_no
</select>

Loading…
Cancel
Save