From e3ac616c2a3ef63073a454b9c91e6bff1e4243d0 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 26 六月 2024 18:45:26 +0800
Subject: [PATCH] 提交一把
---
server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java | 92 +++++++++++++++++++++++++++++++++++++++++----
1 files changed, 83 insertions(+), 9 deletions(-)
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
index ee90ea3..b4a0eac 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
@@ -966,11 +966,6 @@
Constants.ApplyLogType applyLogType = Constants.ApplyLogType.CA_COMPANY_COMMIT;
ApplyLog log = new ApplyLog(applyChange,applyLogType.getName(),"",applyChange.getId(),applyLogType.getKey(), null, null);
applyLogMapper.insert(log);
-
-// if(1==1){
-// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀛樺湪杩涜涓殑鍔犲噺淇�/鎹㈠巶鐢宠");
-// }
-
return applyChange.getId();
}
@@ -1754,6 +1749,80 @@
}
@Override
+ public List<ApplyChange> monthTotalList(ApplyChange model){
+ if(model.getApplyId() ==null || model.getYear() == null){
+ return new ArrayList<>();
+ }
+ MPJLambdaWrapper<ApplyChange> queryWrapper = new MPJLambdaWrapper<>();
+ queryWrapper
+ .select("count(t.id)",ApplyChange::getCountNum)
+ .select("sum(t.fee)",ApplyChange::getFee)
+ .select("DATE_FORMAT(t.create_date, '%Y-%m')",ApplyChange::getMonth)
+ .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId)
+ .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
+ .eq(!Objects.isNull(model.getType()),ApplyChange::getType,model.getType())
+ .eq(ApplyChange::getApplyId,model.getApplyId())
+ .eq(!Objects.isNull(model.getStatus())&&!model.getStatus().equals(Constants.ApplyChangeStatus.RETURN_APPLY_UPLOAD.getKey()),ApplyChange::getStatus,model.getStatus())
+ .in(!Objects.isNull(model.getStatus())&&model.getStatus().equals(Constants.ApplyChangeStatus.RETURN_APPLY_UPLOAD.getKey()),
+ ApplyChange::getStatus,
+ Constants.ApplyChangeStatus.RETURN_APPLY_UPLOAD.getKey(),
+ Constants.ApplyChangeStatus.RETURN_APPLY_SIGNATURE.getKey())
+ .eq(!Objects.isNull(model.getSolutionType()),Solutions::getType,model.getSolutionType())
+ .eq(!Objects.isNull(model.getBaseSolutionsId()),Solutions::getBaseId,model.getBaseSolutionsId())
+ .like(StringUtils.isNotBlank(model.getSolutionsName()),Solutions::getName,model.getSolutionsName())
+ .ge( ApplyChange::getCreateDate, model.getYear()+"-01-01 00:00:00" )
+ .lt(ApplyChange::getCreateDate, (model.getYear()+1)+"-01-01 00:00:00")
+ .groupBy("month" );
+ /* LoginUserInfo loginUserInfo =(LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ //浼佷笟浜哄憳鏌ョ湅鏈紒涓氭暟鎹�
+ if(loginUserInfo.getType().equals(Constants.ONE)){
+ queryWrapper.eq(InsuranceApply::getCompanyId, loginUserInfo.getCompanyId());
+ }else if(loginUserInfo.getType().equals(Constants.TWO)){
+ //濡傛灉鏄晢鎴锋煡鐪�
+ if(model.getSolutionType()!=null && model.getSolutionType() ==0){
+ queryWrapper.exists("select cs.id from company_solution cs where cs.isdeleted=0 and cs.company_id=t1.company_id and cs.shop_id="+loginUserInfo.getCompanyId());
+ }else if(model.getSolutionType()!=null && model.getSolutionType() ==1){
+ queryWrapper.eq(Solutions::getShopId,loginUserInfo.getCompanyId());
+ }else{
+ queryWrapper.apply("((t2.type=0 and exists(select cs.id from company_solution cs where cs.isdeleted=0 and cs.company_id=t1.company_id and cs.shop_id="+loginUserInfo.getCompanyId()+")) or (" +
+ "t2.type=1 and t2.shop_id="+loginUserInfo.getCompanyId()+"))") ;
+ }
+ }else{
+ if(loginUserInfo.getCompanyIdList()!=null && loginUserInfo.getCompanyIdList().size()>0){
+ queryWrapper.in(InsuranceApply::getCompanyId, loginUserInfo.getCompanyIdList());
+ }else{
+ queryWrapper.eq(InsuranceApply::getCompanyId, -1);
+ }
+ queryWrapper.eq(model.getCompanyId()!=null,InsuranceApply::getCompanyId, model.getCompanyId());
+ }*/
+
+ List<ApplyChange> list =applyChangeJoinMapper.selectJoinList(ApplyChange.class,queryWrapper);
+ List<ApplyChange> result = new ArrayList<>();
+ for (int i = 1; i <= 12; i++) {
+ if(i<10){
+ result.add(getMonthDayFromList(model.getYear() +"-0"+i,list));
+ }else{
+ result.add(getMonthDayFromList(model.getYear() +"-"+i,list));
+ }
+ }
+ return result;
+
+ }
+
+ private ApplyChange getMonthDayFromList(String s, List<ApplyChange> list) {
+ for(ApplyChange d : list){
+ if(StringUtils.equals(s,d.getMonth())){
+ return d;
+ }
+ }
+ ApplyChange d = new ApplyChange();
+ d.setMonth(s);
+ d.setFee(new BigDecimal(0));
+ d.setCountNum(0);
+ return d;
+ }
+
+ @Override
public List<ApplyChange> findListForCompany(ApplyChange model) {
MPJLambdaWrapper<ApplyChange> queryWrapper = new MPJLambdaWrapper<>();
queryWrapper
@@ -2251,10 +2320,15 @@
// }
BigDecimal sumPrice = Objects.isNull(insuranceApply.getServerCost())?solutions.getPrice():solutions.getPrice().add(insuranceApply.getServerCost());
CountCyclePriceVO returnCountCyclePriceVO = new CountCyclePriceVO();
- returnCountCyclePriceVO.setCyclePrice(Constants.addFee(solutions,
- sumPrice
- ,insuranceApply.getStartTime(),insuranceApply.getFinalEndTime(),
- DateUtil.afterDateByType(applyChangeCyclePriceDTO.getValidTime(),0,solutions.getAddValidDays()),insuranceApply.getEndTime()));
+ Date addStartTime = DateUtil.afterDateByType(applyChangeCyclePriceDTO.getValidTime(),0,solutions.getAddValidDays());
+ if(addStartTime.getTime()<insuranceApply.getStartTime().getTime()){
+ returnCountCyclePriceVO.setCyclePrice(solutions.getPrice());
+ }else{
+ returnCountCyclePriceVO.setCyclePrice(Constants.addFee(solutions,
+ sumPrice
+ ,insuranceApply.getStartTime(),insuranceApply.getFinalEndTime(),addStartTime
+ ,insuranceApply.getEndTime()));
+ }
BigDecimal reducePrice = solutions.getPrice().subtract(Constants.reduceFee(solutions,
sumPrice
,insuranceApply.getStartTime(),insuranceApply.getFinalEndTime()
--
Gitblit v1.9.3