update 年度数据锁定

This commit is contained in:
lijiarao
2024-07-28 19:54:43 +08:00
parent 870771d863
commit 850334aba6
25 changed files with 201 additions and 215 deletions
@@ -50,7 +50,6 @@ import com.jero.project.entity.PayWorkingGroupSubItem;
import com.jero.project.mapper.PayWorkingGroupSubItemContactsMapper;
import com.jero.project.service.IPayCommonProjectService;
import com.jero.project.service.IPayWorkingGroupService;
import com.jero.project.service.IPayWorkingGroupSubItemContactsService;
import com.jero.project.service.IPayWorkingGroupSubItemService;
import com.jero.temporary.entity.PayCompanyManagementTemporary;
import com.jero.temporary.entity.PayContactsManagementTemporary;
@@ -321,7 +320,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
//如果未邮寄,更新邮寄联系人信息
if (postStatus.equals(PayIncomeContractCommon.POST_STATUS0)){
// 联系人
PayContactsManagementTemporary payContactsManagement = payContactsManagementTemporaryService.insertContactsManagementTemporary(payIncomeContract.getSignedContactsId());
PayContactsManagementTemporary payContactsManagement = payContactsManagementTemporaryService.insertContactsManagementTemporary(payIncomeContract.getSignedContactsId(), null);
if(!Objects.isNull(payContactsManagement)){
payMailContract.setMobile(payContactsManagement.getPhone());
payMailContract.setEmail(payContactsManagement.getEmail());
@@ -929,7 +928,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
*/
private void setPayIncomeContractAdd(PayIncomeContract payIncomeContract){
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payIncomeContract.getSignedCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payIncomeContract.getSignedCompanyId(), null);
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
@@ -937,7 +936,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
payIncomeContract.setSignedCompanyTemporaryName(chargeCompanyName.getCompanyName());
// 联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payIncomeContract.getSignedContactsId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payIncomeContract.getSignedContactsId(), null);
if(Objects.isNull(contactsName)){
throw new JeroBootException("联系人名称为空!");
}
@@ -977,7 +976,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(!Objects.equals(payIncomeContractStatus.getSignedContactsTemporaryId(),payIncomeContract.getSignedContactsId())){
// 联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payIncomeContract.getSignedContactsId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payIncomeContract.getSignedContactsId(), null);
if(Objects.isNull(contactsName)){
throw new JeroBootException("联系人名称为空!");
}
@@ -15,7 +15,6 @@ import com.jero.common.service.RolePermissionService;
import com.jero.common.system.vo.LoginUser;
import com.jero.company.entity.PayContactsManagement;
import com.jero.company.service.IPayContactsManagementService;
import com.jero.drafting.common.DraftingConstant;
import com.jero.drafting.entity.PayDraftingGroup;
import com.jero.drafting.entity.PayDraftingGroupResearchProject;
import com.jero.drafting.entity.PayDraftingGroupSubItem;
@@ -331,7 +330,7 @@ public class PayDraftingGroupServiceImpl extends ServiceImpl<PayDraftingGroupMap
// 添加企业临时数据
PayCompanyManagementTemporary payCompanyManagementTemporary = payCompanyManagementTemporaryService.getById(p.getChargeCompanyTemporaryId());
if(Objects.isNull(payCompanyManagementTemporary)){
payCompanyManagementTemporary = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(p.getChargeCompanyId());
payCompanyManagementTemporary = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(p.getChargeCompanyId(), null);
}else{
payCompanyManagementTemporary.setCompanyId(payCompanyManagementTemporary.getCompanyId());
payCompanyManagementTemporary.setId(null);
@@ -356,7 +355,7 @@ public class PayDraftingGroupServiceImpl extends ServiceImpl<PayDraftingGroupMap
for (PayDraftingGroupSubItemContacts subItemContacts : itemContactsList) {
PayContactsManagementTemporary payContactsManagementTemporary = payContactsManagementTemporaryService.getById(subItemContacts.getContactsTemporaryId());
if(Objects.isNull(payContactsManagementTemporary)){
payContactsManagementTemporary = payContactsManagementTemporaryService.insertContactsManagementTemporary(subItemContacts.getContactsId());
payContactsManagementTemporary = payContactsManagementTemporaryService.insertContactsManagementTemporary(subItemContacts.getContactsId(), null);
}else{
payContactsManagementTemporary.setId(null);
payContactsManagementTemporary.setCompanyId(p.getChargeCompanyTemporaryId());
@@ -215,7 +215,7 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
*/
private void setPayDraftingGroupSubItemAdd(PayDraftingGroupSubItem payDraftingGroupSubItem) {
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payDraftingGroupSubItem.getChargeCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payDraftingGroupSubItem.getChargeCompanyId(), null);
if (Objects.isNull(chargeCompanyName)) {
throw new JeroBootException("企业名称为空!");
}
@@ -225,7 +225,7 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
if (!CollectionUtils.isEmpty(payDraftingGroupSubItemContactsList)) {
for (int i = 0; i < payDraftingGroupSubItemContactsList.size(); i++) {
// 企业联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payDraftingGroupSubItemContactsList.get(i).getContactsId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payDraftingGroupSubItemContactsList.get(i).getContactsId(), null);
if (Objects.isNull(contactsName)) {
throw new JeroBootException("企业联系人" + (i + 1) + "名称为空!");
}
@@ -439,7 +439,7 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
private void setPayDraftingGroupSubItemEdit(PayDraftingGroupSubItem payDraftingGroupSubItem, PayDraftingGroupSubItem payDraftingGroupSubItemOld) {
if (!Objects.equals(payDraftingGroupSubItemOld.getChargeCompanyTemporaryId(), payDraftingGroupSubItem.getChargeCompanyId())) {
// 企业信息
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payDraftingGroupSubItem.getChargeCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payDraftingGroupSubItem.getChargeCompanyId(), null);
if (Objects.isNull(chargeCompanyName)) {
throw new JeroBootException("企业名称为空!");
}
@@ -464,7 +464,7 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
// 新增
for (int i = 0; i < payDraftingGroupSubItemContactsList.size(); i++) {
// 企业联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payDraftingGroupSubItemContactsList.get(i).getContactsId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payDraftingGroupSubItemContactsList.get(i).getContactsId(), null);
if (Objects.isNull(contactsName)) {
throw new JeroBootException("企业联系人" + (i + 1) + "名称为空!");
}
@@ -63,6 +63,7 @@ import com.jero.member.service.ITbMemberProjectService;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.entity.PayWorkingGroupSubItemContacts;
import com.jero.project.service.AnnualDataLockingService;
@@ -495,7 +496,7 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
}
String year = payMeetingVO.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
//根据会议类型进行校验
switch (meetingType) {
case MeetingCommon.WORKING_GROUP_MEETING:
@@ -673,7 +674,7 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
PayMeeting payMeeting = getById(id);
String year = payMeeting.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
removeById(id);
LambdaQueryWrapper<PayMeetingHotelContacts> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(PayMeetingHotelContacts::getMeetingId, id);
@@ -699,7 +700,7 @@ public class PayMeetingServiceImpl extends ServiceImpl<PayMeetingMapper, PayMeet
PayMeeting payMeeting = getById(id);
String year = payMeeting.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
}
if (meetingList.size() > 0) {
throw new JeroBootException(meetingList + "会议下有参会人,无法删除");
@@ -76,6 +76,7 @@ import com.jero.pack.service.IPayPackCompanyProjectService;
import com.jero.payment.entity.PayPaymentRecord;
import com.jero.payment.service.IPayPaymentRecordService;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.entity.PayWorkingGroupSubItemContacts;
import com.jero.project.service.AnnualDataLockingService;
import com.jero.project.service.IPayWorkingGroupSubItemContactsService;
@@ -83,6 +84,7 @@ import com.jero.project.service.IPayWorkingGroupSubItemService;
import com.jero.standards.memberinfo.service.IMemberInfoService;
import com.jero.statistics.entity.MeetingPackStatistics;
import com.jero.statistics.entity.MeetingPackStatisticsSearch;
import com.jero.temporary.entity.PayCompanyManagementTemporary;
import com.jero.temporary.entity.PayContactsManagementTemporary;
import com.jero.temporary.service.IPayCompanyManagementTemporaryService;
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
@@ -201,15 +203,14 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
if (!b && !Objects.equals(payMeeting1.getDirectorId(),loginUser.getId())) {
throw new JeroBootException("只有会议负责人,会议联系人可以新增参会人");
}
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(payMeeting1.getParticularYear());
}
//判断用户是否能操作所选年份数据
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payMeeting1.getParticularYear());
payMeetingSituation.setStatus(MeetingSubitemCommon.STATUS_3);
//payMeetingSituation.setNeedInvoice(PayProjectCommon.NO);
payMeetingSituation.setAmountReceivable(new BigDecimal("0"));
//处理校验参会人信息
PayMeetingSituation payMeetingSituation1 = getPayMeetingSituation(payMeetingSituation);
PayMeetingSituation payMeetingSituation1 = getPayMeetingSituation(payMeetingSituation,annualDataLocking);
payMeetingSituation1.setEstimatedArrivalDate(payMeeting1.getStartTime());
saveMeetingSituation(payMeetingSituation1);
@@ -359,9 +360,11 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
payMeetingSituation.setGuestType(guestType);
payMeetingSituation.setIdentity(MeetingSubitemCommon.JIA_BIN);
}
//判断用户是否能操作所选年份数据
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payMeeting.getParticularYear());
//处理校验参会人信息
payMeetingSituation.setAmountReceivable(new BigDecimal("0"));
PayMeetingSituation payMeetingSituation1 = getPayMeetingSituation(payMeetingSituation);
PayMeetingSituation payMeetingSituation1 = getPayMeetingSituation(payMeetingSituation, annualDataLocking);
payMeetingSituation1.setEstimatedArrivalDate(payMeeting.getStartTime());
saveMeetingSituation(payMeetingSituation1);
//处理打包
@@ -1036,7 +1039,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
throw new JeroBootException("数据权限不足");
}
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(payMeeting.getParticularYear());
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payMeeting.getParticularYear());
//把原始数据保存下来,后面用于判断修改了那些字段
PayMeetingSituation oldObject = new PayMeetingSituation();
BeanUtils.copyProperties(payMeetingSituation, oldObject);
@@ -1090,7 +1093,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
}
}
}
payMeetingSituation1 = getPayMeetingSituation(payMeetingSituation);
payMeetingSituation1 = getPayMeetingSituation(payMeetingSituation, annualDataLocking);
//如果是对接人修改的
if (sysUserId.equals(dockId)) {
PayMeetingSituation newObject = new PayMeetingSituation();
@@ -1150,7 +1153,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
* 处理校验参会人信息
*/
@NotNull
private PayMeetingSituation getPayMeetingSituation(PayMeetingSituation payMeetingSituation) {
private PayMeetingSituation getPayMeetingSituation(PayMeetingSituation payMeetingSituation, AnnualDataLocking annualDataLocking) {
String meetingId = payMeetingSituation.getMeetingId();
PayMeeting payMeeting = meetingService.getById(meetingId);
//会议类型
@@ -1174,12 +1177,12 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
PayCompanyManagement companyManagement = companyManagementService.getById(companyId);
payMeetingSituation.setCompanyName(companyManagement.getCompanyName());
//处理企业
canHuiRenCompany(payMeetingSituation1, companyManagement);
canHuiRenCompany(payMeetingSituation1, companyManagement, annualDataLocking);
//校验企业联系人
String companyContactId = meetingEntity.getCompanyContactId();
PayContactsManagement contactsManagement = contactsManagementService.getById(companyContactId);
//处理联系人
canHuiContact(payMeetingSituation1, companyId, contactsManagement);
canHuiContact(payMeetingSituation1, companyId, contactsManagement, annualDataLocking);
//处理缴费凭证
payMeetingSituation1.setPaymentRecord(null);
@@ -1517,7 +1520,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
return takeEffectInfo != null;
}
private void canHuiContact(PayMeetingSituation payMeetingSituation, String companyId, PayContactsManagement contactsManagement) {
private void canHuiContact(PayMeetingSituation payMeetingSituation, String companyId, PayContactsManagement contactsManagement, AnnualDataLocking annualDataLocking) {
if (contactsManagement == null) {
throw new JeroBootException("联系人不存在");
}
@@ -1525,8 +1528,10 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
String contactsManagementId = contactsManagement.getId();
//校验是否是选择的企业的联系人
if (companyId1.equals(companyId)) {
payMeetingSituation.setCompanyContactTemporaryId(contactsManagementId);
payMeetingSituation.setCompanyContactName(contactsManagement.getName());
PayContactsManagementTemporary contactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(contactsManagementId, annualDataLocking);
payMeetingSituation.setCompanyContactTemporaryId(contactsName.getId());
payMeetingSituation.setCompanyContactName(contactsName.getName());
} else {
throw new JeroBootException("企业联系人不是所选企业的企业联系人");
}
@@ -1542,12 +1547,14 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
}
}
private void canHuiRenCompany(PayMeetingSituation payMeetingSituation, PayCompanyManagement companyManagement) {
private void canHuiRenCompany(PayMeetingSituation payMeetingSituation, PayCompanyManagement companyManagement, AnnualDataLocking annualDataLocking) {
if (companyManagement == null) {
throw new JeroBootException("企业不存在");
}
payMeetingSituation.setCompanyTemporaryId(companyManagement.getId());
payMeetingSituation.setCompanyName(companyManagement.getCompanyName());
PayCompanyManagementTemporary chargeCompanyName = companyManagementTemporaryService.insertCompanyManagementTemporary(companyManagement.getId(), annualDataLocking);
payMeetingSituation.setCompanyTemporaryId(chargeCompanyName.getId());
payMeetingSituation.setCompanyName(chargeCompanyName.getCompanyName());
}
/**
@@ -1559,7 +1566,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
String meetingId = meetingSituation.getMeetingId();
PayMeeting payMeeting = meetingService.getById(meetingId);
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(payMeeting.getParticularYear());
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payMeeting.getParticularYear());
removeSituationPack(id);
removeById(id);
}
@@ -1574,7 +1581,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl<PayMeetingSituat
List<PayMeeting> payMeetings = meetingService.listByIds(meetingIds);
for (PayMeeting payMeeting : payMeetings) {
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(payMeeting.getParticularYear());
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payMeeting.getParticularYear());
}
for (String id : ids) {
removeSituationPack(id);
@@ -17,6 +17,7 @@ import com.jero.member.service.IPayMemberProjectSubitemService;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.mapper.SysUserMapper;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.entity.PayCommonProject;
import com.jero.project.service.AnnualDataLockingService;
import org.apache.commons.collections.CollectionUtils;
@@ -71,7 +72,7 @@ public class IPayMemberProjectService extends ServiceImpl<PayMemberProjectMapper
}
String year = payMemberProject.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
//判断联系人
String directorId = payMemberProject.getDirectorId();
SysUser sysUser = userMapper.selectById(directorId);
@@ -91,13 +92,13 @@ public class IPayMemberProjectService extends ServiceImpl<PayMemberProjectMapper
public void editById(PayMemberProject payMemberProject) {
String year = payMemberProject.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
String id = payMemberProject.getId();
PayMemberProject memberProjectOld = this.getById(id);
String year1 = memberProjectOld.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year1);
AnnualDataLocking annualDataLocking1 = annualDataLockingService.judgeUserYear(year1);
saveOrUpdate(payMemberProject);
}
@@ -112,7 +113,7 @@ public class IPayMemberProjectService extends ServiceImpl<PayMemberProjectMapper
PayMemberProject memberProjectOld = this.getById(id);
String year1 = memberProjectOld.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year1);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year1);
LambdaQueryWrapper<PayMemberProjectSubitem> query = new LambdaQueryWrapper<>();
query.eq(PayMemberProjectSubitem::getProjectId, id);
@@ -134,7 +135,7 @@ public class IPayMemberProjectService extends ServiceImpl<PayMemberProjectMapper
PayMemberProject memberProjectOld = this.getById(id);
String year1 = memberProjectOld.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year1);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year1);
}
LambdaQueryWrapper<PayMemberProjectSubitem> query = new LambdaQueryWrapper<>();
query.in(PayMemberProjectSubitem::getProjectId, ids);
@@ -25,11 +25,10 @@ import com.jero.member.entity.PayMemberProject;
import com.jero.member.entity.PayMemberProjectSubitem;
import com.jero.member.mapper.PayMemberProjectMapper;
import com.jero.member.mapper.PayMemberProjectSubitemMapper;
import com.jero.member.service.IPayMemberProjectService;
import com.jero.member.service.IPayMemberProjectSubitemService;
import com.jero.pack.entity.PayPackCompanyProject;
import com.jero.pack.service.IPayPackCompanyProjectService;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.service.AnnualDataLockingService;
import com.jero.temporary.entity.PayCompanyManagementTemporary;
import com.jero.temporary.entity.PayContactsManagementTemporary;
@@ -94,7 +93,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
}
String year = memberProject.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
String companyId = payMemberProjectSubitem.getCompanyId();
LambdaQueryWrapper<PayMemberProjectSubitem> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(PayMemberProjectSubitem::getProjectId,projectId);
@@ -103,8 +102,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
if (count>0){
throw new JeroBootException("会员单位已经存在");
}
// validMemberProjectSubitem(payMemberProjectSubitem);
validMemberProjectSubitemAdd(payMemberProjectSubitem);
validMemberProjectSubitemAdd(payMemberProjectSubitem,annualDataLocking);
//实收金额
payMemberProjectSubitem.setPaidAmount(new BigDecimal("0.00"));
//到账
@@ -174,7 +172,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
}
String year = memberProject.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
// 项目为打包状态 || 到账!=0 || 开票!=0 || 邮寄!=0
if(!Objects.equals(payMemberProjectSubitem.getCompanyId(),payMemberProjectSubitem1.getCompanyId())
@@ -217,21 +215,6 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
payMemberProjectSubitem.setMakeInvoice(payMemberProjectSubitem1.getMakeInvoice());
payMemberProjectSubitem.setMail(payMemberProjectSubitem1.getMail());
//如果原始企业id和现在企业id不同,就删除临时表数据
// String companyId = payMemberProjectSubitem.getCompanyTemporaryId();
// if (!payMemberProjectSubitem1.getCompanyTemporaryId().equals(companyId)) {
// companyManagementTemporaryService.removeById(companyId);
// }
// //如果原始企业联系人id和现在企业联系人id不同,就删除临时表数据
// String companyContactId = payMemberProjectSubitem.getCompanyContactTemporaryId();
// if (!payMemberProjectSubitem1.getCompanyContactTemporaryId().equals(companyContactId)) {
// contactsManagementTemporaryService.removeById(companyContactId);
// }
// //如果原始邮寄联系人id和现在邮寄联系人id不同,就删除临时表数据
// String postContactId = payMemberProjectSubitem.getPostContactTemporaryId();
// if (!payMemberProjectSubitem1.getPostContactTemporaryId().equals(postContactId)) {
// contactsManagementTemporaryService.removeById(postContactId);
// }
// 变更待确收金额,重新校验状态
ProjectStatusVO projectStatusVO = projectDetailService.getStatus(payMemberProjectSubitem.getId(),payMemberProjectSubitem.getAmountReceivable(),payMemberProjectSubitem.getNeedInvoice());
if(!Objects.isNull(projectStatusVO)){
@@ -260,7 +243,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
if(Objects.equals(payMemberProjectSubitem.getPaymentMethod(),PayProjectCommon.CHARGE_WAY3)){
payMemberProjectSubitem.setContractNo(null);
}
validMemberProjectSubitemEdit(payMemberProjectSubitem,payMemberProjectSubitem1);
validMemberProjectSubitemEdit(payMemberProjectSubitem,payMemberProjectSubitem1,annualDataLocking);
saveOrUpdate(payMemberProjectSubitem);
// 如果有邮寄信息更新邮寄联系人信息
String mailContactsId = payMemberProjectSubitem.getPostContactId();
@@ -269,13 +252,15 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
/**
* 校验会员项目成员
*
* @param payMemberProjectSubitem 会员项目成员
* @param annualDataLocking
*/
public void validMemberProjectSubitemAdd(PayMemberProjectSubitem payMemberProjectSubitem) {
public void validMemberProjectSubitemAdd(PayMemberProjectSubitem payMemberProjectSubitem, AnnualDataLocking annualDataLocking) {
List<String> errors = new ArrayList<>();
// 企业
try {
PayCompanyManagementTemporary chargeCompanyName = companyManagementTemporaryService.insertCompanyManagementTemporary(payMemberProjectSubitem.getCompanyId());
PayCompanyManagementTemporary chargeCompanyName = companyManagementTemporaryService.insertCompanyManagementTemporary(payMemberProjectSubitem.getCompanyId(), annualDataLocking);
if (Objects.isNull(chargeCompanyName)) {
throw new JeroBootException("企业名称为空!");
}
@@ -286,7 +271,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
}
// 联系人
try {
PayContactsManagementTemporary contactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getCompanyContactId());
PayContactsManagementTemporary contactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getCompanyContactId(), annualDataLocking);
if (Objects.isNull(contactsName)) {
throw new JeroBootException("联系人名称为空!");
}
@@ -297,7 +282,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
}
try {
// 联系人
PayContactsManagementTemporary postContactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getPostContactId());
PayContactsManagementTemporary postContactsName = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getPostContactId(), annualDataLocking);
if (Objects.isNull(postContactsName)) {
throw new JeroBootException("邮寄联系人为空!");
}
@@ -324,13 +309,15 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
/**
* 校验会员项目成员
*
* @param payMemberProjectSubitem 会员项目成员
* @param annualDataLocking
*/
public void validMemberProjectSubitemEdit(PayMemberProjectSubitem payMemberProjectSubitem,PayMemberProjectSubitem payMemberProjectSubitemOld) {
public void validMemberProjectSubitemEdit(PayMemberProjectSubitem payMemberProjectSubitem, PayMemberProjectSubitem payMemberProjectSubitemOld, AnnualDataLocking annualDataLocking) {
// 企业id != 企业模板id 变更
if(!Objects.equals(payMemberProjectSubitem.getCompanyId(),payMemberProjectSubitemOld.getCompanyId())){
// 企业
PayCompanyManagementTemporary chargeCompanyName = companyManagementTemporaryService.insertCompanyManagementTemporary(payMemberProjectSubitem.getCompanyId());
PayCompanyManagementTemporary chargeCompanyName = companyManagementTemporaryService.insertCompanyManagementTemporary(payMemberProjectSubitem.getCompanyId(), annualDataLocking);
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
@@ -341,7 +328,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
// 联系人id != 联系人模板id 变更
// 联系人
PayContactsManagementTemporary companyContact = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getCompanyContactId());
PayContactsManagementTemporary companyContact = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getCompanyContactId(), annualDataLocking);
if(Objects.isNull(companyContact)){
throw new JeroBootException("联系人名称为空!");
}
@@ -352,7 +339,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
// 邮寄联系人id != 邮寄联系人模板id 变更
if(!Objects.equals(payMemberProjectSubitem.getPostContactId(),payMemberProjectSubitemOld.getPostContactId())){
// 联系人
PayContactsManagementTemporary postContact = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getPostContactId());
PayContactsManagementTemporary postContact = contactsManagementTemporaryService.insertContactsManagementTemporary(payMemberProjectSubitem.getPostContactId(), annualDataLocking);
if(Objects.isNull(postContact)){
throw new JeroBootException("邮寄联系人为空!");
}
@@ -373,53 +360,6 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
}
}
/**
* 校验会员项目成员
* @param payMemberProjectSubitem 会员项目成员
*/
public void validMemberProjectSubitem(PayMemberProjectSubitem payMemberProjectSubitem) {
//校验企业
String companyId = payMemberProjectSubitem.getCompanyId();
PayCompanyManagementTemporary companyManagementTemporary = companyManagementTemporaryService.insertCompanyManagementTemporary(companyId);
payMemberProjectSubitem.setCompanyTemporaryId(companyManagementTemporary.getId());
payMemberProjectSubitem.setCompanyName(companyManagementTemporary.getCompanyName());
//校验企业联系人
String companyContactId = payMemberProjectSubitem.getCompanyContactId();
PayContactsManagement contactsManagement = contactsManagementService.getById(companyContactId);
//校验是否是选择的企业的联系人
String companyId1 = contactsManagement.getCompanyId();
if (companyId1.equals(companyId)){
PayContactsManagementTemporary contactsManagementTemporary = contactsManagementTemporaryService.insertContactsManagementTemporary(companyContactId);
payMemberProjectSubitem.setCompanyContactTemporaryId(contactsManagementTemporary.getId());
payMemberProjectSubitem.setCompanyContactName(contactsManagementTemporary.getName());
}else {
throw new JeroBootException("企业联系人不是所选企业的企业联系人");
}
//校验邮寄联系人
String postContactId = payMemberProjectSubitem.getPostContactId();
PayContactsManagement postContact = contactsManagementService.getById(postContactId);
//校验是否是选择的企业的联系人
String companyId2 = postContact.getCompanyId();
if (companyId2.equals(companyId)){
PayContactsManagementTemporary contactsManagementTemporary1 = contactsManagementTemporaryService.insertContactsManagementTemporary(postContactId);
payMemberProjectSubitem.setPostContactTemporaryId(contactsManagementTemporary1.getId());
payMemberProjectSubitem.setPostContactName(contactsManagementTemporary1.getName());
}else {
throw new JeroBootException("邮寄联系人不是所选企业的企业联系人");
}
//校验来款方式
Integer paymentMethod = payMemberProjectSubitem.getPaymentMethod();
//合同
if (Objects.equals(paymentMethod,2)){
ValidUtil.validate(payMemberProjectSubitem, Contract.class);
}
//收费通知
if (Objects.equals(paymentMethod,3)){
ValidUtil.validate(payMemberProjectSubitem, ChargeNotice.class);
}
}
/**
* 通过id删除
*/
@@ -470,7 +410,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl<PayMemberProjec
PayMemberProject memberProject = memberProjectService.getById(projectSubitem.getProjectId());
String year = memberProject.getParticularYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
PayMemberProjectSubitem payMemberProjectSubitem = memberProjectSubitemService.getById(id);
// 到账!=0 || 开票!=0 || 邮寄!=0
@@ -18,6 +18,7 @@ import com.jero.member.entity.TbMemberProjectSubitem;
import com.jero.member.mapper.TbMemberProjectMapper;
import com.jero.member.service.ITbMemberProjectService;
import com.jero.member.service.ITbMemberProjectSubitemService;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.service.AnnualDataLockingService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.shiro.SecurityUtils;
@@ -63,7 +64,7 @@ public class ITbMemberProjectService extends ServiceImpl<TbMemberProjectMapper,
//一年只能有一个项目
String year = tbMemberProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
check(year, null);
save(tbMemberProject);
}
@@ -88,7 +89,7 @@ public class ITbMemberProjectService extends ServiceImpl<TbMemberProjectMapper,
String year = tbMemberProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
String id = tbMemberProject.getId();
//一年只能有一个项目
check(year, id);
@@ -108,7 +109,7 @@ public class ITbMemberProjectService extends ServiceImpl<TbMemberProjectMapper,
TbMemberProject memberProjectOld = this.getById(id);
String oldYear = memberProjectOld.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(oldYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(oldYear);
LambdaQueryWrapper<TbMemberProjectSubitem> query = new LambdaQueryWrapper<>();
query.eq(TbMemberProjectSubitem::getProjectId, id);
@@ -134,7 +135,7 @@ public class ITbMemberProjectService extends ServiceImpl<TbMemberProjectMapper,
for (TbMemberProject memberProjectOld : tbMemberProjects) {
String oldYear = memberProjectOld.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(oldYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(oldYear);
}
LambdaQueryWrapper<TbMemberProjectSubitem> query = new LambdaQueryWrapper<>();
query.in(TbMemberProjectSubitem::getProjectId, ids);
@@ -49,6 +49,7 @@ import com.jero.payment.entity.PayPaymentRecord;
import com.jero.payment.service.IPayPaymentRecordService;
import com.jero.payment.service.impl.PayConfirmPaymentRecordService;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.entity.PayCommonProject;
import com.jero.project.entity.PayWorkingGroupSubItem;
import com.jero.project.service.AnnualDataLockingService;
@@ -125,7 +126,7 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
TbMemberProject memberProject = tbMemberProjectService.getById(projectId);
String oldYear = memberProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(oldYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(oldYear);
setDefaultCreateValue(tbMemberProjectSubitem);
@@ -211,7 +212,7 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
TbMemberProject memberProject = tbMemberProjectService.getById(projectId);
String oldYear = memberProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(oldYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(oldYear);
int errorRowNum = 2;
List<TbMemberProjectSubitem> insertList = new ArrayList<>();
List<String> errorMessage = new ArrayList<>();
@@ -438,7 +439,7 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
TbMemberProject memberProject = tbMemberProjectService.getById(subitemOld.getProjectId());
String oldYear = memberProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(oldYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(oldYear);
String companyId = tbMemberProjectSubitem.getCompanyId();
String companyIdOld = subitemOld.getCompanyId();
@@ -511,7 +512,7 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
TbMemberProject memberProject = tbMemberProjectService.getById(subitemOld.getProjectId());
String oldYear = memberProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(oldYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(oldYear);
//删除到账
LambdaQueryWrapper<PayPaymentRecord> wrapper1 = new LambdaQueryWrapper<>();
wrapper1.eq(PayPaymentRecord::getProjectId,id);
@@ -719,7 +720,7 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
TbMemberProject memberProject = tbMemberProjectService.getById(projectId);
String oldYear = memberProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(oldYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(oldYear);
copyOperation(memberProject, id);
}
@@ -752,7 +753,7 @@ public class ITbMemberProjectSubitemService extends ServiceImpl<TbMemberProjectS
TbMemberProject memberProject = tbMemberProjectService.getById(projectId);
String oldYear = memberProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(oldYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(oldYear);
for (String id : ids.split(",")) {
copyOperation(memberProject, id);
}
@@ -44,6 +44,7 @@ import com.jero.pack.service.IPayPackCompanyService;
import com.jero.pack.vo.PayPackCompanyProjectInput;
import com.jero.pack.vo.PayProjectExcel;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.entity.PayCommonProject;
import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.entity.PayWorkingGroupSubItem;
@@ -136,7 +137,7 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
throw new JeroBootException("打包企业不存在");
}
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(payPackCompany.getPackYear());
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payPackCompany.getPackYear());
if(StringUtils.isBlank(payPackCompanyProject.getProjectIds())){
throw new JeroBootException("请选择项目");
}
@@ -321,7 +322,7 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
String packId = packCompanyProject.getPackId();
PayPackCompany payPackCompany = payPackCompanyService.getById(packId);
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(payPackCompany.getPackYear());
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payPackCompany.getPackYear());
Integer projectType = packCompanyProject.getProjectType();
if (Objects.equals(projectType, Integer.parseInt(PayProjectCommon.PROJECT_TYPE5))||
Objects.equals(projectType, Integer.parseInt(PayProjectCommon.PROJECT_TYPE6))){
@@ -4,12 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.api.vo.Result;
import com.jero.common.common.ProjectCommon;
import com.jero.common.enums.PaymentStatusEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.vo.ProjectStatusVO;
import com.jero.mail.entity.PayMailBill;
import com.jero.mail.entity.PayMailBillProject;
import com.jero.mail.service.IPayMailBillProjectService;
import com.jero.mail.service.IPayMailBillService;
@@ -17,10 +13,9 @@ import com.jero.modules.system.service.ISysUserService;
import com.jero.pack.entity.PayPackCompany;
import com.jero.pack.mapper.PayPackCompanyMapper;
import com.jero.pack.service.IPayPackCompanyService;
import com.jero.pack.vo.PayPackCompanyProjectInput;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.entity.PayCommonProject;
import com.jero.project.entity.PayWorkingGroupSubItem;
import com.jero.project.service.AnnualDataLockingService;
import com.jero.statistics.entity.AllMoney;
import com.jero.temporary.entity.PayCompanyManagementTemporary;
@@ -28,18 +23,15 @@ import com.jero.temporary.entity.PayContactsManagementTemporary;
import com.jero.temporary.service.IPayCompanyManagementTemporaryService;
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* @Description: pay_pack_company
@@ -77,7 +69,7 @@ public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper,
public PayPackCompany addPayPackCompany(PayPackCompany payPackCompany) {
String packYear = payPackCompany.getPackYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(packYear);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(packYear);
try {
LambdaQueryWrapper<PayPackCompany> query = new LambdaQueryWrapper<>();
query.eq(PayPackCompany::getCompanyId,payPackCompany.getCompanyId());
@@ -90,7 +82,7 @@ public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper,
log.error("",e);
throw new JeroBootException("该年份下已存在此打包企业!");
}
setPayPackCompanyAdd(payPackCompany);
setPayPackCompanyAdd(payPackCompany,annualDataLocking);
payPackCompany.setPackPrincipalName(sysUserService.getById(payPackCompany.getPackPrincipalId()).getRealname());
payPackCompanyService.save(payPackCompany);
return payPackCompany;
@@ -101,9 +93,9 @@ public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper,
public void editPayPackCompany(PayPackCompany payPackCompany) {
PayPackCompany payPackCompanyOld = payPackCompanyService.getById(payPackCompany.getId());
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(payPackCompanyOld.getPackYear());
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payPackCompanyOld.getPackYear());
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(payPackCompany.getPackYear());
AnnualDataLocking annualDataLocking1 = annualDataLockingService.judgeUserYear(payPackCompany.getPackYear());
if(Objects.isNull(payPackCompanyOld)){
throw new JeroBootException("打包企业不存在!");
@@ -125,7 +117,7 @@ public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper,
}
payPackCompany.setPackPrincipalName(sysUserService.getById(payPackCompany.getPackPrincipalId()).getRealname());
setPayPackCompanyEdit(payPackCompany,payPackCompanyOld);
setPayPackCompanyEdit(payPackCompany,payPackCompanyOld,annualDataLocking);
payPackCompanyService.updateById(payPackCompany);
}
@@ -167,23 +159,23 @@ public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper,
* @Return
* @Exception
*/
private PayPackCompany setPayPackCompanyAdd(PayPackCompany payPackCompany){
private PayPackCompany setPayPackCompanyAdd(PayPackCompany payPackCompany, AnnualDataLocking annualDataLocking){
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payPackCompany.getCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payPackCompany.getCompanyId(), annualDataLocking);
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
payPackCompany.setCompanyTemporaryId(chargeCompanyName.getId());
payPackCompany.setCompanyTemporaryName(chargeCompanyName.getCompanyName());
// 企业联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getCompanyContactId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getCompanyContactId(), annualDataLocking);
if(Objects.isNull(contactsName)){
throw new JeroBootException("企业联系人名称为空!");
}
payPackCompany.setCompanyContactTemporaryId(contactsName.getId());
payPackCompany.setCompanyContactTemporaryName(contactsName.getName());
// 邮寄联系人
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getPackContactId());
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getPackContactId(), annualDataLocking);
if(Objects.isNull(mailContactsName)){
throw new JeroBootException("邮寄联系人名称为空!");
}
@@ -204,11 +196,11 @@ public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper,
* @Return
* @Exception
*/
private PayPackCompany setPayPackCompanyEdit(PayPackCompany payPackCompany,PayPackCompany payPackCompanyOld){
private PayPackCompany setPayPackCompanyEdit(PayPackCompany payPackCompany, PayPackCompany payPackCompanyOld, AnnualDataLocking annualDataLocking){
if(!Objects.equals(payPackCompanyOld.getCompanyTemporaryId(),payPackCompany.getCompanyId())){
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payPackCompany.getCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payPackCompany.getCompanyId(), annualDataLocking);
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
@@ -220,7 +212,7 @@ public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper,
}
// 企业联系人
if(!Objects.equals(payPackCompanyOld.getCompanyContactTemporaryId(),payPackCompany.getCompanyContactId())){
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getCompanyContactId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getCompanyContactId(), annualDataLocking);
if(Objects.isNull(contactsName)){
throw new JeroBootException("企业联系人名称为空!");
}
@@ -232,7 +224,7 @@ public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper,
}
// 打包联系人
if(!Objects.equals(payPackCompanyOld.getPackContactTemporaryId(),payPackCompany.getPackContactId())){
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getPackContactId());
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getPackContactId(), annualDataLocking);
if(Objects.isNull(mailContactsName)){
throw new JeroBootException("打包联系人名称为空!");
}
@@ -1712,7 +1712,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
||PayIncomeContractCommon.PROJECT_TYPE2.equals(projectType)
||PayIncomeContractCommon.PROJECT_TYPE4.equals(projectType)){
// 邮寄联系人
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(mailContactsId);
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(mailContactsId, null);
if(Objects.isNull(mailContactsName)){
throw new JeroBootException("邮寄联系人名称为空!");
}
@@ -18,6 +18,7 @@ import com.jero.contract.entity.PayIncomeContract;
import com.jero.contract.service.IPayIncomeContractService;
import com.jero.mail.commont.constant;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.entity.PayWorkingGroupSubItem;
import com.jero.project.service.AnnualDataLockingService;
@@ -299,7 +300,7 @@ public class PayWorkingGroupController extends JeroController<PayWorkingGroup, I
}
String year = payWorkingGroup.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
payWorkingGroupService.setPayWorkingGroup(payWorkingGroup);
payWorkingGroupService.save(payWorkingGroup);
return Result.OK("添加成功!");
@@ -325,7 +326,7 @@ public class PayWorkingGroupController extends JeroController<PayWorkingGroup, I
}
String year = payWorkingGroup.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
PayWorkingGroup payWorkingGroupOld = payWorkingGroupService.getById(payWorkingGroup.getId());
if(Objects.isNull(payWorkingGroupOld)){
@@ -33,6 +33,7 @@ import com.jero.pack.entity.PayPackCompanyProject;
import com.jero.pack.service.IPayPackCompanyProjectService;
import com.jero.pack.service.IPayPackCompanyService;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.entity.PayWorkingGroupSubItem;
import com.jero.project.entity.PayWorkingGroupSubItemContacts;
@@ -466,9 +467,6 @@ public class PayWorkingGroupSubItemController extends JeroController<PayWorkingG
List<String> errInfoList = new ArrayList<>();
for (String workingGroupId : workingGroupIdsArr) {
PayWorkingGroup payWorkingGroup = payWorkingGroupService.getById(workingGroupId);
String year = payWorkingGroup.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
BigDecimal yearChargeA = payWorkingGroup.getYearChargeA();
BigDecimal taxRate = new BigDecimal("0.06");
payWorkingGroupSubItem.setTaxRate(taxRate);
@@ -10,7 +10,7 @@ import com.jero.project.entity.AnnualDataLocking;
*@date 2024-07-24 13:51
*/
public interface AnnualDataLockingMapper extends BaseMapper<AnnualDataLocking> {
Integer countByYear(@Param("year")String year);
AnnualDataLocking countByYear(@Param("year")String year);
}
@@ -17,8 +17,8 @@
</sql>
<!--auto generated by MybatisCodeHelper on 2024-07-24-->
<select id="countByYear" resultType="java.lang.Integer">
select count(1)
<select id="countByYear" resultType="com.jero.project.entity.AnnualDataLocking">
select *
from pay_annual_data_locking
<where>
<if test="year != null and year != ''">
@@ -41,6 +41,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -377,20 +378,22 @@ public class AnnualDataLockingService extends ServiceImpl<AnnualDataLockingMappe
* 查询年份是否存在
*/
@Cacheable(cacheNames= "annualDataLocking", key="#year")
public boolean checkYear(String year){
return baseMapper.countByYear(year) > 0;
public AnnualDataLocking checkYear(String year){
return baseMapper.countByYear(year);
}
/**
* 判断用户是否能操作所选年份数据
* 判断用户是否能操作所选年份数据,返回年份是否是锁定的
* @param year
*/
public void judgeUserYear(String year){
boolean b = checkYear(year);
public AnnualDataLocking judgeUserYear(String year){
AnnualDataLocking b = checkYear(year);
LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if (user.getRoleCode().equals(RoleCommon.XMFZR) && b){
//如果是项目负责人,就抛出异常
if (Objects.equals(user.getRoleCode(),RoleCommon.XMFZR) && b != null){
throw new JeroBootException(year+"年数据已经锁定");
}
return b;
}
public void editById(AnnualDataLocking annualDataLocking) {
@@ -22,13 +22,13 @@ import com.jero.contract.entity.PayIncomeContractAssociated;
import com.jero.contract.service.IPayIncomeContractAssociatedService;
import com.jero.contract.service.IPayIncomeContractService;
import com.jero.mail.service.IPayMailBillService;
import com.jero.member.entity.PayMemberProjectSubitem;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.service.ISysUserService;
import com.jero.pack.entity.PayPackCompanyProject;
import com.jero.pack.service.IPayPackCompanyProjectService;
import com.jero.payment.service.IPayPaymentCheckService;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.project.service.AnnualDataLockingService;
import com.jero.project.service.IPayCommonProjectService;
import com.jero.project.entity.PayCommonProject;
@@ -112,10 +112,11 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
log.info("普通项目管理-添加异常",e);
throw new JeroBootException("来款项目已存在!");
}
setPayCommonProjectAdd(payCommonProject);
String year = payCommonProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
setPayCommonProjectAdd(payCommonProject,annualDataLocking);
payCommonProject.setInAccount(PayProjectCommon.IN_ACCOUNT0);
payCommonProject.setMakeInvoice(PayProjectCommon.MAKE_INVOICE0);
payCommonProject.setMail(PayProjectCommon.MAIL0);
@@ -187,7 +188,7 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
String year = payCommonProjectOld.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
// 项目为打包状态 || 到账!=0 || 开票!=0 || 邮寄!=0
if(!Objects.equals(payCommonProject.getChargeCompanyId(),payCommonProjectOld.getChargeCompanyId())
&& (Objects.equals(payCommonProject.getPack(),PayProjectCommon.PACKAGING1)
@@ -238,7 +239,7 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
}
}
setPayCommonProjectEdit(payCommonProject,payCommonProjectOld);
setPayCommonProjectEdit(payCommonProject,payCommonProjectOld,annualDataLocking);
// 变更待确收金额,重新校验状态
ProjectStatusVO projectStatusVO = projectDetailService.getStatus(payCommonProject.getId(),payCommonProject.getReceivableAmount(),payCommonProject.getNeedInvoice());
if(!Objects.isNull(projectStatusVO)){
@@ -343,7 +344,7 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
String year = payCommonProject.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
if(!StringUtils.isEmpty(sb)){
return sb;
}
@@ -380,21 +381,21 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
* @Return
* @Exception
*/
private void setPayCommonProjectAdd(PayCommonProject payCommonProject){
private void setPayCommonProjectAdd(PayCommonProject payCommonProject, AnnualDataLocking annualDataLocking){
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payCommonProject.getChargeCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payCommonProject.getChargeCompanyId(), annualDataLocking);
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
// 联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payCommonProject.getContactsId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payCommonProject.getContactsId(), annualDataLocking);
if(Objects.isNull(contactsName)){
throw new JeroBootException("联系人名称为空!");
}
// 邮寄联系人
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payCommonProject.getMailContactsId());
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payCommonProject.getMailContactsId(), annualDataLocking);
if(Objects.isNull(mailContactsName)){
throw new JeroBootException("邮寄联系人名称为空!");
}
@@ -422,11 +423,11 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
* @Return
* @Exception
*/
private void setPayCommonProjectEdit(PayCommonProject payCommonProject,PayCommonProject payCommonProjectOld){
private void setPayCommonProjectEdit(PayCommonProject payCommonProject, PayCommonProject payCommonProjectOld, AnnualDataLocking annualDataLocking){
// 企业id != 企业模板id 变更
if(!Objects.equals(payCommonProject.getChargeCompanyId(),payCommonProjectOld.getChargeCompanyTemporaryId())){
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payCommonProject.getChargeCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payCommonProject.getChargeCompanyId(), annualDataLocking);
if(Objects.isNull(chargeCompanyName)){
throw new JeroBootException("企业名称为空!");
}
@@ -441,7 +442,7 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
// 联系人id != 联系人模板id 变更
if(!Objects.equals(payCommonProject.getContactsId(),payCommonProjectOld.getContactsTemporaryId())){
// 联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payCommonProject.getContactsId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payCommonProject.getContactsId(), annualDataLocking);
if(Objects.isNull(contactsName)){
throw new JeroBootException("联系人名称为空!");
}
@@ -455,7 +456,7 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
// 邮寄联系人id != 邮寄联系人模板id 变更
if(!Objects.equals(payCommonProject.getMailContactsId(),payCommonProjectOld.getMailContactsTemporaryId())){
// 邮寄联系人
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payCommonProject.getMailContactsId());
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payCommonProject.getMailContactsId(), annualDataLocking);
if(Objects.isNull(mailContactsName)){
throw new JeroBootException("邮寄联系人名称为空!");
}
@@ -133,7 +133,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
}
String year = payWorkingGroupOld.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
LambdaQueryWrapper<PayWorkingGroupSubItem> query = new LambdaQueryWrapper<>();
query.eq(PayWorkingGroupSubItem::getWorkingGroupId,id);
List<PayWorkingGroupSubItem> listPayWorkingGroupSubItem = payWorkingGroupSubItemService.list(query);
@@ -173,7 +173,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
}
String year = payWorkingGroupOld.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
LambdaQueryWrapper<PayWorkingGroupSubItem> query = new LambdaQueryWrapper<>();
query.eq(PayWorkingGroupSubItem::getWorkingGroupId, p);
List<PayWorkingGroupSubItem> listPayWorkingGroupSubItem = payWorkingGroupSubItemService.list(query);
@@ -295,7 +295,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
// 添加企业临时数据
PayCompanyManagementTemporary payCompanyManagementTemporary = payCompanyManagementTemporaryService.getById(p.getChargeCompanyTemporaryId());
if(Objects.isNull(payCompanyManagementTemporary)){
payCompanyManagementTemporary = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(p.getChargeCompanyId());
payCompanyManagementTemporary = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(p.getChargeCompanyId(), null);
}else{
payCompanyManagementTemporary.setCompanyId(payCompanyManagementTemporary.getCompanyId());
payCompanyManagementTemporary.setId(null);
@@ -308,7 +308,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
// 添加邮寄联系人临时数据
PayContactsManagementTemporary payContactsManagementTemporaryMail = payContactsManagementTemporaryService.getById(p.getMailContactsId());
if(Objects.isNull(payContactsManagementTemporaryMail)){
payContactsManagementTemporaryMail = payContactsManagementTemporaryService.insertContactsManagementTemporary(p.getMailContactsId());
payContactsManagementTemporaryMail = payContactsManagementTemporaryService.insertContactsManagementTemporary(p.getMailContactsId(), null);
} else {
payContactsManagementTemporaryMail.setCompanyId(payContactsManagementTemporaryMail.getId());
payContactsManagementTemporaryMail.setId(null);
@@ -370,7 +370,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
for (PayWorkingGroupSubItemContacts subItemContacts : itemContactsList) {
PayContactsManagementTemporary payContactsManagementTemporary = payContactsManagementTemporaryService.getById(subItemContacts.getContactsTemporaryId());
if(Objects.isNull(payContactsManagementTemporary)){
payContactsManagementTemporary = payContactsManagementTemporaryService.insertContactsManagementTemporary(subItemContacts.getContactsId());
payContactsManagementTemporary = payContactsManagementTemporaryService.insertContactsManagementTemporary(subItemContacts.getContactsId(), null);
}else{
payContactsManagementTemporary.setId(null);
payContactsManagementTemporary.setCompanyId(p.getChargeCompanyTemporaryId());
@@ -771,7 +771,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
}
String year = payWorkingGroup.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
// 找到是否付费标识
Integer payFlag = payWorkingGroup.getPayFlag();
if (Objects.isNull(payFlag)) {
@@ -33,7 +33,6 @@ import com.jero.contract.service.IPayIncomeContractService;
import com.jero.mail.service.IPayMailBillService;
import com.jero.meeting.entity.PayMeetingRemindRecord;
import com.jero.meeting.service.IPayMeetingRemindRecordService;
import com.jero.member.entity.TbMemberProjectSubitem;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.system.entity.SysUser;
@@ -215,7 +214,9 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
if (Objects.isNull(payWorkingGroup)) {
throw new JeroBootException("工作组不存在!");
}
String year = payWorkingGroup.getYear();
//判断用户是否能操作所选年份数据
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
try {
// 编辑保存前再次校验来款项目是否存在
LambdaQueryWrapper<PayWorkingGroupSubItem> queryWrapper = new LambdaQueryWrapper<>();
@@ -233,7 +234,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
if (!Objects.isNull(payWorkingGroupSubItem.getReceivableAmount()) && payWorkingGroupSubItem.getReceivableAmount().compareTo(new BigDecimal("0")) > 0) {
payWorkingGroupSubItem.setPaymentStatus(PayProjectCommon.PAYMENT_STATUS);
}
setPayWorkingGroupSubItemAdd(payWorkingGroupSubItem);
setPayWorkingGroupSubItemAdd(payWorkingGroupSubItem, annualDataLocking);
payWorkingGroupSubItem.setPack(PayProjectCommon.PACKAGING0);
payWorkingGroupSubItem.setInAccount(PayProjectCommon.IN_ACCOUNT0);
payWorkingGroupSubItem.setMakeInvoice(PayProjectCommon.MAKE_INVOICE0);
@@ -339,7 +340,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
}
String year = payWorkingGroup.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
// 项目为打包状态 || 到账!=0 || 开票!=0 || 邮寄!=0
if (!Objects.equals(payWorkingGroupSubItem.getChargeCompanyId(), payWorkingGroupSubItemOld.getChargeCompanyId())
&& (Objects.equals(payWorkingGroupSubItem.getPack(), PayProjectCommon.PACKAGING1)
@@ -418,7 +419,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
if (!CollectionUtils.isEmpty(listPayWorkingGroupSubItemContacts)) {
payWorkingGroupSubItemOld.setPayWorkingGroupSubItemContactsList(listPayWorkingGroupSubItemContacts);
}
setPayWorkingGroupSubItemEdit(payWorkingGroupSubItem, payWorkingGroupSubItemOld);
setPayWorkingGroupSubItemEdit(payWorkingGroupSubItem, payWorkingGroupSubItemOld, annualDataLocking);
List<PayWorkingGroupSubItemContacts> listPayWorkingGroupSubItemContactsNew = payWorkingGroupSubItem.getPayWorkingGroupSubItemContactsList();
// 添加联系人表
if (!CollectionUtils.isEmpty(listPayWorkingGroupSubItemContactsNew)) {
@@ -593,7 +594,9 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
if (!CollectionUtils.isEmpty(listPayWorkingGroupSubItemContacts)) {
payWorkingGroupSubItemOld.setPayWorkingGroupSubItemContactsList(listPayWorkingGroupSubItemContacts);
}
setPayWorkingGroupSubItemEdit(payWorkingGroupSubItem, payWorkingGroupSubItemOld);
//判断用户是否能操作所选年份数据
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(payWorkingGroup.getYear());
setPayWorkingGroupSubItemEdit(payWorkingGroupSubItem, payWorkingGroupSubItemOld, annualDataLocking);
List<PayWorkingGroupSubItemContacts> listPayWorkingGroupSubItemContactsNew = payWorkingGroupSubItem.getPayWorkingGroupSubItemContactsList();
// 添加联系人表
if (!CollectionUtils.isEmpty(listPayWorkingGroupSubItemContactsNew)) {
@@ -900,8 +903,13 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
}
});
if (StringUtils.isBlank(msg)) {
String year = payWorkingGroup.getYear();
//判断用户是否能操作所选年份数据
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
// 拷贝企业,联系人
list.forEach(this::setPayWorkingGroupSubItemAdd);
for (PayWorkingGroupSubItem payWorkingGroupSubItem : list) {
setPayWorkingGroupSubItemAdd(payWorkingGroupSubItem, annualDataLocking);
}
// 更新数据
payWorkingGroupSubItemService.saveBatch(list);
list.forEach(p -> {
@@ -1385,7 +1393,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
}
String year = payWorkingGroup.getYear();
//判断用户是否能操作所选年份数据
annualDataLockingService.judgeUserYear(year);
AnnualDataLocking annualDataLocking = annualDataLockingService.judgeUserYear(year);
// 校验项目是否已关联合同 抛异常
payIncomeContractService.getPayIncomeContractAssociated(Collections.singletonList(payWorkingGroupSubItem.getId()));
// 如果已打报,同步删除打包关联
@@ -1407,9 +1415,9 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
* @Return
* @Exception
*/
private void setPayWorkingGroupSubItemAdd(PayWorkingGroupSubItem payWorkingGroupSubItem) {
private void setPayWorkingGroupSubItemAdd(PayWorkingGroupSubItem payWorkingGroupSubItem, AnnualDataLocking annualDataLocking) {
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payWorkingGroupSubItem.getChargeCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payWorkingGroupSubItem.getChargeCompanyId(), annualDataLocking);
if (Objects.isNull(chargeCompanyName)) {
throw new JeroBootException("企业名称为空!");
}
@@ -1419,7 +1427,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
if (!CollectionUtils.isEmpty(payWorkingGroupSubItemContactsList)) {
for (int i = 0; i < payWorkingGroupSubItemContactsList.size(); i++) {
// 企业联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payWorkingGroupSubItemContactsList.get(i).getContactsId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payWorkingGroupSubItemContactsList.get(i).getContactsId(), annualDataLocking);
if (Objects.isNull(contactsName)) {
throw new JeroBootException("企业联系人" + (i + 1) + "名称为空!");
}
@@ -1428,7 +1436,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
}
}
// 邮寄联系人
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payWorkingGroupSubItem.getMailContactsId());
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payWorkingGroupSubItem.getMailContactsId(), annualDataLocking);
if (Objects.isNull(mailContactsName)) {
throw new JeroBootException("邮寄联系人名称为空!");
}
@@ -1444,10 +1452,10 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
* @Return
* @Exception
*/
private void setPayWorkingGroupSubItemEdit(PayWorkingGroupSubItem payWorkingGroupSubItem, PayWorkingGroupSubItem payWorkingGroupSubItemOld) {
private void setPayWorkingGroupSubItemEdit(PayWorkingGroupSubItem payWorkingGroupSubItem, PayWorkingGroupSubItem payWorkingGroupSubItemOld, AnnualDataLocking annualDataLocking) {
if (!Objects.equals(payWorkingGroupSubItemOld.getChargeCompanyTemporaryId(), payWorkingGroupSubItem.getChargeCompanyId())) {
// 企业
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payWorkingGroupSubItem.getChargeCompanyId());
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payWorkingGroupSubItem.getChargeCompanyId(), annualDataLocking);
if (Objects.isNull(chargeCompanyName)) {
throw new JeroBootException("企业名称为空!");
}
@@ -1472,7 +1480,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
// 新增
for (int i = 0; i < payWorkingGroupSubItemContactsList.size(); i++) {
// 企业联系人
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payWorkingGroupSubItemContactsList.get(i).getContactsId());
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payWorkingGroupSubItemContactsList.get(i).getContactsId(), annualDataLocking);
if (Objects.isNull(contactsName)) {
throw new JeroBootException("企业联系人" + (i + 1) + "名称为空!");
}
@@ -1482,7 +1490,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
}
if (!Objects.equals(payWorkingGroupSubItemOld.getMailContactsTemporaryId(), payWorkingGroupSubItem.getMailContactsId())) {
// 邮寄联系人
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payWorkingGroupSubItem.getMailContactsId());
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payWorkingGroupSubItem.getMailContactsId(), annualDataLocking);
if (Objects.isNull(mailContactsName)) {
throw new JeroBootException("邮寄联系人名称为空!");
}
@@ -2,9 +2,9 @@ package com.jero.temporary.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.temporary.entity.PayCompanyManagementTemporary;
import java.io.Serializable;
import java.util.List;
/**
@@ -23,11 +23,13 @@ public interface IPayCompanyManagementTemporaryService extends IService<PayCompa
* @Return 企业信息
* @Exception
*/
PayCompanyManagementTemporary insertCompanyManagementTemporary(String companyId);
PayCompanyManagementTemporary insertCompanyManagementTemporary(String companyId, AnnualDataLocking annualDataLocking);
List<PayCompanyManagementTemporary> insertList(List<String> companyIdList, String year);
PayCompanyManagementTemporary getByAllTable(String companyId, String companyTemporaryId);
PayCompanyManagementTemporary getById(String id);
boolean removeById(String id);
}
@@ -2,6 +2,7 @@ package com.jero.temporary.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.temporary.entity.PayContactsManagementTemporary;
import java.util.List;
@@ -22,7 +23,7 @@ public interface IPayContactsManagementTemporaryService extends IService<PayCont
* @Return 返回联系人信息
* @Exception
*/
PayContactsManagementTemporary insertContactsManagementTemporary(String contactsId);
PayContactsManagementTemporary insertContactsManagementTemporary(String contactsId, AnnualDataLocking annualDataLocking);
List<PayContactsManagementTemporary> insertList(List<String> contactsIdList, String year);
@@ -2,10 +2,12 @@ package com.jero.temporary.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.exception.JeroBootException;
import com.jero.company.entity.PayCompanyManagement;
import com.jero.company.service.IPayCompanyManagementService;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.temporary.common.PayCompanyManagementTemporaryCommon;
import com.jero.temporary.entity.PayCompanyManagementTemporary;
import com.jero.temporary.mapper.PayCompanyManagementTemporaryMapper;
@@ -33,7 +35,7 @@ public class PayCompanyManagementTemporaryServiceImpl extends ServiceImpl<PayCom
private IPayCompanyManagementTemporaryService payCompanyManagementTemporaryService;
@Override
public PayCompanyManagementTemporary insertCompanyManagementTemporary(String companyId) {
public PayCompanyManagementTemporary insertCompanyManagementTemporary(String companyId, AnnualDataLocking annualDataLocking) {
if(StringUtils.isBlank(companyId)){
throw new JeroBootException("企业id不能为空!");
}
@@ -59,8 +61,11 @@ public class PayCompanyManagementTemporaryServiceImpl extends ServiceImpl<PayCom
payCompanyManagementTemporary.setCreateTime(null);
payCompanyManagementTemporary.setUpdateBy(null);
payCompanyManagementTemporary.setUpdateTime(null);
//payCompanyManagementTemporary.setId(null);
//payCompanyManagementTemporaryService.save(payCompanyManagementTemporary);
if (annualDataLocking != null){
payCompanyManagementTemporary.setId(null);
payCompanyManagementTemporary.setYear(annualDataLocking.getYear());
payCompanyManagementTemporaryService.save(payCompanyManagementTemporary);
}
return payCompanyManagementTemporary;
}
@@ -120,5 +125,13 @@ public class PayCompanyManagementTemporaryServiceImpl extends ServiceImpl<PayCom
return temporary;
}
@Override
public boolean removeById(String id) {
LambdaQueryWrapper<PayCompanyManagementTemporary> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(PayCompanyManagementTemporary::getId, id)
.isNotNull(PayCompanyManagementTemporary::getYear);
return baseMapper.delete(wrapper) > 0;
}
}
@@ -4,11 +4,9 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.exception.JeroBootException;
import com.jero.company.entity.PayCompanyManagement;
import com.jero.company.entity.PayContactsManagement;
import com.jero.company.service.IPayContactsManagementService;
import com.jero.temporary.common.PayCompanyManagementTemporaryCommon;
import com.jero.temporary.entity.PayCompanyManagementTemporary;
import com.jero.project.entity.AnnualDataLocking;
import com.jero.temporary.entity.PayContactsManagementTemporary;
import com.jero.temporary.mapper.PayContactsManagementTemporaryMapper;
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
@@ -36,7 +34,7 @@ public class PayContactsManagementTemporaryServiceImpl extends ServiceImpl<PayCo
private IPayContactsManagementTemporaryService payContactsManagementTemporaryService;
@Override
public PayContactsManagementTemporary insertContactsManagementTemporary(String contactsId) {
public PayContactsManagementTemporary insertContactsManagementTemporary(String contactsId, AnnualDataLocking annualDataLocking) {
if(StringUtils.isBlank(contactsId)){
throw new JeroBootException("联系人id不能为空!");
}
@@ -53,12 +51,15 @@ public class PayContactsManagementTemporaryServiceImpl extends ServiceImpl<PayCo
}
PayContactsManagementTemporary payContactsManagementTemporary = JSON.parseObject(str,PayContactsManagementTemporary.class);
payContactsManagementTemporary.setContactId(payContactsManagementTemporary.getId());
//payContactsManagementTemporary.setId(null);
payContactsManagementTemporary.setCreateBy(null);
payContactsManagementTemporary.setCreateTime(null);
payContactsManagementTemporary.setUpdateBy(null);
payContactsManagementTemporary.setUpdateTime(null);
//payContactsManagementTemporaryService.save(payContactsManagementTemporary);
if (annualDataLocking != null){
payContactsManagementTemporary.setId(null);
payContactsManagementTemporary.setYear(annualDataLocking.getYear());
payContactsManagementTemporaryService.save(payContactsManagementTemporary);
}
return payContactsManagementTemporary;
}
@@ -158,7 +158,17 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override
public String translateDictFromTable(String table, String text, String code, String key) {
return sysDictService.queryTableDictTextByKey(table, text, code, key);
String s = sysDictService.queryTableDictTextByKey(table, text, code, key);
if ("pay_company_management_temporary".equals(table)){
if (StringUtils.isBlank(s)){
s = sysDictService.queryTableDictTextByKey("pay_company_management", text, code, key);
}
}else if ("pay_contacts_management_temporary".equals(table)){
if (StringUtils.isBlank(s)){
s = sysDictService.queryTableDictTextByKey("pay_contacts_management", text, code, key);
}
}
return s;
}
@Override
@@ -329,7 +339,13 @@ public class SysBaseApiImpl implements ISysBaseAPI {
table = QueryGenerator.getSqlRuleValue(table);
}
//update-end-author:taoyan date:20200820 for:Online+系统字典表加权限控制机制逻辑想法不错 LOWCOD-799
return sysDictService.queryTableDictItemsByCode(table, text, code);
List<DictModel> dictModels = sysDictService.queryTableDictItemsByCode(table, text, code);
if ("pay_company_management_temporary".equals(table)){
dictModels.addAll(sysDictService.queryTableDictItemsByCode("pay_company_management", text, code));
}else if ("pay_contacts_management_temporary".equals(table)){
dictModels.addAll(sysDictService.queryTableDictItemsByCode("pay_contacts_management", text, code));
}
return dictModels;
}
@Override