|
@@ -1,6 +1,7 @@
|
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.alibaba.fastjson.TypeReference;
|
|
|
import com.ym.mec.auth.api.client.SysUserFeignService;
|
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
|
import com.ym.mec.auth.api.entity.SysUserRole;
|
|
@@ -181,7 +182,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
Set<Integer> roleIds = new HashSet<>(1);
|
|
|
roleIds.add(SysUserRole.SECTION_MANAGER);
|
|
|
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_APPLY,"",sysUser.getUsername());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_APPLY, "", sysUser.getUsername());
|
|
|
}
|
|
|
// 保存乐团付费主体列表
|
|
|
//批量新增
|
|
@@ -251,6 +252,13 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
}
|
|
|
// 保存乐团声部商品规划
|
|
|
if (musicGroupSubjectGoodsGroups != null && musicGroupSubjectGoodsGroups.size() > 0) {
|
|
|
+ for (MusicGroupSubjectGoodsGroup musicGroupSubjectGoodsGroup : musicGroupSubjectGoodsGroups) {
|
|
|
+ if(musicGroupSubjectGoodsGroup.getType().equals(GoodsType.INSTRUMENT) && (musicGroupSubjectGoodsGroup.getKitGroupPurchaseTypeJson() == null
|
|
|
+ || musicGroupSubjectGoodsGroup.getKitGroupPurchaseTypeJson().isEmpty()
|
|
|
+ || musicGroupSubjectGoodsGroup.getKitGroupPurchaseTypeJson().equals("{}"))){
|
|
|
+ throw new BizException(musicGroupSubjectGoodsGroup.getName()+" 请选择提供方式");
|
|
|
+ }
|
|
|
+ }
|
|
|
musicGroupSubjectGoodsGroupDao.batchInsert(musicGroupSubjectGoodsGroups, musicGroupId);
|
|
|
}
|
|
|
return musicGroupId;
|
|
@@ -265,7 +273,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
throw new BizException("支付项不存在");
|
|
|
}
|
|
|
BigDecimal amount = chargeInfo.getAmount();
|
|
|
- if(chargeInfo.getDiscountAmount() != null && chargeInfo.getDiscountAmount().compareTo(BigDecimal.ZERO)>0){
|
|
|
+ if (chargeInfo.getDiscountAmount() != null && chargeInfo.getDiscountAmount().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
amount = amount.subtract(chargeInfo.getDiscountAmount());
|
|
|
}
|
|
|
if (!(amount.compareTo(sporadicPayDto.getAmount()) == 0)) {
|
|
@@ -274,9 +282,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
|
|
|
OrderTypeEnum type = OrderTypeEnum.SPORADIC;
|
|
|
String receiver = null;
|
|
|
- if(chargeInfo.getChargeType().equals("6")){
|
|
|
+ if (chargeInfo.getChargeType().equals("6")) {
|
|
|
type = OrderTypeEnum.LUCK;
|
|
|
- receiver = "PER";
|
|
|
+ receiver = "PER";
|
|
|
}
|
|
|
|
|
|
Integer userId = sporadicPayDto.getUserId();
|
|
@@ -394,16 +402,12 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
if (orderDetail == null || orderDetail.getPrice() == null || orderDetail.getGoodsIdList() == null) {
|
|
|
continue;
|
|
|
}
|
|
|
- if (orderDetail.getType().equals(OrderDetailTypeEnum.MUSICAL) && musicOneSubjectClassPlan.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.FREE)) {
|
|
|
- orderDetail.setPrice(BigDecimal.ZERO);
|
|
|
- }
|
|
|
MusicGroupSubjectGoodsGroup musicGroupSubjectGoodsGroup = new MusicGroupSubjectGoodsGroup();
|
|
|
GoodsType goodsType = orderDetail.getType().equals(OrderDetailTypeEnum.MUSICAL) ? GoodsType.INSTRUMENT : GoodsType.ACCESSORIES;
|
|
|
musicGroupSubjectGoodsGroup.setType(goodsType);
|
|
|
musicGroupSubjectGoodsGroup.setGoodsIdList(orderDetail.getGoodsIdList());
|
|
|
musicGroupSubjectGoodsGroup.setPrice(orderDetail.getPrice());
|
|
|
musicGroupSubjectGoodsGroup.setKitGroupPurchaseType(orderDetail.getKitGroupPurchaseType());
|
|
|
-
|
|
|
goodsGroups.add(musicGroupSubjectGoodsGroup);
|
|
|
if (musicGroupSubjectGoodsGroup.getType().equals(GoodsType.INSTRUMENT)) {
|
|
|
instrumentFee = instrumentFee.add(orderDetail.getPrice());
|
|
@@ -443,34 +447,36 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
String goodsGroupIds = registerPayDto.getGoodsGroups().keySet().stream().map(Object::toString).collect(Collectors.joining(","));
|
|
|
goodsGroups = musicGroupSubjectGoodsGroupService.findGoodsGroupByIds(goodsGroupIds);
|
|
|
for (MusicGroupSubjectGoodsGroup goodsGroup : goodsGroups) {
|
|
|
- Map groupType = JSONObject.parseObject(goodsGroup.getKitGroupPurchaseTypeJson(), HashMap.class);
|
|
|
- if (registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("GROUP")) {
|
|
|
- if(!groupType.containsKey("GROUP")){
|
|
|
+ Map<String, BigDecimal> groupType = JSONObject.parseObject(goodsGroup.getKitGroupPurchaseTypeJson(), new TypeReference<Map<String, BigDecimal>>() {
|
|
|
+ });
|
|
|
+ if (goodsGroup.getType().equals(GoodsType.INSTRUMENT) && registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("GROUP")) {
|
|
|
+ if (!groupType.containsKey("GROUP")) {
|
|
|
throw new BizException("乐器提供方式不存在");
|
|
|
}
|
|
|
goodsGroup.setKitGroupPurchaseType(KitGroupPurchaseTypeEnum.GROUP);
|
|
|
- remitFee = new BigDecimal((String) groupType.get("GROUP"));
|
|
|
+ remitFee = groupType.get("GROUP");
|
|
|
}
|
|
|
- if (registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("LEASE")) {
|
|
|
- if(!groupType.containsKey("LEASE")){
|
|
|
- throw new BizException("乐器提供方式不存在");
|
|
|
+ if (goodsGroup.getType().equals(GoodsType.INSTRUMENT) && registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("LEASE")) {
|
|
|
+ if (!groupType.containsKey("LEASE")) {
|
|
|
+ throw new BizException("乐器提供方式不存在");
|
|
|
}
|
|
|
goodsGroup.setPrice(goodsGroup.getDepositFee());
|
|
|
goodsGroup.setKitGroupPurchaseType(KitGroupPurchaseTypeEnum.LEASE);
|
|
|
- remitFee = new BigDecimal((String) groupType.get("LEASE"));
|
|
|
+ remitFee = groupType.get("LEASE");
|
|
|
}
|
|
|
- if (registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("FREE")) {
|
|
|
- if(!groupType.containsKey("FREE")){
|
|
|
+ if (goodsGroup.getType().equals(GoodsType.INSTRUMENT) && registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("FREE")) {
|
|
|
+ if (!groupType.containsKey("FREE")) {
|
|
|
throw new BizException("乐器提供方式不存在");
|
|
|
}
|
|
|
goodsGroup.setPrice(new BigDecimal(0));
|
|
|
- remitFee = new BigDecimal((String) groupType.get("FREE"));
|
|
|
+ goodsGroup.setKitGroupPurchaseType(KitGroupPurchaseTypeEnum.FREE);
|
|
|
+ remitFee = groupType.get("FREE");
|
|
|
}
|
|
|
- if(goodsGroup.getType().equals(GoodsType.INSTRUMENT)){
|
|
|
+ if (goodsGroup.getType().equals(GoodsType.INSTRUMENT)) {
|
|
|
instrumentFee = instrumentFee.add(goodsGroup.getPrice());
|
|
|
- }else if(goodsGroup.getType().equals(GoodsType.ACCESSORIES)) {
|
|
|
+ } else if (goodsGroup.getType().equals(GoodsType.ACCESSORIES)) {
|
|
|
accessoriesFee = accessoriesFee.add(goodsGroup.getPrice());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
otherFee = otherFee.add(goodsGroup.getPrice());
|
|
|
}
|
|
|
orderAmount = orderAmount.add(goodsGroup.getPrice());
|
|
@@ -566,7 +572,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
}
|
|
|
|
|
|
String orderSubject = "乐团报名";
|
|
|
- if(musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType().equals(CooperationOrgan.OwnershipType.COOPERATION)){
|
|
|
+ if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType().equals(CooperationOrgan.OwnershipType.COOPERATION)) {
|
|
|
orderSubject = "乐团相关费用";
|
|
|
}
|
|
|
String baseApiUrl = sysConfigDao.findConfigValue("base_api_url");
|
|
@@ -624,7 +630,6 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
BigDecimal otherFee = BigDecimal.ZERO;
|
|
|
BigDecimal remitFee = BigDecimal.ZERO;
|
|
|
|
|
|
-
|
|
|
//乐器及打包辅件
|
|
|
List<MusicGroupSubjectGoodsGroup> goodsGroups = new ArrayList<>();
|
|
|
if (studentRegistration.getTemporaryCourseFee() != null) {
|
|
@@ -633,14 +638,12 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
if (orderDetail == null || orderDetail.getPrice() == null || orderDetail.getGoodsIdList() == null) {
|
|
|
continue;
|
|
|
}
|
|
|
- if (orderDetail.getType().equals(OrderDetailTypeEnum.MUSICAL) && musicOneSubjectClassPlan.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.FREE)) {
|
|
|
- orderDetail.setPrice(BigDecimal.ZERO);
|
|
|
- }
|
|
|
MusicGroupSubjectGoodsGroup musicGroupSubjectGoodsGroup = new MusicGroupSubjectGoodsGroup();
|
|
|
GoodsType goodsType = orderDetail.getType().equals(OrderDetailTypeEnum.MUSICAL) ? GoodsType.INSTRUMENT : GoodsType.ACCESSORIES;
|
|
|
musicGroupSubjectGoodsGroup.setType(goodsType);
|
|
|
musicGroupSubjectGoodsGroup.setGoodsIdList(orderDetail.getGoodsIdList());
|
|
|
musicGroupSubjectGoodsGroup.setPrice(orderDetail.getPrice());
|
|
|
+ musicGroupSubjectGoodsGroup.setKitGroupPurchaseType(orderDetail.getKitGroupPurchaseType());
|
|
|
goodsGroups.add(musicGroupSubjectGoodsGroup);
|
|
|
|
|
|
if (musicGroupSubjectGoodsGroup.getType().equals(GoodsType.INSTRUMENT)) {
|
|
@@ -652,7 +655,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
}
|
|
|
orderAmount = orderAmount.add(orderDetail.getPrice());
|
|
|
}
|
|
|
- } else if (studentRegistration.getTemporaryCourseFee() == null && !registerPayDto.getGoodsGroupIds().equals("")) {
|
|
|
+ } else if (StringUtils.isNoneBlank(registerPayDto.getGoodsGroupIds())) {
|
|
|
goodsGroups = musicGroupSubjectGoodsGroupService.findGoodsGroupByIds(registerPayDto.getGoodsGroupIds());
|
|
|
for (MusicGroupSubjectGoodsGroup goodsGroup : goodsGroups) {
|
|
|
if (goodsGroup.getType().equals(GoodsType.INSTRUMENT) && musicOneSubjectClassPlan.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.LEASE)) {
|
|
@@ -680,34 +683,36 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
String goodsGroupIds = registerPayDto.getGoodsGroups().keySet().stream().map(Object::toString).collect(Collectors.joining(","));
|
|
|
goodsGroups = musicGroupSubjectGoodsGroupService.findGoodsGroupByIds(goodsGroupIds);
|
|
|
for (MusicGroupSubjectGoodsGroup goodsGroup : goodsGroups) {
|
|
|
- Map groupType = JSONObject.parseObject(goodsGroup.getKitGroupPurchaseTypeJson(), HashMap.class);
|
|
|
- if (registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("GROUP")) {
|
|
|
- if(!groupType.containsKey("GROUP")){
|
|
|
+ Map<String, BigDecimal> groupType = JSONObject.parseObject(goodsGroup.getKitGroupPurchaseTypeJson(), new TypeReference<Map<String, BigDecimal>>() {
|
|
|
+ });
|
|
|
+ if (goodsGroup.getType().equals(GoodsType.INSTRUMENT) && registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("GROUP")) {
|
|
|
+ if (!groupType.containsKey("GROUP")) {
|
|
|
throw new BizException("乐器提供方式不存在");
|
|
|
}
|
|
|
goodsGroup.setKitGroupPurchaseType(KitGroupPurchaseTypeEnum.GROUP);
|
|
|
- remitFee = new BigDecimal((String) groupType.get("GROUP"));
|
|
|
+ remitFee = groupType.get("GROUP");
|
|
|
}
|
|
|
- if (registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("LEASE")) {
|
|
|
- if(!groupType.containsKey("LEASE")){
|
|
|
+ if (goodsGroup.getType().equals(GoodsType.INSTRUMENT) && registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("LEASE")) {
|
|
|
+ if (!groupType.containsKey("LEASE")) {
|
|
|
throw new BizException("乐器提供方式不存在");
|
|
|
}
|
|
|
goodsGroup.setPrice(goodsGroup.getDepositFee());
|
|
|
goodsGroup.setKitGroupPurchaseType(KitGroupPurchaseTypeEnum.LEASE);
|
|
|
- remitFee = new BigDecimal((String) groupType.get("LEASE"));
|
|
|
+ remitFee = groupType.get("LEASE");
|
|
|
}
|
|
|
- if (registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("FREE")) {
|
|
|
- if(!groupType.containsKey("FREE")){
|
|
|
+ if (goodsGroup.getType().equals(GoodsType.INSTRUMENT) && registerPayDto.getGoodsGroups().get(goodsGroup.getId()).equals("FREE")) {
|
|
|
+ if (!groupType.containsKey("FREE")) {
|
|
|
throw new BizException("乐器提供方式不存在");
|
|
|
}
|
|
|
goodsGroup.setPrice(new BigDecimal(0));
|
|
|
- remitFee = new BigDecimal((String) groupType.get("FREE"));
|
|
|
+ goodsGroup.setKitGroupPurchaseType(KitGroupPurchaseTypeEnum.FREE);
|
|
|
+ remitFee = groupType.get("FREE");
|
|
|
}
|
|
|
- if(goodsGroup.getType().equals(GoodsType.INSTRUMENT)){
|
|
|
+ if (goodsGroup.getType().equals(GoodsType.INSTRUMENT)) {
|
|
|
instrumentFee = instrumentFee.add(goodsGroup.getPrice());
|
|
|
- }else if(goodsGroup.getType().equals(GoodsType.ACCESSORIES)) {
|
|
|
+ } else if (goodsGroup.getType().equals(GoodsType.ACCESSORIES)) {
|
|
|
accessoriesFee = accessoriesFee.add(goodsGroup.getPrice());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
otherFee = otherFee.add(goodsGroup.getPrice());
|
|
|
}
|
|
|
orderAmount = orderAmount.add(goodsGroup.getPrice());
|
|
@@ -803,7 +808,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
}
|
|
|
}
|
|
|
String orderSubject = "乐团报名";
|
|
|
- if(musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType().equals(CooperationOrgan.OwnershipType.COOPERATION)){
|
|
|
+ if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType().equals(CooperationOrgan.OwnershipType.COOPERATION)) {
|
|
|
orderSubject = "乐团相关费用";
|
|
|
}
|
|
|
String baseApiUrl = sysConfigDao.findConfigValue("base_api_url");
|
|
@@ -872,6 +877,14 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
musicGroupSubjectPlanDao.batchAdd(musicGroupSubjectPlans, musicGroupId);
|
|
|
}
|
|
|
if (subFeeSettingDto.getMusicGroupSubjectGoodsGroups() != null && subFeeSettingDto.getMusicGroupSubjectGoodsGroups().size() > 0) {
|
|
|
+ for (MusicGroupSubjectGoodsGroup musicGroupSubjectGoodsGroup : subFeeSettingDto.getMusicGroupSubjectGoodsGroups()) {
|
|
|
+ if(musicGroupSubjectGoodsGroup.getType().equals(GoodsType.INSTRUMENT) && (musicGroupSubjectGoodsGroup.getKitGroupPurchaseTypeJson() == null
|
|
|
+ || musicGroupSubjectGoodsGroup.getKitGroupPurchaseTypeJson().isEmpty()
|
|
|
+ || musicGroupSubjectGoodsGroup.getKitGroupPurchaseTypeJson().equals("{}"))){
|
|
|
+ throw new BizException(musicGroupSubjectGoodsGroup.getName()+" 请选择提供方式");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
musicGroupSubjectGoodsGroupDao.batchInsert(subFeeSettingDto.getMusicGroupSubjectGoodsGroups(), musicGroupId);
|
|
|
}
|
|
|
} else {
|
|
@@ -911,7 +924,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
throw new BizException("课酬未确认");
|
|
|
}
|
|
|
}
|
|
|
- updateTeamTeacher(musicGroup,musicGroup);
|
|
|
+ updateTeamTeacher(musicGroup, musicGroup);
|
|
|
//生成学员费用表
|
|
|
List<MusicGroupStudentFee> musicGroupStudentFees = musicGroupStudentFeeDao.initMusicGroupStudentFee(musicGroupId);
|
|
|
if (musicGroupStudentFees != null && musicGroupStudentFees.size() > 0) {
|
|
@@ -930,7 +943,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
Map<Integer, String> map = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertMybatisMap(musicGroupDao.queryTeacherIdMap(musicGroupId))), HashMap.class);
|
|
|
if (map != null && map.size() > 0) {
|
|
|
sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.TEACHER_PUSH_MUSIC_GROUP_COURSE_ADD_PLAN,
|
|
|
- map, null, 0, "1","TEACHER", musicGroup.getName());
|
|
|
+ map, null, 0, "1", "TEACHER", musicGroup.getName());
|
|
|
}
|
|
|
Set<Integer> roleIds = new HashSet<>(5);
|
|
|
roleIds.add(SysUserRole.SECTION_MANAGER);
|
|
@@ -939,7 +952,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
roleIds.add(SysUserRole.ADMISSIONS_DIRECTOR);
|
|
|
roleIds.add(SysUserRole.DEAN_OF_STUDIES);
|
|
|
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_ACTION_GROUP,"1",musicGroup.getName());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_ACTION_GROUP, "1", musicGroup.getName());
|
|
|
}
|
|
|
|
|
|
private MusicGroup saveLog(String musicGroupId, MusicGroupStatusEnum statusEnum) throws Exception {
|
|
@@ -970,7 +983,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
Set<Integer> roleIds = new HashSet<>(1);
|
|
|
roleIds.add(SysUserRole.SECTION_MANAGER);
|
|
|
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_APPLY,"",sysUser.getUsername());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_APPLY, "", sysUser.getUsername());
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -1005,13 +1018,13 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
roleIds.add(SysUserRole.OPERATION_EXECUTIVE);
|
|
|
roleIds.add(SysUserRole.ADMISSIONS_DIRECTOR);
|
|
|
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_ACTION_APPLY,"",musicGroup.getName());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_ACTION_APPLY, "", musicGroup.getName());
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void pushMessage(String musicGroupId) throws IOException {
|
|
|
MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
|
|
|
- if(musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN){
|
|
|
+ if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {
|
|
|
//是否有基础训练班
|
|
|
Integer num = classGroupDao.countClassNumByType(musicGroupId);
|
|
|
if(num != null && num > 0){
|
|
@@ -1021,7 +1034,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
String url = baseURL + "/#/smallRegister?musicGroupId=" + musicGroupId;
|
|
|
String serverPhone = sysConfigDao.findConfigValue(SysConfigService.SERVER_PHONE);
|
|
|
sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.SMS_BASICS_SKILL_APPLY_MESSAGE,
|
|
|
- studentMap, null, 0, "5?" + url,"STUDENT", musicGroup.getName(), HttpUtil.getSortUrl(url), serverPhone);
|
|
|
+ studentMap, null, 0, "5?" + url, "STUDENT", musicGroup.getName(), HttpUtil.getSortUrl(url), serverPhone);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1120,10 +1133,10 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
sysUserCashAccountService.updateBalance(order.getUserId(), order.getActualAmount());
|
|
|
// 增加交易流水
|
|
|
sysUserCashAccountDetailService.addCashAccountDetail(order.getUserId(), order.getActualAmount(), SysUserCashAccountDetailService.MUSIC_GROUP
|
|
|
- + musicGroupId, "", PlatformCashAccountDetailTypeEnum.REFUNDS, null, DealStatusEnum.SUCCESS, "取消乐团",null);
|
|
|
+ + musicGroupId, "", PlatformCashAccountDetailTypeEnum.REFUNDS, null, DealStatusEnum.SUCCESS, "取消乐团", null);
|
|
|
}
|
|
|
//获取当前乐团所有已报名学员
|
|
|
- if(musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN){
|
|
|
+ if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {
|
|
|
List<StudentRegistration> registrations = studentRegistrationDao.findClassGroupStu(musicGroupId, null);
|
|
|
if (registrations != null && registrations.size() > 0) {
|
|
|
Map<Integer, String> map = new HashMap<>(registrations.size());
|
|
@@ -1131,7 +1144,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
map.put(e.getUserId(), e.getUserId().toString());
|
|
|
});
|
|
|
sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_MUSIC_GROUP_CLOSE,
|
|
|
- map, null, 0, "1","STUDENT", musicGroup.getName(), sysConfigDao.findConfigValue(SysConfigService.REFUND_PERIOD));
|
|
|
+ map, null, 0, "1", "STUDENT", musicGroup.getName(), sysConfigDao.findConfigValue(SysConfigService.REFUND_PERIOD));
|
|
|
}
|
|
|
}
|
|
|
//记录建团日志
|
|
@@ -1140,7 +1153,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
roleIds.add(SysUserRole.SECTION_MANAGER);
|
|
|
roleIds.add(SysUserRole.OPERATION_EXECUTIVE);
|
|
|
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_STOP,"1",musicGroup.getName());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_STOP, "1", musicGroup.getName());
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -1243,7 +1256,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
roleIds.add(SysUserRole.OPERATION_EXECUTIVE);
|
|
|
roleIds.add(SysUserRole.ADMISSIONS_DIRECTOR);
|
|
|
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_LENGTHEN_PAYMENT,"",musicGroup.getName());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_LENGTHEN_PAYMENT, "", musicGroup.getName());
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -1273,7 +1286,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
memo.put("Id", musicGroupQuit.getId());
|
|
|
memo.put("type", "MUSICGROUP");
|
|
|
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_STUDENT_APPLY_QUIT_GROUP,JSONObject.toJSONString(memo),sysUser.getUsername());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_STUDENT_APPLY_QUIT_GROUP, JSONObject.toJSONString(memo), sysUser.getUsername());
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -1351,7 +1364,16 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
|
|
|
List<StudentPaymentOrderDetail> orderDetailList = studentPaymentOrderDetailDao.findApplyOrderGoods(studentPaymentOrder.getId());
|
|
|
|
|
|
+ BigDecimal remitFee = studentPaymentOrder.getRemitFee() == null ? BigDecimal.ZERO : studentPaymentOrder.getRemitFee();
|
|
|
for (StudentPaymentOrderDetail detail : orderDetailList) {
|
|
|
+ if (remitFee.compareTo(detail.getPrice()) >= 0) {
|
|
|
+ remitFee = remitFee.subtract(detail.getPrice());
|
|
|
+ detail.setPrice(BigDecimal.ZERO);
|
|
|
+ } else {
|
|
|
+ detail.setPrice(detail.getPrice().subtract(remitFee));
|
|
|
+ remitFee = BigDecimal.ZERO;
|
|
|
+ }
|
|
|
+
|
|
|
if (isRefundCourseFee) {
|
|
|
// 退课程费用
|
|
|
if (detail.getType() == OrderDetailTypeEnum.COURSE) {
|
|
@@ -1375,7 +1397,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
if (amount.doubleValue() > 0) {
|
|
|
// 增加交易流水
|
|
|
sysUserCashAccountDetailService.addCashAccountDetail(userId, amount, SysUserCashAccountDetailService.MUSIC_GROUP + musicGroupId, "",
|
|
|
- PlatformCashAccountDetailTypeEnum.REFUNDS, null, DealStatusEnum.SUCCESS, "退出乐团",null);
|
|
|
+ PlatformCashAccountDetailTypeEnum.REFUNDS, null, DealStatusEnum.SUCCESS, "退出乐团", null);
|
|
|
}
|
|
|
}
|
|
|
return true;
|
|
@@ -1458,8 +1480,16 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
}
|
|
|
|
|
|
List<StudentPaymentOrderDetail> orderDetailList = studentPaymentOrderDetailDao.findApplyOrderGoods(studentPaymentOrder.getId());
|
|
|
+ BigDecimal remitFee = studentPaymentOrder.getRemitFee() == null ? BigDecimal.ZERO : studentPaymentOrder.getRemitFee();
|
|
|
|
|
|
for (StudentPaymentOrderDetail detail : orderDetailList) {
|
|
|
+ if (remitFee.compareTo(detail.getPrice()) >= 0) {
|
|
|
+ remitFee = remitFee.subtract(detail.getPrice());
|
|
|
+ detail.setPrice(BigDecimal.ZERO);
|
|
|
+ } else {
|
|
|
+ detail.setPrice(detail.getPrice().subtract(remitFee));
|
|
|
+ remitFee = BigDecimal.ZERO;
|
|
|
+ }
|
|
|
if (isRefundCourseFee) {
|
|
|
// 退课程费用
|
|
|
if (detail.getType() == OrderDetailTypeEnum.COURSE) {
|
|
@@ -1483,7 +1513,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
if (amount.doubleValue() > 0) {
|
|
|
// 增加交易流水
|
|
|
sysUserCashAccountDetailService.addCashAccountDetail(userId, amount, SysUserCashAccountDetailService.MUSIC_GROUP + musicGroupId, "",
|
|
|
- PlatformCashAccountDetailTypeEnum.REFUNDS, null, DealStatusEnum.SUCCESS, "退出乐团",null);
|
|
|
+ PlatformCashAccountDetailTypeEnum.REFUNDS, null, DealStatusEnum.SUCCESS, "退出乐团", null);
|
|
|
}
|
|
|
|
|
|
return true;
|
|
@@ -1503,6 +1533,12 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
if (musicGroupStudentFee == null) {
|
|
|
throw new BizException("个人续费信息错误");
|
|
|
}
|
|
|
+
|
|
|
+ StudentRegistration studentRegistration = studentRegistrationService.queryByUserIdAndMusicGroupId(userId, musicGroupId);
|
|
|
+ if(studentRegistration == null || studentRegistration.getPaymentStatus() != PaymentStatusEnum.YES){
|
|
|
+ throw new BizException("请走报名缴费流程");
|
|
|
+ }
|
|
|
+
|
|
|
//判断是否是续费
|
|
|
/*List<StudentPaymentOrder> orderList = studentPaymentOrderDao.queryByCondition(GroupType.MUSIC, musicGroupId, userId, DealStatusEnum.SUCCESS);
|
|
|
if (orderList == null || orderList.size() == 0) {
|
|
@@ -1679,11 +1715,11 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
paymentDetail.setPerAmount(studentPaymentOrder.getPerAmount().negate());
|
|
|
sysUserCashAccountDetailService.insert(paymentDetail);
|
|
|
MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
|
|
|
- if(musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN){
|
|
|
+ if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {
|
|
|
// 发送续费结果通知
|
|
|
- sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_SMS_MUSIC_GROUP_RENEW_SUCCESS, push, null, 0, "1","STUDENT",
|
|
|
+ sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_SMS_MUSIC_GROUP_RENEW_SUCCESS, push, null, 0, "1", "STUDENT",
|
|
|
studentRegistration.getParentsName(), studentPaymentOrder.getActualAmount());
|
|
|
- sysMessageService.batchSendMessage(MessageSender.YIMEI, MessageTypeEnum.STUDENT_SMS_MUSIC_GROUP_RENEW_SUCCESS, yimei, null, 0, "1","",
|
|
|
+ sysMessageService.batchSendMessage(MessageSender.YIMEI, MessageTypeEnum.STUDENT_SMS_MUSIC_GROUP_RENEW_SUCCESS, yimei, null, 0, "1", "",
|
|
|
studentRegistration.getParentsName(), studentPaymentOrder.getActualAmount());
|
|
|
}
|
|
|
return true;
|
|
@@ -1694,12 +1730,12 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
}
|
|
|
}
|
|
|
MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
|
|
|
- if(musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN){
|
|
|
+ if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {
|
|
|
if (studentPaymentOrder.getStatus() == DealStatusEnum.CLOSE || studentPaymentOrder.getStatus() == DealStatusEnum.FAILED) {
|
|
|
String baseUrl = sysConfigDao.findConfigValue(SysConfigService.BASE_API_URL);
|
|
|
String memo = baseUrl + "/#/renew?musicGroupId=" + musicGroupId;
|
|
|
//4?http://mstudev.dayaedu.com/#/renew?musicGroupId=" +musicGroupId
|
|
|
- sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_MUSIC_GROUP_RENEW_FAILED, push, null, 0, "4?" + memo,"STUDENT",
|
|
|
+ sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_MUSIC_GROUP_RENEW_FAILED, push, null, 0, "4?" + memo, "STUDENT",
|
|
|
HttpUtil.getSortUrl(memo));
|
|
|
return false;
|
|
|
}
|
|
@@ -1744,8 +1780,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
Set<Integer> roleIds = new HashSet<>(1);
|
|
|
roleIds.add(SysUserRole.SECTION_MANAGER);
|
|
|
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_TEACHER_AMOUNT_CHANGE,"",
|
|
|
- teacher.getRealName(),musicGroup.getName(),scope.equals("all")?"所有":"本次");
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_TEACHER_AMOUNT_CHANGE, "",
|
|
|
+ teacher.getRealName(), musicGroup.getName(), scope.equals("all") ? "所有" : "本次");
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -1819,9 +1855,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
return musicGroupPageInfo;
|
|
|
}
|
|
|
|
|
|
- private void updateTeamTeacher(MusicGroup oldMusicGroup,MusicGroup newMusicGroup){
|
|
|
+ private void updateTeamTeacher(MusicGroup oldMusicGroup, MusicGroup newMusicGroup) {
|
|
|
List<ClassGroup> classGroups = classGroupDao.findClassGroupByMusicGroupIdAndType(newMusicGroup.getId(), null);
|
|
|
- if(classGroups == null || classGroups.size() == 0){
|
|
|
+ if (classGroups == null || classGroups.size() == 0) {
|
|
|
return;
|
|
|
}
|
|
|
Integer teamTeacherId = newMusicGroup.getTeamTeacherId();
|
|
@@ -1833,7 +1869,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
ImGroupMember[] nowImGroupMembers2 = {new ImGroupMember(educationalTeacherId.toString())};
|
|
|
ImGroupMember[] oldImGroupMembers3 = {new ImGroupMember(oldMusicGroup.getDirectorUserId().toString())};
|
|
|
ImGroupMember[] nowImGroupMembers3 = {new ImGroupMember(directorUserId.toString())};
|
|
|
- classGroups.forEach(e->{
|
|
|
+ classGroups.forEach(e -> {
|
|
|
imFeignService.groupQuit(new ImGroupModel(e.getId().toString(), oldImGroupMembers1, e.getName()));
|
|
|
imFeignService.groupJoin(new ImGroupModel(e.getId().toString(), nowImGroupMembers1, e.getName()));
|
|
|
imFeignService.groupQuit(new ImGroupModel(e.getId().toString(), oldImGroupMembers2, e.getName()));
|
|
@@ -1859,7 +1895,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
//如果已生成课表,那么修改未上课时教学点
|
|
|
courseScheduleDao.updateCourseScheduleSchool("MUSIC", musicGroupId, musicGroup.getSchoolId());
|
|
|
}
|
|
|
- updateTeamTeacher(musicGroup,group);
|
|
|
+ updateTeamTeacher(musicGroup, group);
|
|
|
List<Integer> months = subFeeSettingDto.getMonths();
|
|
|
|
|
|
Date date = new Date();
|
|
@@ -1968,21 +2004,21 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
musicGroup.setStatus(MusicGroupStatusEnum.PAY);
|
|
|
musicGroupDao.update(musicGroup);
|
|
|
//三方乐团不发送缴费通知
|
|
|
- if(musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN){
|
|
|
+ if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {
|
|
|
//获取所有已报名学员列表
|
|
|
- HashMap<Integer,String> map = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertMybatisMap(studentRegistrationDao.findMapByMusicGroupId(musicGroupId,0))), HashMap.class);
|
|
|
- if(map != null && map.size() > 0){
|
|
|
+ HashMap<Integer, String> map = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertMybatisMap(studentRegistrationDao.findMapByMusicGroupId(musicGroupId, 0))), HashMap.class);
|
|
|
+ if (map != null && map.size() > 0) {
|
|
|
String studentApplyUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL) + musicGroupId;
|
|
|
String serverPhone = sysConfigDao.findConfigValue(SysConfigService.SERVER_PHONE);
|
|
|
- sysMessageService.batchSendMessage(MessageSender.YIMEI,MessageTypeEnum.SMS_PAYMENT_MESSAGE,
|
|
|
- map,null,0,"","",musicGroup.getName(),studentApplyUrl,DateUtil.format(musicGroup.getPaymentExpireDate(),DateUtil.DATE_FORMAT_MIN),serverPhone);
|
|
|
+ sysMessageService.batchSendMessage(MessageSender.YIMEI, MessageTypeEnum.SMS_PAYMENT_MESSAGE,
|
|
|
+ map, null, 0, "", "", musicGroup.getName(), studentApplyUrl, DateUtil.format(musicGroup.getPaymentExpireDate(), DateUtil.DATE_FORMAT_MIN), serverPhone);
|
|
|
}
|
|
|
}
|
|
|
Set<Integer> roleIds = new HashSet<>(3);
|
|
|
roleIds.add(SysUserRole.SECTION_MANAGER);
|
|
|
roleIds.add(SysUserRole.EDUCATIONAL_TEACHER);
|
|
|
roleIds.add(SysUserRole.OPERATION_EXECUTIVE);
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_ACTION_PAYMENT,"",musicGroup.getName());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_ACTION_PAYMENT, "", musicGroup.getName());
|
|
|
//所有人开启缴费
|
|
|
studentRegistrationDao.musicGroupOpenPay(musicGroupId, PaymentStatusEnum.OPEN);
|
|
|
return musicGroup;
|
|
@@ -2051,7 +2087,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId, event, sysUser.getId(), ""));
|
|
|
musicGroup.setStatus(MusicGroupStatusEnum.PREPARE);
|
|
|
musicGroupDao.update(musicGroup);
|
|
|
- if(musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN){
|
|
|
+ if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {
|
|
|
//给家长发送乐团基础训练课短信
|
|
|
//获取所有乐团学员列表
|
|
|
List<StudentRegistration> students = studentRegistrationDao.queryStudentByMusicGroupId(musicGroupId);
|
|
@@ -2064,12 +2100,12 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
if (userIds != null && userIds.size() > 0) {
|
|
|
String studentApplyUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL) + musicGroupId;
|
|
|
String serverPhone = sysConfigDao.findConfigValue(SysConfigService.SERVER_PHONE);
|
|
|
- sysMessageService.batchSendMessage(MessageSender.YIMEI, MessageTypeEnum.SMS_BASICS_SKILL_APPLY_MESSAGE, userIds, null, 0, "","", musicGroup.getName(), studentApplyUrl, serverPhone);
|
|
|
+ sysMessageService.batchSendMessage(MessageSender.YIMEI, MessageTypeEnum.SMS_BASICS_SKILL_APPLY_MESSAGE, userIds, null, 0, "", "", musicGroup.getName(), studentApplyUrl, serverPhone);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
Set<Integer> roleIds = new HashSet<>(1);
|
|
|
roleIds.add(SysUserRole.SECTION_MANAGER);
|
|
|
- sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,musicGroup.getOrganId()),MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_MARKING,"",musicGroup.getName());
|
|
|
+ sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_MARKING, "", musicGroup.getName());
|
|
|
}
|
|
|
}
|