add 处理历史数据接口
This commit is contained in:
+2
@@ -347,4 +347,6 @@ public interface ISysBaseAPI extends CommonAPI {
|
||||
* @param templateParas 参数
|
||||
*/
|
||||
void sendMessage(String phone, String sender,String templateId,String signature,String templateParas);
|
||||
|
||||
List<JSONObject> getLogByRequestParam(String requestParam);
|
||||
}
|
||||
|
||||
+128
-1
@@ -10,17 +10,21 @@ import com.jero.common.mapper.ProjectDetailMapper;
|
||||
import com.jero.common.service.ProjectDetailService;
|
||||
import com.jero.common.service.ProjectPackService;
|
||||
import com.jero.common.service.SendMessageService;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.PasswordUtil;
|
||||
import com.jero.config.StaticConfig;
|
||||
import com.jero.contract.common.PayIncomeContractCommon;
|
||||
import com.jero.meeting.entity.PayMeetingSituation;
|
||||
import com.jero.meeting.mapper.PayMeetingSituationMapper;
|
||||
import com.jero.member.entity.PayMemberProject;
|
||||
import com.jero.member.entity.PayMemberProjectSubitem;
|
||||
import com.jero.member.entity.TbCertificatePayment;
|
||||
import com.jero.member.entity.TbMemberProjectSubitem;
|
||||
import com.jero.member.mapper.PayMemberProjectSubitemMapper;
|
||||
import com.jero.member.mapper.TbCertificatePaymentMapper;
|
||||
import com.jero.member.mapper.TbMemberProjectSubitemMapper;
|
||||
import com.jero.member.service.IPayMemberProjectService;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.pack.common.PackCommon;
|
||||
@@ -45,6 +49,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -85,6 +90,10 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
||||
private TbMemberProjectSubitemMapper tbMemberProjectSubitemMapper;
|
||||
@Resource
|
||||
private TbCertificatePaymentMapper certificatePaymentMapper;
|
||||
@Resource
|
||||
private ISysBaseAPI sysBaseAPI;
|
||||
@Resource
|
||||
private IPayMemberProjectService payMemberProjectService;
|
||||
|
||||
|
||||
@Override
|
||||
@@ -387,8 +396,126 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
||||
wrapper1.in(PayPackCompanyProject::getPackId,packCompanyIdList);
|
||||
List<PayPackCompanyProject> list = this.list(wrapper1);
|
||||
for (PayPackCompanyProject project : list) {
|
||||
//setAmountReceivableZero(project.getProjectId(),project.getProjectType()+"");
|
||||
String projectId = project.getProjectId();
|
||||
Integer projectType = project.getProjectType();
|
||||
|
||||
switch (projectType.toString()){
|
||||
// 普通项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE1:
|
||||
PayCommonProject old = payCommonProjectMapper.selectById(projectId);
|
||||
if (old == null) {
|
||||
throw new JeroBootException("项目不存在");
|
||||
}
|
||||
if (!new BigDecimal("0.00").equals(old.getReceivableAmount())){
|
||||
continue;
|
||||
}
|
||||
PayCommonProject payCommonProject = null;
|
||||
//普通项目管理-添加
|
||||
List<JSONObject> jsonObjects = sysBaseAPI.getLogByRequestParam(projectId);
|
||||
if (jsonObjects.isEmpty()){
|
||||
continue;
|
||||
}
|
||||
for (JSONObject jsonObject : jsonObjects) {
|
||||
String logContent = jsonObject.getString("logContent");
|
||||
if ("普通项目管理-添加".equals(logContent)){
|
||||
String requestParam = jsonObject.getString("requestParam");
|
||||
requestParam = requestParam.substring(1,requestParam.length()-1);
|
||||
payCommonProject = JSONObject.parseObject(requestParam, PayCommonProject.class);
|
||||
}
|
||||
}
|
||||
if (payCommonProject == null) {
|
||||
continue;
|
||||
}
|
||||
PayCommonProject project1 = new PayCommonProject();
|
||||
project1.setId(projectId);
|
||||
project1.setReceivableAmount(payCommonProject.getReceivableAmount());
|
||||
project1.setNoTaxAmount(payCommonProject.getNoTaxAmount());
|
||||
project1.setTax(payCommonProject.getTax());
|
||||
payCommonProjectMapper.updateById(project1);
|
||||
break;
|
||||
// 工作组项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE2:
|
||||
//工作组成员-修改 工作组成员-添加
|
||||
PayWorkingGroupSubItem old1 = payWorkingGroupSubItemMapper.selectById(projectId);
|
||||
if (old1 == null) {
|
||||
throw new JeroBootException("项目不存在");
|
||||
}
|
||||
if (!new BigDecimal("0.00").equals(old1.getReceivableAmount())){
|
||||
continue;
|
||||
}
|
||||
PayWorkingGroupSubItem payWorking = null;
|
||||
List<JSONObject> jsonObjects1 = sysBaseAPI.getLogByRequestParam(projectId);
|
||||
if (jsonObjects1.isEmpty()){
|
||||
continue;
|
||||
}
|
||||
for (JSONObject jsonObject : jsonObjects1) {
|
||||
String logContent = jsonObject.getString("logContent");
|
||||
if ("工作组成员-添加".equals(logContent)||"工作组成员-修改".equals(logContent)||"企业端-工作组成员-修改".equals(logContent)){
|
||||
String requestParam = jsonObject.getString("requestParam");
|
||||
requestParam = requestParam.substring(1,requestParam.length()-1);
|
||||
PayWorkingGroupSubItem obj = JSONObject.parseObject(requestParam, PayWorkingGroupSubItem.class);
|
||||
BigDecimal receivableAmount = obj.getReceivableAmount();
|
||||
if (new BigDecimal("0.00").equals(receivableAmount)){
|
||||
continue;
|
||||
}else {
|
||||
payWorking = obj;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (payWorking == null) {
|
||||
continue;
|
||||
}
|
||||
PayWorkingGroupSubItem project2 = new PayWorkingGroupSubItem();
|
||||
project2.setId(projectId);
|
||||
project2.setReceivableAmount(payWorking.getReceivableAmount());
|
||||
project2.setNoTaxAmount(payWorking.getNoTaxAmount());
|
||||
project2.setTax(payWorking.getTax());
|
||||
payWorkingGroupSubItemMapper.updateById(project2);
|
||||
break;
|
||||
//会员项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE4:
|
||||
PayMemberProjectSubitem old2 = payMemberProjectSubitemMapper.selectById(projectId);
|
||||
if (old2 == null) {
|
||||
throw new JeroBootException("项目不存在");
|
||||
}
|
||||
if (!new BigDecimal("0.00").equals(old2.getAmountReceivable())){
|
||||
continue;
|
||||
}
|
||||
String memberProjectId = old2.getProjectId();
|
||||
PayMemberProject memberProject = payMemberProjectService.getById(memberProjectId);
|
||||
PayMemberProjectSubitem member = new PayMemberProjectSubitem();
|
||||
member.setId(projectId);
|
||||
member.setAmountReceivable(memberProject.getChargeStandard());
|
||||
BigDecimal noTaxAmount = memberProject.getChargeStandard().divide(StaticConfig.TAX_RATE_CALCULATE, 2, RoundingMode.HALF_UP);
|
||||
member.setNoTaxAmount(noTaxAmount);
|
||||
member.setTax(memberProject.getChargeStandard().subtract(noTaxAmount));
|
||||
payMemberProjectSubitemMapper.updateById(member);
|
||||
break;
|
||||
//标协会员
|
||||
case PayIncomeContractCommon.PROJECT_TYPE5:
|
||||
TbMemberProjectSubitem old3 = tbMemberProjectSubitemMapper.selectById(projectId);
|
||||
if (old3 == null) {
|
||||
throw new JeroBootException("项目不存在");
|
||||
}
|
||||
if (!new BigDecimal("0.00").equals(old3.getAmountReceivable())){
|
||||
continue;
|
||||
}
|
||||
TbMemberProjectSubitem tbMember = new TbMemberProjectSubitem();
|
||||
Integer memberNature = old3.getMemberNature();
|
||||
BigDecimal amountReceivable = null;
|
||||
if (memberNature.equals(1)){
|
||||
amountReceivable = new BigDecimal("5000");
|
||||
}else {
|
||||
amountReceivable = new BigDecimal("2000");
|
||||
}
|
||||
tbMember.setAmountReceivable(amountReceivable);
|
||||
BigDecimal noTaxAmount1 = amountReceivable.divide(StaticConfig.TAX_RATE_CALCULATE, 2, RoundingMode.HALF_UP);
|
||||
tbMember.setNoTaxAmount(noTaxAmount1);
|
||||
tbMember.setTax(amountReceivable.subtract(noTaxAmount1));
|
||||
tbMemberProjectSubitemMapper.updateById(tbMember);
|
||||
break;
|
||||
default:
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+16
-1
@@ -1154,7 +1154,22 @@ public class SysBaseApiImpl implements ISysBaseAPI {
|
||||
huaWeiSmsUtil.sendMessageNotice( phone, sender, templateId, signature, templateParas);
|
||||
}
|
||||
|
||||
/**
|
||||
@Override
|
||||
public List<JSONObject> getLogByRequestParam(String requestParam) {
|
||||
LambdaQueryWrapper<SysLog> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.like(SysLog::getRequestParam,requestParam);
|
||||
wrapper.ne(SysLog::getLogContent,"打包项目维护-添加");
|
||||
wrapper.ne(SysLog::getLogContent,"收入合同-关联");
|
||||
List<SysLog> sysLogs = sysLogMapper.selectList(wrapper);
|
||||
List<JSONObject> jsonObjects = new ArrayList<>();
|
||||
for (SysLog sysLog : sysLogs) {
|
||||
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(sysLog));
|
||||
jsonObjects.add(jsonObject);
|
||||
}
|
||||
return jsonObjects;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据部门id查询部门所有的父级(不包含自己)
|
||||
* @author 马志朝
|
||||
* @date 2021/3/24 8:50
|
||||
|
||||
Reference in New Issue
Block a user