打包管理

This commit is contained in:
梁琦涛
2021-09-13 14:58:22 +08:00
parent 3b14c9b66a
commit dd69893395
4 changed files with 30 additions and 19 deletions
@@ -439,7 +439,6 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
updatePayPackCompany.eq(PayPackCompany::getPackChargeTotal,payPackCompany.getPackChargeTotal().add(receivableAmount));
updatePayPackCompany.eq(PayPackCompany::getReceiptExpense,payPackCompany.getReceiptExpense().add(paidAmount));
updatePayPackCompany.set(PayPackCompany::getId,payPackCompany.getId());
// todo 更新开票金额与未开票金额
payPackCompanyService.update(updatePayPackCompany);
// 添加打包企业成员
PayPackCompanyProject payPackCompanyProject = new PayPackCompanyProject();
@@ -499,14 +498,15 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(Objects.isNull(payCommonProject)){
throw new JeroBootException("项目不存在!");
}
// todo 缺少查询项目是否为打包企业,是:保持不变,不是:取消打包 将关联项目取消打包
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1) ){
// 合同为打包
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
// 查询打包项目来源是否为收入合同
LambdaQueryWrapper<PayPackCompanyProject> queryPayPackCompanyProject = new LambdaQueryWrapper<>();
queryPayPackCompanyProject.eq(PayPackCompanyProject::getProjectId,payCommonProject.getId());
queryPayPackCompanyProject.eq(PayPackCompanyProject::getCome,PayIncomeContractCommon.COME1);
List<PayPackCompanyProject> listPayPackCompanyProject = payPackCompanyProjectService.list(queryPayPackCompanyProject);
// todo 如果在打包企业中&& 来源为支出合同,取消打包,变更打包企业金额 否则不进行操作
if(!CollectionUtils.isEmpty(listPayPackCompanyProject) && Objects.equals(listPayPackCompanyProject.get(0).getCome(),PayIncomeContractCommon.COME1)){
payPackCompanyService.update();
// 存在数据,取消打包,变更项目打包状态, 否则不进行操作
if(!CollectionUtils.isEmpty(listPayPackCompanyProject)){
payPackCompanyProjectService.removeById(listPayPackCompanyProject.get(0).getId());
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
updatePayCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername());
@@ -525,13 +525,25 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
}
// 更新项目id
payIncomeContractAssociated.setProjectId(listPayWorkingGroupSubItem.getId());
// todo 不是打包企业 取消打包 将关联项目取消打包
LambdaUpdateWrapper<PayWorkingGroupSubItem> updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>();
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateBy,sysUser.getUsername());
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateTime,new Date());
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getPack,PayIncomeContractCommon.PACK0);
updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,listPayWorkingGroupSubItem.getId());
payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem);
// 合同为打包
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
// 查询打包项目来源是否为收入合同
LambdaQueryWrapper<PayPackCompanyProject> queryPayPackCompanyProject = new LambdaQueryWrapper<>();
queryPayPackCompanyProject.eq(PayPackCompanyProject::getProjectId,listPayWorkingGroupSubItem.getId());
queryPayPackCompanyProject.eq(PayPackCompanyProject::getCome,PayIncomeContractCommon.COME1);
List<PayPackCompanyProject> listPayPackCompanyProject = payPackCompanyProjectService.list(queryPayPackCompanyProject);
// 存在数据,取消打包,变更项目打包状态, 否则不进行操作
if(!CollectionUtils.isEmpty(listPayPackCompanyProject)){
payPackCompanyProjectService.removeById(listPayPackCompanyProject.get(0).getId());
LambdaUpdateWrapper<PayWorkingGroupSubItem> updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>();
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateBy,sysUser.getUsername());
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateTime,new Date());
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getPack,PayIncomeContractCommon.PACK0);
updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,listPayWorkingGroupSubItem.getId());
payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem);
}
}
break;
case PayIncomeContractCommon.PROJECT_TYPE3:
// todo 会议项目
@@ -89,6 +89,7 @@
<if test="paymentDate != null and paymentDate != ''">
AND DATE_FORMAT(ppr.payment_date,'%Y') = #{paymentDate}
</if>
WHERE project.id IS NOT NULL AND project.id != ''
GROUP BY ppcp.project_id ORDER BY ppcp.create_time desc
</select>
<select id="queryPackListAll" resultType="com.jero.project.entity.PayCommonProject">
@@ -109,7 +109,7 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
throw new JeroBootException("此项目已在合同处创建关联,请先从合同处取消关联!");
}
// 更新项目状态
projectPackService.updateProjectStatus(payPackCompanyProject.getProjectId(),String.valueOf(payPackCompanyProject.getProjectType()),String.valueOf(PackCommon.PACKAGING0),payPackCompanyProject.getPackId());
projectPackService.updateProjectStatus(payPackCompanyProjectNew.getProjectId(),String.valueOf(payPackCompanyProjectNew.getProjectType()),String.valueOf(PackCommon.PACKAGING0),payPackCompanyProject.getPackId());
payPackCompanyProjectService.removeById(payPackCompanyProject.getId());
}
@@ -121,16 +121,15 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
if(StringUtils.isBlank(s1)){
throw new JeroBootException("id不能为空!");
}
PayPackCompanyProject payPackCompanyProjectNew = payPackCompanyProjectService.getById(payPackCompanyProject.getId());
PayPackCompanyProject payPackCompanyProjectNew = payPackCompanyProjectService.getById(s1);
if(Objects.isNull(payPackCompanyProjectNew)){
throw new JeroBootException("不存在打包项目!");
}
if(Objects.equals(payPackCompanyProjectNew.getCome(),PackCommon.COME2)){
if(Objects.equals(payPackCompanyProjectNew.getCome(),PackCommon.COME1)){
throw new JeroBootException("此项目已在合同处创建关联,请先从合同处取消关联!");
}
// 更新项目状态
projectPackService.updateProjectStatus(s1,String.valueOf(payPackCompanyProjectNew.getProjectType()),String.valueOf(PackCommon.PACKAGING0),payPackCompanyProject.getPackId());
projectPackService.updateProjectStatus(payPackCompanyProjectNew.getProjectId(),String.valueOf(payPackCompanyProjectNew.getProjectType()),String.valueOf(PackCommon.PACKAGING0),payPackCompanyProject.getPackId());
}
payPackCompanyProjectService.removeByIds(Arrays.asList(payPackCompanyProject.getPackProjectIds()));
}
@@ -9,7 +9,6 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jero.common.aspect.annotation.Dict;
import com.jero.payment.entity.PayPaymentRecord;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;