Commit a17e2693 authored by shiyu's avatar shiyu

计算账单

parent 8aaa3d9f
...@@ -156,6 +156,7 @@ public class SysFinanceServiceImpl implements SysFinanceService { ...@@ -156,6 +156,7 @@ public class SysFinanceServiceImpl implements SysFinanceService {
DistributionOrder distributionOrder = distributionOrderDao.findById(distributionOrderId); DistributionOrder distributionOrder = distributionOrderDao.findById(distributionOrderId);
DistributorProfit distributorProfit = distributorProfitDao.findById(distributionOrderId); DistributorProfit distributorProfit = distributorProfitDao.findById(distributionOrderId);
SupplierItem supplierItem = supplierItemDao.findById(distributionOrder.getItemId()); SupplierItem supplierItem = supplierItemDao.findById(distributionOrder.getItemId());
userOrderBillVo.setAccountPeriod(dto.getAccountPeriod());
userOrderBillVo.setDistributionOrderId(distributionOrderId); userOrderBillVo.setDistributionOrderId(distributionOrderId);
userOrderBillVo.setItemName(supplierItem.getName()); userOrderBillVo.setItemName(supplierItem.getName());
userOrderBillVo.setHomePageImage(MediaUtil.getHomePageImage(supplierItem.getImages(), supplierItem.getVideos())); userOrderBillVo.setHomePageImage(MediaUtil.getHomePageImage(supplierItem.getImages(), supplierItem.getVideos()));
......
package com.wwdz.ch.admin.impl;
import com.wwdz.ch.admin.service.SysUserBillService;
import com.wwdz.ch.core.consts.BillEnum;
import com.wwdz.ch.core.consts.CommConsts;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.IdUtils;
import com.wwdz.ch.db.dao.distribution.DistributorProfitDao;
import com.wwdz.ch.db.dao.distribution.UserBillDao;
import com.wwdz.ch.db.domain.distribution.DistributionOrder;
import com.wwdz.ch.db.domain.distribution.DistributorProfit;
import com.wwdz.ch.db.domain.distribution.UserBill;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.concurrent.TimeUnit;
@Service
public class SysUserBillServiceImpl implements SysUserBillService {
private static final Logger logger = LoggerFactory.getLogger(SysUserBillServiceImpl.class);
private static final String COUNT_ORDER_PROFIT_KEY = "COUNT_ORDER_PROFIT_KEY:";
@Autowired
RedissonClient redissonClient;
@Autowired
UserBillDao userBillDao;
@Autowired
DistributorProfitDao distributorProfitDao;
@Transactional
@Override
public Result finishCalculate(DistributionOrder distributionOrder) throws Exception{
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
//账期
String accountPeriod = formatter.format(distributionOrder.getCreateTime());
String key = COUNT_ORDER_PROFIT_KEY + accountPeriod + ":" + distributionOrder.getSellerId();
RLock lock = redissonClient.getLock(key);
try {
//计算卖家实时账单明细user_bill
if (!lock.tryLock(10, 10, TimeUnit.SECONDS)) {
logger.warn("订单号:{}, 账期为:{}, 用户id:{}, 订单完成后计算订单账单ERROR获取锁失败 ERROR !!!!", distributionOrder.getDistributionOrderId(), accountPeriod, distributionOrder.getSellerId());
throw new Exception("订单完成后计算订单账单获取锁失败");
}
DistributorProfit distributorProfit = distributorProfitDao.findById(distributionOrder.getDistributionOrderId());
//订单金额
long orderAmount = distributionOrder.getAmount();
//平台佣金
long channelCost = distributorProfit.getChannelCost();
//介绍佣金
long introduceCost = distributorProfit.getIntroduceCost();
//卖家实际收益
long sellerProfitAmount = distributorProfit.getProfit();
UserBill userBill = userBillDao.findOne(accountPeriod, distributionOrder.getSellerId(), BillEnum.BillStateEnum.NOT_PAID.getCode());
UserBill updateBill = new UserBill();
//订单待入账要减去这笔订单的利润,同时已到账金额要加上这笔订单的金额
long orderWaitEntryAmount = userBill.getOrderWaitEntryAmount() - sellerProfitAmount;
long orderEntryAmount = userBill.getOrderEntryAmount() + sellerProfitAmount;
userBill.setOrderWaitEntryAmount(orderWaitEntryAmount);
userBill.setOrderEntryAmount(orderEntryAmount);
if (distributionOrder.getShareRecordId().equals(distributionOrder.getSellerId())) {
//表示介绍人是卖家自己
long newIntroduceWaitEntryAmount = userBill.getIntroduceWaitEntryAmount() - introduceCost;
long newIntroduceEntryAmount = userBill.getIntroduceEntryAmount() + introduceCost;
userBill.setIntroduceWaitEntryAmount(newIntroduceWaitEntryAmount);
userBill.setIntroduceEntryAmount(newIntroduceEntryAmount);
}
updateBill.setTotalWaitEntryAmount(userBill.getOrderWaitEntryAmount() + userBill.getIntroduceWaitEntryAmount());
updateBill.setTotalEntryAmount(userBill.getOrderEntryAmount() + userBill.getIntroduceEntryAmount());
userBillDao.updateByPrimaryKey(userBill);
return Result.success();
} catch (Exception e) {
logger.error("************ 订单完成后计算订单账单ERROR: {}", e);
throw new Exception("订单完成后计算订单账单ERROR");
} finally {
if (lock != null && lock.isHeldByCurrentThread()) {
lock.unlock();
logger.info("======================== 订单号:{}, 订单完成后计算订单账单释放锁成功 ========================", distributionOrder.getDistributionOrderId());
}
}
}
}
package com.wwdz.ch.admin.job; package com.wwdz.ch.admin.job;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.wwdz.ch.admin.service.SysUserBillService;
import com.wwdz.ch.core.api.LogisticsApi; import com.wwdz.ch.core.api.LogisticsApi;
import com.wwdz.ch.core.consts.BillEnum; import com.wwdz.ch.core.consts.BillEnum;
import com.wwdz.ch.core.consts.DistributionEnum; import com.wwdz.ch.core.consts.DistributionEnum;
...@@ -11,9 +12,11 @@ import com.wwdz.ch.core.entity.TrailInfo; ...@@ -11,9 +12,11 @@ import com.wwdz.ch.core.entity.TrailInfo;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dao.distribution.DistributionOrderDao; import com.wwdz.ch.db.dao.distribution.DistributionOrderDao;
import com.wwdz.ch.db.dao.distribution.UserAccountDetailDao; import com.wwdz.ch.db.dao.distribution.UserAccountDetailDao;
import com.wwdz.ch.db.dao.distribution.UserBillDao;
import com.wwdz.ch.db.domain.User; import com.wwdz.ch.db.domain.User;
import com.wwdz.ch.db.domain.distribution.DistributionOrder; import com.wwdz.ch.db.domain.distribution.DistributionOrder;
import com.wwdz.ch.db.domain.distribution.SpecialPerformance; import com.wwdz.ch.db.domain.distribution.SpecialPerformance;
import com.wwdz.ch.db.domain.distribution.UserBill;
import com.wwdz.ch.db.dto.request.UserRequestDto; import com.wwdz.ch.db.dto.request.UserRequestDto;
import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto; import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto;
import com.wwdz.ch.db.dto.request.distribution.SpecialPerformanceRequestDto; import com.wwdz.ch.db.dto.request.distribution.SpecialPerformanceRequestDto;
...@@ -26,6 +29,8 @@ import org.slf4j.LoggerFactory; ...@@ -26,6 +29,8 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.time.Duration; import java.time.Duration;
...@@ -52,6 +57,12 @@ public class RefreshLogisticsJob { ...@@ -52,6 +57,12 @@ public class RefreshLogisticsJob {
@Autowired @Autowired
UserAccountDetailDao userAccountDetailDao; UserAccountDetailDao userAccountDetailDao;
@Autowired
UserBillDao userBillDao;
@Autowired
SysUserBillService sysUserBillService;
/** /**
* 隔4小时运行一次 * 隔4小时运行一次
*/ */
...@@ -121,6 +132,7 @@ public class RefreshLogisticsJob { ...@@ -121,6 +132,7 @@ public class RefreshLogisticsJob {
} }
} }
@Transactional
public void checkAutoSigned() { public void checkAutoSigned() {
//物流签收后7天检测自动确认收货 //物流签收后7天检测自动确认收货
boolean hasNextPage = true; boolean hasNextPage = true;
...@@ -140,9 +152,17 @@ public class RefreshLogisticsJob { ...@@ -140,9 +152,17 @@ public class RefreshLogisticsJob {
PageInfo pageInfo = new PageInfo(distributionOrderList); PageInfo pageInfo = new PageInfo(distributionOrderList);
logger.info("================ 签收时间超过七天未确认完成的订单总页数为: {}, 当前查询第 {} 页 ================", pageInfo.getPages(), pageInfo.getPageNum()); logger.info("================ 签收时间超过七天未确认完成的订单总页数为: {}, 当前查询第 {} 页 ================", pageInfo.getPages(), pageInfo.getPageNum());
for (DistributionOrder distributionOrder : distributionOrderList) { for (DistributionOrder distributionOrder : distributionOrderList) {
distributionOrderDao.updateState(distributionOrder.getDistributionOrderId(), DistributionEnum.DistributionOrderStateEnum.FINISH.getCode()); try {
//关联的订单账单,用户账户的待入账金额改为已入账 distributionOrderDao.updateState(distributionOrder.getDistributionOrderId(), DistributionEnum.DistributionOrderStateEnum.FINISH.getCode());
userAccountDetailDao.updateState(distributionOrder.getDistributionOrderId(), BillEnum.AccountDetailStateEnum.ENTRY.getCode()); //关联的订单账单,用户账户的待入账金额改为已入账
userAccountDetailDao.updateState(distributionOrder.getDistributionOrderId(), BillEnum.AccountDetailStateEnum.ENTRY.getCode());
//调整用户的月度账单
sysUserBillService.finishCalculate(distributionOrder);
} catch (Exception e) {
logger.error("订单自动完成,更新账单失败:{}", e);
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
}
logger.info(">>>>>>>>>>>>>> 订单号:{}, 签收时间超过七天系统自动完成订单 <<<<<<<<<<<<<<<"); logger.info(">>>>>>>>>>>>>> 订单号:{}, 签收时间超过七天系统自动完成订单 <<<<<<<<<<<<<<<");
} }
hasNextPage = pageInfo.isHasNextPage(); hasNextPage = pageInfo.isHasNextPage();
......
package com.wwdz.ch.admin.service;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.domain.distribution.DistributionOrder;
public interface SysUserBillService {
/**
* 订单完成后计算账单
* @param distributionOrder
* @return
*/
Result finishCalculate(DistributionOrder distributionOrder) throws Exception;
}
...@@ -26,6 +26,8 @@ import com.wwdz.ch.core.service.SendMsgService; ...@@ -26,6 +26,8 @@ import com.wwdz.ch.core.service.SendMsgService;
import com.wwdz.ch.db.dto.request.distribution.IdentifyOrderRequestDto; import com.wwdz.ch.db.dto.request.distribution.IdentifyOrderRequestDto;
import com.wwdz.ch.wx.service.distribution.IdentifyOrderService; import com.wwdz.ch.wx.service.distribution.IdentifyOrderService;
import com.wwdz.ch.wx.service.distribution.SupplierItemService; import com.wwdz.ch.wx.service.distribution.SupplierItemService;
import com.wwdz.ch.wx.service.distribution.UserAccountDetailService;
import com.wwdz.ch.wx.service.distribution.UserBillService;
import com.xxdxxs.utils.JsonUtils; import com.xxdxxs.utils.JsonUtils;
import com.xxdxxs.utils.StringUtils; import com.xxdxxs.utils.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
...@@ -102,6 +104,12 @@ public class WxPayCallbackController { ...@@ -102,6 +104,12 @@ public class WxPayCallbackController {
@Autowired @Autowired
UserAccountDetailDao userAccountDetailDao; UserAccountDetailDao userAccountDetailDao;
@Autowired
UserBillService userBillService;
@Autowired
UserAccountDetailService userAccountDetailService;
@RequestMapping(value ="/getPayNotify") @RequestMapping(value ="/getPayNotify")
public String payNotify(HttpServletRequest request) throws IOException { public String payNotify(HttpServletRequest request) throws IOException {
logger.info("------------------ 收到微信支付回调通知 ------------------"); logger.info("------------------ 收到微信支付回调通知 ------------------");
...@@ -297,19 +305,10 @@ public class WxPayCallbackController { ...@@ -297,19 +305,10 @@ public class WxPayCallbackController {
//更新库存 //更新库存
supplierItemService.reduceStock(distributionOrder.getItemId(), distributionOrder.getItemNum()); supplierItemService.reduceStock(distributionOrder.getItemId(), distributionOrder.getItemNum());
logger.info(">>>>>>>>>>>> 竞拍订单,微信支付回调通知处理成功,更新拍卖订单状态和商品库存 <<<<<<<<<<<<"); logger.info(">>>>>>>>>>>> 竞拍订单,微信支付回调通知处理成功,更新拍卖订单状态和商品库存 <<<<<<<<<<<<");
//用户首次购买的话,即绑定该分销商 //新增用户账户的明细,调整月度账单
/* boolean isExisted = distributorBindDao.isExisted(distributionOrder.getBuyerId()); DistributorProfit distributorProfit = distributorProfitDao.findById(distributionOrderId);
if (!isExisted) { userAccountDetailService.create(distributionOrder, distributorProfit);
Date now = new Date();
DistributorBind distributorBind = new DistributorBind();
distributorBind.setUserId(distributionOrder.getBuyerId());
distributorBind.setDistributorId(distributionOrder.getSellerId());
distributorBind.setCreateTime(now);
distributorBind.setUpdateTime(now);
distributorBind.setBindShareId(distributionOrder.getShareRecordId());
distributorBind.setIsValid(true);
distributorBindDao.insert(distributorBind);
}*/
//更新拍品配置中的状态为"成交" //更新拍品配置中的状态为"成交"
auctionConfigDao.updateState(distributionOrder.getItemId(), AuctionEnum.StateEnum.DEALED.getCode()); auctionConfigDao.updateState(distributionOrder.getItemId(), AuctionEnum.StateEnum.DEALED.getCode());
return Result.success(); return Result.success();
......
...@@ -3,19 +3,14 @@ package com.wwdz.ch.wx.impl.distribution; ...@@ -3,19 +3,14 @@ package com.wwdz.ch.wx.impl.distribution;
import com.wwdz.ch.core.consts.BillEnum; import com.wwdz.ch.core.consts.BillEnum;
import com.wwdz.ch.core.consts.CommConsts; import com.wwdz.ch.core.consts.CommConsts;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.IdUtils;
import com.wwdz.ch.db.dao.distribution.UserAccountDetailDao; import com.wwdz.ch.db.dao.distribution.UserAccountDetailDao;
import com.wwdz.ch.db.dao.distribution.UserBillDao; import com.wwdz.ch.db.dao.distribution.UserBillDao;
import com.wwdz.ch.db.domain.distribution.DistributionOrder; import com.wwdz.ch.db.domain.distribution.DistributionOrder;
import com.wwdz.ch.db.domain.distribution.DistributorProfit; import com.wwdz.ch.db.domain.distribution.DistributorProfit;
import com.wwdz.ch.db.domain.distribution.UserAccountDetail; import com.wwdz.ch.db.domain.distribution.UserAccountDetail;
import com.wwdz.ch.db.domain.distribution.UserBill;
import com.wwdz.ch.wx.service.distribution.UserAccountDetailService; import com.wwdz.ch.wx.service.distribution.UserAccountDetailService;
import com.wwdz.ch.wx.service.distribution.UserBillService; import com.wwdz.ch.wx.service.distribution.UserBillService;
import com.wwdz.ch.wx.util.RedisUtil;
import com.xxdxxs.utils.StringUtils; import com.xxdxxs.utils.StringUtils;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -23,9 +18,6 @@ import org.springframework.stereotype.Service; ...@@ -23,9 +18,6 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.concurrent.TimeUnit;
@Service @Service
public class UserAccountDetailServiceImpl implements UserAccountDetailService { public class UserAccountDetailServiceImpl implements UserAccountDetailService {
...@@ -47,8 +39,6 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService { ...@@ -47,8 +39,6 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService {
@Transactional(propagation=Propagation.REQUIRED) @Transactional(propagation=Propagation.REQUIRED)
@Override @Override
public Result create(DistributionOrder distributionOrder, DistributorProfit distributorProfit) throws Exception { public Result create(DistributionOrder distributionOrder, DistributorProfit distributorProfit) throws Exception {
try { try {
//订单金额 //订单金额
long orderAmount = distributionOrder.getAmount(); long orderAmount = distributionOrder.getAmount();
...@@ -66,8 +56,8 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService { ...@@ -66,8 +56,8 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService {
userAccountDetail.setAmount(sellerProfitAmount); userAccountDetail.setAmount(sellerProfitAmount);
userAccountDetail.setType(BillEnum.AccountDetailTypeEnum.ORDER.getCode()); userAccountDetail.setType(BillEnum.AccountDetailTypeEnum.ORDER.getCode());
userAccountDetail.setFundType(BillEnum.FundTypeEnum.INCOME.getCode()); userAccountDetail.setFundType(BillEnum.FundTypeEnum.INCOME.getCode());
//创建订单时状态是无效,等买家付款后变为待入账,订单完成变成已入账 //买家付款后为待入账,订单完成变成已入账
userAccountDetail.setState(BillEnum.AccountDetailStateEnum.INVALID.getCode()); userAccountDetail.setState(BillEnum.AccountDetailStateEnum.WAIT_ENTRY.getCode());
userAccountDetail.setCreateTime(distributionOrder.getCreateTime()); userAccountDetail.setCreateTime(distributionOrder.getCreateTime());
userAccountDetailDao.insert(userAccountDetail); userAccountDetailDao.insert(userAccountDetail);
...@@ -78,8 +68,8 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService { ...@@ -78,8 +68,8 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService {
channelAccountDetail.setAmount(channelCost); channelAccountDetail.setAmount(channelCost);
channelAccountDetail.setType(BillEnum.AccountDetailTypeEnum.CHANNEL.getCode()); channelAccountDetail.setType(BillEnum.AccountDetailTypeEnum.CHANNEL.getCode());
channelAccountDetail.setFundType(BillEnum.FundTypeEnum.INCOME.getCode()); channelAccountDetail.setFundType(BillEnum.FundTypeEnum.INCOME.getCode());
//创建订单时状态是无效,等买家付款后变为待入账,订单完成变成已入账 //买家付款后为待入账,订单完成变成已入账
channelAccountDetail.setState(BillEnum.AccountDetailStateEnum.INVALID.getCode()); channelAccountDetail.setState(BillEnum.AccountDetailStateEnum.WAIT_ENTRY.getCode());
channelAccountDetail.setCreateTime(distributionOrder.getCreateTime()); channelAccountDetail.setCreateTime(distributionOrder.getCreateTime());
userAccountDetailDao.insert(channelAccountDetail); userAccountDetailDao.insert(channelAccountDetail);
...@@ -95,13 +85,13 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService { ...@@ -95,13 +85,13 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService {
introduceAccountDetail.setAmount(introduceCost); introduceAccountDetail.setAmount(introduceCost);
introduceAccountDetail.setType(BillEnum.AccountDetailTypeEnum.INTRODUCE.getCode()); introduceAccountDetail.setType(BillEnum.AccountDetailTypeEnum.INTRODUCE.getCode());
introduceAccountDetail.setFundType(BillEnum.FundTypeEnum.INCOME.getCode()); introduceAccountDetail.setFundType(BillEnum.FundTypeEnum.INCOME.getCode());
//创建订单时状态是无效,等买家付款后变为待入账,订单完成变成已入账 //买家付款后为待入账,订单完成变成已入账
introduceAccountDetail.setState(BillEnum.AccountDetailStateEnum.INVALID.getCode()); introduceAccountDetail.setState(BillEnum.AccountDetailStateEnum.WAIT_ENTRY.getCode());
introduceAccountDetail.setCreateTime(distributionOrder.getCreateTime()); introduceAccountDetail.setCreateTime(distributionOrder.getCreateTime());
userAccountDetailDao.insert(introduceAccountDetail); userAccountDetailDao.insert(introduceAccountDetail);
//计算 //计算用户账单
userBillService.calculate(distributionOrder, distributorProfit); userBillService.payCalculate(distributionOrder, distributorProfit);
return Result.success(); return Result.success();
} catch (Exception e) { } catch (Exception e) {
logger.error("新增用户账户明细error:{}", e); logger.error("新增用户账户明细error:{}", e);
......
...@@ -4,6 +4,7 @@ import com.wwdz.ch.core.consts.BillEnum; ...@@ -4,6 +4,7 @@ import com.wwdz.ch.core.consts.BillEnum;
import com.wwdz.ch.core.consts.CommConsts; import com.wwdz.ch.core.consts.CommConsts;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.IdUtils; import com.wwdz.ch.core.util.IdUtils;
import com.wwdz.ch.db.dao.distribution.DistributorProfitDao;
import com.wwdz.ch.db.dao.distribution.UserBillDao; import com.wwdz.ch.db.dao.distribution.UserBillDao;
import com.wwdz.ch.db.domain.distribution.DistributionOrder; import com.wwdz.ch.db.domain.distribution.DistributionOrder;
import com.wwdz.ch.db.domain.distribution.DistributorProfit; import com.wwdz.ch.db.domain.distribution.DistributorProfit;
...@@ -35,9 +36,12 @@ public class UserBillServiceImpl implements UserBillService { ...@@ -35,9 +36,12 @@ public class UserBillServiceImpl implements UserBillService {
@Autowired @Autowired
UserBillDao userBillDao; UserBillDao userBillDao;
@Autowired
DistributorProfitDao distributorProfitDao;
@Transactional @Transactional
@Override @Override
public Result calculate(DistributionOrder distributionOrder, DistributorProfit distributorProfit) throws Exception { public Result payCalculate(DistributionOrder distributionOrder, DistributorProfit distributorProfit) throws Exception {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM"); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
//账期 //账期
String accountPeriod = formatter.format(distributionOrder.getCreateTime()); String accountPeriod = formatter.format(distributionOrder.getCreateTime());
...@@ -107,9 +111,4 @@ public class UserBillServiceImpl implements UserBillService { ...@@ -107,9 +111,4 @@ public class UserBillServiceImpl implements UserBillService {
} }
} }
@Transactional
@Override
public Result calculateByOrderId(String distributionOrderId) {
return null;
}
} }
...@@ -9,7 +9,7 @@ public interface UserAccountDetailService { ...@@ -9,7 +9,7 @@ public interface UserAccountDetailService {
/** /**
* 新增用户账户明细 * 新增用户账户明细
* @param dto * @param distributionOrder, distributorProfit
* @return * @return
*/ */
Result create(DistributionOrder distributionOrder, DistributorProfit distributorProfit) throws Exception; Result create(DistributionOrder distributionOrder, DistributorProfit distributorProfit) throws Exception;
......
...@@ -7,13 +7,12 @@ import com.wwdz.ch.db.domain.distribution.DistributorProfit; ...@@ -7,13 +7,12 @@ import com.wwdz.ch.db.domain.distribution.DistributorProfit;
public interface UserBillService { public interface UserBillService {
/** /**
* 计算账单 * 订单付款后计算账单
* @param distributionOrder * @param distributionOrder
* @param distributorProfit * @param distributorProfit
* @return * @return
*/ */
Result calculate(DistributionOrder distributionOrder, DistributorProfit distributorProfit) throws Exception; Result payCalculate(DistributionOrder distributionOrder, DistributorProfit distributorProfit) throws Exception;
Result calculateByOrderId(String distributionOrderId);
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment