Przeglądaj źródła

add 订单导出,零星收费增加学校

周箭河 5 lat temu
rodzic
commit
c37fbaa6cf

+ 129 - 131
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SporadicChargeInfoImpl.java

@@ -30,145 +30,143 @@ import java.util.*;
 import java.util.stream.Collectors;
 
 @Service
-public class SporadicChargeInfoImpl extends BaseServiceImpl<Integer, SporadicChargeInfo>  implements SporadicChargeInfoService {
-	
-	@Autowired
-	private SporadicChargeInfoDao sporadicChargeInfoDao;
-	@Autowired
-	private StudentPaymentOrderDao studentPaymentOrderDao;
-	@Autowired
-	private SysUserFeignService sysUserFeignService;
-	@Autowired
-	private SysMessageService sysMessageService;
-	@Autowired
-	private OrganizationDao organizationDao;
-	@Autowired
-	private TeacherDao teacherDao;
-	@Autowired
-	private SysUserCashAccountService sysUserCashAccountService;
-	@Autowired
-	private SysUserCashAccountDetailService sysUserCashAccountDetailService;
+public class SporadicChargeInfoImpl extends BaseServiceImpl<Integer, SporadicChargeInfo> implements SporadicChargeInfoService {
 
-	@Override
-	public BaseDAO<Integer, SporadicChargeInfo> getDAO() {
-		return sporadicChargeInfoDao;
-	}
+    @Autowired
+    private SporadicChargeInfoDao sporadicChargeInfoDao;
+    @Autowired
+    private StudentPaymentOrderDao studentPaymentOrderDao;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+    @Autowired
+    private SysMessageService sysMessageService;
+    @Autowired
+    private OrganizationDao organizationDao;
+    @Autowired
+    private TeacherDao teacherDao;
+    @Autowired
+    private SysUserCashAccountService sysUserCashAccountService;
+    @Autowired
+    private SysUserCashAccountDetailService sysUserCashAccountDetailService;
 
-	@Override
-	@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
-	public Boolean renewForCallback(StudentPaymentOrder studentPaymentOrder) {
-		int updateCount = studentPaymentOrderDao.update(studentPaymentOrder);
-		if(updateCount <= 0){
-			throw new BizException("订单更新失败");
-		}
-		Integer userId = studentPaymentOrder.getUserId();
-		SysUser sysUser = sysUserFeignService.queryUserById(userId);
-		SporadicChargeInfo info = sporadicChargeInfoDao.get(Integer.parseInt(studentPaymentOrder.getMusicGroupId()));
-		Map<Integer,String> map = new HashMap();
-		map.put(userId,sysUser.getPhone());
-		Map<Integer,String> yimei = new HashMap();
-		map.put(userId,userId.toString());
-		if(studentPaymentOrder.getStatus() == DealStatusEnum.SUCCESS){
-			//活动,增加课程余额
-			if(info.getChargeType().equals("6")){
-				sysUserCashAccountService.appendCourseBalance(userId,studentPaymentOrder.getActualAmount());
-			}
+    @Override
+    public BaseDAO<Integer, SporadicChargeInfo> getDAO() {
+        return sporadicChargeInfoDao;
+    }
 
-			//插入交易明细
-			BigDecimal amount = studentPaymentOrder.getActualAmount();
-			if (amount != null && amount.compareTo(BigDecimal.ZERO) > 0) {
-				Date nowDate = new Date();
-				SysUserCashAccount cashAccount = sysUserCashAccountService.get(userId);
-				//充值
-				SysUserCashAccountDetail rechargeDetail = new SysUserCashAccountDetail();
-				rechargeDetail.setAmount(amount);
-				rechargeDetail.setBalance(cashAccount.getBalance().add(amount));
-				rechargeDetail.setComment("缴费前充值");
-				rechargeDetail.setCreateTime(nowDate);
-				rechargeDetail.setStatus(DealStatusEnum.SUCCESS);
-				rechargeDetail.setTransNo(studentPaymentOrder.getTransNo());
-				rechargeDetail.setType(PlatformCashAccountDetailTypeEnum.RECHARGE);
-				rechargeDetail.setUpdateTime(nowDate);
-				rechargeDetail.setUserId(userId);
-				rechargeDetail.setChannel(studentPaymentOrder.getPaymentChannel());
-				rechargeDetail.setComAmount(studentPaymentOrder.getComAmount());
-				rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount());
-				sysUserCashAccountDetailService.insert(rechargeDetail);
+    @Override
+    @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
+    public Boolean renewForCallback(StudentPaymentOrder studentPaymentOrder) {
+        int updateCount = studentPaymentOrderDao.update(studentPaymentOrder);
+        if (updateCount <= 0) {
+            throw new BizException("订单更新失败");
+        }
+        Integer userId = studentPaymentOrder.getUserId();
+        SysUser sysUser = sysUserFeignService.queryUserById(userId);
+        SporadicChargeInfo info = sporadicChargeInfoDao.get(Integer.parseInt(studentPaymentOrder.getMusicGroupId()));
+        Map<Integer, String> map = new HashMap();
+        map.put(userId, sysUser.getPhone());
+        Map<Integer, String> yimei = new HashMap();
+        map.put(userId, userId.toString());
+        if (studentPaymentOrder.getStatus() == DealStatusEnum.SUCCESS) {
+            //活动,增加课程余额
+            if (info.getChargeType().equals("6")) {
+                sysUserCashAccountService.appendCourseBalance(userId, studentPaymentOrder.getActualAmount());
+            }
 
-				//缴费
-				SysUserCashAccountDetail paymentDetail = new SysUserCashAccountDetail();
-				paymentDetail.setAmount(amount.negate());
-				paymentDetail.setBalance(cashAccount.getBalance());
-				paymentDetail.setComment(info.getTitle());
-				paymentDetail.setCreateTime(nowDate);
-				paymentDetail.setStatus(DealStatusEnum.SUCCESS);
-				paymentDetail.setTransNo(studentPaymentOrder.getTransNo());
-				paymentDetail.setType(PlatformCashAccountDetailTypeEnum.PAY_FEE);
-				paymentDetail.setUpdateTime(nowDate);
-				paymentDetail.setUserId(userId);
-				rechargeDetail.setChannel(studentPaymentOrder.getPaymentChannel());
-				if (studentPaymentOrder.getComAmount() != null) {
-					rechargeDetail.setComAmount(studentPaymentOrder.getComAmount().negate());
-					rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount().negate());
-				}
+            //插入交易明细
+            BigDecimal amount = studentPaymentOrder.getActualAmount();
+            Date nowDate = new Date();
+            SysUserCashAccount cashAccount = sysUserCashAccountService.get(userId);
+            //充值
+            SysUserCashAccountDetail rechargeDetail = new SysUserCashAccountDetail();
+            rechargeDetail.setAmount(amount);
+            rechargeDetail.setBalance(cashAccount.getBalance().add(amount));
+            rechargeDetail.setComment("缴费前充值");
+            rechargeDetail.setCreateTime(nowDate);
+            rechargeDetail.setStatus(DealStatusEnum.SUCCESS);
+            rechargeDetail.setTransNo(studentPaymentOrder.getTransNo());
+            rechargeDetail.setType(PlatformCashAccountDetailTypeEnum.RECHARGE);
+            rechargeDetail.setUpdateTime(nowDate);
+            rechargeDetail.setUserId(userId);
+            rechargeDetail.setChannel(studentPaymentOrder.getPaymentChannel());
+            rechargeDetail.setComAmount(studentPaymentOrder.getComAmount());
+            rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount());
+            sysUserCashAccountDetailService.insert(rechargeDetail);
 
-				sysUserCashAccountDetailService.insert(paymentDetail);
-			}
+            //缴费
+            SysUserCashAccountDetail paymentDetail = new SysUserCashAccountDetail();
+            paymentDetail.setAmount(amount.negate());
+            paymentDetail.setBalance(cashAccount.getBalance());
+            paymentDetail.setComment(info.getTitle());
+            paymentDetail.setCreateTime(nowDate);
+            paymentDetail.setStatus(DealStatusEnum.SUCCESS);
+            paymentDetail.setTransNo(studentPaymentOrder.getTransNo());
+            paymentDetail.setType(PlatformCashAccountDetailTypeEnum.PAY_FEE);
+            paymentDetail.setUpdateTime(nowDate);
+            paymentDetail.setUserId(userId);
+            rechargeDetail.setChannel(studentPaymentOrder.getPaymentChannel());
+            if (studentPaymentOrder.getComAmount() != null) {
+                rechargeDetail.setComAmount(studentPaymentOrder.getComAmount().negate());
+                rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount().negate());
+            }
 
-			sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.SMS_SPORADIC_PAYMENT_SUCCESS, map, null, 0, "1",
-					studentPaymentOrder.getActualAmount(),info.getTitle());
-			sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.SMS_SPORADIC_PAYMENT_SUCCESS, yimei, null, 0, "1",
-					studentPaymentOrder.getActualAmount(),info.getTitle());
-			return true;
-		}
-		if(studentPaymentOrder.getStatus() == DealStatusEnum.CLOSE || studentPaymentOrder.getStatus() == DealStatusEnum.FAILED){
-			if(studentPaymentOrder.getBalancePaymentAmount() != null && studentPaymentOrder.getBalancePaymentAmount().compareTo(BigDecimal.ZERO) >0 ){
-				sysUserCashAccountService.updateBalance(studentPaymentOrder.getUserId(), studentPaymentOrder.getBalancePaymentAmount(),PlatformCashAccountDetailTypeEnum.REFUNDS,info.getTitle()+"支付失败");
-			}
+            sysUserCashAccountDetailService.insert(paymentDetail);
 
-			sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.SMS_SPORADIC_PAYMENT_FAILED, map, null, 0,"",
-					studentPaymentOrder.getActualAmount(),info.getTitle());
-			sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.SMS_SPORADIC_PAYMENT_FAILED, yimei, null, 0, "",
-					studentPaymentOrder.getActualAmount(),info.getTitle());
-			return false;
-		}
-		return false;
-	}
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.SMS_SPORADIC_PAYMENT_SUCCESS, map, null, 0, "1",
+                    studentPaymentOrder.getActualAmount(), info.getTitle());
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.SMS_SPORADIC_PAYMENT_SUCCESS, yimei, null, 0, "1",
+                    studentPaymentOrder.getActualAmount(), info.getTitle());
+            return true;
+        }
+        if (studentPaymentOrder.getStatus() == DealStatusEnum.CLOSE || studentPaymentOrder.getStatus() == DealStatusEnum.FAILED) {
+            if (studentPaymentOrder.getBalancePaymentAmount() != null && studentPaymentOrder.getBalancePaymentAmount().compareTo(BigDecimal.ZERO) > 0) {
+                sysUserCashAccountService.updateBalance(studentPaymentOrder.getUserId(), studentPaymentOrder.getBalancePaymentAmount(), PlatformCashAccountDetailTypeEnum.REFUNDS, info.getTitle() + "支付失败");
+            }
 
-	@Override
-	public PageInfo queryDetailPage(SporadicChargeInfoQueryInfo queryInfo) {
-		PageInfo<SporadicChargeInfo> pageInfo = queryPage(queryInfo);
-		List<SporadicChargeInfo> rows = pageInfo.getRows();
-		if(rows != null && rows.size() > 0){
-			Set<Integer> organIds = rows.stream().map(e -> e.getOrganId()).collect(Collectors.toSet());
-			List<Integer> userIds = rows.stream().map(e -> e.getUserId()).collect(Collectors.toList());
-			Set<Integer> operatorIds = rows.stream().map(e -> e.getOperatorId()).collect(Collectors.toSet());
-			Map<Integer,String> organNames = MapUtil.convertMybatisMap(organizationDao.findOrganNameMap(StringUtils.join(organIds,",")));
-			Map<Integer,String> operatorNames = MapUtil.convertMybatisMap(teacherDao.queryNameByIds(StringUtils.join(operatorIds,",")));
-			Map<Integer,String> userNames = MapUtil.convertMybatisMap(teacherDao.queryUsernameByIds(userIds));
-			rows.forEach(e->{
-				e.setOrganName(organNames.get(e.getOrganId()));
-				if(e.getUserId() != null){
-					e.setUserName(userNames.get(e.getUserId()));
-				}
-				e.setOperatorName(operatorNames.get(e.getOperatorId()));
-			});
-		}
-		return pageInfo;
-	}
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.SMS_SPORADIC_PAYMENT_FAILED, map, null, 0, "",
+                    studentPaymentOrder.getActualAmount(), info.getTitle());
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.SMS_SPORADIC_PAYMENT_FAILED, yimei, null, 0, "",
+                    studentPaymentOrder.getActualAmount(), info.getTitle());
+            return false;
+        }
+        return false;
+    }
 
