Browse Source

feat: 标签适配客户查询

muti_db
Yen 11 months ago
parent
commit
61c5e96f01
  1. 22
      src/main/java/com/qs/serve/common/model/tag/TagFiledUtil.java
  2. 8
      src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierVisitAddressController.java
  3. 19
      src/main/java/com/qs/serve/modules/bms/controller/my/BmsSupplierMyController.java
  4. 7
      src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java
  5. 2
      src/main/java/com/qs/serve/modules/bms/service/impl/BmsSupplierServiceImpl.java
  6. 13
      src/main/java/com/qs/serve/modules/tag/controller/TagDataController.java
  7. 11
      src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetLogController.java
  8. 5
      src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsBudgetWithAmount.java
  9. 6
      src/main/java/com/qs/serve/modules/tbs/mapper/TbsBudgetLog2Mapper.java
  10. 5
      src/main/java/com/qs/serve/modules/tbs/mapper/TbsBudgetLogMapper.java
  11. 1
      src/main/resources/mapper/bms/BmsSupplierMapper.xml
  12. 36
      src/main/resources/mapper/tbs/TbsBudget2Mapper.xml

22
src/main/java/com/qs/serve/common/model/tag/TagFiledUtil.java

@ -2,6 +2,8 @@ package com.qs.serve.common.model.tag;
import cn.hutool.core.collection.CollUtil;
import com.qs.serve.common.util.StringUtils;
import com.qs.serve.modules.bms.entity.BmsSupplier;
import com.qs.serve.modules.his.entity.HisUserSupplier;
import com.qs.serve.modules.tag.entity.so.TagQuery;
import com.qs.serve.modules.tbs.entity.TbsCostApply;
import com.qs.serve.modules.tbs.entity.so.VtbVerificationBatchQuery;
@ -33,6 +35,14 @@ public class TagFiledUtil {
put("supplierId","vtb_verification_batch.supplier_id");
}};
public final static Map<String,String> BmsSupplierPageMap = new HashMap<String,String>(){{
put("id","bms_supplier.id");
}};
public final static Map<String,String> HisSupplierPageMap = new HashMap<String,String>(){{
put("id","his_user_supplier.supplier_id");
}};
public static void TbsCostApplyPage(TbsCostApply param){
List<TagQuery> paramTagList = param.getTagQueryList();
List<TagQuery> newList = getNewList(paramTagList,TbsCostApplyPageMap);
@ -53,6 +63,18 @@ public class TagFiledUtil {
param.setTagQueryList(newList);
}
public static void BmsSupplierPage(BmsSupplier param){
List<TagQuery> paramTagList = param.getTagQueryList();
List<TagQuery> newList = getNewList(paramTagList,BmsSupplierPageMap);
param.setTagQueryList(newList);
}
public static void HisSupplierPage(HisUserSupplier param){
List<TagQuery> paramTagList = param.getTagQueryList();
List<TagQuery> newList = getNewList(paramTagList,HisSupplierPageMap);
param.setTagQueryList(newList);
}
/**
* 创建新的且有效性的查询参数(sql使用了非严谨写法这里做了sql注入过滤)
* @param paramTagList

8
src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierVisitAddressController.java

@ -93,9 +93,11 @@ public class BmsSupplierVisitAddressController {
if(addressVo.getSupplierId().equals(supplier.getId())){
addressVo.setSupplierCode(supplier.getCode());
addressVo.setSupplierName(supplier.getName());
BmsSupplierVisitAddress visitAddress = bmsSupplierVisitAddressService.getById(addressVo.getAddressId());
//BmsSupplierVisit visitInfo = bmsSupplierVisitService.getOne(new LambdaQueryWrapper<BmsSupplierVisit>().eq(BmsSupplierVisit::getSupplierId,supplier.getId()),false);
addressVo.setAddressInfo(visitAddress);
if(addressVo.getAddressId()!=null){
BmsSupplierVisitAddress visitAddress = bmsSupplierVisitAddressService.getById(addressVo.getAddressId());
//BmsSupplierVisit visitInfo = bmsSupplierVisitService.getOne(new LambdaQueryWrapper<BmsSupplierVisit>().eq(BmsSupplierVisit::getSupplierId,supplier.getId()),false);
addressVo.setAddressInfo(visitAddress);
}
LambdaQueryWrapper<BazVisitInfo> visitInfoLqw = new LambdaQueryWrapper<>();
visitInfoLqw.eq(BazVisitInfo::getTargetType, BazTargetTypeConsts.CUSTOMER);
visitInfoLqw.eq(BazVisitInfo::getTargetId,supplier.getId());

19
src/main/java/com/qs/serve/modules/bms/controller/my/BmsSupplierMyController.java

@ -48,6 +48,13 @@ public class BmsSupplierMyController {
private SysPostUserService postUserService;
private SysUserService sysUserService;
@PostMapping("/page")
public R<PageVo<BmsSupplier>> getPage4Post(@RequestBody BmsSupplier param){
PageUtil.setPageSize(param.getPageSize()+"");
PageUtil.setPageNum(param.getPageNum()+"");
return this.getPage(param);
}
/**
* 翻页查询我负责的
* @param param
@ -131,6 +138,18 @@ public class BmsSupplierMyController {
return R.ok(pageVo);
}
/**
* 下属翻页查询
* @param param
* @return
*/
@PostMapping("/underlingPage")
public R<PageVo<BmsSupplier>> getUnderlingPage4Post(@RequestBody BmsSupplier param){
PageUtil.setPageSize(param.getPageSize()+"");
PageUtil.setPageNum(param.getPageNum()+"");
return this.getUnderlingPage(param);
}
/**
* 下属翻页查询
* @param param

7
src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java

@ -13,10 +13,12 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler;
import com.qs.serve.common.model.tag.TagFiledUtil;
import com.qs.serve.common.util.StringUtils;
import com.qs.serve.modules.his.entity.HisUserSupplier;
import com.qs.serve.modules.his.entity.HisUserSupplierTemp;
import com.qs.serve.modules.sys.entity.dto.SysUserVo;
import com.qs.serve.modules.tag.entity.so.TagQuery;
import lombok.Data;
import org.apache.ibatis.type.JdbcType;
import org.hibernate.validator.constraints.Length;
@ -380,6 +382,10 @@ public class BmsSupplier implements Serializable {
@TableField(exist = false)
private String otherUserIdsString;
/** 标签查询 */
@TableField(exist = false)
List<TagQuery> tagQueryList;
/**
* 对应是supplierFlag
*/
@ -447,6 +453,7 @@ public class BmsSupplier implements Serializable {
userSupplier.setCountAddr(this.getCountAddr());
userSupplier.setCountAddrFlag(this.getCountAddrFlag());
userSupplier.setCostFlag(this.costFlag);
userSupplier.setTagQueryList(this.tagQueryList);
return userSupplier;
}

2
src/main/java/com/qs/serve/modules/bms/service/impl/BmsSupplierServiceImpl.java

@ -3,6 +3,7 @@ package com.qs.serve.modules.bms.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.model.tag.TagFiledUtil;
import com.qs.serve.common.util.*;
import com.qs.serve.modules.bms.entity.BmsRegion;
import com.qs.serve.modules.bms.entity.BmsRegion2;
@ -48,6 +49,7 @@ public class BmsSupplierServiceImpl extends ServiceImpl<BmsSupplierMapper,BmsSup
@Override
public List<BmsSupplier> selectSupplierList(BmsSupplier bmsSupplier) {
TagFiledUtil.BmsSupplierPage(bmsSupplier);
return baseMapper.selectSupplierList(bmsSupplier);
}

13
src/main/java/com/qs/serve/modules/tag/controller/TagDataController.java

@ -79,6 +79,19 @@ public class TagDataController {
return R.ok(tagDataVoList);
}
/**
* 获取标签数据(LIST)
* @param query
* @return
*/
@GetMapping("batchQueryList")
public R<?> batchQueryList(TagData query){
//忽略日期拦截
query.setIgnoreDateFlag(1);
List<TagData> tagDataList = tagDataService.selectList(query);
return R.ok(tagDataList);
}
/**
* 获取标签数据(PAGE)
* @param query

11
src/main/java/com/qs/serve/modules/tbs/controller/TbsBudgetLogController.java

@ -13,8 +13,10 @@ import com.qs.serve.common.util.PageUtil;
import com.qs.serve.common.util.CopierUtil;
import com.qs.serve.modules.tbs.entity.TbsBudget;
import com.qs.serve.modules.tbs.entity.TbsScheduleItemBudget;
import com.qs.serve.modules.tbs.entity.dto.TbsBudgetLogWithAmount;
import com.qs.serve.modules.tbs.entity.so.TbsBudgetSo;
import com.qs.serve.modules.tbs.entity.vo.TbsBudgetVo;
import com.qs.serve.modules.tbs.mapper.TbsBudgetLog2Mapper;
import com.qs.serve.modules.tbs.mapper.TbsBudgetLogMapper;
import com.qs.serve.modules.tbs.mapper.TbsBudgetMapper;
import com.qs.serve.modules.tbs.service.TbsBudgetReleaseApplicationService;
@ -51,6 +53,7 @@ public class TbsBudgetLogController {
private TbsBudgetLogService tbsBudgetLogService;
private TbsBudgetService tbsBudgetService;
private TbsBudgetLogMapper tbsBudgetLogMapper;
private TbsBudgetLog2Mapper tbsBudgetLog2Mapper;
private final TbsBudgetMapper tbsBudgetMapper;
private TbsScheduleItemBudgetService tbsScheduleItemBudgetService;
private TbsBudgetLogService budgetLogService;
@ -201,6 +204,14 @@ public class TbsBudgetLogController {
BigDecimal unUsedBudgetAmount = tbsBudgetLogList.stream().map(TbsBudgetLog::getAmount)
.reduce(BigDecimal.ZERO,BigDecimal::add);
BigDecimal sumPolicyAmt = tbsBudgetLogList.stream().filter(b->b.getPolicyId()!=null).map(TbsBudgetLog::getAmount)
.reduce(BigDecimal.ZERO,BigDecimal::add);
// 费用退回的金额
TbsBudgetLogWithAmount backAmt = tbsBudgetLog2Mapper.getSumBackAmt(budgetId,a.getId());
a.setSumCostBackAmount(backAmt==null?BigDecimal.ZERO:backAmt.getAmt());
a.setSumPolicyAmount(sumPolicyAmt);
a.setFinalBudgetAmount(finalBudgetAmount);
a.setUnUsedBudgetAmount(unUsedBudgetAmount);
a.setUsedBudgetAmount(usedBudgetAmount);

5
src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsBudgetWithAmount.java

@ -50,6 +50,11 @@ public class TbsBudgetWithAmount {
*/
BigDecimal costUsingAmt = BigDecimal.ZERO;
/**
* 费用申请-申请中的退回预算
*/
BigDecimal costBackAmt = BigDecimal.ZERO;
/**
* 费用申请-申请中的预算
*/

6
src/main/java/com/qs/serve/modules/tbs/mapper/TbsBudgetLog2Mapper.java

@ -41,6 +41,12 @@ public interface TbsBudgetLog2Mapper extends BaseMapper<TbsBudgetLog> {
@InterceptorIgnore(tenantLine = "true")
List<TbsBudgetLogWithAmount> getSumAmtInList(@Param("selectIds") List<Long> ids, @Param("optNumbers")List<Integer> optNumbers);
@InterceptorIgnore(tenantLine = "true")
List<TbsBudgetLogWithAmount> getSumBackAmtInList(@Param("selectIds") List<Long> ids);
@InterceptorIgnore(tenantLine = "true")
TbsBudgetLogWithAmount getSumBackAmt(@Param("budgetId") Long budgetId,@Param("scheduleItemBudgetId") Long scheduleItemBudgetId);
/**
* 统计budget金额

5
src/main/java/com/qs/serve/modules/tbs/mapper/TbsBudgetLogMapper.java

@ -18,6 +18,11 @@ import java.util.List;
*/
public interface TbsBudgetLogMapper extends BaseMapper<TbsBudgetLog> {
@Select("SELECT cost_apply_id FROM `tbs_budget_log` " +
"WHERE `budget_id` = #{budgetId} AND `del_flag` = '0' and cost_apply_id is not null\n" +
"group by cost_apply_id")
List<Long> getBudgetCostIds(Long budgetId);
@Select("SELECT count(1) FROM `tbs_budget_log` WHERE cost_apply_id = #{errorCostId} AND del_flag = '3'")
Long countErrorCostId(@Param("errorCostId")Long errorCostId );

1
src/main/resources/mapper/bms/BmsSupplierMapper.xml

@ -193,6 +193,7 @@
and TRIM(`bms_supplier`.`region_last`) != '' and TRIM(`bms_supplier`.`region2_last`) != ''
</if>
</if>
<include refid="com.qs.serve.modules.tag.mapper.TagDataMapper.tagSelectSql"></include>
</where>
ORDER BY `bms_supplier`.`update_time` DESC
</select>

36
src/main/resources/mapper/tbs/TbsBudget2Mapper.xml

@ -73,6 +73,42 @@
group by schedule_item_budget_id
</select>
<select id="getSumBackAmtInList" resultType="com.qs.serve.modules.tbs.entity.dto.TbsBudgetLogWithAmount">
SELECT
budget_id as id,
schedule_item_budget_id as itemid,
sum(tbs_budget_log.amount) as amt
FROM `tbs_budget_log`
left join tbs_cost_apply on tbs_cost_apply.id = tbs_budget_log.cost_apply_id
WHERE
tbs_budget_log.`del_flag` = '0'
and tbs_cost_apply.del_flag = '0'
and tbs_cost_apply.charge_state = 4
AND budget_id in
<foreach collection="selectIds" item ="selectId" index="i" open="(" close=")" separator=",">
#{selectId}
</foreach>
group by schedule_item_budget_id
</select>
<select id="getSumBackAmt" resultType="com.qs.serve.modules.tbs.entity.dto.TbsBudgetLogWithAmount">
SELECT
budget_id as id,
schedule_item_budget_id as itemid,
sum(tbs_budget_log.amount) as amt
FROM `tbs_budget_log`
left join tbs_cost_apply on tbs_cost_apply.id = tbs_budget_log.cost_apply_id
WHERE
tbs_budget_log.`del_flag` = '0'
and tbs_cost_apply.del_flag = '0'
and tbs_cost_apply.charge_state = 4
AND budget_id = #{budgetId}
and schedule_item_budget_id = #{scheduleItemBudgetId}
group by schedule_item_budget_id
</select>
<select id="getSumAmtNotInList" resultType="com.qs.serve.modules.tbs.entity.dto.TbsBudgetLogWithAmount">
select
budget_id as id,

Loading…
Cancel
Save