feat(ofs): 新增 TOC 退货确认收入功能

- 新增 entityInsertOrUpdateBatchByTocRerturnTranBlue 方法处理 TOC 退货确认收入
- 更新 XML 文件以支持新的插入逻辑
- 修改测试用例以适应新的功能
This commit is contained in:
liuy 2025-08-05 15:01:52 +08:00
parent 9b9354d18f
commit dbf426ae7e
7 changed files with 791 additions and 274 deletions

View File

@ -33,6 +33,20 @@ public interface ITocofsReturngoodsDetailedDao extends IBaseDao<TocofsReturngood
*/ */
void entityInsertOrUpdateBatchByTocRerturnTran(List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntityList) throws Exception; void entityInsertOrUpdateBatchByTocRerturnTran(List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntityList) throws Exception;
/**
* 批量新增或者修改TOC退货-确认收入
*
* @author liuyang
*/
// void entityInsertOrUpdateBatchByTocRerturnTranBlueLog(List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntityList) throws Exception;
/**
* 批量新增或者修改TOC退货-确认收入
*
* @author liuyang
*/
void entityInsertOrUpdateBatchByTocRerturnTranBlue(List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntityList) throws Exception;
/** /**
* 批量新增或者修改TOB退货-库存 * 批量新增或者修改TOB退货-库存
* *

View File

@ -30,6 +30,16 @@ public class TocofsReturngoodsDetailedDaoImpl extends MybatisGenericDao<TocofsRe
insert("com.hzya.frame.plugin.lets.ofs.dao.impl.TocofsReturngoodsDetailedDaoImpl.entityInsertOrUpdateBatchByTocRerturnTran", tocofsReturngoodsDetailedEntityList); insert("com.hzya.frame.plugin.lets.ofs.dao.impl.TocofsReturngoodsDetailedDaoImpl.entityInsertOrUpdateBatchByTocRerturnTran", tocofsReturngoodsDetailedEntityList);
} }
// @Override
// public void entityInsertOrUpdateBatchByTocRerturnTranBlueLog(List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntityList) throws Exception {
// insert("com.hzya.frame.plugin.lets.ofs.dao.impl.TocofsReturngoodsDetailedDaoImpl.entityInsertOrUpdateBatchByTocRerturnTranBlueLog", tocofsReturngoodsDetailedEntityList);
// }
@Override
public void entityInsertOrUpdateBatchByTocRerturnTranBlue(List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntityList) throws Exception {
insert("com.hzya.frame.plugin.lets.ofs.dao.impl.TocofsReturngoodsDetailedDaoImpl.entityInsertOrUpdateBatchByTocRerturnTranBlue", tocofsReturngoodsDetailedEntityList);
}
@Override @Override
public void entityInsertOrUpdateBatchByTobRerturnStock(List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntityList) throws Exception { public void entityInsertOrUpdateBatchByTobRerturnStock(List<TocofsReturngoodsDetailedEntity> tocofsReturngoodsDetailedEntityList) throws Exception {
insert("com.hzya.frame.plugin.lets.ofs.dao.impl.TocofsReturngoodsDetailedDaoImpl.entityInsertOrUpdateBatchByTobRerturnStock", tocofsReturngoodsDetailedEntityList); insert("com.hzya.frame.plugin.lets.ofs.dao.impl.TocofsReturngoodsDetailedDaoImpl.entityInsertOrUpdateBatchByTobRerturnStock", tocofsReturngoodsDetailedEntityList);

View File

@ -891,10 +891,10 @@
<!-- 批量新增或者修改TOC退货-库存--> <!-- 批量新增或者修改TOC退货-库存-->
<insert id="entityInsertOrUpdateBatchByTocRerturnStock" keyProperty="id" useGeneratedKeys="true"> <insert id="entityInsertOrUpdateBatchByTocRerturnStock" keyProperty="id" useGeneratedKeys="true">
insert into tocofs_returngoods_detailed(id,newPushDate3,newTransmitInfo3,newState3,newSystemNumber3,newSystemPrimary3,def7,def8,def9,def10,def11,def12) insert into tocofs_returngoods_detailed(id,newPushDate3,newTransmitInfo3,newState3,newSystemNumber3,newSystemPrimary3,def7,def8,def9,def10,def11,def12,def24)
values values
<foreach collection="list" item="entity" separator=","> <foreach collection="list" item="entity" separator=",">
(#{entity.id},#{entity.newpushdate3},#{entity.newtransmitinfo3},#{entity.newstate3},#{entity.newsystemnumber3},#{entity.newsystemprimary3},#{entity.def7},#{entity.def8},#{entity.def9},#{entity.def10},#{entity.def11},#{entity.def12}) (#{entity.id},#{entity.newpushdate3},#{entity.newtransmitinfo3},#{entity.newstate3},#{entity.newsystemnumber3},#{entity.newsystemprimary3},#{entity.def7},#{entity.def8},#{entity.def9},#{entity.def10},#{entity.def11},#{entity.def12},#{entity.def24})
</foreach> </foreach>
on duplicate key update on duplicate key update
id = values(id), id = values(id),
@ -908,30 +908,80 @@
def9 = values(def9), def9 = values(def9),
def10 = values(def10), def10 = values(def10),
def11 = values(def11), def11 = values(def11),
def12 = values(def12) def12 = values(def12),
def24 = values(def24)
</insert> </insert>
<!-- 批量新增或者修改TOC退货-确认收入--> <!-- 批量新增或者修改TOC退货-确认收入-->
<insert id="entityInsertOrUpdateBatchByTocRerturnTran" keyProperty="id" useGeneratedKeys="true"> <insert id="entityInsertOrUpdateBatchByTocRerturnTran" keyProperty="id" useGeneratedKeys="true">
insert into tocofs_returngoods_detailed(id,newPushDate4,newTransmitInfo4,newState4,newSystemNumber4,newSystemPrimary4,def7,def8,def9,def10,def11,def12) insert into tocofs_returngoods_detailed(id,newPushDate4,newTransmitInfo4,newState4,newSystemNumber4,newSystemPrimary4,def7,def8,def9,def10,def11,def12,def24)
values values
<foreach collection="list" item="entity" separator=","> <foreach collection="list" item="entity" separator=",">
(#{entity.id},#{entity.newpushdate4},#{entity.newtransmitinfo4},#{entity.newstate4},#{entity.newsystemnumber4},#{entity.newsystemprimary4},#{entity.def7},#{entity.def8},#{entity.def9},#{entity.def10},#{entity.def11},#{entity.def12}) (#{entity.id},#{entity.newpushdate4},#{entity.newtransmitinfo4},#{entity.newstate4},#{entity.newsystemnumber4},#{entity.newsystemprimary4},#{entity.def7},#{entity.def8},#{entity.def9},#{entity.def10},#{entity.def11},#{entity.def12},#{entity.def24})
</foreach> </foreach>
on duplicate key update on duplicate key update
id = values(id), id = values(id),
newPushDate4 = values(newPushDate4), newPushDate4 = values(newPushDate4),
newTransmitInfo4 = values(newTransmitInfo4), newTransmitInfo4 = values(newTransmitInfo4),
newState4 = values(newState4), newState4 = values(newState4),
newSystemNumber4 = values(newSystemNumber4), newSystemNumber4 = values(newSystemNumber4),
newSystemPrimary4 = values(newSystemPrimary4), newSystemPrimary4 = values(newSystemPrimary4),
def7 = values(def7), def7 = values(def7),
def8 = values(def8), def8 = values(def8),
def9 = values(def9), def9 = values(def9),
def10 = values(def10), def10 = values(def10),
def11 = values(def11), def11 = values(def11),
def12 = values(def12) def12 = values(def12),
</insert> def24 = values(def24)
</insert>
<!-- 批量新增或者修改TOC退货-确认收入 蓝字-->
<!-- <insert id="entityInsertOrUpdateBatchByTocRerturnTranBlueLog" keyProperty="id" useGeneratedKeys="true">-->
<!-- insert into tocofs_returngoods_detailed(id,newPushDate4,newTransmitInfo4,newState4,newSystemNumber4,newSystemPrimary4,def7,def8,def9,def10,def11,def12,def24)-->
<!-- values-->
<!-- <foreach collection="list" item="entity" separator=",">-->
<!-- (#{entity.id},#{entity.newpushdate4},#{entity.newtransmitinfo4},#{entity.newstate4},#{entity.newsystemnumber4},#{entity.newsystemprimary4},#{entity.def7},#{entity.def8},#{entity.def9},#{entity.def10},#{entity.def11},#{entity.def12},#{entity.def24})-->
<!-- </foreach>-->
<!-- on duplicate key update-->
<!-- id = values(id),-->
<!-- newPushDate4 = values(newPushDate4),-->
<!-- newTransmitInfo4 = values(newTransmitInfo4),-->
<!-- newState4 = values(newState4),-->
<!-- newSystemNumber4 = values(newSystemNumber4),-->
<!-- newSystemPrimary4 = values(newSystemPrimary4),-->
<!-- def7 = values(def7),-->
<!-- def8 = values(def8),-->
<!-- def9 = values(def9),-->
<!-- def10 = values(def10),-->
<!-- def11 = values(def11),-->
<!-- def12 = values(def12),-->
<!-- def24 = values(def24)-->
<!-- </insert>-->
<!-- 批量新增或者修改TOC退货-确认收入-->
<insert id="entityInsertOrUpdateBatchByTocRerturnTranBlue" keyProperty="id" useGeneratedKeys="true">
insert into tocofs_returngoods_detailed(id,def13,def14,def15,def16,def17,def7,def8,def9,def10,def11,def12,def24)
values
<foreach collection="list" item="entity" separator=",">
(#{entity.id},#{entity.def13},#{entity.def14},#{entity.def15},#{entity.def16},#{entity.def17},#{entity.def7},#{entity.def8},#{entity.def9},#{entity.def10},#{entity.def11},#{entity.def12},#{entity.def24})
</foreach>
on duplicate key update
id = values(id),
def13 = values(def13),
def14 = values(def14),
def15 = values(def15),
def16 = values(def16),
def17 = values(def17),
def7 = values(def7),
def8 = values(def8),
def9 = values(def9),
def10 = values(def10),
def11 = values(def11),
def12 = values(def12),
def24 = values(def24)
</insert>
<!-- 批量新增或者修改TOB退货-库存--> <!-- 批量新增或者修改TOB退货-库存-->
<insert id="entityInsertOrUpdateBatchByTobRerturnStock" keyProperty="id" useGeneratedKeys="true"> <insert id="entityInsertOrUpdateBatchByTobRerturnStock" keyProperty="id" useGeneratedKeys="true">

View File

@ -14,7 +14,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
@ -67,7 +69,7 @@ public class SoSaleReturnPluginInitializerToCTest {
try { try {
// soSaleReturnPluginInitializerToC.startImplementByTradeTime("2025-04-28 00:00:00", "2025-04-28 23:59:59", "0"); // soSaleReturnPluginInitializerToC.startImplementByTradeTime("2025-04-28 00:00:00", "2025-04-28 23:59:59", "0");
soSaleReturnPluginInitializerToC.startImplementByCode("LETS-RE2025062600002819", "stock"); soSaleReturnPluginInitializerToC.startImplementByCode("LETS-RE2025070200000500", "tran");
// soSaleReturnPluginInitializerToC.startImplementStockByTime("2025-01-31 00:00:00", "2025-01-31 23:59:59", "0"); // soSaleReturnPluginInitializerToC.startImplementStockByTime("2025-01-31 00:00:00", "2025-01-31 23:59:59", "0");
@ -105,5 +107,20 @@ public class SoSaleReturnPluginInitializerToCTest {
// BdBusitypeEntity bdBusitypeEntity4 = queryBdBusitypeUtil.queryBdBusitype("TOC售后完成"); // BdBusitypeEntity bdBusitypeEntity4 = queryBdBusitypeUtil.queryBdBusitype("TOC售后完成");
// System.out.println("TOC售后完成:" + bdBusitypeEntity4.getPkBusitype()); // System.out.println("TOC售后完成:" + bdBusitypeEntity4.getPkBusitype());
// try {
// String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";
// SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
//
// String closedAt = "2025-01-01 12:01:00";
// String tradeSuccessAt = "2025-01-02 17:00:00";
// Date closedAtDate = sdf.parse(closedAt);
// Date tradeSuccessAtDate = sdf.parse(tradeSuccessAt);
//
// System.out.println(closedAtDate.before(tradeSuccessAtDate));
// } catch (Exception e) {
// e.printStackTrace();
// }
} }
} }

View File

@ -167,7 +167,7 @@ public class temButtom {
@Test @Test
public void test01() { public void test01() {
String a = AESUtil.encrypt("hzya1314"); String a = AESUtil.encrypt("Aa123!");
System.out.println(a); System.out.println(a);
String b = AESUtil.decrypt("62e4295b615a30dbf3b8ee96f41c820b"); String b = AESUtil.decrypt("62e4295b615a30dbf3b8ee96f41c820b");
System.out.println(b); System.out.println(b);

View File

@ -80,6 +80,10 @@ public class StockinOrderSearchResponse extends ReturnMessageBasics {
private String shipFromMobile; private String shipFromMobile;
private String returnWaybillCode; private String returnWaybillCode;
private String returnCarrier; private String returnCarrier;
//入库时间标记
//1.情况2有交易成功时间且退货入库时间早于交易完成时间️这里是正向的交易完成时间
//2.有交易成功时间且退货入库时间晚于交易成功时间
private String storageTimeStamp;
} }
@Data @Data
@ -129,6 +133,14 @@ public class StockinOrderSearchResponse extends ReturnMessageBasics {
private String sourceOrderCode; private String sourceOrderCode;
private String sourceLineNum; private String sourceLineNum;
//入库时间标记
//1.情况2有交易成功时间且退货入库时间早于交易完成时间️这里是正向的交易完成时间
//2.有交易成功时间且退货入库时间晚于交易成功时间
private String storageTimeStamp;
private String def15;
} }
} }
} }