-	@Override
-	public SporadicChargeInfo getDetail(Integer id) {
-		SporadicChargeInfo sporadicChargeInfo = sporadicChargeInfoDao.get(id);
-		if(sporadicChargeInfo.getUserId() != null){
-			SysUser sysUser = sysUserFeignService.queryUserById(sporadicChargeInfo.getUserId());
-			sporadicChargeInfo.setUserName(sysUser.getUsername());
-		}
-		return sporadicChargeInfo;
-	}
+    @Override
+    public PageInfo queryDetailPage(SporadicChargeInfoQueryInfo queryInfo) {
+        PageInfo<SporadicChargeInfo> pageInfo = queryPage(queryInfo);
+        List<SporadicChargeInfo> rows = pageInfo.getRows();
+        if (rows != null && rows.size() > 0) {
+            Set<Integer> organIds = rows.stream().map(e -> e.getOrganId()).collect(Collectors.toSet());
+            List<Integer> userIds = rows.stream().map(e -> e.getUserId()).collect(Collectors.toList());
+            Set<Integer> operatorIds = rows.stream().map(e -> e.getOperatorId()).collect(Collectors.toSet());
+            Map<Integer, String> organNames = MapUtil.convertMybatisMap(organizationDao.findOrganNameMap(StringUtils.join(organIds, ",")));
+            Map<Integer, String> operatorNames = MapUtil.convertMybatisMap(teacherDao.queryNameByIds(StringUtils.join(operatorIds, ",")));
+            Map<Integer, String> userNames = MapUtil.convertMybatisMap(teacherDao.queryUsernameByIds(userIds));
+            rows.forEach(e -> {
+                e.setOrganName(organNames.get(e.getOrganId()));
+                if (e.getUserId() != null) {
+                    e.setUserName(userNames.get(e.getUserId()));
+                }
+                e.setOperatorName(operatorNames.get(e.getOperatorId()));
+            });
+        }
+        return pageInfo;
+    }
 
