Browse Source

对比预算接口,调整;添加我的模板列表

mssql
Yen 3 years ago
parent
commit
2e2bf251ce
  1. 49
      src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityTemplateController.java
  2. 3
      src/main/java/com/qs/serve/modules/tbs/entity/vo/TbsBudgetMatchVo.java
  3. 7
      src/main/java/com/qs/serve/modules/tbs/service/TbsActivityApplicationService.java

49
src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityTemplateController.java

@ -6,10 +6,9 @@ import com.qs.serve.common.model.dto.PageVo;
import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.model.enums.BizType;
import com.qs.serve.common.model.enums.SystemModule;
import com.qs.serve.common.util.CollectionUtil;
import com.qs.serve.common.util.PageUtil;
import com.qs.serve.common.util.CopierUtil;
import com.qs.serve.common.util.StringUtils;
import com.qs.serve.common.util.*;
import com.qs.serve.modules.bms.entity.BmsRegionUser;
import com.qs.serve.modules.bms.service.BmsRegionUserService;
import com.qs.serve.modules.tbs.entity.TbsActivityTemplateRegion;
import com.qs.serve.modules.tbs.service.TbsActivityTemplateRegionService;
import lombok.AllArgsConstructor;
@ -40,6 +39,7 @@ public class TbsActivityTemplateController {
private TbsActivityTemplateService tbsActivityTemplateService;
private TbsActivityTemplateRegionService tbsActivityTemplateRegionService;
private BmsRegionUserService bmsRegionUserService;
/**
* 列表
@ -161,5 +161,46 @@ public class TbsActivityTemplateController {
return R.ok(templates);
}
/**
* 获取当前用户的模板
* @return
*/
@GetMapping("/listMyTemplate")
public R<PageVo<TbsActivityTemplate>> listMyTemplate(){
String userId = AuthContextUtils.getSysUserId();
LambdaQueryWrapper<BmsRegionUser> regionUseLqw = new LambdaQueryWrapper<>();
regionUseLqw.eq(BmsRegionUser::getUserId,userId);
List<BmsRegionUser> regionUsers = bmsRegionUserService.list(regionUseLqw);
Map<Integer,List<BmsRegionUser>> listMap = regionUsers.stream().collect(Collectors.groupingBy(BmsRegionUser::getType));
List<BmsRegionUser> saleRegion = listMap.get(0);
List<BmsRegionUser> bizRegion = listMap.get(1);
//TODO 有重复现象
LambdaQueryWrapper<TbsActivityTemplateRegion> tempLqw = new LambdaQueryWrapper<>();
if(CollectionUtil.isNotEmpty(saleRegion)){
List<String> regionIds = saleRegion.stream().map(BmsRegionUser::getRegionId).collect(Collectors.toList());
tempLqw.or(con->{
con.eq(TbsActivityTemplateRegion::getType,"sale");
con.in(TbsActivityTemplateRegion::getRegionId,regionIds);
});
}
if(CollectionUtil.isNotEmpty(bizRegion)){
List<String> regionIds = bizRegion.stream().map(BmsRegionUser::getRegionId).collect(Collectors.toList());
tempLqw.or(con->{
con.eq(TbsActivityTemplateRegion::getType,"biz");
con.in(TbsActivityTemplateRegion::getRegionId,regionIds);
});
}
PageUtil.startPage();
List<TbsActivityTemplateRegion> templateRegions = tbsActivityTemplateRegionService.list(tempLqw);
if(CollectionUtil.isNotEmpty(templateRegions)){
List<Long> templateIds = templateRegions.stream()
.map(TbsActivityTemplateRegion::getTemplateId).collect(Collectors.toList());
List<TbsActivityTemplate> templates = tbsActivityTemplateService.listByIds(templateIds);
return R.byPageHelperList(templateRegions,templates);
}else {
return R.byEmptyList();
}
}
}

3
src/main/java/com/qs/serve/modules/tbs/entity/vo/TbsBudgetMatchVo.java

@ -29,6 +29,9 @@ public class TbsBudgetMatchVo {
/** 预算已使用金额 */
private BigDecimal usedAmount;
/** 当前活动金额 */
private BigDecimal currentAmount;
@Data
public static class BudgetVo{
/** 预算编码 */

7
src/main/java/com/qs/serve/modules/tbs/service/TbsActivityApplicationService.java

@ -14,6 +14,7 @@ import com.qs.serve.modules.tbs.common.TbsGoodsType;
import com.qs.serve.modules.tbs.common.util.TbsBudgetCostUtil;
import com.qs.serve.modules.tbs.entity.*;
import com.qs.serve.modules.tbs.entity.bo.TbsActivityBo;
import com.qs.serve.modules.tbs.entity.bo.TbsActivitySubjectBo;
import com.qs.serve.modules.tbs.entity.dto.TbsBudgetCostResult;
import com.qs.serve.modules.tbs.entity.vo.TbsBudgetMatchVo;
import com.qs.serve.modules.tbs.entity.vo.TbsBudgetTableVo;
@ -125,6 +126,12 @@ public class TbsActivityApplicationService {
totalAllHisAmount = totalBudgetHisAmount.add(totalBudgetHisAmount);
}
}
//统计当前活动金额
BigDecimal totalCurrent = BigDecimal.ZERO;
for (TbsActivitySubjectBo subjectBo : activityBo.getActivitySubjectList()) {
totalCurrent = totalCurrent.add(subjectBo.getAmount());
}
budgetMatchVo.setCurrentAmount(totalCurrent);
budgetMatchVo.setBudgetVoList(matchVos);
budgetMatchVo.setUsedAmount(totalAllHisAmount);
budgetMatchVo.setTotalAmount(totalAllAmount);

Loading…
Cancel
Save