diff --git a/db/23年10月23日变更.sql b/db/23年10月23日变更.sql index 4992857c..fd9e4386 100644 --- a/db/23年10月23日变更.sql +++ b/db/23年10月23日变更.sql @@ -4,4 +4,12 @@ alter table pay_meeting add meeting_costs_two_topic decimal(12, 2) null comment '会议费用(2个课题)', add meeting_costs_three_topic decimal(12, 2) null comment '会议费用(3个及以上)'; alter table pay_meeting_situation - add choice_topic varchar(50) null comment '选择课题'; \ No newline at end of file + add choice_topic varchar(50) null comment '选择课题'; + +INSERT INTO sys_dict ( id, dict_name, dict_code, description, del_flag, create_by, create_time ) VALUES ( '1716348751477309441', '会议关联课题', 'linkTopics', '', 0, 'LKGLZ', '2023-10-23 15:00:05' ); +INSERT INTO sys_dict_item ( id, dict_id, item_text, item_value, description, sort_order, status, create_by, create_time ) VALUES ( '1716348946118180866', '1716348751477309441', '汽车网络安全与数据安全标准合规专题', '1', '', 1, 1, 'LKGLZ', '2023-10-23 15:00:51' ); +INSERT INTO sys_dict_item ( id, dict_id, item_text, item_value, description, sort_order, status, create_by, create_time ) VALUES ( '1716349088112148481', '1716348751477309441', '智能网汽车标准化领航及标准路线图专题', '2', '', 2, 1, 'LKGLZ', '2023-10-23 15:01:25' ); +INSERT INTO sys_dict_item ( id, dict_id, item_text, item_value, description, sort_order, status, create_by, create_time ) VALUES ( '1716349139207159809', '1716348751477309441', '汽车地毯专题', '3', '', 3, 1, 'LKGLZ', '2023-10-23 15:01:37' ); +INSERT INTO sys_dict_item ( id, dict_id, item_text, item_value, description, sort_order, status, create_by, create_time ) VALUES ( '1716349212045443073', '1716348751477309441', '动力电池安全专题', '4', '', 4, 1, 'LKGLZ', '2023-10-23 15:01:55' ); +INSERT INTO sys_dict_item ( id, dict_id, item_text, item_value, description, sort_order, status, create_by, create_time ) VALUES ( '1716349338696646657', '1716348751477309441', '弱势道路交通参与者(VRU)保护专题', '5', '', 5, 1, 'LKGLZ', '2023-10-23 15:02:25' ); +INSERT INTO sys_dict_item ( id, dict_id, item_text, item_value, description, sort_order, status, create_by, create_time ) VALUES ( '1716349372095889410', '1716348751477309441', '免费专题', '6', '', 6, 1, 'LKGLZ', '2023-10-23 15:02:33' ); \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/entity/PayMeeting.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/entity/PayMeeting.java index f3db9790..8453dbe2 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/entity/PayMeeting.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/entity/PayMeeting.java @@ -213,6 +213,12 @@ public class PayMeeting implements Serializable { @ApiModelProperty(value = "是否WASIC") private Integer isWasic; + /**关联课题*/ + @Excel(name = "关联课题", width = 15) + @ApiModelProperty(value = "关联课题") + @Size(max = 50, message = "关联课题最多为50个字符") + private String linkTopics; + /**会议费用*/ @Excel(name = "会议费用", width = 15) @ApiModelProperty(value = "会议费用") 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 bd571b45..b16a71e7 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 @@ -128,7 +128,7 @@ public class PayMeetingSituation implements Serializable { /**演讲题目*/ @Excel(name = "课题名称", width = 15) @ApiModelProperty(value = "课题名称") - @Size(max = 50, message = "课题名称") + @Size(max = 50, message = "课题名称最多为50个字符") private String choiceTopic; /**演讲题目*/ diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingServiceImpl.java index 9fc8eea3..03228b41 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingServiceImpl.java @@ -57,6 +57,7 @@ import com.jero.project.service.IPayWorkingGroupSubItemContactsService; import com.jero.project.service.IPayWorkingGroupSubItemService; import com.jero.standards.xuanguan.stablecrosstraining.entity.StableCrossTraining; import com.jero.standards.xuanguan.stablecrosstraining.service.IStableCrossTrainingService; +import io.swagger.models.auth.In; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.apache.shiro.util.CollectionUtils; @@ -439,7 +440,7 @@ public class PayMeetingServiceImpl extends ServiceImpl getExportListSummary(HttpServletRequest request, IPage queryPageList) { List pageList = queryPageList.getRecords(); // 过滤选中数据 @@ -1432,6 +1434,20 @@ public class PayMeetingServiceImpl extends ServiceImpl 1){ + payMeetingVO.setMeetingCosts(meetingCostsTwoTopic); + }else { + payMeetingVO.setMeetingCosts(meetingCostsThreeTopic); + } + } + } + //保存数据 OtherMeetingExcel otherMeetingExcel = new OtherMeetingExcel(); BeanUtils.copyProperties(payMeetingVO, otherMeetingExcel); 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 6619a72b..2f9bcae6 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 @@ -1258,22 +1258,27 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl linkTopicList = Arrays.asList(linkTopics.split(",")); //先判断是否有免费专题 String choiceTopic = payMeetingSituation.getChoiceTopic(); payMeetingSituation1.setChoiceTopic(choiceTopic); - String[] split = choiceTopic.split(","); + List choiceTopicList = Arrays.asList(choiceTopic.split(",")); + if (!linkTopicList.containsAll(choiceTopicList)) { + throw new JeroBootException("课题名称选择错误"); + } boolean isFree = false; - for (String s : split) { + for (String s : choiceTopicList) { if ("6".equals(s)){ payMeetingSituation1.setAmountReceivable(BigDecimal.ZERO); isFree = true; } } //根据选择的课题数量,存入金额 - if (!isFree && split.length <= 2){ + if (!isFree && choiceTopicList.size() <= 2){ payMeetingSituation1.setAmountReceivable(payMeeting.getMeetingCostsTwoTopic()); } - if (!isFree && split.length > 2){ + if (!isFree && choiceTopicList.size() > 2){ payMeetingSituation1.setAmountReceivable(payMeeting.getMeetingCostsThreeTopic()); } }else { diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/PayMeetingVO.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/PayMeetingVO.java index 9233a5e7..c2355843 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/PayMeetingVO.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/PayMeetingVO.java @@ -211,6 +211,12 @@ public class PayMeetingVO implements Serializable { @Range(min = 1, max = 2,message = "是否WASIC格式不正确",groups = InternationalMeeting.class) private Integer isWasic; + /**关联课题*/ + @Excel(name = "关联课题", width = 15) + @ApiModelProperty(value = "关联课题") + @Size(max = 50, message = "关联课题最多为50个字符") + private String linkTopics; + /**会议费用*/ @Excel(name = "会议费用", width = 15) @ApiModelProperty(value = "会议费用")