-	@Override
-	public SporadicChargeInfo findByOrganIdAndType(Integer organId, Integer type) {
-		return sporadicChargeInfoDao.findByOrganIdAndType(organId,type);
-	}
+    @Override
+    public SporadicChargeInfo getDetail(Integer id) {
+        SporadicChargeInfo sporadicChargeInfo = sporadicChargeInfoDao.get(id);
+        if (sporadicChargeInfo.getUserId() != null) {
+            SysUser sysUser = sysUserFeignService.queryUserById(sporadicChargeInfo.getUserId());
+            sporadicChargeInfo.setUserName(sysUser.getUsername());
+        }
+        return sporadicChargeInfo;
+    }
+
+    @Override
+    public SporadicChargeInfo findByOrganIdAndType(Integer organId, Integer type) {
+        return sporadicChargeInfoDao.findByOrganIdAndType(organId, type);
+    }
 }

+ 34 - 36
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -796,44 +796,42 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
 
             //插入交易明细
             BigDecimal amount = studentPaymentOrder.getActualAmount();
-            if (amount != null && amount.compareTo(BigDecimal.ZERO) > 0) {
-                SysUserCashAccount cashAccount = sysUserCashAccountService.get(studentRegistration.getUserId());
-                //充值
-                SysUserCashAccountDetail rechargeDetail = new SysUserCashAccountDetail();
-                rechargeDetail.setAmount(amount);
-                rechargeDetail.setBalance(cashAccount.getBalance().add(amount));
-                rechargeDetail.setComment("缴费前充值");
-                rechargeDetail.setCreateTime(nowDate);
-                rechargeDetail.setStatus(DealStatusEnum.SUCCESS);
-                rechargeDetail.setTransNo(studentPaymentOrder.getTransNo());
-                rechargeDetail.setType(PlatformCashAccountDetailTypeEnum.RECHARGE);
-                rechargeDetail.setUpdateTime(nowDate);
-                rechargeDetail.setUserId(studentRegistration.getUserId());
-                rechargeDetail.setChannel(studentPaymentOrder.getPaymentChannel());
-                rechargeDetail.setComAmount(studentPaymentOrder.getComAmount());
-                rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount());
-                sysUserCashAccountDetailService.insert(rechargeDetail);
-
-                //缴费
-                SysUserCashAccountDetail paymentDetail = new SysUserCashAccountDetail();
-                paymentDetail.setAmount(amount.negate());
-                paymentDetail.setBalance(cashAccount.getBalance());
-                paymentDetail.setComment("报名缴费");
-                paymentDetail.setCreateTime(nowDate);
-                paymentDetail.setStatus(DealStatusEnum.SUCCESS);
-                paymentDetail.setTransNo(studentPaymentOrder.getTransNo());
-                paymentDetail.setType(PlatformCashAccountDetailTypeEnum.PAY_FEE);
-                paymentDetail.setUpdateTime(nowDate);
-                paymentDetail.setUserId(studentRegistration.getUserId());
-                rechargeDetail.setChannel(studentPaymentOrder.getPaymentChannel());
-                if (studentPaymentOrder.getComAmount() != null) {
-                    rechargeDetail.setComAmount(studentPaymentOrder.getComAmount().negate());
-                    rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount().negate());
-                }
-
-                sysUserCashAccountDetailService.insert(paymentDetail);
+            SysUserCashAccount cashAccount = sysUserCashAccountService.get(studentRegistration.getUserId());
+            //充值
+            SysUserCashAccountDetail rechargeDetail = new SysUserCashAccountDetail();
+            rechargeDetail.setAmount(amount);
+            rechargeDetail.setBalance(cashAccount.getBalance().add(amount));
+            rechargeDetail.setComment("缴费前充值");
+            rechargeDetail.setCreateTime(nowDate);
+            rechargeDetail.setStatus(DealStatusEnum.SUCCESS);
+            rechargeDetail.setTransNo(studentPaymentOrder.getTransNo());
+            rechargeDetail.setType(PlatformCashAccountDetailTypeEnum.RECHARGE);
+            rechargeDetail.setUpdateTime(nowDate);
+            rechargeDetail.setUserId(studentRegistration.getUserId());
+            rechargeDetail.setChannel(studentPaymentOrder.getPaymentChannel());
+            rechargeDetail.setComAmount(studentPaymentOrder.getComAmount());
+            rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount());
+            sysUserCashAccountDetailService.insert(rechargeDetail);
+
+            //缴费
+            SysUserCashAccountDetail paymentDetail = new SysUserCashAccountDetail();
+            paymentDetail.setAmount(amount.negate());
+            paymentDetail.setBalance(cashAccount.getBalance());
+            paymentDetail.setComment("报名缴费");
+            paymentDetail.setCreateTime(nowDate);
+            paymentDetail.setStatus(DealStatusEnum.SUCCESS);
+            paymentDetail.setTransNo(studentPaymentOrder.getTransNo());
+            paymentDetail.setType(PlatformCashAccountDetailTypeEnum.PAY_FEE);
+            paymentDetail.setUpdateTime(nowDate);
+            paymentDetail.setUserId(studentRegistration.getUserId());
+            rechargeDetail.setChannel(studentPaymentOrder.getPaymentChannel());
+            if (studentPaymentOrder.getComAmount() != null) {
+                rechargeDetail.setComAmount(studentPaymentOrder.getComAmount().negate());
+                rechargeDetail.setPerAmount(studentPaymentOrder.getPerAmount().negate());
             }
 
+            sysUserCashAccountDetailService.insert(paymentDetail);
+
             MusicGroup musicGroup = musicGroupDao.get(studentRegistration.getMusicGroupId());
             //三方乐团不发送缴费通知
             if (musicGroup.getOwnershipType() != null && musicGroup.getOwnershipType() == CooperationOrgan.OwnershipType.OWN) {