|
|
@@ -19,6 +19,9 @@ import com.chuanghai.smartschool.tuitionpayment.enume.PayMethod;
|
|
|
import com.chuanghai.smartschool.tuitionpayment.enume.PayStatus;
|
|
|
import com.chuanghai.smartschool.tuitionpayment.service.*;
|
|
|
import com.chuanghai.smartschool.tuitionpayment.to.BankItemDetailTO.BankDetailListVO;
|
|
|
+import com.chuanghai.smartschool.tuitionpayment.to.ExcelTO.CommentItemTO;
|
|
|
+import com.chuanghai.smartschool.tuitionpayment.to.ExcelTO.PayOrderStatyTO;
|
|
|
+import com.chuanghai.smartschool.tuitionpayment.to.ExcelTO.PayOrderWaterTO;
|
|
|
import com.chuanghai.smartschool.tuitionpayment.to.OrderReceiveTO;
|
|
|
import com.chuanghai.smartschool.tuitionpayment.to.PayOrderQueryTO;
|
|
|
import com.chuanghai.smartschool.tuitionpayment.utils.MyUtil;
|
|
|
@@ -50,9 +53,8 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
@Autowired
|
|
|
private PayableInfoWaterService payableInfoWaterService;
|
|
|
@Autowired
|
|
|
- private PayMethodSettingService payMethodSettingService;
|
|
|
- @Autowired
|
|
|
- private EnablePayLimitByGradeService enablePayLimitByGradeService;
|
|
|
+ private PayableInfoWaterDeleteService payableInfoWaterDeleteService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private PayService payService;
|
|
|
@Autowired
|
|
|
@@ -60,17 +62,13 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
@Autowired
|
|
|
private PayOrderService payOrderService;
|
|
|
@Autowired
|
|
|
- private PayItemController payItemController;
|
|
|
+ private PayOrderDeleteService payOrderDeleteService;
|
|
|
@Autowired
|
|
|
- private WechatController wechatController;
|
|
|
+ private PayItemController payItemController;
|
|
|
@Autowired
|
|
|
private PayItemDetailController payItemDetailController;
|
|
|
@Autowired
|
|
|
private PayableInfoController payableInfoController;
|
|
|
- // @Autowired
|
|
|
-// private PayDetailBankController payDetailBankController;
|
|
|
- @Autowired
|
|
|
- private BankDetailController bankDetailController;
|
|
|
@Autowired
|
|
|
private BankItemDetailController bankItemDetailController;
|
|
|
|
|
|
@@ -129,8 +127,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
.eq("is_parent", Boolean.TRUE);
|
|
|
}
|
|
|
|
|
|
-// wrapper.eq("payer_identify", cardNumber)
|
|
|
-// .eq("status", status);
|
|
|
+
|
|
|
IPage<PayOrderEntity> page = this.page(
|
|
|
new MyQuery<PayOrderEntity>().getPage(pageParam),
|
|
|
wrapper
|
|
|
@@ -308,15 +305,8 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
payAmountCCB = payAmountCCB.subtract(new BigDecimal(payOrderLoan)).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
payOrderReceiveVO.setNowRealPayAmount(payAmountCCB);
|
|
|
-
|
|
|
- //TODO
|
|
|
-// String bankCard = bankDetailController.queryBankByDeatilItem(itemName, ccbRealPayStr);
|
|
|
-// if (bankCard.contains("建设银行")) {
|
|
|
-// payOrderReceiveVO.setPayMethod("1");
|
|
|
-// }
|
|
|
payOrderReceiveVO.setPayMethod("1");
|
|
|
|
|
|
-
|
|
|
orderReceiveTOCCB.setPayOrderReceiveVO(payOrderReceiveVO);
|
|
|
orderReceiveTOList.add(orderReceiveTOCCB);
|
|
|
}
|
|
|
@@ -361,14 +351,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
if (!payOrderReceiveVO1.getPayDetail().isEmpty()) {
|
|
|
payOrderReceiveVO1.setPayOrderLoan("0");
|
|
|
payOrderReceiveVO1.setNowRealPayAmount(payAmountRCB);
|
|
|
-
|
|
|
- //TODO
|
|
|
-// String bankCard = bankDetailController.queryBankByDeatilItem(itemName, ccbRealPayStr);
|
|
|
-// if (bankCard.contains("农商银行")) {
|
|
|
-// payOrderReceiveVO1.setPayMethod("2");
|
|
|
-// }
|
|
|
payOrderReceiveVO1.setPayMethod("2");
|
|
|
-
|
|
|
orderReceiveTORCB.setPayOrderReceiveVO(payOrderReceiveVO1);
|
|
|
orderReceiveTOList.add(orderReceiveTORCB);
|
|
|
|
|
|
@@ -386,6 +369,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
*/
|
|
|
@Override
|
|
|
public List<CreateOrderResultVO> createOrder(String cardNumber, PayOrderReceiveVO payOrderReceiveVO) {
|
|
|
+
|
|
|
List<OrderReceiveTO> orderReceiveTOS = receiveOrder(cardNumber, payOrderReceiveVO);
|
|
|
List<CreateOrderResultVO> createOrderResultVOList = new ArrayList<>();
|
|
|
//记录遍历的次数
|
|
|
@@ -393,12 +377,12 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
OrderReceiveTO orderReceiveTO = orderReceiveTOS.get(m);
|
|
|
String cardNumber1 = orderReceiveTO.getCardNumber();
|
|
|
PayOrderReceiveVO payOrderReceiveVO1 = orderReceiveTO.getPayOrderReceiveVO();
|
|
|
- // System.out.println(payOrderReceiveVO1+" 00111------1-1-1-1-1-1--100");
|
|
|
String studentNo = payOrderReceiveVO1.getStudentNo();
|
|
|
String dorm = payOrderReceiveVO1.getDorm();
|
|
|
- if (dorm == null || dorm.equals("")) {
|
|
|
+ if (!StringUtils.hasText(dorm)) {
|
|
|
dorm = "";
|
|
|
}
|
|
|
+
|
|
|
String itemName = payOrderReceiveVO1.getItemName();
|
|
|
String payDetial = payOrderReceiveVO1.getPayDetail();
|
|
|
String payYear = payOrderReceiveVO1.getPayYear();
|
|
|
@@ -406,7 +390,10 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
String id = payOrderReceiveVO1.getId().toString();
|
|
|
String payMethod = payOrderReceiveVO1.getPayMethod();
|
|
|
String payOrderLoan = payOrderReceiveVO1.getPayOrderLoan();
|
|
|
- payOrderLoan = payOrderLoan.equals("") == true ? "0" : payOrderLoan;
|
|
|
+ // payOrderLoan = payOrderLoan.equals("") == true ? "0" : payOrderLoan;
|
|
|
+ if (!StringUtils.hasText(payOrderLoan)) {
|
|
|
+ payOrderLoan = "0";
|
|
|
+ }
|
|
|
BigDecimal orderLoan = new BigDecimal(payOrderLoan).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
|
|
|
|
@@ -420,7 +407,12 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
.eq("pay_month", payYear)
|
|
|
.eq("payment_item", itemName)
|
|
|
.eq("pay_item_type", "1");
|
|
|
+ //将删除的水费缴费信息记录到删除记录表中
|
|
|
payableInfoWaterService.remove(wrapper);
|
|
|
+ PayableInfoWaterEntity payableInfoWaterEntity = payableInfoWaterService.getOne(wrapper);
|
|
|
+ PayableInfoWaterDeleteEntity payableInfoWaterDeleteEntity = new PayableInfoWaterDeleteEntity();
|
|
|
+ BeanUtils.copyProperties(payableInfoWaterEntity, payableInfoWaterDeleteEntity);
|
|
|
+ payableInfoWaterDeleteService.save(payableInfoWaterDeleteEntity);
|
|
|
throw new RRException(BizCodeEnume.DORM_EXIST, "宿舍【" + dorm + " " + payYear + "】已缴费,请勿重复缴费");
|
|
|
|
|
|
}
|
|
|
@@ -430,10 +422,15 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
PayableInfoEntity byIdInfo = payableInfoService.getById(payOrderReceiveVO1.getId());
|
|
|
//如果在首页已经缴完本订单的全部项目,则将本订单删除,跳转到首页
|
|
|
if (byIdInfo != null && (byIdInfo.getNotPayDetail().equals("") || byIdInfo.getNotPayDetail() == null)) {
|
|
|
- QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
|
|
|
- wrapper.eq("payinfo_id", byIdInfo.getId())
|
|
|
- .eq("status", "1");
|
|
|
- payOrderService.remove(wrapper);
|
|
|
+// QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
|
|
|
+// wrapper.eq("payinfo_id", byIdInfo.getId())
|
|
|
+// .eq("status", "1");
|
|
|
+ //TODO 删除订单
|
|
|
+ payOrderService.removeById(byIdInfo.getId());
|
|
|
+ PayOrderEntity one = payOrderService.getById(byIdInfo.getId());
|
|
|
+ PayOrderDeleteEntity payOrderDeleteEntity = new PayOrderDeleteEntity();
|
|
|
+ BeanUtils.copyProperties(one, payOrderDeleteEntity);
|
|
|
+ payOrderDeleteService.save(payOrderDeleteEntity);
|
|
|
throw new RRException(BizCodeEnume.ORDER_IS_PAY, "该订单已完成缴费,请勿重复缴费");
|
|
|
}
|
|
|
if (alreadyPay) {
|
|
|
@@ -460,7 +457,6 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
Integer currentGrade = MyUtil.calcStudentGrade(Integer.valueOf(grade.trim()));
|
|
|
|
|
|
// 判断当前年级是否可线上缴费
|
|
|
- // boolean enablePay = Boolean.FALSE;
|
|
|
PayItem payItem = payItemController.queryByItemNameSetting(itemName).getData();
|
|
|
String itemGrade = payItem.getItemGrade();
|
|
|
String gradeStr = "";
|
|
|
@@ -468,19 +464,18 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
for (int i = 0; i < jsonArray.size(); i++) {
|
|
|
gradeStr += jsonArray.get(i);
|
|
|
}
|
|
|
- // boolean enablePay = enablePayLimitByGradeService.getCurrentGradeEnablePay(currentGrade);
|
|
|
if (!(gradeStr.contains(String.valueOf(currentGrade)))) {
|
|
|
throw new RRException(BizCodeEnume.PAYABLE_INFO_IS_NOT_EXIT, "当前学生所在年级不允许线上缴费");
|
|
|
}
|
|
|
|
|
|
|
|
|
- PayOrderEntity payOrderEntity = new PayOrderEntity();
|
|
|
+ PayOrderEntity payOrderEntity;
|
|
|
if (itemName.equals("水费缴纳")) {
|
|
|
QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
|
|
|
wrapper.eq("dorm", dorm);
|
|
|
wrapper.eq("pay_item", itemName);
|
|
|
wrapper.eq(StringUtils.hasText(payYear), "pay_year", payYear);
|
|
|
- wrapper.in("pay_method", "1", "2");
|
|
|
+ // wrapper.in("pay_method", "1", "2");
|
|
|
wrapper.orderByDesc("create_time");
|
|
|
wrapper.last("limit 1");
|
|
|
payOrderEntity = this.getOne(wrapper);
|
|
|
@@ -490,7 +485,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
wrapper.eq("pay_for_identify", studentNo);
|
|
|
wrapper.eq("pay_item", itemName);
|
|
|
wrapper.eq("pay_detail", payDetial);
|
|
|
- wrapper.in("pay_method", "1", "2");
|
|
|
+ // wrapper.in("pay_method", "1", "2");
|
|
|
wrapper.eq(StringUtils.hasText(payYear), "pay_year", payYear);
|
|
|
wrapper.eq("not_pay_size", payOrderReceiveVO1.getNotPaySize());
|
|
|
wrapper.orderByDesc("create_time");
|
|
|
@@ -505,9 +500,15 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
if (!(payOrderEntity.getPayMethod().equals(""))) {
|
|
|
// 再次查询订单状态
|
|
|
OrderStatusVO orderStatusVO = queryOrderStatus(payOrderEntity);
|
|
|
-
|
|
|
if (PayStatus.NON_PAY.getCode().equals(orderStatusVO.getStatus())) {
|
|
|
+
|
|
|
+ log.info("创建订单时需要删除的旧订单信息【{}】", payOrderEntity);
|
|
|
+
|
|
|
this.removeById(payOrderEntity.getId());
|
|
|
+
|
|
|
+ PayOrderDeleteEntity payOrderDeleteEntity = new PayOrderDeleteEntity();
|
|
|
+ BeanUtils.copyProperties(payOrderEntity, payOrderDeleteEntity);
|
|
|
+ payOrderDeleteService.save(payOrderDeleteEntity);
|
|
|
payOrderEntity = null;
|
|
|
}
|
|
|
}
|
|
|
@@ -518,15 +519,12 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
createOrderResultVO.setMsg("新创建订单");
|
|
|
payOrderEntity = new PayOrderEntity();
|
|
|
//判断该订单是否为多次支付
|
|
|
- PayInfoDetailVO payInfoDetailVO = new PayInfoDetailVO();
|
|
|
+ PayInfoDetailVO payInfoDetailVO;
|
|
|
int count = Integer.parseInt(payOrderReceiveVO1.getPayCount());
|
|
|
if (count == 1) {
|
|
|
payOrderEntity.setIsParent(Boolean.TRUE);
|
|
|
- // payInfoDetailVO = payableInfoController.queryPayDetail(id, itemName, payOrderReceiveVO.getPayDetail());
|
|
|
}
|
|
|
- System.out.println("000000" + payOrderReceiveVO1.getPayDetail());
|
|
|
payInfoDetailVO = (PayInfoDetailVO) payableInfoController.queryPayInfoDetail(id, itemName, payOrderReceiveVO1.getPayDetail()).getData();
|
|
|
- System.out.println("00000000000000000000" + payInfoDetailVO);
|
|
|
payOrderEntity.setNotPayDetail(payInfoDetailVO.getNotPayDetail());
|
|
|
|
|
|
payOrderEntity.setOrderNo(generateOrderNo());
|
|
|
@@ -542,7 +540,6 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
payOrderEntity.setExceptType("1");
|
|
|
|
|
|
String bankCard = "";
|
|
|
-
|
|
|
List<BankDetailListVO> bankDetailListVOS = bankItemDetailController.queryByItem(itemName);
|
|
|
|
|
|
for (int a = 0; a < bankDetailListVOS.size(); a++) {
|
|
|
@@ -557,30 +554,27 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
}
|
|
|
payOrderEntity.setPayBank(bankCard);
|
|
|
payOrderEntity.setPayOrderLoan(orderLoan);
|
|
|
- // System.out.println(payOrderEntity.getPayOrderLoan()+" 贷款---------------------------------------");
|
|
|
|
|
|
|
|
|
- // 支付金额、被支付用户信息
|
|
|
+ //更新对应项目的缴费参数
|
|
|
if (itemName.equals("水费缴纳")) {
|
|
|
- //更新对应项目的缴费参数
|
|
|
- payOrderEntity.setDorm(dorm);
|
|
|
- payOrderEntity.setPayinfoId(payableInfoWater.getId());
|
|
|
- payOrderEntity.setRealPayAmount(payableInfoWater.getRealPayAmount());
|
|
|
- //payOrderEntity.setNowPayAmount(payableInfoWater.getRealPayAmount());
|
|
|
- payOrderEntity.setStudentName(payableInfoWater.getStudentName());
|
|
|
- payOrderEntity.setClassName(payableInfoWater.getClassName());
|
|
|
- payOrderEntity.setSerialNumber(payableInfoWater.getSerialNumber());
|
|
|
- payOrderEntity.setNowPayAmount(payableInfoWater.getRealPayAmount());
|
|
|
+ if (payableInfoWater != null) {
|
|
|
+ payOrderEntity.setDorm(dorm);
|
|
|
+ payOrderEntity.setPayinfoId(payableInfoWater.getId());
|
|
|
+ payOrderEntity.setRealPayAmount(payableInfoWater.getRealPayAmount());
|
|
|
+ payOrderEntity.setStudentName(payableInfoWater.getStudentName());
|
|
|
+ payOrderEntity.setClassName(payableInfoWater.getClassName());
|
|
|
+ payOrderEntity.setSerialNumber(payableInfoWater.getSerialNumber());
|
|
|
+ payOrderEntity.setNowPayAmount(payableInfoWater.getRealPayAmount());
|
|
|
+ }
|
|
|
} else {
|
|
|
-
|
|
|
-
|
|
|
- payOrderEntity.setRealPayAmount(payableInfo.getRealPayAmount());
|
|
|
- // payOrderEntity.setNowPayAmount(payInfoDetailVO.getPayDetailAmount());
|
|
|
- payOrderEntity.setPayinfoId(payableInfo.getId());
|
|
|
-
|
|
|
- payOrderEntity.setStudentName(payableInfo.getStudentName());
|
|
|
- payOrderEntity.setClassName(payableInfo.getClassName());
|
|
|
- payOrderEntity.setSerialNumber(payableInfo.getSerialNumber());
|
|
|
+ if (payableInfo != null) {
|
|
|
+ payOrderEntity.setRealPayAmount(payableInfo.getRealPayAmount());
|
|
|
+ payOrderEntity.setPayinfoId(payableInfo.getId());
|
|
|
+ payOrderEntity.setStudentName(payableInfo.getStudentName());
|
|
|
+ payOrderEntity.setClassName(payableInfo.getClassName());
|
|
|
+ payOrderEntity.setSerialNumber(payableInfo.getSerialNumber());
|
|
|
+ }
|
|
|
|
|
|
}
|
|
|
BigDecimal parentNowPayDetailAmount = BigDecimal.ZERO;
|
|
|
@@ -590,55 +584,29 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
wrapper1.eq("payer_identify", cardNumber1);
|
|
|
wrapper1.eq("pay_for_identify", studentNo);
|
|
|
wrapper1.eq("pay_item", itemName);
|
|
|
- // wrapper1.eq("is_parent", "1");
|
|
|
wrapper1.eq(StringUtils.hasText(payYear), "pay_year", payYear);
|
|
|
wrapper1.eq("status", "2");
|
|
|
List<PayOrderEntity> payOrderList = this.list(wrapper1);
|
|
|
- System.out.println(payOrderList.size() + " sajsa size");
|
|
|
for (int i = 0; i < payOrderList.size(); i++) {
|
|
|
parentOrderLone = parentOrderLone.add(payOrderList.get(i).getPayOrderLoan()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
parentNowPayDetailAmount = parentNowPayDetailAmount.add(payOrderList.get(i).getNowPayAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
|
|
|
BigDecimal notPayDetailAmount = payInfoDetailVO.getNotPayDetailAmount();
|
|
|
- System.out.println(payOrderEntity.getRealPayAmount());
|
|
|
- System.out.println(parentNowPayDetailAmount);
|
|
|
- System.out.println(notPayDetailAmount);
|
|
|
- System.out.println(parentOrderLone);
|
|
|
- System.out.println(payableInfo);
|
|
|
if (itemName.equals("水费缴纳")) {
|
|
|
payOrderEntity.setNowPayAmount(payableInfoWater.getRealPayAmount());
|
|
|
} else {
|
|
|
- System.out.println(orderLoan);
|
|
|
if (!(orderLoan.toString().contains("0.0"))) {
|
|
|
parentOrderLone = orderLoan;
|
|
|
- // parentOrderLone = parentOrderLone.add(orderLoan);
|
|
|
}
|
|
|
if (payableInfo.getPayDetail() == null || payableInfo.getPayDetail().equals("")) {
|
|
|
- System.out.println("1111111111111111111");
|
|
|
-// System.out.println(payInfoDetailVO);
|
|
|
- //TODO
|
|
|
-
|
|
|
-
|
|
|
-// if (!String.valueOf(orderLoan).equals("")) {
|
|
|
-// parentOrderLone = orderLoan;
|
|
|
-// }
|
|
|
-
|
|
|
-
|
|
|
-// System.out.println(payOrderLoan);
|
|
|
payOrderEntity.setNowPayAmount(
|
|
|
payOrderEntity.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP)
|
|
|
- /// .subtract(parentNowPayDetailAmount).setScale(2, BigDecimal.ROUND_HALF_UP)
|
|
|
.subtract(notPayDetailAmount)
|
|
|
- // .subtract(parentOrderLone)
|
|
|
.subtract(orderLoan)
|
|
|
- //.subtract(payInfoDetailVO.getPayDetailAmount())
|
|
|
);
|
|
|
- System.out.println(payOrderEntity.getNowPayAmount() + "1111111111111111111111111111111");
|
|
|
|
|
|
} else {
|
|
|
- System.out.println("222222222222222222222");
|
|
|
-
|
|
|
|
|
|
if (payOrderReceiveVO1.getItemName().equals("学杂费") && !(payOrderReceiveVO1.getPayDetail().contains("/"))) {
|
|
|
payOrderEntity.setNowPayAmount(
|
|
|
@@ -648,118 +616,62 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
//减去未交明细的金额
|
|
|
.subtract(payInfoDetailVO.getNotPayDetailAmount().subtract(parentNowPayDetailAmount).subtract(parentOrderLone))
|
|
|
|
|
|
- //.subtract(payInfoDetailVO.getPayDetailAmount())
|
|
|
);
|
|
|
- System.out.println("+++++++++++++++++++++++++++ " + payInfoDetailVO.getNotPayDetailAmount().subtract(parentNowPayDetailAmount).subtract(parentOrderLone));
|
|
|
} else {
|
|
|
- System.out.println("-----------1-1111111111-1-1-1-1-1-1-1-1-1");
|
|
|
- System.out.println(payOrderReceiveVO1.getPayDetail());
|
|
|
payOrderEntity.setNowPayAmount(
|
|
|
payOrderEntity.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP)
|
|
|
.subtract(parentNowPayDetailAmount).setScale(2, BigDecimal.ROUND_HALF_UP)
|
|
|
-// .subtract(notPayDetailAmount)
|
|
|
.subtract(parentOrderLone)
|
|
|
.subtract(orderLoan)
|
|
|
.subtract(payInfoDetailVO.getNotPayDetailAmount().subtract(parentNowPayDetailAmount).subtract(parentOrderLone))
|
|
|
|
|
|
- //.subtract(payInfoDetailVO.getPayDetailAmount())
|
|
|
);
|
|
|
}
|
|
|
- System.out.println(payOrderEntity.getNowPayAmount() + " 222222222222222222222");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- System.out.println(payOrderEntity.getNowPayAmount() + "hyuwsegufgwf");
|
|
|
} else {
|
|
|
- payOrderEntity.setNowPayAmount(payInfoDetailVO.getPayDetailAmount().subtract(payOrderEntity.getPayOrderLoan().setScale(2, BigDecimal.ROUND_HALF_UP)));
|
|
|
- System.out.println("3333333333333333333333333333");
|
|
|
- System.out.println(payInfoDetailVO);
|
|
|
payOrderEntity.setNowPayAmount(payInfoDetailVO.getPayDetailAmount().setScale(2, BigDecimal.ROUND_HALF_UP).subtract(orderLoan));
|
|
|
- System.out.println(payOrderEntity.getNowPayAmount() + " 33333333333333333");
|
|
|
}
|
|
|
- System.out.println(payOrderEntity.getNowPayAmount() + " sjdhfuhsbdf getNowPayAmount");
|
|
|
//校验订单的支付金额是否异常
|
|
|
- Boolean flag = Boolean.TRUE;
|
|
|
+ Boolean flag;
|
|
|
//前端实付金额
|
|
|
BigDecimal realPayAmount = payOrderReceiveVO1.getNowRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
-
|
|
|
- // payInfoDetailVO.setPayDetailAmount(payOrderEntity.getNowPayAmount());
|
|
|
if (itemName.equals("水费缴纳")) {
|
|
|
flag = payOrderEntity.getNowPayAmount().compareTo(payableInfoWater.getRealPayAmount()) == 0 ? Boolean.TRUE : Boolean.FALSE;
|
|
|
} else {
|
|
|
- // orderLoan = orderLoan.add(parentOrderLone);
|
|
|
BigDecimal nowPayAllMount = BigDecimal.ZERO;
|
|
|
if (count > 1) {
|
|
|
- System.out.println(payInfoDetailVO);
|
|
|
if (payableInfo.getPayDetail() == null || payableInfo.getPayDetail().equals("")) {
|
|
|
- System.out.println("13331313131331");
|
|
|
- System.out.println(payInfoDetailVO.getNotPayDetailAmount());
|
|
|
- System.out.println(payOrderEntity.getNowPayAmount());
|
|
|
nowPayAllMount = nowPayAllMount.add(payInfoDetailVO.getNotPayDetailAmount()).add(payOrderEntity.getNowPayAmount());
|
|
|
|
|
|
} else {
|
|
|
- System.out.println("4444444444444444444444");
|
|
|
-
|
|
|
-// nowPayAllMount = nowPayAllMount.add(payInfoDetailVO.getNotPayDetailAmount()).add(payOrderEntity.getNowPayAmount().add(orderLoan));
|
|
|
- // nowPayAllMount = nowPayAllMount.add(payInfoDetailVO.getNotPayDetailAmount()).add(payOrderEntity.getNowPayAmount().add(orderLoan));
|
|
|
- //nowPayAllMount = nowPayAllMount.add(payInfoDetailVO.getNotPayDetailAmount()).add(payOrderEntity.getNowPayAmount().add(orderLoan));
|
|
|
-
|
|
|
-// if (payableInfo.getPayDetail() == null || payableInfo.getPayDetail().equals("")) {
|
|
|
-// System.out.println("1");
|
|
|
-// nowPayAllMount = nowPayAllMount.add(payInfoDetailVO.getNotPayDetailAmount()).add(payOrderEntity.getNowPayAmount().add(orderLoan));
|
|
|
-//
|
|
|
-// }else {
|
|
|
- System.out.println("211111111111111111100000");
|
|
|
- System.out.println(payInfoDetailVO);
|
|
|
- System.out.println(payInfoDetailVO.getNotPayDetailAmount());
|
|
|
- System.out.println(payOrderEntity.getNowPayAmount());
|
|
|
- System.out.println(parentOrderLone);
|
|
|
nowPayAllMount = nowPayAllMount.add(payInfoDetailVO.getNotPayDetailAmount()).add(payOrderEntity.getNowPayAmount()).add(orderLoan);//.subtract(parentOrderLone)
|
|
|
-
|
|
|
-// }
|
|
|
- System.out.println(nowPayAllMount);
|
|
|
}
|
|
|
- // nowPayAllMount = nowPayAllMount.add(payOrderEntity.getNowPayAmount().add(parentNowPayDetailAmount).add(orderLoan));
|
|
|
-
|
|
|
} else {
|
|
|
- System.out.println("555555555555555555555");
|
|
|
nowPayAllMount = nowPayAllMount.add(payInfoDetailVO.getNotPayDetailAmount()).add(payOrderEntity.getNowPayAmount().add(parentNowPayDetailAmount));
|
|
|
}
|
|
|
- System.out.println(orderLoan + " 666666666666666");
|
|
|
- // BigDecimal realAmount = (payableInfo.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP)).subtract(orderLoan);
|
|
|
- BigDecimal realAmount = BigDecimal.ZERO;
|
|
|
+ BigDecimal realAmount;
|
|
|
if (payableInfo.getPayDetail() == null || payableInfo.getPayDetail().equals("")) {
|
|
|
realAmount = (payableInfo.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP)).subtract(orderLoan);
|
|
|
|
|
|
} else {
|
|
|
if (count > 1) {
|
|
|
- System.out.println(count + " count-----------------------2222222222");
|
|
|
realAmount = (payableInfo.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP));
|
|
|
} else {
|
|
|
- System.out.println(count + " count-----------------------11111111111111111");
|
|
|
-
|
|
|
realAmount = (payableInfo.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP)).subtract(orderLoan);
|
|
|
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
- //BigDecimal realAmount = (payableInfo.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP));
|
|
|
-
|
|
|
-
|
|
|
flag = nowPayAllMount.compareTo(realAmount) == 0 ? Boolean.TRUE : Boolean.FALSE;
|
|
|
- System.out.println(flag + "=====1=====" + nowPayAllMount + "------nowPayAllMount------realAmount------" + realAmount);
|
|
|
}
|
|
|
|
|
|
if (Double.parseDouble(String.valueOf(payOrderEntity.getNowPayAmount())) < 0.00) {
|
|
|
flag = Boolean.FALSE;
|
|
|
- System.out.println(flag + "=====2=====" + payOrderEntity.getNowPayAmount());
|
|
|
|
|
|
}
|
|
|
- System.out.println(payableInfo);
|
|
|
if (!(realPayAmount.compareTo(payOrderEntity.getNowPayAmount()) == 0)) {
|
|
|
flag = Boolean.FALSE;
|
|
|
- System.out.println(flag + "--------------" + realPayAmount + "===realPayAmount==3== payOrderEntity.getNowPayAmount===" + payOrderEntity.getNowPayAmount());
|
|
|
}
|
|
|
|
|
|
//如果在首页已经缴完本订单的部分项目,则将本订单删除,前往首页缴费
|
|
|
@@ -820,6 +732,20 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 根据订单号查询订单
|
|
|
+ *
|
|
|
+ * @param orderNo
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public PayOrderEntity getByOrderNoDelete(String orderNo) {
|
|
|
+ QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
|
|
|
+ wrapper.eq("order_no", orderNo);
|
|
|
+ PayOrderEntity payOrderEntity = this.getOne(wrapper);
|
|
|
+ return payOrderEntity;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* 查询订单状态
|
|
|
*
|
|
|
* @param cardNumber 支付者标识
|
|
|
@@ -839,6 +765,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
@Override
|
|
|
public OrderStatusVO queryOrderStatus(PayOrderEntity payOrder) {
|
|
|
String orderNo = payOrder.getOrderNo();
|
|
|
+
|
|
|
// 订单未支付状态,先查询一下银行订单状态
|
|
|
if (PayStatus.NON_PAY.getCode().equalsIgnoreCase(payOrder.getStatus())) {
|
|
|
try {
|
|
|
@@ -1032,7 +959,6 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
public void downloadResult(HttpServletResponse response, PayOrderQueryTO queryTO, List<String> downIDs) throws IOException {
|
|
|
|
|
|
QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
|
|
|
-
|
|
|
commonWrapper(wrapper, queryTO);
|
|
|
if (downIDs.size() > 0) {
|
|
|
wrapper.in("id", downIDs);
|
|
|
@@ -1047,23 +973,59 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
wrapper.eq(StringUtils.hasText(queryTO.getBankName()), "pay_bank", queryTO.getBankName());
|
|
|
wrapper.orderByDesc("finish_time").orderByDesc("create_time").orderByAsc("pay_for_identify");
|
|
|
List<PayOrderEntity> parOrder = this.list(wrapper);
|
|
|
- String fileName = "";
|
|
|
- if (queryTO.getPayStatus().equals("1")) {
|
|
|
- fileName = URLEncoder.encode("未缴费学生名单" + new Date().getTime(), "UTF-8");
|
|
|
- } else {
|
|
|
- fileName = URLEncoder.encode("已缴费学生名单" + new Date().getTime(), "UTF-8");
|
|
|
- }
|
|
|
- response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
|
|
|
- response.setCharacterEncoding("utf-8");
|
|
|
- response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
|
|
|
- if (queryTO.getPayStatus().equals("1")) {
|
|
|
- EasyExcel.write(response.getOutputStream(), PayOrderEntity.class).sheet("未缴费学生名单").doWrite(parOrder);
|
|
|
- } else {
|
|
|
- EasyExcel.write(response.getOutputStream(), PayOrderEntity.class).sheet("已缴费学生名单").doWrite(parOrder);
|
|
|
+ List<PayOrderStatyTO> statyList = new ArrayList<>();
|
|
|
+ List<PayOrderWaterTO> waterList = new ArrayList<>();
|
|
|
+ List<CommentItemTO> commentItemList = new ArrayList<>();
|
|
|
+ String itemName = "";
|
|
|
+ if (parOrder.size() > 0) {
|
|
|
+ itemName = parOrder.get(0).getPayItem();
|
|
|
+ parOrder.forEach(order -> {
|
|
|
+ if ("学杂费".equals(order.getPayItem())) {
|
|
|
+ PayOrderStatyTO payOrderStatyTO = new PayOrderStatyTO();
|
|
|
+ BeanUtils.copyProperties(order, payOrderStatyTO);
|
|
|
+ statyList.add(payOrderStatyTO);
|
|
|
+ }else if ("水费缴纳".equals(order.getPayItem())) {
|
|
|
+ PayOrderWaterTO payOrderWaterTO = new PayOrderWaterTO();
|
|
|
+ BeanUtils.copyProperties(order, payOrderWaterTO);
|
|
|
+ waterList.add(payOrderWaterTO);
|
|
|
+ }else {
|
|
|
+ CommentItemTO commentItemTO = new CommentItemTO();
|
|
|
+ BeanUtils.copyProperties(order, commentItemTO);
|
|
|
+ commentItemList.add(commentItemTO);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ String fileName = "";
|
|
|
+ if (queryTO.getPayStatus().equals("1")) {
|
|
|
+ fileName = URLEncoder.encode("支付失败名单" + new Date().getTime(), "UTF-8");
|
|
|
+ } else {
|
|
|
+ fileName = URLEncoder.encode("支付成功名单" + new Date().getTime(), "UTF-8");
|
|
|
+ }
|
|
|
+ response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
|
|
|
+ response.setCharacterEncoding("utf-8");
|
|
|
+ response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
|
|
|
+ if (queryTO.getPayStatus().equals("1")) {
|
|
|
+ if ("学杂费".equals(itemName)) {
|
|
|
+ EasyExcel.write(response.getOutputStream(), PayOrderStatyTO.class).sheet("支付失败名单").doWrite(statyList);
|
|
|
+ }else if ("水费缴纳".equals(itemName)) {
|
|
|
+ EasyExcel.write(response.getOutputStream(), PayOrderWaterTO.class).sheet("支付失败名单").doWrite(waterList);
|
|
|
+ }else {
|
|
|
+ EasyExcel.write(response.getOutputStream(), CommentItemTO.class).sheet("支付失败名单").doWrite(commentItemList);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if ("学杂费".equals(itemName)) {
|
|
|
+ EasyExcel.write(response.getOutputStream(), PayOrderStatyTO.class).sheet("支付成功名单").doWrite(statyList);
|
|
|
+ }else if ("水费缴纳".equals(itemName)) {
|
|
|
+ EasyExcel.write(response.getOutputStream(), PayOrderWaterTO.class).sheet("支付成功名单").doWrite(waterList);
|
|
|
+ }else {
|
|
|
+ EasyExcel.write(response.getOutputStream(), CommentItemTO.class).sheet("支付成功名单").doWrite(commentItemList);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|
|
|
+
|
|
|
@Override
|
|
|
public Integer queryCurrentPayedRecordNum(PayOrderQueryTO queryTO) {
|
|
|
QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
|
|
|
@@ -1132,7 +1094,6 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
|
|
|
QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
|
|
|
commonWrapper(wrapper, queryTO);
|
|
|
-
|
|
|
if (StringUtils.hasText(queryTO.getPayStatus())) {
|
|
|
if (queryTO.getPayStatus().endsWith("2")) {
|
|
|
wrapper.eq(StringUtils.hasText(queryTO.getPayYear()), "pay_year", queryTO.getPayYear())
|
|
|
@@ -1147,10 +1108,9 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
String count = String.valueOf(resultMap.get("count"));
|
|
|
BigDecimal realPayAmount = new BigDecimal(String.valueOf(resultMap.get("total"))).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
BigDecimal orderLoan = new BigDecimal(String.valueOf(resultMap.get("orderLoan"))).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
- System.out.println(orderLoan+"-------");
|
|
|
- return realPayAmount + "-" + count+"-"+orderLoan;
|
|
|
+ return realPayAmount + "-" + count + "-" + orderLoan;
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
return "0-0-0";
|
|
|
}
|
|
|
}
|