定时同步U8被删除的销售出库单

This commit is contained in:
liujie 2024-07-23 11:51:02 +08:00
parent 9d8ecd8f54
commit d101a6ff1d
5 changed files with 86 additions and 1 deletions

View File

@ -1,8 +1,11 @@
package com.yb.lb.webapp.ueight.job;
import com.yb.lb.common.utils.DateUtil;
import com.yb.lb.common.utils.ErrorUtils;
import com.yb.lb.common.utils.FINALCMD;
import com.yb.lb.webapp.Invoice.service.CrmInvoiceService;
import com.yb.lb.webapp.message.service.MessageService;
import com.yb.lb.webapp.u8.ueight.service.CustomerService;
import com.yb.lb.webapp.u8.ueight.service.OrderCronService;
import com.yb.lb.webapp.u8.ueight.service.OrderUeightService;
import org.slf4j.Logger;
@ -10,6 +13,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -25,6 +29,10 @@ public class OrderU8Controller {
MessageService messageService;
@Autowired
OrderCronService orderCronService;
@Autowired
CrmInvoiceService crmInvoiceService;
@Autowired
CustomerService customerService;
public Map<String, Object> findClassOne() {
Map<String, Object> result = new HashMap<>();
@ -61,7 +69,27 @@ public class OrderU8Controller {
*/
public void delOrder() {
try {
//查询sqlserver2的008账套
String time = DateUtil.getDay();
Map params = new HashMap();
//第一次不添加时间参数
if (!"2024-07-24".equals(time)) {
params.put("isTime", "1");
}
List<Map> deleteRdRecord32List = customerService.findU8List(params, ".findSqlServer2008List");
String invoiceInfoIds = "";
if (deleteRdRecord32List.size() > 0) {
//条件查询出库单主表主键
for (Map deleteRdRecordMap : deleteRdRecord32List) {
Map map = crmInvoiceService.oneById(deleteRdRecordMap, ".selectOneByCondition");
if (map != null) {
invoiceInfoIds += map.get("id") + "-";
}
}
//删除子表及关联的主表
crmInvoiceService.delInvoiceDetailAndInfoByIds(invoiceInfoIds, ".delInvoiceDetailByIds");
crmInvoiceService.delInvoiceDetailAndInfoByIds(invoiceInfoIds, ".delInvoiceInfoByIds");
}
} catch (Exception e) {
logger.debug("delOrderJob-Exception:" + e.getMessage());
e.printStackTrace();

View File

@ -764,4 +764,27 @@
</where>
GROUP BY GOODS_TYPE_ID,GOODS_TYPE_NAME,REGION,NAME
</select>
<!-- 条件查询出库单主表主键 -->
<select id="selectOneByCondition" resultMap="crmInvoiceInfoMap">
SELECT id "id"
FROM
CRM_INVOICE_INFO
where
INVOICE_NO = #{cBusCode}
AND SALE_ORDER_NO = #{deletedId}
AND COMPANY_ID = decode(#{AccNo},'100','1','400','2')
</select>
<!-- 根据主表id删除子表数据 -->
<delete id="delInvoiceDetailByIds">
DELETE FROM CRM_INVOICE_DETAIL
WHERE instr(#{invoiceInfoIds},INVOICE_ID) > 0
</delete>
<!-- 根据id删除主表数据 -->
<delete id="delInvoiceInfoByIds">
DELETE FROM CRM_INVOICE_INFO
WHERE instr(#{invoiceInfoIds},id) > 0
</delete>
</mapper>

View File

@ -200,4 +200,14 @@
UPDATE crm_contact set ${attributeKey} = #{value} WHERE cCusCode = #{cCusCode} AND cContactCode = #{cContactCode}
</update>
<!-- 查询sqlserver2的008账套 -->
<select id="findSqlServer2008List" resultType="map">
select AccNo "AccNo",deleted_id "deletedId",cBusCode "cBusCode"
from deleteRdRecord32
where 1=1
<if test="isTime != null and isTime != ''">
and CAST(deletion_time as date) = CAST(GETDATE() as date)
</if>
</select>
</mapper>

View File

@ -5,6 +5,7 @@ import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ZipUtil;
import com.github.pagehelper.PageInfo;
import com.yb.lb.common.base.oracle.BaseOracleDao;
import com.yb.lb.common.base.sqlserver2.BaseSqlServer2Dao;
import com.yb.lb.common.config.UserConfig;
import com.yb.lb.common.utils.*;
import com.yb.lb.webapp.Invoice.entity.InvoiceDetail;
@ -12,8 +13,10 @@ import com.yb.lb.webapp.Invoice.entity.InvoiceInfo;
import com.yb.lb.webapp.goodsinfo.goods.entity.GoodsInfo;
import com.yb.lb.webapp.random.service.RandomService;
import com.yb.lb.webapp.redis.service.RedisService;
import com.yb.lb.webapp.u8.ueight.entity.CustomerInfo;
import com.yb.lb.webapp.u8.ueight.service.OrderUeightService;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -43,6 +46,8 @@ public class CrmInvoiceService {
OrderUeightService orderUeightService;
@Autowired
RedisService redisService;
@Autowired
BaseSqlServer2Dao<InvoiceInfo> dao2;
/**
* 新增
@ -345,4 +350,12 @@ public class CrmInvoiceService {
}
}
/**
* @description: 删除子表及关联的主表
* @author: lj
* @date: 2024/07/23
**/
public boolean delInvoiceDetailAndInfoByIds(@Param("invoiceInfoIds") String invoiceInfoIds, String id) {
return dao.delete(InvoiceInfo.class.getName() + id, invoiceInfoIds);
}
}

View File

@ -7,6 +7,7 @@ import com.yb.lb.common.utils.DateUtil;
import com.yb.lb.common.utils.ErrorUtils;
import com.yb.lb.common.utils.FINALCMD;
import com.yb.lb.common.utils.ListOrMapForJson;
import com.yb.lb.webapp.Invoice.entity.InvoiceInfo;
import com.yb.lb.webapp.u8.ueight.entity.CustomerInfo;
import com.yb.lb.webapp.u8.ueight.entity.UeightOracle;
import org.springframework.beans.factory.annotation.Autowired;
@ -348,4 +349,14 @@ public class CustomerService {
return map;
}
/**
* @description: 查询全部(sqlserver2)
* @author: lj
* @date: 2024/07/23
**/
public List findU8List(Map<String, Object> params, String id) {
return dao.list(CustomerInfo.class.getName() + id, params);
}
}