Browse Source

客户字段冗余调整

mssql
Yen 3 years ago
parent
commit
63e5febcb2
  1. 2
      src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java
  2. 9
      src/main/java/com/qs/serve/modules/tbs/entity/TbsActivityCenterGoods.java
  3. 11
      src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetCostItem.java
  4. 7
      src/main/java/com/qs/serve/modules/tbs/service/TbsCostApplyService.java
  5. 7
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityServiceImpl.java
  6. 11
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java
  7. 8
      src/main/java/com/qs/serve/modules/vtb/entity/VtbFundFlow.java
  8. 6
      src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationService.java
  9. 14
      src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java

2
src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java

@ -354,7 +354,7 @@ public class TbsCostApplyController {
apply.setId(costApply.getId());
apply.setChargeState(TbsCostApplyState.State_5_stop.getCode());
tbsCostApplyService.updateById(apply);
//todo 释放预算费用
tbsCostApplyService.releaseCost(costApply.getId(), 1);
return R.ok();
}else if ("next".equals(flag)){
return R.ok();

9
src/main/java/com/qs/serve/modules/tbs/entity/TbsActivityCenterGoods.java

@ -188,6 +188,15 @@ public class TbsActivityCenterGoods implements Serializable {
/** 模板唯一健 */
private String tmpUk;
/** 客户id */
private Long supplierId;
/** 客户编码 */
private String supplierCode;
/** 客户名称 */
private String supplierName;
@TableField(exist = false)
private String spuName;

11
src/main/java/com/qs/serve/modules/tbs/entity/TbsBudgetCostItem.java

@ -46,6 +46,15 @@ public class TbsBudgetCostItem implements Serializable {
@NotNull(message = "活动id不能为空")
private Long activityId;
/** 客户id */
private Long supplierId;
/** 客户编码 */
private String supplierCode;
/** 客户名称 */
private String supplierName;
/** 科目id */
@NotNull(message = "科目id不能为空")
private Long subjectId;
@ -205,7 +214,7 @@ public class TbsBudgetCostItem implements Serializable {
/** TbsActivityCenterGoods的id */
private Long centerGoodItemId;
/** todo 是否无效(退回,拒绝时使用) */
/** 是否无效(退回,拒绝时使用,释放则不计入预算占用) */
private Integer invalidFlag;

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

@ -17,5 +17,12 @@ public interface TbsCostApplyService extends IService<TbsCostApply> {
*/
void commitApply(String id);
/**
* 释放预算占用
* @param costApplyId
* @param invalidFlag 1-释放0-重新绑定
*/
void releaseCost(Long costApplyId,Integer invalidFlag);
}

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

@ -137,7 +137,7 @@ public class TbsActivityServiceImpl extends ServiceImpl<TbsActivityMapper,TbsAct
//产品成本配占比
Map<String,BigDecimal> checkAmountMap = new HashMap<>();
List<TbsActivityCenterGoods> activityCenterGoodsList = new ArrayList<>();
this.initCenterGoods(activityBo,subjectMap,centerDtoMap,checkAmountMap,activityGoodsList,activityCenterGoodsList,costApply,activity);
this.initCenterGoods(activityBo,subjectMap,centerDtoMap,checkAmountMap,activityGoodsList,activityCenterGoodsList,costApply,activity,supplier);
//校验金额和比率
Map<Long,List<TbsActivityCenterGoods>> actCenterGoodsMap = activityCenterGoodsList.stream().collect(Collectors.groupingBy(TbsActivityCenterGoods::getSubjectId));
for (Long subjectId : actCenterGoodsMap.keySet()) {
@ -245,11 +245,14 @@ public class TbsActivityServiceImpl extends ServiceImpl<TbsActivityMapper,TbsAct
Map<String,BigDecimal> checkAmountMap,
List<TbsActivityGoods> activityGoodsList,
List<TbsActivityCenterGoods> activityCenterGoodsList,
TbsCostApply costApply,TbsActivity activity){
TbsCostApply costApply,TbsActivity activity,BmsSupplier supplier){
for (int i = 0; i < activityBo.getActivityCenterGoodsList().size(); i++) {
TbsActivityCenterGoodsBo centerGoodsBo = activityBo.getActivityCenterGoodsList().get(i);
BmsSubject subject = subjectMap.get(centerGoodsBo.getSubjectId());
TbsActivityCenterGoods centerGoods = new TbsActivityCenterGoods();
centerGoods.setSupplierId(Long.parseLong(supplier.getId()));
centerGoods.setSupplierCode(supplier.getCode());
centerGoods.setSubjectName(supplier.getName());
centerGoods.setCenterGoodsCode(activity.getActivityCode()+"_"+(i+1));
centerGoods.setTmpUk(centerGoodsBo.getTmpUk());
//设置成本中心

11
src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java

@ -1,5 +1,6 @@
package com.qs.serve.modules.tbs.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.util.Assert;
@ -57,6 +58,8 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
TbsBudgetCostResult result = budgetApplicationService.buildBudgetCostResult(tbsCostApply.getId(),true,false);
SysUser sysUser = sysUserService.getById(AuthContextUtils.getSysUserId());
sysUser.checkSyAccount();
//恢复绑定
this.releaseCost(tbsCostApply.getId(),0);
if(tbsCostApply.getChargeState().equals(TbsCostApplyState.State_0_unPublish.getCode())){
Map<String, Object> data = new HashMap<>(10);
data.put("empId",sysUser.getCode());
@ -98,5 +101,13 @@ public class TbsCostApplyServiceImpl extends ServiceImpl<TbsCostApplyMapper,TbsC
}
}
@Override
public void releaseCost(Long costApplyId,Integer invalidFlag) {
LambdaQueryWrapper<TbsBudgetCostItem> lqw = new LambdaQueryWrapper<>();
lqw.eq(TbsBudgetCostItem::getCostApplyId,costApplyId);
TbsBudgetCostItem costItem = new TbsBudgetCostItem();
costItem.setInvalidFlag(invalidFlag);
budgetCostItemService.update(costItem,lqw);
}
}

8
src/main/java/com/qs/serve/modules/vtb/entity/VtbFundFlow.java

@ -145,5 +145,13 @@ public class VtbFundFlow implements Serializable {
@TableField(exist = false)
private BigDecimal tempBalance;
/** 客户id */
private Long supplierId;
/** 客户编码 */
private String supplierCode;
/** 客户名称 */
private String supplierName;
}

6
src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationService.java

@ -42,12 +42,6 @@ public interface VtbVerificationService extends IService<VtbVerification> {
*/
void successCommit(Long verificationId);
/**
* 释放费用占用不更改核销状态
* @param verificationId
*/
void releaseVerification(Long verificationId);
/**
* 检测释放正在核销
* @param activityId

14
src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java

@ -81,6 +81,9 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe
public void release(Long activityId) {
SysUser sysUser = sysUserService.getById(AuthContextUtils.getSysUserId());
TbsActivity activity = activityService.getById(activityId);
if(activity.getActivityState().equals(TbsActivityState.STATE_0_Todo)){
Assert.throwEx("活动状态非待核销状态,操作失败");
}
TbsCostApply costApply = costApplyService.getById(activity.getCostApplyId());
if(!costApply.getChargeState().equals(TbsCostApplyState.State_2_actioning.getCode())){
Assert.throwEx("状态不支持释放活动费用");
@ -408,13 +411,12 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe
fundFlowService.saveBatch(addFundFlowList);
//更新已用费用记录
fundFlowService.flushActivityAmount(verification.getActivityId());
//todo 更新客户金额
//fundFlow绑定考核期项,用于合计预算使用情况
}
@Override
public void releaseVerification(Long verificationId) {
//todo shi
LambdaQueryWrapper<VtbVerificationSubject> subjectLqw = new LambdaQueryWrapper<>();
subjectLqw.eq(VtbVerificationSubject::getVerificationId,verificationId);
VtbVerificationSubject subjectParam = new VtbVerificationSubject();
subjectParam.setEffectiveFlag(1);
verificationSubjectService.update(subjectParam,subjectLqw);
}
/**

Loading…
Cancel
Save