diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java index 5639dd53..fe8e8046 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java @@ -68,8 +68,8 @@ public class PayIncomeContractCommon { * 支出合同excel表头 */ public final static List LIST_SPENDING_CONTRACT = Arrays.asList("合同编号","合同名称","签订单位名称","签订单位联系人","是否开口","负责人", - "签订合同总金额","税率","未税金额","合同签订日期","合同终止日期","合同约定主要时点", - "应收金额","已收金额","合同约定付款次数","是否打包","打包年份"); + "部门名称","签订合同总金额","税率","未税金额","合同签订日期","合同终止日期","合同约定主要时点", + "应收金额","已收金额","未收金额","账款状态","合同约定付款次数","是否打包","打包年份"); /** * 支出合同分期信息excel 表头 */ 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 b7d830e3..8b0d6883 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 @@ -26,12 +26,10 @@ import com.jero.contract.service.IPayIncomeContractInstallmentService; import com.jero.contract.service.IPayIncomeContractService; import com.jero.contract.vo.*; import io.swagger.annotations.Api; -import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; -import org.jeecgframework.poi.excel.annotation.Excel; import org.jeecgframework.poi.excel.def.MapExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.entity.params.ExcelExportEntity; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContract.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContract.java index 04881d22..23bf5b1d 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContract.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContract.java @@ -171,16 +171,16 @@ public class PaySpendingContract implements Serializable { @ApiModelProperty(value = "创建人") private String createBy; /**创建时间*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern="yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "创建时间") private Date createTime; /**更新人*/ @ApiModelProperty(value = "更新人") private String updateBy; /**更新时间*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern="yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "更新时间") private Date updateTime; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContractInstallment.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContractInstallment.java index 43965fbf..1ce18d5e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContractInstallment.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContractInstallment.java @@ -79,16 +79,16 @@ public class PaySpendingContractInstallment implements Serializable { @ApiModelProperty(value = "创建人") private String createBy; /**创建时间*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern="yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "创建时间") private Date createTime; /**更新人*/ @ApiModelProperty(value = "更新人") private String updateBy; /**更新时间*/ - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern="yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "更新时间") private Date updateTime; } 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 415bd3b2..5134bf41 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 @@ -37,15 +37,13 @@ pic.create_time AS createTime, pic.update_by AS updateBy, pic.update_time AS updateTime, - if(pic.chargeStatus > 0,1,0) AS chargeStatus, - GROUP_CONCAT(project.projectName) AS associatedProject - FROM ( - select pay_income_contract.*,(select count(*) from pay_income_contract_installment - where contract_id = pay_income_contract.id AND accounts_receivable_time > DATE_FORMAT(NOW(),'%Y-%m-%d') - AND accounts_receivable_amount != 0 AND accounts_receivable_amount < paid_amount) AS chargeStatus - FROM pay_income_contract - ) pic + select if(count(*) > 0,1,0) from pay_income_contract_installment + where contract_id = pic.id AND accounts_receivable_time < DATE_FORMAT(NOW(),'%Y-%m-%d') + AND accounts_receivable_amount != 0 AND accounts_receivable_amount > paid_amount + ) AS chargeStatus, + GROUP_CONCAT(project.projectName) AS associatedProject + FROM pay_income_contract pic LEFT JOIN pay_income_contract_associated pica ON pica.contract_id = pic.id LEFT JOIN ( @@ -80,7 +78,7 @@ AND aa.associatedProject LIKE CONCAT('%',CONCAT(#{projectName},'%')) - ORDER BY aa.chargeStatus,aa.createTime desc + ORDER BY aa.chargeStatus desc,aa.createTime desc \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java index 8a7796ba..7087d23a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java @@ -98,6 +98,10 @@ public class PayIncomeContractServiceImpl extends ServiceImpl finalListPayIncomeContractInstallment = listPaySpendingContractInstallment; + List finalListPaySpendingContractInstallment = listPaySpendingContractInstallment; listPaySpendingContractInstallment.forEach(p->{ p.setContractId(paySpendingContract.getId()); StringBuilder sb = ValidUtil.validateAll(p); if(!StringUtils.isBlank(sb)){ - msgPaySpendingContractInstallment.append("第").append(finalListPayIncomeContractInstallment.indexOf(p)).append("阶段:").append(sb); + msgPaySpendingContractInstallment.append("第").append(finalListPaySpendingContractInstallment.indexOf(p) + 1).append("阶段:").append(sb); + } + if(!Objects.isNull(p.getAccountsReceivableAmount()) && !Objects.isNull(p.getPaidAmount()) + && p.getAccountsReceivableAmount().compareTo(p.getPaidAmount()) == -1){ + msgPaySpendingContractInstallment.append("第").append(finalListPaySpendingContractInstallment.indexOf(p) + 1).append("期应收金额大于已收金额!"); } }); paySpendingContractInstallmentService.saveBatch(listPaySpendingContractInstallment); @@ -247,7 +263,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl{ @@ -255,20 +271,20 @@ public class PaySpendingContractServiceImpl extends ServiceImpl{ int n = listSpendingContractInstallment.indexOf(item) + 1; - if(Objects.equals((n + 1) + item,map.get(17 + finalI * n))){ - throw new JeroBootException("excel表头错误!"); + if(Objects.equals((n + 1) + item,map.get(listSpendingContract.size() + finalI * n))){ + throw new JeroBootException("导入的!" + n + "期阶段excel表头有误!"); } }); } @@ -286,7 +302,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl 0){ Pattern p = Pattern.compile("[0-9]*"); - Matcher m = p.matcher(String.valueOf(count1 / 5)); + int count2 = count1 / listSpendingContractInstallment.size(); + Matcher m = p.matcher(String.valueOf(count2)); if (!m.matches()){ throw new JeroBootException("excel数据错误!"); } - int count2 = count1/5; List listPaySpendingContractInstallment = new ArrayList<>(); Pattern pattern = Pattern.compile("[0-9]*\\.?[0-9]+"); for (int i = 0; i < count2; i++) { - if(StringUtils.isBlank(sub.get(17 + (i * 5) + 0))){ + if(StringUtils.isBlank(sub.get(listSpendingContract.size() + (i * 5) + 0))){ continue; } - int mm = 17 + (i * 5); + int mm = listSpendingContract.size() + (i * listSpendingContractInstallment.size()); PaySpendingContractInstallment paySpendingContractInstallment = new PaySpendingContractInstallment(); paySpendingContractInstallment.setPhaseName(sub.get(mm + 0)); if(!StringUtils.isBlank(sub.get(mm + 1))){ @@ -379,9 +395,6 @@ public class PaySpendingContractServiceImpl extends ServiceImpl listDBPrincipalName = sysUserService.list(); - // 获取excel部门名称 - List listDepartmentName = sysDepartService.list(); - // 校验excel中是否存在重复合同编号 List listPaySpendingContract = new ArrayList<>(); listPaySpendingContractImportExcel.forEach(p->{ @@ -448,10 +461,15 @@ public class PaySpendingContractServiceImpl extends ServiceImpl listDB1 = listDepartmentName.stream().filter(item-> - Objects.equals(listDB.get(0).getDepartIds(),item.getId())).collect(Collectors.toList()); - if(!CollectionUtils.isEmpty(listDB1)){ - paySpendingContract.setDepartmentName(listDB1.get(0).getDepartName()); + Map useDepNames = sysUserService.getDepNamesByUserIds(Arrays.asList(listDB.get(0).getId())); + if(!Objects.isNull(useDepNames)){ + if(!Objects.equals(useDepNames.get(listDB.get(0).getId()),paySpendingContract.getDepartmentName())){ + sb.append("第").append(n + 1).append("行,部门名称不存在,请修改!"); + }else{ + paySpendingContract.setDepartmentName(useDepNames.get(listDB.get(0).getId())); + } + }else{ + sb.append("第").append(n + 1).append("行,部门名称不存在,请修改!"); } } }else{ @@ -460,9 +478,18 @@ public class PaySpendingContractServiceImpl extends ServiceImpl listPaySpendingContractInstallment = p.getListInstallment(); if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){ listPaySpendingContractInstallment.forEach(item->{ + int c = listPaySpendingContractInstallment.indexOf(item) + 1; + if(!Objects.isNull(item.getAccountsReceivableAmount()) && !Objects.isNull(item.getPaidAmount()) + && item.getAccountsReceivableAmount().compareTo(item.getPaidAmount()) == -1){ + sb.append("第").append(n + 1).append("行,").append(c).append("期应收金额大于已收金额,请修改!"); + } StringBuilder msg = ValidUtil.validateExcel(item,n + 1); if(!StringUtils.isBlank(msg)){ sb.append(msg.toString()); @@ -478,14 +505,15 @@ public class PaySpendingContractServiceImpl extends ServiceImpl{ PaySpendingContract paySpendingContract = p.getSpendingContract(); paySpendingContract.setOutstandingAmount(paySpendingContract.getAccountsReceivableAmount().subtract(paySpendingContract.getAmountReceived())); - - if(paySpendingContract.getAccountsReceivableAmount().compareTo(paySpendingContract.getAmountReceived()) == 1){ - paySpendingContract.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS2); - }else if(paySpendingContract.getAccountsReceivableAmount().compareTo(paySpendingContract.getAmountReceived()) == 0){ + if(paySpendingContract.getAccountsReceivableAmount().compareTo(paySpendingContract.getAmountReceived()) == 0){ paySpendingContract.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS3); + }else if(paySpendingContract.getAccountsReceivableAmount().compareTo(paySpendingContract.getAmountReceived()) == 1 + && paySpendingContract.getAmountReceived().compareTo(new BigDecimal("0.00")) != 0){ + paySpendingContract.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS2); }else{ paySpendingContract.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS1); } + paySpendingContract.setNoTaxAmount(paySpendingContract.getContractAmount().subtract(paySpendingContract.getContractAmount().multiply(paySpendingContract.getRate().divide(new BigDecimal("100"))))); setPaySpendingContract(paySpendingContract); paySpendingContractService.save(paySpendingContract); List listPaySpendingContractInstallment = p.getListInstallment(); @@ -518,64 +546,65 @@ public class PaySpendingContractServiceImpl extends ServiceImpl"); }else{ - paySpendingContract.setContractDate(DateUtils.str2Date(map.get(9),new SimpleDateFormat("yyyy-MM-dd"))); + paySpendingContract.setContractDate(DateUtils.str2Date(map.get(11),new SimpleDateFormat("yyyy-MM-dd"))); } } - if(!StringUtils.isBlank(map.get(10))){ - if(!DateUtils.isValidDate(map.get(10))) { + if(!StringUtils.isBlank(map.get(12))){ + if(!DateUtils.isValidDate(map.get(12))) { sb.append("第").append(n).append("行,合同终止日期格式不正确
"); }else{ - paySpendingContract.setTerminationDate(DateUtils.str2Date(map.get(10),new SimpleDateFormat("yyyy-MM-dd"))); - } - } - paySpendingContract.setContractTimePoints(map.get(11)); - if(!StringUtils.isBlank(map.get(12))){ - if(!pattern.matcher(map.get(12)).matches()){ - sb.append("第").append(n).append("行,应收金额格式错误!"); - }else{ - paySpendingContract.setAccountsReceivableAmount(new BigDecimal(map.get(12))); + paySpendingContract.setTerminationDate(DateUtils.str2Date(map.get(12),new SimpleDateFormat("yyyy-MM-dd"))); } } + paySpendingContract.setContractTimePoints(map.get(13)); if(!StringUtils.isBlank(map.get(13))){ if(!pattern.matcher(map.get(13)).matches()){ + sb.append("第").append(n).append("行,应收金额格式错误!"); + }else{ + paySpendingContract.setAccountsReceivableAmount(new BigDecimal(map.get(13))); + } + } + if(!StringUtils.isBlank(map.get(14))){ + if(!pattern.matcher(map.get(14)).matches()){ sb.append("第").append(n).append("行,已收金额格式错误!"); }else{ - paySpendingContract.setAmountReceived(new BigDecimal(map.get(13))); + paySpendingContract.setAmountReceived(new BigDecimal(map.get(14))); } } - paySpendingContract.setContractPaymentTimes(map.get(14)); + paySpendingContract.setContractPaymentTimes(map.get(17)); mapPack.forEach((k,v)->{ - if(Objects.equals(map.get(15),k)){ + if(Objects.equals(map.get(18),k)){ paySpendingContract.setPack(Integer.parseInt(v)); } }); - paySpendingContract.setPackYear(map.get(16)); + paySpendingContract.setPackYear(map.get(19)); return paySpendingContract; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractOutput.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractOutput.java index 2c3c6e67..6e3fe3e2 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractOutput.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractOutput.java @@ -12,7 +12,7 @@ public class PayIncomeContractOutput extends PayIncomeContract implements Serial * 来款状态 0:全部 1:到期未付款 */ @ApiModelProperty(value = "来款状态 0:全部 1:到期未付款") - private String chargeStatus; + private Integer chargeStatus; /** * 关联项目 */ diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractExcelModel.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractExcelModel.java index b06127b5..187754af 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractExcelModel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractExcelModel.java @@ -1,9 +1,15 @@ package com.jero.contract.vo; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.jeecgframework.poi.excel.annotation.Excel; +import javax.validation.constraints.Max; +import javax.validation.constraints.Size; import java.io.Serializable; +import java.math.BigDecimal; import java.util.Date; @Data public class PaySpendingContractExcelModel implements Serializable { @@ -26,6 +32,9 @@ public class PaySpendingContractExcelModel implements Serializable { /**负责人名称*/ @Excel(name = "负责人", width = 15) private String principalName; + /**部门名称*/ + @Excel(name = "部门名称", width = 15) + private String departmentName; /**签订合同总金额*/ @Excel(name = "签订合同总金额", width = 15) private String contractAmount; @@ -50,6 +59,12 @@ public class PaySpendingContractExcelModel implements Serializable { /**已收金额*/ @Excel(name = "已收金额", width = 15) private String amountReceived; + /**未收金额*/ + @Excel(name = "未收金额", width = 15) + private BigDecimal outstandingAmount; + /**账款状态(1:未支付,2:部分支付,3:已付全款)*/ + @Excel(name = "账款状态", width = 15) + private Integer accountStatus; /**合同约定付款次数*/ @Excel(name = "合同约定付款次数", width = 15) private String contractPaymentTimes; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractOutput.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractOutput.java new file mode 100644 index 00000000..63561c54 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractOutput.java @@ -0,0 +1,20 @@ +package com.jero.contract.vo; + +import com.jero.contract.entity.PaySpendingContract; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.io.Serializable; +/** + * @Description: pay_spending_contract + * @Author: jeecg-boot + * @Date: 2021-09-07 + * @Version: V1.0 + */ +@Data +public class PaySpendingContractOutput extends PaySpendingContract implements Serializable { + /** + * 来款状态 0:全部 1:到期未付款 + */ + @ApiModelProperty(value = "来款状态 0:全部 1:到期未付款") + private Integer chargeStatus; +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataDirectoryController.java b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataDirectoryController.java index caf9693c..41b10bdb 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataDirectoryController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataDirectoryController.java @@ -144,6 +144,24 @@ public class PayDataDirectoryController extends JeroController addMeetingDataDirectory() { + PayDataDirectory payDataDirectory = new PayDataDirectory(); + payDataDirectory.setType(2); + payDataDirectory.setParentId("0"); + payDataDirectory.setCreateBy("admin"); + payDataDirectory.setSort("0"); + + payDataDirectoryService.save(payDataDirectory); + return Result.OK("添加成功!"); + } /** * 批量删除 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataFileController.java b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataFileController.java index 73eb5288..c753eaa3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataFileController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/data/controller/PayDataFileController.java @@ -264,10 +264,12 @@ public class PayDataFileController extends JeroController fileIdList = new ArrayList<>(Arrays.asList(fileIds.split(","))); - fileIdList.remove(oldFileId); + if(fileIdList.contains(oldFileId)&&fileIdList.size()>1){ + fileIdList.remove(oldFileId); + iossFileService.removeById(oldFileId); + } ArrayList list = new ArrayList<>(); stringBuffer = new StringBuffer(); findToTree(dataId, dataType); @@ -393,17 +395,19 @@ public class PayDataFileController extends JeroController distribute( - @RequestParam(name="FileName",required = true) String FileName, + @RequestParam(name="fileId",required = true) String fileId, @RequestParam(name="mails",required = true) String mails ) { StringBuilder stringBuilder = new StringBuilder("会议邮件注意查收"); + OSSFile byId = iossFileService.getById(fileId); + String fileName = byId.getFileName(); EmailSendMsgHandle emailHandle = new EmailSendMsgHandle(); - emailHandle.SendMsgAndFile(mails, stringBuilder.toString(), stringBuilder.toString(), FileName); + emailHandle.SendMsgAndFile(mails, stringBuilder.toString(), stringBuilder.toString(), fileName); return Result.OK("分发成功!"); } @@ -416,17 +420,26 @@ public class PayDataFileController extends JeroController distributes( - @RequestParam(name="FileNameS",required = true) String FileNameS, + @RequestParam(name="fileIds",required = true) String fileIds, @RequestParam(name="mails",required = true) String mails ) { StringBuilder stringBuilder = new StringBuilder("会议邮件注意查收"); EmailSendMsgHandle emailHandle = new EmailSendMsgHandle(); - emailHandle.SendMsgAndFile(mails, stringBuilder.toString(), stringBuilder.toString(), FileNameS); + ArrayList fileList = new ArrayList<>(Arrays.asList(fileIds.split(","))); + StringBuilder stringBuilder1 = new StringBuilder(); + for(String id:fileList){ + OSSFile byId = iossFileService.getById(id); + String fileName = byId.getFileName(); + stringBuilder1.append(fileName+","); + } + int i = stringBuilder1.lastIndexOf(","); + stringBuilder1.deleteCharAt(i); + emailHandle.SendMsgAndFile(mails, stringBuilder.toString(), stringBuilder.toString(), stringBuilder1.toString()); return Result.OK("分发成功!"); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/common/MeetingSubitemCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/common/MeetingSubitemCommon.java index 9e8ab8b3..0a91f613 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/common/MeetingSubitemCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/common/MeetingSubitemCommon.java @@ -55,4 +55,28 @@ public class MeetingSubitemCommon { * 入住酒店 */ public static final Integer CHECK_IN_HOTEL = 1; + /** + * 1未导入 + */ + public static final Integer STATUS_1 = 1; + /** + * 2已导入 + */ + public static final Integer STATUS_2 = 2; + /** + * 3参会人 + */ + public static final Integer STATUS_3 = 3; + /** + * 未审核 + */ + public static final Integer SIGNUP_STATUS_0 = 0; + /** + * 已审核 + */ + public static final Integer SIGNUP_STATUS_1 = 1; + /** + * 已驳回 + */ + public static final Integer SIGNUP_STATUS_2 = 2; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/controller/PayMeetingSituationController.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/controller/PayMeetingSituationController.java index fad1ee18..f2c0cfab 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/controller/PayMeetingSituationController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/controller/PayMeetingSituationController.java @@ -14,12 +14,15 @@ import com.jero.common.exception.JeroBootException; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.vo.LoginUser; +import com.jero.meeting.common.MeetingSubitemCommon; import com.jero.meeting.entity.PayMeetingSituation; import com.jero.meeting.service.IPayMeetingSituationService; 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.meeting.vo.AddDockVO; +import com.jero.meeting.vo.CheckVO; +import com.jero.meeting.vo.ImportSituationsVO; import com.jero.meeting.vo.PayMeetingSituationVO; import lombok.extern.slf4j.Slf4j; import com.jero.common.system.base.controller.JeroController; @@ -32,12 +35,12 @@ import com.jero.common.aspect.annotation.AutoLog; /** - * @description: 会议报名信息 + * @description: 参会人员信息 * @author: jero-boot * @date: 2021-09-02 * @version: V1.0 */ -@Api(tags="会议报名信息") +@Api(tags="参会人员信息") @RestController @RequestMapping("/meeting/payMeetingSituation") @Slf4j @@ -48,24 +51,42 @@ public class PayMeetingSituationController extends JeroController queryPageList(PayMeetingSituation payMeetingSituation, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap()); + queryWrapper.ne("status", MeetingSubitemCommon.STATUS_1); Page page = new Page<>(pageNo, pageSize); IPage pageList = payMeetingSituationService.page(page, queryWrapper); return Result.OK(pageList); } + /** + * 分页列表查询 + */ + @AutoLog(value = "报名信息-分页列表查询") + @ApiOperation(value="报名信息-分页列表查询", notes="报名信息-分页列表查询") + @GetMapping(value = "/signUpPage") + public Result signUpPage(PayMeetingSituation payMeetingSituation, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(payMeetingSituation, req.getParameterMap()); + queryWrapper.ne("status",MeetingSubitemCommon.STATUS_3); + Page page = new Page<>(pageNo, pageSize); + IPage pageList = payMeetingSituationService.page(page, queryWrapper); + return Result.OK(pageList); + } + /** * 列表查询 */ - @AutoLog(value = "会议报名信息-列表查询") - @ApiOperation(value="会议报名信息-列表查询", notes="会议报名信息-列表查询") + @AutoLog(value = "参会人员信息-列表查询") + @ApiOperation(value="参会人员信息-列表查询", notes="参会人员信息-列表查询") @GetMapping(value = "/list") public Result> queryList() { List list = payMeetingSituationService.queryList(); @@ -73,21 +94,33 @@ public class PayMeetingSituationController extends JeroController add(@RequestBody PayMeetingSituation payMeetingSituation) { payMeetingSituationService.add(payMeetingSituation); return Result.OK("添加成功!"); } + /** + * 报名 + */ + @AutoLog(value = "报名信息-报名") + @ApiOperation(value="报名信息-报名", notes="报名信息-报名") + @PostMapping(value = "/signUp") + public Result signUp(@RequestBody PayMeetingSituation payMeetingSituation) { + payMeetingSituationService.signUp(payMeetingSituation); + return Result.OK("添加成功!"); + } + + /** * 编辑 */ - @AutoLog(value = "会议报名信息-编辑") - @ApiOperation(value="会议报名信息-编辑", notes="会议报名信息-编辑") + @AutoLog(value = "参会人员信息-编辑") + @ApiOperation(value="参会人员信息-编辑", notes="参会人员信息-编辑") @PostMapping(value = "/edit") public Result edit(@RequestBody PayMeetingSituationVO payMeetingSituationVO) { payMeetingSituationService.editById(payMeetingSituationVO); @@ -97,8 +130,8 @@ public class PayMeetingSituationController extends JeroController delete(@RequestParam(name="id") String id) { payMeetingSituationService.deleteById(id); @@ -108,8 +141,8 @@ public class PayMeetingSituationController extends JeroController deleteBatch(@RequestParam(name="ids") String ids) { this.payMeetingSituationService.deleteByIds(Arrays.asList(ids.split(","))); @@ -119,8 +152,8 @@ public class PayMeetingSituationController extends JeroController queryById(@RequestParam(name="id") String id) { PayMeetingSituation payMeetingSituation = payMeetingSituationService.queryById(id); @@ -135,8 +168,19 @@ public class PayMeetingSituationController extends JeroController uploadFile(@RequestBody AddDockVO addDockVO) { + payMeetingSituationService.addDock(addDockVO); + return Result.OK("上传资料成功!"); + } + /** * 设置对接人 @@ -149,4 +193,26 @@ public class PayMeetingSituationController extends JeroController check(@RequestBody CheckVO checkVO) { + payMeetingSituationService.check(checkVO); + return Result.OK("设置对接人成功!"); + } + + /** + * 导入参会人 + */ + @AutoLog(value = "导入参会人") + @ApiOperation(value="导入参会人", notes="导入参会人") + @PostMapping(value = "/importSituations") + public Result importSituations(@RequestBody ImportSituationsVO importSituationsVO) { + //payMeetingSituationService.importSituations(importSituationsVO); + return Result.OK("设置对接人成功!"); + } + } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/entity/PayMeetingSituation.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/entity/PayMeetingSituation.java index 86e5767c..02506609 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/entity/PayMeetingSituation.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/entity/PayMeetingSituation.java @@ -289,15 +289,20 @@ public class PayMeetingSituation implements Serializable { @ApiModelProperty(value = "付款凭证") private String paymentRecord; - /**状态(导入、未导入)*/ - @Excel(name = "状态(导入、未导入)", width = 15) - @ApiModelProperty(value = "状态(导入、未导入)") + /**状态(1未导入、2已导入、3参会人)*/ + @Excel(name = "状态(1未导入、2已导入、3参会人)", width = 15) + @ApiModelProperty(value = "状态(1未导入、2已导入、3参会人)") private Integer status; - /**是否为新增*/ - @Excel(name = "是否为新增", width = 15) - @ApiModelProperty(value = "是否为新增") - private Integer isNew; + /**是否为新增企业*/ + @Excel(name = "是否为新增企业", width = 15) + @ApiModelProperty(value = "是否为新增企业") + private Integer newCompany; + + /**是否为新增联系人*/ + @Excel(name = "是否为新增联系人", width = 15) + @ApiModelProperty(value = "是否为新增联系人") + private Integer newContact; /** * 应收金额 @@ -357,4 +362,8 @@ public class PayMeetingSituation implements Serializable { @ApiModelProperty(value = "审核备注") @TableField(exist = false) private String checkRemark; + + @ApiModelProperty(value = "邀请码") + @TableField(exist = false) + private String invitationCode; } 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 4d7303c8..f3b0b0fa 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 @@ -3,6 +3,7 @@ package com.jero.meeting.service; import com.jero.meeting.entity.PayMeetingSituation; import com.baomidou.mybatisplus.extension.service.IService; import com.jero.meeting.vo.AddDockVO; +import com.jero.meeting.vo.CheckVO; import com.jero.meeting.vo.PayMeetingSituationVO; import java.util.List; @@ -46,4 +47,8 @@ public interface IPayMeetingSituationService extends IService queryList(); void addDock(AddDockVO addDockVO); + + void signUp(PayMeetingSituation payMeetingSituation); + + void check(CheckVO checkVO); } 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 ab981bed..75c30f30 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 @@ -1,13 +1,15 @@ package com.jero.meeting.service.impl; import cn.hutool.core.util.ObjectUtil; -import cn.hutool.http.HttpUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.jero.common.exception.JeroBootException; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.ValidUtil; +import com.jero.company.entity.PayCompanyManagement; import com.jero.company.entity.PayContactsManagement; +import com.jero.company.service.IPayCompanyManagementService; import com.jero.company.service.IPayContactsManagementService; import com.jero.meeting.common.MeetingCommon; import com.jero.meeting.common.MeetingSubitemCommon; @@ -46,6 +48,8 @@ import javax.annotation.Resource; @Service @Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class) public class PayMeetingSituationServiceImpl extends ServiceImpl implements IPayMeetingSituationService { + @Resource + private IPayCompanyManagementService companyManagementService; @Resource private IPayContactsManagementService contactsManagementService; @Resource @@ -63,12 +67,17 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl ids; +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/pack/controller/PayPackCompanyController.java b/jero-boot-incoming-payment/src/main/java/com/jero/pack/controller/PayPackCompanyController.java index b8fa663d..01f37d7b 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/pack/controller/PayPackCompanyController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/pack/controller/PayPackCompanyController.java @@ -1,9 +1,11 @@ package com.jero.pack.controller; import java.util.Arrays; +import java.util.Objects; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +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; @@ -23,12 +25,12 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; /** - * @Description: 打包关联 + * @Description: 打包企业管理 * @Author: jeecg-boot * @Date: 2021-09-07 * @Version: V1.0 */ -@Api(tags="打包关联") +@Api(tags="打包企业管理") @RestController @RequestMapping("/pack/payPackCompany") @Slf4j @@ -45,8 +47,8 @@ public class PayPackCompanyController extends JeroController queryPageList(PayPackCompany payPackCompany, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @@ -64,14 +66,27 @@ public class PayPackCompanyController extends JeroController add(@RequestBody PayPackCompany payPackCompany) { StringBuilder msg = ValidUtil.validateAll(payPackCompany); if(!StringUtils.isBlank(msg)){ return Result.error(msg.toString()); } + try { + LambdaQueryWrapper query = new LambdaQueryWrapper<>(); + query.eq(PayPackCompany::getCompanyId,payPackCompany.getCompanyId()); + query.eq(PayPackCompany::getPackYear,payPackCompany.getPackYear()); + PayPackCompany payPackCompanyNew = payPackCompanyService.getOne(query); + if(!Objects.isNull(payPackCompanyNew)){ + return Result.error("当前年份下已存在打包企业!"); + } + }catch (Exception e){ + log.error("",e); + return Result.error("当前年份下已存在打包企业!"); + } + payPackCompanyService.save(payPackCompany); return Result.OK("添加成功!"); } @@ -82,14 +97,26 @@ public class PayPackCompanyController extends JeroController edit(@RequestBody PayPackCompany payPackCompany) { StringBuilder msg = ValidUtil.validateAll(payPackCompany); if(!StringUtils.isBlank(msg)){ return Result.error(msg.toString()); } + try { + LambdaQueryWrapper query = new LambdaQueryWrapper<>(); + query.eq(PayPackCompany::getCompanyId,payPackCompany.getCompanyId()); + query.eq(PayPackCompany::getPackYear,payPackCompany.getPackYear()); + PayPackCompany payPackCompanyNew = payPackCompanyService.getOne(query); + if(!Objects.isNull(payPackCompanyNew) && !Objects.equals(payPackCompany.getId(),payPackCompanyNew.getId())){ + return Result.error("当前年份下已存在打包企业!"); + } + }catch (Exception e){ + log.error("",e); + return Result.error("当前年份下已存在打包企业!"); + } payPackCompanyService.updateById(payPackCompany); return Result.OK("编辑成功!"); } @@ -117,8 +144,8 @@ public class PayPackCompanyController extends JeroController deleteBatch(@RequestParam(name="ids") String ids) { if(StringUtils.isBlank(ids)){ @@ -140,8 +167,8 @@ public class PayPackCompanyController extends JeroController queryById(@RequestParam(name="id") String id) { if(StringUtils.isBlank(id)){ @@ -162,7 +189,7 @@ public class PayPackCompanyController extends JeroController