diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ProjectPackServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ProjectPackServiceImpl.java index ce402bec..ce8d186e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ProjectPackServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ProjectPackServiceImpl.java @@ -99,7 +99,7 @@ public class ProjectPackServiceImpl implements ProjectPackService { throw new JeroBootException("企业不匹配!"); } //审核不通过不允许打包 - if (!Objects.equals(payMeetingSituationOld.getCheckResult(), MeetingSubitemCommon.SIGNUP_STATUS_1)) { + if (!Objects.equals(payMeetingSituationOld.getRegisterCheckResult(), MeetingSubitemCommon.SIGNUP_STATUS_1)) { throw new JeroBootException("项目未审核通过!"); } LambdaUpdateWrapper payMeetingSituation = new LambdaUpdateWrapper<>(); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java index f5daf185..9a20613a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java @@ -634,10 +634,8 @@ public class PayContactsManagementController extends JeroController queryByIdMeeting(@RequestParam(name="id") String id) { - LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal(); -// if(sysUser.getId().equals(id)) { + @GetMapping(value = "/queryByIdGetContract") + public Result queryByIdGetContract(@RequestParam(name="id") String id) { PayContactsManagement payContactsManagement = payContactsManagementService.getById(id); if (payContactsManagement == null) { return Result.error("未找到对应数据"); @@ -649,9 +647,34 @@ public class PayContactsManagementController extends JeroController queryByIdMeeting(@RequestParam(name="id") String id) { + LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal(); + if(sysUser.getId().equals(id)) { + PayContactsManagement payContactsManagement = payContactsManagementService.getById(id); + if (payContactsManagement == null) { + return Result.error("未找到对应数据"); + } + if (!StringUtils.isBlank(payContactsManagement.getPhone())) { + payContactsManagement.setPhone(PasswordUtil.decrypt(payContactsManagement.getPhone())); + } + if (!StringUtils.isBlank(payContactsManagement.getEmail())) { + payContactsManagement.setEmail(PasswordUtil.decrypt(payContactsManagement.getEmail())); + } + return Result.OK(payContactsManagement); + }else{ + return Result.OK("权限异常"); + } } /** @@ -701,6 +724,44 @@ public class PayContactsManagementController extends JeroController queryWXByCompany(@RequestParam(name="companyId") String companyId, + @RequestParam(name="name",required = false) String name, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize) { + if(!StringUtils.isBlank(name)){ + name = oConvertUtils.replaceAllPercent(name); + } + Page page = new Page<>(pageNo, pageSize); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayContactsManagement::getCompanyId,companyId); + queryWrapper.eq(PayContactsManagement::getName,name); + if(!StringUtils.isEmpty(name)){ + queryWrapper.like(PayContactsManagement::getName,name); + } + IPage listPayContactsManagement = payContactsManagementService.page(page,queryWrapper); + if(!CollectionUtils.isEmpty(listPayContactsManagement.getRecords())){ + List list = listPayContactsManagement.getRecords(); + list.forEach(p->{ + if(!StringUtils.isBlank(p.getPhone())){ + p.setPhone(PasswordUtil.decrypt(p.getPhone())); + } + if(!StringUtils.isBlank(p.getEmail())){ + p.setEmail(PasswordUtil.decrypt(p.getEmail())); + } + }); + listPayContactsManagement.setRecords(list); + } + return Result.OK(listPayContactsManagement); + } + /** * 通过企业id查询用户 * diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java index c661872d..06c8db93 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java @@ -551,6 +551,10 @@ public class PayIncomeContractController extends JeroController pageList = payIncomeContractService.queryList( payIncomeContract,chargeStatus,projectName,startTime,endTime); List exportList = null; @@ -562,6 +566,7 @@ public class PayIncomeContractController extends JeroController> list = new ArrayList<>(); // excel字段长度 Map mapCount = new HashMap<>(); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java index e6b91b42..3a83699e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java @@ -3,15 +3,12 @@ package com.jero.contract.controller; import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; - import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; @@ -20,11 +17,9 @@ import com.jero.common.common.RoleCommon; import com.jero.common.exception.JeroBootException; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.base.controller.JeroController; -import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.DateUtils; import com.jero.common.util.oConvertUtils; -import com.jero.contract.common.PayIncomeContractCommon; import com.jero.contract.entity.*; import com.jero.contract.service.IPaySpendingContractInstallmentService; import com.jero.contract.service.IPaySpendingContractService; @@ -39,9 +34,7 @@ import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.entity.enmus.ExcelType; import org.jeecgframework.poi.excel.entity.params.ExcelExportEntity; import org.jeecgframework.poi.excel.view.JeecgMapExcelView; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.env.Environment; -import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import io.swagger.annotations.Api; @@ -261,8 +254,11 @@ public class PaySpendingContractController extends JeroController pageList = paySpendingContractService.queryList( paySpendingContract.getContractNum(), + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if(!sysUser.getRoleCode().contains(RoleCommon.CWRY)){ + paySpendingContract.setPrincipalId(sysUser.getId()); + } + List pageList = paySpendingContractService.queryList(paySpendingContract.getPrincipalId(), paySpendingContract.getContractNum(), paySpendingContract.getContractName(),startTime,endTime); List exportList = null; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java index d5d2244c..c2f06047 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java @@ -36,7 +36,7 @@ public interface PaySpendingContractMapper extends BaseMapper queryList(@Param("contractNum") String contractNum, + List queryList(@Param("principalId") String principalId, @Param("contractNum") String contractNum, @Param("contractName") String contractName,@Param("startTime") String startTime, @Param("endTime") String endTime); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PayIncomeContractMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PayIncomeContractMapper.xml index 2e9272cb..521bdff2 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PayIncomeContractMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PayIncomeContractMapper.xml @@ -295,6 +295,9 @@ AND aa.associatedProject LIKE CONCAT('%',CONCAT(#{projectName},'%')) + + AND aa.principalId = #{payIncomeContract.principalId} + ORDER BY aa.chargeStatus desc,aa.statusOrder desc, aa.createTime desc diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml index a8085638..e6e3c365 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml @@ -109,6 +109,9 @@ AND DATE_FORMAT(create_time,'%Y-%m-%d') <= #{endTime} + + AND principal_id = #{principalId} + ORDER BY chargeStatus desc,create_time desc diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java index dec52bb5..3c1acc02 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java @@ -79,5 +79,5 @@ public interface IPaySpendingContractService extends IService queryList(String contractNum,String contractName,String startTime,String endTime); + List queryList(String principalId, String contractNum,String contractName,String startTime,String endTime); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java index c421eff5..9b99b4c8 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java @@ -520,8 +520,8 @@ public class PaySpendingContractServiceImpl extends ServiceImpl queryList(String contractNum, String contractName, String startTime, String endTime) { - return paySpendingContractMapper.queryList( contractNum, contractName, startTime, endTime); + public List queryList(String principalId,String contractNum, String contractName, String startTime, String endTime) { + return paySpendingContractMapper.queryList(principalId, contractNum, contractName, startTime, endTime); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayCaseCommitteeController.java b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayCaseCommitteeController.java index 23cae957..45d50dc8 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayCaseCommitteeController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayCaseCommitteeController.java @@ -132,7 +132,7 @@ public class PayCaseCommitteeController extends JeroController queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap()); String particularYear = req.getParameter("particularYear"); - if (StringUtils.isNotBlank(particularYear)){ - queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )",particularYear); + if (StringUtils.isNotBlank(particularYear)) { + queryWrapper.eq("DATE_FORMAT( ppr.payment_date, '%Y' )", particularYear); } + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if (!rolePermissionService.getRolePermission("committeeMeetingSituation:search")) { + queryWrapper.eq("pm.director_id", loginUser.getId()); + } + queryWrapper.eq("pm.meeting_type",MEETING_TYPE); Page page = new Page<>(pageNo, pageSize); IPage pageList = payMeetingSituationService.pageListContract(page, queryWrapper); List situationList = pageList.getRecords(); for (PayMeetingSituation meetingSituation : situationList) { Integer payMode = meetingSituation.getPayMode(); //汇款并且缴费凭证为空 - if (Objects.equals(payMode,1) && StringUtils.isBlank(meetingSituation.getPaymentRecord())){ + if (Objects.equals(payMode, 1) && StringUtils.isBlank(meetingSituation.getPaymentRecord())) { meetingSituation.setIdentification(PayProjectCommon.YES); - }else { + } else { meetingSituation.setIdentification(PayProjectCommon.NO); } } @@ -100,6 +118,11 @@ public class CommitteeMeetingSituationController extends JeroController add(@RequestBody PayMeetingSituation payMeetingSituation) { + String meetingId = payMeetingSituation.getMeetingId(); + PayMeeting payMeeting = meetingService.getById(meetingId); + if (!Objects.equals(payMeeting.getMeetingType(),MEETING_TYPE)){ + throw new JeroBootException("数据权限不足"); + } payMeetingSituationService.add(payMeetingSituation); return Result.OK("添加成功!"); } @@ -124,6 +147,7 @@ public class CommitteeMeetingSituationController extends JeroController edit(@RequestBody PayMeetingSituationVO payMeetingSituationVO) { + payMeetingSituationService.checkCan(payMeetingSituationVO.getId(),MEETING_TYPE); payMeetingSituationService.editById(payMeetingSituationVO); return Result.OK("编辑成功!"); } @@ -136,6 +160,7 @@ public class CommitteeMeetingSituationController extends JeroController delete(@RequestParam(name = "id") String id) { + payMeetingSituationService.checkCan(id,MEETING_TYPE); payMeetingSituationService.deleteById(id); return Result.OK("删除成功!"); } @@ -148,7 +173,11 @@ public class CommitteeMeetingSituationController extends JeroController deleteBatch(@RequestParam(name = "ids") String ids) { - this.payMeetingSituationService.deleteByIds(Arrays.asList(ids.split(","))); + List stringList = Arrays.asList(ids.split(",")); + for (String id : stringList) { + payMeetingSituationService.checkCan(id,MEETING_TYPE); + } + this.payMeetingSituationService.deleteByIds(stringList); return Result.OK("批量删除成功!"); } @@ -160,6 +189,7 @@ public class CommitteeMeetingSituationController extends JeroController queryById(@RequestParam(name = "id") String id) { + payMeetingSituationService.checkCan(id,MEETING_TYPE); PayMeetingSituation payMeetingSituation = payMeetingSituationService.queryById(id); if (payMeetingSituation == null) { return Result.error("未找到对应数据"); @@ -188,6 +218,11 @@ public class CommitteeMeetingSituationController extends JeroController queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, request.getParameterMap()); List pageList = payMeetingSituationService.list(queryWrapper); // 过滤选中数据 @@ -277,6 +312,10 @@ public class CommitteeMeetingSituationController extends JeroController addDock(@RequestBody AddDockVO addDockVO) { + List meetingSituationIds = addDockVO.getMeetingSituationIds(); + for (String id : meetingSituationIds) { + payMeetingSituationService.checkCan(id,MEETING_TYPE); + } payMeetingSituationService.addDock(addDockVO); return Result.OK("设置对接人成功!"); } @@ -289,6 +328,7 @@ public class CommitteeMeetingSituationController extends JeroController check(@RequestBody CheckVO checkVO) { + payMeetingSituationService.checkCan(checkVO.getId(),MEETING_TYPE); payMeetingSituationService.check(checkVO); return Result.OK("审核成功!"); } @@ -301,6 +341,7 @@ public class CommitteeMeetingSituationController extends JeroController checkRegister(@RequestBody CheckVO checkVO) { + payMeetingSituationService.checkCan(checkVO.getId(),MEETING_TYPE); payMeetingSituationService.checkRegister(checkVO); return Result.OK("审核成功!"); } @@ -316,6 +357,4 @@ public class CommitteeMeetingSituationController extends JeroController select distinct pms.* from pay_meeting_situation pms + left join pay_meeting pm on pms.meeting_id = pm.id left JOIN pay_payment_record ppr ON ppr.project_id = pms.id ${ew.customSqlSegment} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/IPayMeetingSituationService.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/IPayMeetingSituationService.java index 423fadb8..5d437106 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/IPayMeetingSituationService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/IPayMeetingSituationService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; +import com.jero.meeting.common.MeetingCommon; import com.jero.meeting.entity.PayMeetingSituation; import com.baomidou.mybatisplus.extension.service.IService; import com.jero.meeting.vo.*; @@ -77,4 +78,6 @@ public interface IPayMeetingSituationService extends IService pageListContract(Page page, QueryWrapper queryWrapper); + + void checkCan(String situationId, Integer meetingCommon); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java index a1a6bf28..410a11ad 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java @@ -15,6 +15,7 @@ import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; import com.jero.common.enums.ManagementMessageEnums; import com.jero.common.exception.JeroBootException; +import com.jero.common.service.RolePermissionService; import com.jero.common.service.SendMessageService; import com.jero.common.service.ContractCreateProjectSendMessageService; import com.jero.common.system.api.ISysBaseAPI; @@ -113,6 +114,8 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl meetingSituationIds = addDockVO.getMeetingSituationIds(); + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String sysUserId = sysUser.getId(); for (String meetingSituationId : meetingSituationIds) { PayMeetingSituation payMeetingSituation = getById(meetingSituationId); String meetingId = payMeetingSituation.getMeetingId(); PayMeeting payMeeting = meetingService.getById(meetingId); Integer meetingType = payMeeting.getMeetingType(); + //只有会议负责人可以设置对接人 + if (!payMeeting.getDirectorId().equals(sysUserId)) { + throw new JeroBootException("只有会议负责人可以设置对接人"); + } //只有国际研讨会议可以设置对接人 if (!meetingType.equals(Integer.parseInt(MeetingCommon.INTERNATIONAL_MEETING))) { throw new JeroBootException("只有国际研讨会议可以设置对接人"); @@ -1161,4 +1176,13 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl queryWrapper = QueryGenerator.initQueryWrapper(payWorkingGroupDataFile, request.getParameterMap()); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupDistributionRecordController.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupDistributionRecordController.java index bc73bfb9..7ebd5cd1 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupDistributionRecordController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupDistributionRecordController.java @@ -156,7 +156,7 @@ public class PayWorkingGroupDistributionRecordController extends JeroController< zipos = new ZipOutputStream(new BufferedOutputStream(response.getOutputStream())); zipos.setMethod(ZipOutputStream.DEFLATED); //设置压缩方法 for (OSSFile ossFile : listOSSFile) { - File file = new File(upLoadPath + "\\" + ossFile.getUrl()); + File file = new File(upLoadPath + File.separator + ossFile.getUrl()); if(file.exists()){ try { //添加ZipEntry,并ZipEntry中写入文件流w diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupSubItemController.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupSubItemController.java index 7b6e8938..57f97dfa 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupSubItemController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupSubItemController.java @@ -15,6 +15,7 @@ import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; import com.jero.common.exception.JeroBootException; import com.jero.common.service.ProjectDetailService; +import com.jero.common.service.RolePermissionService; import com.jero.common.service.SendMessageService; import com.jero.common.system.base.controller.JeroController; import com.jero.common.system.vo.LoginUser; @@ -85,6 +86,8 @@ public class PayWorkingGroupSubItemController extends JeroController page = new Page<>(pageNo, pageSize); IPage pageList = payWorkingGroupSubItemService.queryPageList(page, payWorkingGroupSubItem, paymentDate); if(!CollectionUtils.isEmpty(pageList.getRecords())){ @@ -302,6 +315,7 @@ public class PayWorkingGroupSubItemController extends JeroController listContacts = listPayWorkingGroupSubItem.stream().map(PayWorkingGroupSubItem::getContactsTemporaryIdOne).collect(Collectors.toList()); List listPayContactsManagementTemporary = payContactsManagementTemporaryService.listByIds(listContacts); if(CollectionUtils.isEmpty(listPayContactsManagementTemporary)){ return Result.error("联系人不存在!"); } - LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); listPayWorkingGroupSubItem.forEach(p->{ List listContactsInfo = listPayContactsManagementTemporary.stream().filter(item->Objects.equals(p.getContactsTemporaryIdOne(),item.getId())).collect(Collectors.toList()); if(CollectionUtils.isEmpty(listContactsInfo)){ @@ -469,6 +489,16 @@ public class PayWorkingGroupSubItemController extends JeroController listPayWorkingGroupDistributionRecord = new ArrayList<>(); if(payWorkingGroupDistributionRecord.getProjectType() == PayProjectCommon.PROJECT_TYPE_FILE1){ + PayWorkingGroup payWorkingGroup = payWorkingGroupService.getById(payWorkingGroupDistributionRecord.getProjectId()); + if(Objects.isNull(payWorkingGroup)){ + throw new JeroBootException("工作组不存在!"); + } + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if(!rolePermissionService.getRolePermission("fileMaintenance:distribute") + && !Objects.equals(payWorkingGroup.getPrincipalIdA(),sysUser.getId()) + && !Objects.equals(payWorkingGroup.getPrincipalIdB(),sysUser.getId())){ + throw new JeroBootException("资料不可操作!"); + } setRecord( payWorkingGroupDistributionRecord,s,listPayWorkingGroupDistributionRecord, byId); LambdaQueryWrapper queryPayContactsManagementTemporary = new LambdaQueryWrapper<>(); queryPayContactsManagementTemporary.in(PayContactsManagementTemporary::getId, Arrays.asList(s)); @@ -115,10 +128,6 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl queryPayContactsManagement = new LambdaQueryWrapper<>(); @@ -228,6 +237,16 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl list = new ArrayList<>(); List listPayWorkingGroupDistributionRecord = new ArrayList<>(); if(payWorkingGroupDistributionRecord.getProjectType() == PayProjectCommon.PROJECT_TYPE_FILE1){ + PayWorkingGroup payWorkingGroup = payWorkingGroupService.getById(payWorkingGroupDistributionRecord.getProjectId()); + if(Objects.isNull(payWorkingGroup)){ + throw new JeroBootException("工作组不存在!"); + } + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if(!rolePermissionService.getRolePermission("fileMaintenance:distribute") + && !Objects.equals(payWorkingGroup.getPrincipalIdA(),sysUser.getId()) + && !Objects.equals(payWorkingGroup.getPrincipalIdB(),sysUser.getId())){ + throw new JeroBootException("资料不可操作!"); + } listPayWorkingGroupDataFile.forEach(p->{ OSSFile byId = iossFileService.getById(p.getFileId()); if(Objects.isNull(byId)){ @@ -245,10 +264,6 @@ public class PayWorkingGroupDistributionRecordServiceImpl extends ServiceImpl{ PayWorkingGroup payWorkingGroupOld = payWorkingGroupService.getById(p); + if(Objects.isNull(payWorkingGroupOld)){ + throw new JeroBootException("工作组不存在!"); + } LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - if(!rolePermissionService.getRolePermission("workingGroupProject:edit") && !Objects.equals(payWorkingGroupOld.getPrincipalIdA(),sysUser.getId())){ + if(!rolePermissionService.getRolePermission("workingGroupProject:batchDel") && !Objects.equals(payWorkingGroupOld.getPrincipalIdA(),sysUser.getId())){ sb.append(payWorkingGroupOld.getWorkingGroupProject() + "工作组项目不可操作!
"); } LambdaQueryWrapper query = new LambdaQueryWrapper<>(); @@ -158,7 +161,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl queryPayWorkingGroup = new LambdaQueryWrapper<>(); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java index 81a0b4c9..2f897c10 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java @@ -4,10 +4,13 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.common.api.vo.Result; import com.jero.common.common.ProjectCommon; import com.jero.common.exception.JeroBootException; import com.jero.common.service.ContractCreateProjectSendMessageService; import com.jero.common.service.ProjectDetailService; +import com.jero.common.service.RolePermissionService; +import com.jero.common.system.vo.LoginUser; import com.jero.common.util.ImportExcelUtil; import com.jero.common.util.ValidUtil; import com.jero.common.vo.ProjectStatusVO; @@ -33,6 +36,7 @@ import com.jero.temporary.service.IPayContactsManagementTemporaryService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.shiro.SecurityUtils; import org.jeecgframework.poi.excel.ExcelImportCheckUtil; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.entity.ImportParams; @@ -43,7 +47,6 @@ import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import java.io.IOException; import java.util.*; import java.util.stream.Collectors; @@ -81,6 +84,8 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); @@ -566,7 +578,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl page = new Page<>(pageNo, pageSize); IPage pageList = payWorkingGroupService.queryPageList(page,allProjectStatisticsSearch, idList ); @@ -167,7 +167,7 @@ public class AllProjectStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + return Result.OK(); } Page page = new Page<>(pageNo, pageSize); IPage pageList = payWorkingGroupService.queryPageListForProject(page,allProjectStatisticsSearch,idList); @@ -236,7 +236,8 @@ public class AllProjectStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + ArrayList objects = new ArrayList<>(); + return AmountUtil.exportListXls(objects, AllProjectStatistics.class, "所领导统计"); } if (allProjectStatisticsSearch.getYear() == null || allProjectStatisticsSearch.getYear().equals("")) { Calendar calendar = Calendar.getInstance(); @@ -275,7 +276,8 @@ public class AllProjectStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + ArrayList objects = new ArrayList<>(); + return AmountUtil.exportListXls(objects, AllProjectStatistics.class, "所领导统计"); } if (allProjectStatisticsSearch.getYear() == null || allProjectStatisticsSearch.getYear().equals("")) { @@ -325,7 +327,8 @@ public class AllProjectStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + ArrayList objects = new ArrayList<>(); + return AmountUtil.exportListXls(objects, AllProjectStatistics.class, "企业来款统计"); } List pageList = payWorkingGroupService.queryPageListExcel(allProjectStatisticsSearch, idList); if (pageList != null) { diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/CompanyComeMoneyStatisticsController.java b/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/CompanyComeMoneyStatisticsController.java index 9904ef68..c3b29bc8 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/CompanyComeMoneyStatisticsController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/CompanyComeMoneyStatisticsController.java @@ -84,7 +84,7 @@ public class CompanyComeMoneyStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + return Result.OK(); } Page page = new Page<>(pageNo, pageSize); IPage pageList = payWorkingGroupService.queryPageListForCompany(page,companyComeMoneySearch,idList); @@ -148,7 +148,7 @@ public class CompanyComeMoneyStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + return Result.OK(); } Page page = new Page<>(pageNo, pageSize); IPage pageList = payWorkingGroupService.queryPageListForCompanyDetail(page, companyComeMoneyDetailSearch,idList); @@ -210,7 +210,8 @@ public class CompanyComeMoneyStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + ArrayList objects = new ArrayList<>(); + return AmountUtil.exportListXls(objects, CompanyComeMoneyList.class, "企业来款统计"); } List pageList = payWorkingGroupService.queryPageListForCompanyExcel(companyComeMoneySearch, idList); @@ -244,7 +245,8 @@ public class CompanyComeMoneyStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + ArrayList objects = new ArrayList<>(); + return AmountUtil.exportListXls(objects, CompanyComeMoneyDetail.class, "企业来款详情统计"); } List pageList = payWorkingGroupService.queryPageListForCompanyDetailExcel(companyComeMoneyDetailSearch, idList); for (CompanyComeMoneyDetail s : pageList) { diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PayWorkingGroupStatisticsController.java b/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PayWorkingGroupStatisticsController.java index 64e1005b..e3e33877 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PayWorkingGroupStatisticsController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PayWorkingGroupStatisticsController.java @@ -22,6 +22,7 @@ import com.jero.project.entity.PayWorkingGroupStatistics; import com.jero.project.entity.PayWorkingGroupSubletSearch; import com.jero.project.service.IPayWorkingGroupService; import com.jero.project.service.IPayWorkingGroupSubItemService; +import com.jero.statistics.entity.CompanyComeMoneyDetail; import com.jero.util.AmountUtil; import com.jero.util.SearchUtil; import io.swagger.annotations.Api; @@ -95,7 +96,7 @@ public class PayWorkingGroupStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + return Result.OK(); } IPage pageList = payWorkingGroupService.queryPageListForStatistics(page, payWorkingGroupSearch,idList); List records = pageList.getRecords(); @@ -161,7 +162,8 @@ public class PayWorkingGroupStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + ArrayList objects = new ArrayList<>(); + return AmountUtil.exportListXls(objects, PayWorkingGroupStatistics.class, "工作组项目统计"); } List pageList = payWorkingGroupService.queryPageListForStatisticsExcel(payWorkingGroupSearch, idList); //处理为空数据为0 @@ -198,7 +200,8 @@ public class PayWorkingGroupStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + ArrayList objects = new ArrayList<>(); + return AmountUtil.exportListXls(objects, PayWorkingGroupStatistics.class, "工作组项目统计"); } List pageList = payWorkingGroupService.queryPageListForStatisticsExcel(payWorkingGroupSearch, idList,strings); //处理为空数据为0 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PrincipalPeopleStatisticsController.java b/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PrincipalPeopleStatisticsController.java index 0a13ef5a..6fad3094 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PrincipalPeopleStatisticsController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/statistics/controller/PrincipalPeopleStatisticsController.java @@ -18,6 +18,7 @@ import com.jero.mail.entity.PayMailBillProject; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.mapper.SysUserMapper; import com.jero.project.entity.PayWorkGroupSubletStatistics; +import com.jero.project.entity.PayWorkingGroupStatistics; import com.jero.project.service.IPayWorkingGroupService; import com.jero.statistics.entity.*; import com.jero.util.AmountUtil; @@ -92,7 +93,7 @@ public class PrincipalPeopleStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + return Result.OK(); } Page page = new Page<>(pageNo, pageSize); @@ -205,7 +206,8 @@ public class PrincipalPeopleStatisticsController { String userId = sysUser.getId(); idList.add(userId); } else { - throw new JeroBootException("权限异常"); + ArrayList objects = new ArrayList<>(); + return AmountUtil.exportListXls(objects, PrincipalPeopleList.class, "个人来款"); } List pageList = payWorkingGroupService.queryPageListForPrincipalExcel(principalPeopleSearch, idList); diff --git a/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysDepartController.java b/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysDepartController.java index 7e7a03e5..0f81098f 100644 --- a/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysDepartController.java +++ b/jero-boot-module-system/src/main/java/com/jero/modules/system/controller/SysDepartController.java @@ -421,30 +421,32 @@ public class SysDepartController { List errorMessage = new ArrayList<>(); int num = 0; for (SysDepartExcel sysDepart : listSysDeparts) { - String orgCode = sysDepart.getOrgCode(); - if(orgCode.length() > codeLength) { - String parentCode = orgCode.substring(0, orgCode.length()-codeLength); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("org_code", parentCode); - SysDepart parentDept = sysDepartService.getOne(queryWrapper); - if(parentDept != null) { - sysDepart.setParentId(parentDept.getId()); - } else { + int lineNumber = num +1; + List errorList = ValidUtil.validateReturnList(sysDepart); + if (!errorList.isEmpty()){ + errorMessage.add("第 " + lineNumber + " 行:"+ StringUtils.join(errorList,",")); + } + if (errorMessage.isEmpty()){ + String orgCode = sysDepart.getOrgCode(); + if(orgCode.length() > codeLength) { + String parentCode = orgCode.substring(0, orgCode.length()-codeLength); + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.eq("org_code", parentCode); + SysDepart parentDept = sysDepartService.getOne(queryWrapper); + if(parentDept != null) { + sysDepart.setParentId(parentDept.getId()); + } else { + sysDepart.setParentId(""); + } + }else{ sysDepart.setParentId(""); } - }else{ - sysDepart.setParentId(""); + //update-begin---author:liusq Date:20210223 for:批量导入部门以后,不能追加下一级部门 #2245------------ + sysDepart.setOrgType(sysDepart.getOrgCode().length()/codeLength+""); + //update-end---author:liusq Date:20210223 for:批量导入部门以后,不能追加下一级部门 #2245------------ + sysDepart.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); } - //update-begin---author:liusq Date:20210223 for:批量导入部门以后,不能追加下一级部门 #2245------------ - sysDepart.setOrgType(sysDepart.getOrgCode().length()/codeLength+""); - //update-end---author:liusq Date:20210223 for:批量导入部门以后,不能追加下一级部门 #2245------------ - sysDepart.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); - int lineNumber = num +1; try { - List errorList = ValidUtil.validateReturnList(sysDepart); - if (!errorList.isEmpty()){ - errorMessage.add("第 " + lineNumber + " 行:"+ StringUtils.join(errorList,",")); - } LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(SysDepart::getDepartName,sysDepart.getDepartName()); if (sysDepartService.count(wrapper) > 0) { @@ -453,7 +455,7 @@ public class SysDepartController { LambdaQueryWrapper wrapper1 = new LambdaQueryWrapper<>(); wrapper1.eq(SysDepart::getOrgCode,sysDepart.getOrgCode()); if (sysDepartService.count(wrapper1) > 0) { - errorMessage.add("第 " + lineNumber + " 行:部门编码已经存在"); + errorMessage.add("第 " + lineNumber + " 行:机构编码已经存在"); } if (errorMessage.isEmpty()){ SysDepart sysDepart1 = new SysDepart(); @@ -467,11 +469,13 @@ public class SysDepartController { } num++; } - //清空部门缓存 - Set keys3 = redisTemplate.keys(CacheConstant.SYS_DEPARTS_CACHE + "*"); - Set keys4 = redisTemplate.keys(CacheConstant.SYS_DEPART_IDS_CACHE + "*"); - redisTemplate.delete(keys3); - redisTemplate.delete(keys4); + if (errorMessage.isEmpty()){ + //清空部门缓存 + Set keys3 = redisTemplate.keys(CacheConstant.SYS_DEPARTS_CACHE + "*"); + Set keys4 = redisTemplate.keys(CacheConstant.SYS_DEPART_IDS_CACHE + "*"); + redisTemplate.delete(keys3); + redisTemplate.delete(keys4); + } return ImportExcelUtil.importReturnRes(errorMessage.size(), errorMessage); } catch (Exception e) { log.error(e.getMessage(),e); diff --git a/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/SysUserRoleMapper.java b/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/SysUserRoleMapper.java index 91e0e272..a99328a9 100644 --- a/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/SysUserRoleMapper.java +++ b/jero-boot-module-system/src/main/java/com/jero/modules/system/mapper/SysUserRoleMapper.java @@ -16,10 +16,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface SysUserRoleMapper extends BaseMapper { - @Select("select role_code from sys_role where id in (select role_id from sys_user_role where user_id = (select id from sys_user where username=#{username}))") + @Select("select role_code from sys_role where id in (select role_id from sys_user_role where user_id = (select id from sys_user where username=#{username} and del_flag = 0))") List getRoleByUserName(@Param("username") String username); - @Select("select id from sys_role where id in (select role_id from sys_user_role where user_id = (select id from sys_user where username=#{username}))") + @Select("select id from sys_role where id in (select role_id from sys_user_role where user_id = (select id from sys_user where username=#{username} and del_flag = 0))") List getRoleIdByUserName(@Param("username") String username); } diff --git a/jero-boot-module-system/src/main/java/com/jero/modules/system/model/SysDepartExcel.java b/jero-boot-module-system/src/main/java/com/jero/modules/system/model/SysDepartExcel.java index e02b7495..ddf9a719 100644 --- a/jero-boot-module-system/src/main/java/com/jero/modules/system/model/SysDepartExcel.java +++ b/jero-boot-module-system/src/main/java/com/jero/modules/system/model/SysDepartExcel.java @@ -34,10 +34,11 @@ public class SysDepartExcel { /**机构编码*/ @Excel(name="机构编码",width=15,orderNum = "2") + @NotBlank(message = "机构编码不能为空") private String orgCode; /**手机号*/ @Excel(name="手机号",width=15,orderNum = "5") - @Pattern(regexp = "^((13[0-9])|(14[579])|(15([0-3]|[5-9]))|(17[0135678])|(18[0-9])|(19[8|9])|(16[6]))\\d{8}$",message = "手机号码格式错误") + @Pattern(regexp = "^((13[0-9])|(14[579])|(15([0-3]|[5-9]))|(17[0135678])|(18[0-9])|(19[8|9])|(16[6]))\\d{8}$",message = "手机号格式错误") private String mobile; /**传真*/ private String fax;