|
@@ -3,29 +3,34 @@ package com.sckw.payment.service;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.github.pagehelper.PageInfo;
|
|
|
|
|
+import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
|
import com.sckw.core.exception.BusinessException;
|
|
import com.sckw.core.exception.BusinessException;
|
|
|
import com.sckw.core.model.page.PageRes;
|
|
import com.sckw.core.model.page.PageRes;
|
|
|
|
|
+import com.sckw.core.utils.CollectionUtils;
|
|
|
import com.sckw.core.utils.IdWorker;
|
|
import com.sckw.core.utils.IdWorker;
|
|
|
|
|
+import com.sckw.core.utils.OrderGenerateUtils;
|
|
|
|
|
+import com.sckw.order.api.dubbo.TradeOrderInfoService;
|
|
|
|
|
+import com.sckw.order.api.model.OrderDetailRes;
|
|
|
import com.sckw.payment.dao.KwpLedgerTradeMapper;
|
|
import com.sckw.payment.dao.KwpLedgerTradeMapper;
|
|
|
-import com.sckw.payment.model.KwpLedgerTrade;
|
|
|
|
|
-import com.sckw.payment.model.KwpLedgerTradeTrack;
|
|
|
|
|
-import com.sckw.payment.model.KwpLedgerTradeUnit;
|
|
|
|
|
-import com.sckw.payment.model.KwpSettlementTrade;
|
|
|
|
|
|
|
+import com.sckw.payment.model.*;
|
|
|
import com.sckw.payment.model.constant.LedgerEnum;
|
|
import com.sckw.payment.model.constant.LedgerEnum;
|
|
|
import com.sckw.payment.model.constant.LedgerTrackEnum;
|
|
import com.sckw.payment.model.constant.LedgerTrackEnum;
|
|
|
import com.sckw.payment.model.constant.TradeUnitType;
|
|
import com.sckw.payment.model.constant.TradeUnitType;
|
|
|
|
|
+import com.sckw.payment.model.dto.LedgerCountVo;
|
|
|
import com.sckw.payment.model.dto.LedgerTradeDto;
|
|
import com.sckw.payment.model.dto.LedgerTradeDto;
|
|
|
import com.sckw.payment.model.vo.req.*;
|
|
import com.sckw.payment.model.vo.req.*;
|
|
|
-import lombok.AllArgsConstructor;
|
|
|
|
|
|
|
+import com.sckw.system.api.RemoteSystemService;
|
|
|
|
|
+import com.sckw.system.api.model.dto.res.SysDictResDto;
|
|
|
|
|
+import jakarta.annotation.Resource;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
+import org.apache.dubbo.config.annotation.DubboReference;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
|
-import java.util.ArrayList;
|
|
|
|
|
-import java.util.List;
|
|
|
|
|
-import java.util.Objects;
|
|
|
|
|
|
|
+import java.util.*;
|
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* @author xucaiqin
|
|
* @author xucaiqin
|
|
@@ -33,14 +38,44 @@ import java.util.Objects;
|
|
|
*/
|
|
*/
|
|
|
|
|
|
|
|
@Service
|
|
@Service
|
|
|
-@AllArgsConstructor
|
|
|
|
|
@Slf4j
|
|
@Slf4j
|
|
|
public class KwpLedgerTradeService extends AbsLedger {
|
|
public class KwpLedgerTradeService extends AbsLedger {
|
|
|
- private final KwpLedgerTradeMapper tradeMapper;
|
|
|
|
|
- private final KwpLedgerTradeTrackService tradeTrackService;
|
|
|
|
|
- private final KwpLedgerTradeOrderService tradeOrderService;
|
|
|
|
|
- private final KwpSettlementTradeService settlementTradeService;
|
|
|
|
|
- private final KwpLedgerTradeUnitService tradeUnitService;
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private KwpLedgerTradeMapper tradeMapper;
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private KwpLedgerTradeTrackService tradeTrackService;
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private KwpLedgerTradeOrderService tradeOrderService;
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private KwpSettlementTradeService settlementTradeService;
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private KwpLedgerTradeUnitService tradeUnitService;
|
|
|
|
|
+ @DubboReference(version = "2.0.0", group = "design", check = false)
|
|
|
|
|
+ private RemoteSystemService remoteSystemService;
|
|
|
|
|
+ @DubboReference(version = "2.0.0", group = "design", check = false)
|
|
|
|
|
+ private TradeOrderInfoService tradeOrderInfoService;
|
|
|
|
|
+
|
|
|
|
|
+ private void changeDict(List<LedgerTradeDto> list) {
|
|
|
|
|
+ List<SysDictResDto> taxRateDict = remoteSystemService.queryDictByType(DictTypeEnum.TAX_RATE.getType());
|
|
|
|
|
+ Map<String, String> taxRateMap = new HashMap<>();
|
|
|
|
|
+ Map<String, String> tradingMap = new HashMap<>();
|
|
|
|
|
+
|
|
|
|
|
+ if (!CollectionUtils.isEmpty(taxRateDict)) {
|
|
|
|
|
+ taxRateMap = taxRateDict.stream().collect(Collectors.toMap(SysDictResDto::getValue, SysDictResDto::getLabel, (a, b) -> a));
|
|
|
|
|
+ }
|
|
|
|
|
+ List<SysDictResDto> tradingDict = remoteSystemService.queryDictByType(DictTypeEnum.TRADE_TYPE.getType());
|
|
|
|
|
+ if (!CollectionUtils.isEmpty(tradingDict)) {
|
|
|
|
|
+ tradingMap = tradingDict.stream().collect(Collectors.toMap(SysDictResDto::getValue, SysDictResDto::getLabel, (a, b) -> a));
|
|
|
|
|
+ }
|
|
|
|
|
+ for (LedgerTradeDto tradeDto : list) {
|
|
|
|
|
+ Integer trading = tradeDto.getTrading();
|
|
|
|
|
+ tradeDto.setTradingLabel(tradingMap.get(String.valueOf(trading)));
|
|
|
|
|
+ Integer taxRate = tradeDto.getTaxRate();
|
|
|
|
|
+ tradeDto.setTaxRateLabel(taxRateMap.get(String.valueOf(taxRate)));
|
|
|
|
|
+
|
|
|
|
|
+ tradeDto.setStatusLabel(LedgerEnum.getDesc(tradeDto.getStatus()));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 分页查询对账单列表
|
|
* 分页查询对账单列表
|
|
@@ -51,6 +86,10 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
public PageRes<LedgerTradeDto> pageList(TradeReq tradeReq) {
|
|
public PageRes<LedgerTradeDto> pageList(TradeReq tradeReq) {
|
|
|
PageHelper.startPage(tradeReq.getPage(), tradeReq.getPageSize());
|
|
PageHelper.startPage(tradeReq.getPage(), tradeReq.getPageSize());
|
|
|
List<LedgerTradeDto> ledgerTradeDto = tradeMapper.pageSelect(tradeReq);
|
|
List<LedgerTradeDto> ledgerTradeDto = tradeMapper.pageSelect(tradeReq);
|
|
|
|
|
+ //字典转换
|
|
|
|
|
+ if (!CollectionUtils.isEmpty(ledgerTradeDto)) {
|
|
|
|
|
+ changeDict(ledgerTradeDto);
|
|
|
|
|
+ }
|
|
|
return new PageRes<>(new PageInfo<>(ledgerTradeDto));
|
|
return new PageRes<>(new PageInfo<>(ledgerTradeDto));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -67,27 +106,30 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
KwpLedgerTrade kwpLedgerTrade = new KwpLedgerTrade();
|
|
KwpLedgerTrade kwpLedgerTrade = new KwpLedgerTrade();
|
|
|
kwpLedgerTrade.setId(Objects.isNull(tradeSendReq.getId()) ? new IdWorker(1).nextId() : tradeSendReq.getId());
|
|
kwpLedgerTrade.setId(Objects.isNull(tradeSendReq.getId()) ? new IdWorker(1).nextId() : tradeSendReq.getId());
|
|
|
kwpLedgerTrade.setEntId(0L);//todo
|
|
kwpLedgerTrade.setEntId(0L);//todo
|
|
|
- kwpLedgerTrade.setTLedgerNo("");
|
|
|
|
|
kwpLedgerTrade.setName(tradeSendReq.getName());
|
|
kwpLedgerTrade.setName(tradeSendReq.getName());
|
|
|
kwpLedgerTrade.setStartTime(tradeSendReq.getStartTime());
|
|
kwpLedgerTrade.setStartTime(tradeSendReq.getStartTime());
|
|
|
kwpLedgerTrade.setEndTime(tradeSendReq.getEndTime());
|
|
kwpLedgerTrade.setEndTime(tradeSendReq.getEndTime());
|
|
|
kwpLedgerTrade.setTaxRate(tradeSendReq.getTaxRate());
|
|
kwpLedgerTrade.setTaxRate(tradeSendReq.getTaxRate());
|
|
|
- kwpLedgerTrade.setTrading(0L);
|
|
|
|
|
|
|
+ kwpLedgerTrade.setTrading(tradeSendReq.getTrading());
|
|
|
kwpLedgerTrade.setTotalPrice(tradeSendReq.getTotalPrice());
|
|
kwpLedgerTrade.setTotalPrice(tradeSendReq.getTotalPrice());
|
|
|
|
|
+ kwpLedgerTrade.setExTaxPrice(tradeSendReq.getTotalPrice());//todo 不含税金额计算方式:订单含税金额总和/1.13(税率)
|
|
|
kwpLedgerTrade.setSettlePrice(tradeSendReq.getSettlePrice());
|
|
kwpLedgerTrade.setSettlePrice(tradeSendReq.getSettlePrice());
|
|
|
kwpLedgerTrade.setActualPrice(new BigDecimal("0.0"));
|
|
kwpLedgerTrade.setActualPrice(new BigDecimal("0.0"));
|
|
|
kwpLedgerTrade.setAuditUser("");
|
|
kwpLedgerTrade.setAuditUser("");
|
|
|
kwpLedgerTrade.setAuditPhone("");
|
|
kwpLedgerTrade.setAuditPhone("");
|
|
|
kwpLedgerTrade.setGenerateTime(tradeSendReq.getGenerateTime());
|
|
kwpLedgerTrade.setGenerateTime(tradeSendReq.getGenerateTime());
|
|
|
|
|
+ kwpLedgerTrade.setReceiptTime(null);
|
|
|
|
|
+ kwpLedgerTrade.setOrderCount(tradeSendReq.getIds().size());
|
|
|
kwpLedgerTrade.setUrl("");
|
|
kwpLedgerTrade.setUrl("");
|
|
|
kwpLedgerTrade.setRemark("");
|
|
kwpLedgerTrade.setRemark("");
|
|
|
- kwpLedgerTrade.setStatus(LedgerEnum.SAVE.getStatus());
|
|
|
|
|
|
|
+ kwpLedgerTrade.setStatus(tradeSendReq.getStatus());
|
|
|
kwpLedgerTrade.setCreateBy(0L);
|
|
kwpLedgerTrade.setCreateBy(0L);
|
|
|
kwpLedgerTrade.setCreateTime(LocalDateTime.now());
|
|
kwpLedgerTrade.setCreateTime(LocalDateTime.now());
|
|
|
kwpLedgerTrade.setUpdateBy(0L);
|
|
kwpLedgerTrade.setUpdateBy(0L);
|
|
|
kwpLedgerTrade.setUpdateTime(LocalDateTime.now());
|
|
kwpLedgerTrade.setUpdateTime(LocalDateTime.now());
|
|
|
kwpLedgerTrade.setDelFlag(0);
|
|
kwpLedgerTrade.setDelFlag(0);
|
|
|
if (Objects.isNull(tradeSendReq.getId())) {
|
|
if (Objects.isNull(tradeSendReq.getId())) {
|
|
|
|
|
+ kwpLedgerTrade.setTLedgerNo(OrderGenerateUtils.generateOrderNo("TL"));
|
|
|
tradeMapper.insert(kwpLedgerTrade);
|
|
tradeMapper.insert(kwpLedgerTrade);
|
|
|
} else {
|
|
} else {
|
|
|
tradeMapper.updateById(kwpLedgerTrade);
|
|
tradeMapper.updateById(kwpLedgerTrade);
|
|
@@ -96,6 +138,29 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
/*保存贸易订单关联数据*/
|
|
/*保存贸易订单关联数据*/
|
|
|
List<Long> ids = tradeSendReq.getIds();
|
|
List<Long> ids = tradeSendReq.getIds();
|
|
|
//todo dubbo拿取销售订单数据
|
|
//todo dubbo拿取销售订单数据
|
|
|
|
|
+ List<OrderDetailRes> resList = new ArrayList<>();
|
|
|
|
|
+ for (Long id : ids) {
|
|
|
|
|
+ OrderDetailRes orderDetailById = tradeOrderInfoService.getOrderDetailById(id);
|
|
|
|
|
+ if (Objects.isNull(orderDetailById)) {
|
|
|
|
|
+ throw new BusinessException("订单未找到");
|
|
|
|
|
+ }
|
|
|
|
|
+ resList.add(orderDetailById);
|
|
|
|
|
+ }
|
|
|
|
|
+ List<KwpLedgerTradeOrder> collect = resList.stream().map(a -> {
|
|
|
|
|
+ KwpLedgerTradeOrder kwpLedgerTradeOrder = new KwpLedgerTradeOrder();
|
|
|
|
|
+ kwpLedgerTradeOrder.setId(new IdWorker(1).nextId());
|
|
|
|
|
+ kwpLedgerTradeOrder.setTLedgerId(kwpLedgerTrade.getId());
|
|
|
|
|
+ kwpLedgerTradeOrder.setTOrderId(a.getId());
|
|
|
|
|
+ kwpLedgerTradeOrder.setRemark("");
|
|
|
|
|
+ kwpLedgerTradeOrder.setStatus(0);
|
|
|
|
|
+ kwpLedgerTradeOrder.setCreateBy(0L);
|
|
|
|
|
+ kwpLedgerTradeOrder.setCreateTime(LocalDateTime.now());
|
|
|
|
|
+ kwpLedgerTradeOrder.setUpdateBy(0L);
|
|
|
|
|
+ kwpLedgerTradeOrder.setUpdateTime(LocalDateTime.now());
|
|
|
|
|
+ kwpLedgerTradeOrder.setDelFlag(0);
|
|
|
|
|
+ return kwpLedgerTradeOrder;
|
|
|
|
|
+ }).collect(Collectors.toList());
|
|
|
|
|
+ tradeOrderService.saveList(collect);
|
|
|
/*保存企业单位相关信息*/
|
|
/*保存企业单位相关信息*/
|
|
|
//todo dubbo拿取采购客户单位的信息
|
|
//todo dubbo拿取采购客户单位的信息
|
|
|
Long purchaseEntId = tradeSendReq.getPurchaseEntId();
|
|
Long purchaseEntId = tradeSendReq.getPurchaseEntId();
|
|
@@ -119,6 +184,26 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
kwpLedgerTradeUnit.setDelFlag(0);
|
|
kwpLedgerTradeUnit.setDelFlag(0);
|
|
|
|
|
|
|
|
list.add(kwpLedgerTradeUnit);
|
|
list.add(kwpLedgerTradeUnit);
|
|
|
|
|
+ //非客户企业方,通过登录用户获取顶级企业
|
|
|
|
|
+ KwpLedgerTradeUnit sellLedgerTradeUnit = new KwpLedgerTradeUnit();
|
|
|
|
|
+ sellLedgerTradeUnit.setId(new IdWorker(1).nextId());
|
|
|
|
|
+ sellLedgerTradeUnit.setTLedgerId(kwpLedgerTrade.getId());
|
|
|
|
|
+ sellLedgerTradeUnit.setTLedgerNo(kwpLedgerTrade.getTLedgerNo());
|
|
|
|
|
+ sellLedgerTradeUnit.setUnitType(TradeUnitType.SELL);
|
|
|
|
|
+ sellLedgerTradeUnit.setEntId(purchaseEntId);//todo
|
|
|
|
|
+ sellLedgerTradeUnit.setTopEntId(0L);
|
|
|
|
|
+ sellLedgerTradeUnit.setFirmName("");
|
|
|
|
|
+ sellLedgerTradeUnit.setContacts("");
|
|
|
|
|
+ sellLedgerTradeUnit.setPhone("");
|
|
|
|
|
+ sellLedgerTradeUnit.setRemark("");
|
|
|
|
|
+ sellLedgerTradeUnit.setStatus(0);
|
|
|
|
|
+ sellLedgerTradeUnit.setCreateBy(0L);
|
|
|
|
|
+ sellLedgerTradeUnit.setCreateTime(LocalDateTime.now());
|
|
|
|
|
+ sellLedgerTradeUnit.setUpdateBy(0L);
|
|
|
|
|
+ sellLedgerTradeUnit.setUpdateTime(LocalDateTime.now());
|
|
|
|
|
+ sellLedgerTradeUnit.setDelFlag(0);
|
|
|
|
|
+ list.add(sellLedgerTradeUnit);
|
|
|
|
|
+
|
|
|
tradeUnitService.saveList(list);
|
|
tradeUnitService.saveList(list);
|
|
|
return kwpLedgerTrade.getId();
|
|
return kwpLedgerTrade.getId();
|
|
|
}
|
|
}
|
|
@@ -131,10 +216,12 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
*/
|
|
*/
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public String sendLedger(TradeSendReq tradeSendReq) {
|
|
public String sendLedger(TradeSendReq tradeSendReq) {
|
|
|
|
|
+ log.info("保存对账单入参:{}", JSONObject.toJSONString(tradeSendReq));
|
|
|
Long id = tradeSendReq.getId();
|
|
Long id = tradeSendReq.getId();
|
|
|
if (Objects.isNull(id)) {
|
|
if (Objects.isNull(id)) {
|
|
|
//新增
|
|
//新增
|
|
|
tradeSendReq.setGenerateTime(LocalDateTime.now());
|
|
tradeSendReq.setGenerateTime(LocalDateTime.now());
|
|
|
|
|
+ tradeSendReq.setStatus(LedgerEnum.TO_LEDGER.getStatus());
|
|
|
Long aLong = saveDraft(tradeSendReq);
|
|
Long aLong = saveDraft(tradeSendReq);
|
|
|
tradeTrackService.saveTrack(aLong, "", LedgerTrackEnum.TO_LEDGER);
|
|
tradeTrackService.saveTrack(aLong, "", LedgerTrackEnum.TO_LEDGER);
|
|
|
} else {
|
|
} else {
|
|
@@ -142,6 +229,7 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
removeDraft(id);
|
|
removeDraft(id);
|
|
|
//在新增
|
|
//在新增
|
|
|
tradeSendReq.setGenerateTime(LocalDateTime.now());
|
|
tradeSendReq.setGenerateTime(LocalDateTime.now());
|
|
|
|
|
+ tradeSendReq.setStatus(LedgerEnum.TO_LEDGER.getStatus());
|
|
|
Long aLong = saveDraft(tradeSendReq);
|
|
Long aLong = saveDraft(tradeSendReq);
|
|
|
tradeTrackService.saveTrack(aLong, "", LedgerTrackEnum.TO_LEDGER);
|
|
tradeTrackService.saveTrack(aLong, "", LedgerTrackEnum.TO_LEDGER);
|
|
|
|
|
|
|
@@ -159,6 +247,7 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
public String sendLedgerDraft(TradeSendReq tradeSendReq) {
|
|
public String sendLedgerDraft(TradeSendReq tradeSendReq) {
|
|
|
log.info("贸易对账单保存草稿:{}", JSONObject.toJSONString(tradeSendReq));
|
|
log.info("贸易对账单保存草稿:{}", JSONObject.toJSONString(tradeSendReq));
|
|
|
tradeSendReq.setGenerateTime(null);
|
|
tradeSendReq.setGenerateTime(null);
|
|
|
|
|
+ tradeSendReq.setStatus(LedgerEnum.SAVE.getStatus());
|
|
|
Long aLong = saveDraft(tradeSendReq);
|
|
Long aLong = saveDraft(tradeSendReq);
|
|
|
tradeTrackService.saveTrack(aLong, "", LedgerTrackEnum.SAVE);
|
|
tradeTrackService.saveTrack(aLong, "", LedgerTrackEnum.SAVE);
|
|
|
return "草稿保存成功";
|
|
return "草稿保存成功";
|
|
@@ -172,6 +261,7 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
}
|
|
}
|
|
|
deleteCheck(kwpLedgerTrade.getStatus());
|
|
deleteCheck(kwpLedgerTrade.getStatus());
|
|
|
kwpLedgerTrade.setDelFlag(1);
|
|
kwpLedgerTrade.setDelFlag(1);
|
|
|
|
|
+ kwpLedgerTrade.setUpdateTime(LocalDateTime.now());
|
|
|
tradeMapper.updateById(kwpLedgerTrade);
|
|
tradeMapper.updateById(kwpLedgerTrade);
|
|
|
tradeTrackService.saveTrack(kwpLedgerTrade.getId(), "", LedgerTrackEnum.DELETE);
|
|
tradeTrackService.saveTrack(kwpLedgerTrade.getId(), "", LedgerTrackEnum.DELETE);
|
|
|
return "删除成功";
|
|
return "删除成功";
|
|
@@ -203,7 +293,6 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
*/
|
|
*/
|
|
|
public List<KwpLedgerTradeTrack> queryBack(Long id) {
|
|
public List<KwpLedgerTradeTrack> queryBack(Long id) {
|
|
|
return tradeTrackService.selectList(id, LedgerTrackEnum.REJECT);
|
|
return tradeTrackService.selectList(id, LedgerTrackEnum.REJECT);
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -217,6 +306,10 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
if (Objects.isNull(kwpLedgerTrade)) {
|
|
if (Objects.isNull(kwpLedgerTrade)) {
|
|
|
throw new BusinessException("对账单不存在!");
|
|
throw new BusinessException("对账单不存在!");
|
|
|
}
|
|
}
|
|
|
|
|
+ backCheck(kwpLedgerTrade.getStatus());
|
|
|
|
|
+ kwpLedgerTrade.setStatus(LedgerEnum.BACK.getStatus());
|
|
|
|
|
+ kwpLedgerTrade.setUpdateTime(LocalDateTime.now());
|
|
|
|
|
+ tradeMapper.updateById(kwpLedgerTrade);
|
|
|
return tradeTrackService.saveTrack(ledgerReq.getId(), ledgerReq.getRemark(), LedgerTrackEnum.REJECT);
|
|
return tradeTrackService.saveTrack(ledgerReq.getId(), ledgerReq.getRemark(), LedgerTrackEnum.REJECT);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -226,11 +319,13 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
* @param confirmReq
|
|
* @param confirmReq
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public Integer confirmOrder(LedgerConfirmReq confirmReq) {
|
|
public Integer confirmOrder(LedgerConfirmReq confirmReq) {
|
|
|
KwpLedgerTrade kwpLedgerTrade = tradeMapper.selectById(confirmReq.getId());
|
|
KwpLedgerTrade kwpLedgerTrade = tradeMapper.selectById(confirmReq.getId());
|
|
|
if (Objects.isNull(kwpLedgerTrade)) {
|
|
if (Objects.isNull(kwpLedgerTrade)) {
|
|
|
throw new BusinessException("对账单不存在!");
|
|
throw new BusinessException("对账单不存在!");
|
|
|
}
|
|
}
|
|
|
|
|
+ confirmCheck(kwpLedgerTrade.getStatus());
|
|
|
kwpLedgerTrade.setStatus(LedgerEnum.LEDGERED.getStatus());
|
|
kwpLedgerTrade.setStatus(LedgerEnum.LEDGERED.getStatus());
|
|
|
kwpLedgerTrade.setAuditPhone(confirmReq.getAuditPhone());
|
|
kwpLedgerTrade.setAuditPhone(confirmReq.getAuditPhone());
|
|
|
kwpLedgerTrade.setAuditUser(confirmReq.getAuditUser());
|
|
kwpLedgerTrade.setAuditUser(confirmReq.getAuditUser());
|
|
@@ -254,6 +349,7 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
}
|
|
}
|
|
|
successCheck(kwpLedgerTrade.getStatus());
|
|
successCheck(kwpLedgerTrade.getStatus());
|
|
|
|
|
|
|
|
|
|
+ kwpLedgerTrade.setReceiptTime(ledgerReq.getReceiptTime());
|
|
|
kwpLedgerTrade.setStatus(LedgerEnum.SUCCESS.getStatus());
|
|
kwpLedgerTrade.setStatus(LedgerEnum.SUCCESS.getStatus());
|
|
|
kwpLedgerTrade.setUpdateTime(LocalDateTime.now());
|
|
kwpLedgerTrade.setUpdateTime(LocalDateTime.now());
|
|
|
tradeMapper.updateById(kwpLedgerTrade);
|
|
tradeMapper.updateById(kwpLedgerTrade);
|
|
@@ -262,11 +358,16 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
kwpSettlementTrade.setId(new IdWorker(1).nextId());
|
|
kwpSettlementTrade.setId(new IdWorker(1).nextId());
|
|
|
kwpSettlementTrade.setEntId(0L);//todo
|
|
kwpSettlementTrade.setEntId(0L);//todo
|
|
|
kwpSettlementTrade.setTLedgerId(kwpLedgerTrade.getId());
|
|
kwpSettlementTrade.setTLedgerId(kwpLedgerTrade.getId());
|
|
|
- kwpSettlementTrade.setStOrderNo(String.valueOf(new IdWorker(1).nextId()));
|
|
|
|
|
|
|
+ kwpSettlementTrade.setStOrderNo(OrderGenerateUtils.generateOrderNo("ST"));
|
|
|
kwpSettlementTrade.setName(kwpLedgerTrade.getName());
|
|
kwpSettlementTrade.setName(kwpLedgerTrade.getName());
|
|
|
kwpSettlementTrade.setTotalPrice(kwpLedgerTrade.getTotalPrice());
|
|
kwpSettlementTrade.setTotalPrice(kwpLedgerTrade.getTotalPrice());
|
|
|
kwpSettlementTrade.setActualPrice(kwpLedgerTrade.getActualPrice());
|
|
kwpSettlementTrade.setActualPrice(kwpLedgerTrade.getActualPrice());
|
|
|
kwpSettlementTrade.setRemark("");
|
|
kwpSettlementTrade.setRemark("");
|
|
|
|
|
+ kwpSettlementTrade.setAuditUser(kwpLedgerTrade.getAuditUser());
|
|
|
|
|
+ kwpSettlementTrade.setAuditPhone(kwpLedgerTrade.getAuditPhone());
|
|
|
|
|
+ kwpSettlementTrade.setSuccessUser(ledgerReq.getSuccessUser());
|
|
|
|
|
+ kwpSettlementTrade.setSuccessPhone(ledgerReq.getSuccessPhone());
|
|
|
|
|
+ kwpSettlementTrade.setReceiptTime(ledgerReq.getReceiptTime());
|
|
|
kwpSettlementTrade.setStatus(0);
|
|
kwpSettlementTrade.setStatus(0);
|
|
|
kwpSettlementTrade.setCreateBy(0L);
|
|
kwpSettlementTrade.setCreateBy(0L);
|
|
|
kwpSettlementTrade.setCreateTime(LocalDateTime.now());
|
|
kwpSettlementTrade.setCreateTime(LocalDateTime.now());
|
|
@@ -278,4 +379,25 @@ public class KwpLedgerTradeService extends AbsLedger {
|
|
|
tradeTrackService.saveTrack(ledgerReq.getId(), "", LedgerTrackEnum.SUCCESS);
|
|
tradeTrackService.saveTrack(ledgerReq.getId(), "", LedgerTrackEnum.SUCCESS);
|
|
|
return "对账完成";
|
|
return "对账完成";
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ public List<LedgerCountVo> orderCount() {
|
|
|
|
|
+ Map<String, Long> map = tradeMapper.countOrder();
|
|
|
|
|
+ LedgerCountVo ledgerCountVo;
|
|
|
|
|
+ List<LedgerCountVo> res = new ArrayList<>();
|
|
|
|
|
+ for (LedgerEnum value : LedgerEnum.values()) {
|
|
|
|
|
+ ledgerCountVo = new LedgerCountVo();
|
|
|
|
|
+ ledgerCountVo.setCount(map.get(String.valueOf(value.getStatus())));
|
|
|
|
|
+ ledgerCountVo.setLabel(value.getDesc());
|
|
|
|
|
+ ledgerCountVo.setStatus(value.getStatus());
|
|
|
|
|
+ res.add(ledgerCountVo);
|
|
|
|
|
+ }
|
|
|
|
|
+ return res;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ public List<LedgerTradeDto> selectList(List<Long> ids) {
|
|
|
|
|
+ List<LedgerTradeDto> ledgerTradeDto = tradeMapper.selectIds(ids);
|
|
|
|
|
+ changeDict(ledgerTradeDto);
|
|
|
|
|
+ return ledgerTradeDto;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|