|
|
@@ -38,7 +38,6 @@ import java.io.IOException;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.net.URLEncoder;
|
|
|
import java.time.LocalDateTime;
|
|
|
-import java.time.LocalTime;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -68,7 +67,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
private PayItemDetailController payItemDetailController;
|
|
|
@Autowired
|
|
|
private PayableInfoController payableInfoController;
|
|
|
-// @Autowired
|
|
|
+ // @Autowired
|
|
|
// private PayDetailBankController payDetailBankController;
|
|
|
@Autowired
|
|
|
private BankDetailController bankDetailController;
|
|
|
@@ -85,6 +84,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
wrapper.eq("status", "1");
|
|
|
}
|
|
|
}
|
|
|
+ wrapper.eq(StringUtils.hasText(queryTO.getBankName()), "pay_bank", queryTO.getBankName());
|
|
|
|
|
|
|
|
|
commonWrapper(wrapper, queryTO);
|
|
|
@@ -191,7 +191,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
wrapper.eq("pay_item", itemName);
|
|
|
wrapper.eq(StringUtils.hasText(payYears), "pay_year", payYears);
|
|
|
wrapper.eq("dorm", dorm);
|
|
|
- wrapper.eq("status", PayStatus.ALREADY_PAY.getCode());
|
|
|
+ wrapper.eq("status", "2");
|
|
|
|
|
|
List<PayOrderEntity> payList = this.list(wrapper);
|
|
|
|
|
|
@@ -393,8 +393,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
OrderReceiveTO orderReceiveTO = orderReceiveTOS.get(m);
|
|
|
String cardNumber1 = orderReceiveTO.getCardNumber();
|
|
|
PayOrderReceiveVO payOrderReceiveVO1 = orderReceiveTO.getPayOrderReceiveVO();
|
|
|
- // System.out.println("00000000000000000000000000000000");
|
|
|
- // System.out.println(payOrderReceiveVO1 );
|
|
|
+ // 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("")) {
|
|
|
@@ -416,11 +415,27 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
// 判断水费是否缴纳
|
|
|
boolean alreadyPay = isAlreadyPayWater(dorm, itemName, payYear);
|
|
|
if (alreadyPay) {
|
|
|
- throw new RRException(BizCodeEnume.DATA_IS_EXIST, "宿舍【" + dorm + "】已缴费,请勿重复缴费");
|
|
|
+ QueryWrapper<PayableInfoWaterEntity> wrapper = new QueryWrapper<>();
|
|
|
+ wrapper.eq("dorm", dorm)
|
|
|
+ .eq("pay_month", payYear)
|
|
|
+ .eq("payment_item", itemName)
|
|
|
+ .eq("pay_item_type", "1");
|
|
|
+ payableInfoWaterService.remove(wrapper);
|
|
|
+ throw new RRException(BizCodeEnume.DORM_EXIST, "宿舍【" + dorm + " " + payYear + "】已缴费,请勿重复缴费");
|
|
|
+
|
|
|
}
|
|
|
} else {
|
|
|
// 判断除水费外其他费用是否缴纳
|
|
|
boolean alreadyPay = isAlreadyPay(studentNo, itemName, payYear, payOrderReceiveVO1.getNotPaySize(), payOrderReceiveVO1.getPayMethod(), payDetial);
|
|
|
+ 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);
|
|
|
+ throw new RRException(BizCodeEnume.ORDER_IS_PAY, "该订单已完成缴费,请勿重复缴费");
|
|
|
+ }
|
|
|
if (alreadyPay) {
|
|
|
throw new RRException(BizCodeEnume.DATA_IS_EXIST, "学号【" + studentNo + "】已缴费,请勿重复缴费");
|
|
|
}
|
|
|
@@ -433,7 +448,6 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
|
|
|
if (itemName.equals("水费缴纳")) {
|
|
|
payableInfoWater = payableInfoWaterService.getByStudentNo(studentNo, itemName, payYear);
|
|
|
- System.out.println(payableInfoWater);
|
|
|
// 获取学生入学年份
|
|
|
grade = payableInfoWater.getGrade();
|
|
|
} else {
|
|
|
@@ -487,14 +501,12 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
|
|
|
// 订单已经存在超过30分钟没有支付,直接删除该订单 农商订单直接删掉
|
|
|
if (payOrderEntity != null && PayStatus.NON_PAY.getCode().equals(payOrderEntity.getStatus())) {
|
|
|
-// if (Math.abs(ChronoUnit.MINUTES.between(LocalDateTime.now(), payOrderEntity.getCreateTime())) > 30
|
|
|
-// || !payOrderEntity.getPayMethod().equals("") ) {
|
|
|
+
|
|
|
if (!(payOrderEntity.getPayMethod().equals(""))) {
|
|
|
// 再次查询订单状态
|
|
|
OrderStatusVO orderStatusVO = queryOrderStatus(payOrderEntity);
|
|
|
|
|
|
if (PayStatus.NON_PAY.getCode().equals(orderStatusVO.getStatus())) {
|
|
|
- System.out.println((payOrderEntity + "需要二次删除的农商订单"));
|
|
|
this.removeById(payOrderEntity.getId());
|
|
|
payOrderEntity = null;
|
|
|
}
|
|
|
@@ -512,7 +524,9 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
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());
|
|
|
@@ -543,6 +557,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
}
|
|
|
payOrderEntity.setPayBank(bankCard);
|
|
|
payOrderEntity.setPayOrderLoan(orderLoan);
|
|
|
+ // System.out.println(payOrderEntity.getPayOrderLoan()+" 贷款---------------------------------------");
|
|
|
|
|
|
|
|
|
// 支付金额、被支付用户信息
|
|
|
@@ -557,6 +572,8 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
payOrderEntity.setSerialNumber(payableInfoWater.getSerialNumber());
|
|
|
payOrderEntity.setNowPayAmount(payableInfoWater.getRealPayAmount());
|
|
|
} else {
|
|
|
+
|
|
|
+
|
|
|
payOrderEntity.setRealPayAmount(payableInfo.getRealPayAmount());
|
|
|
// payOrderEntity.setNowPayAmount(payInfoDetailVO.getPayDetailAmount());
|
|
|
payOrderEntity.setPayinfoId(payableInfo.getId());
|
|
|
@@ -573,42 +590,57 @@ 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("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");
|
|
|
+ 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);
|
|
|
+ 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 {
|
|
|
+ } 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);
|
|
|
+ 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(parentOrderLone)
|
|
|
+ .subtract(orderLoan)
|
|
|
//.subtract(payInfoDetailVO.getPayDetailAmount())
|
|
|
);
|
|
|
- // System.out.println( payOrderEntity.getNowPayAmount()+"1111111111111111111111111111111");
|
|
|
+ System.out.println(payOrderEntity.getNowPayAmount() + "1111111111111111111111111111111");
|
|
|
+
|
|
|
+ } else {
|
|
|
+ System.out.println("222222222222222222222");
|
|
|
|
|
|
- }else {
|
|
|
- // System.out.println("222222222222222222222");
|
|
|
- // System.out.println(payInfoDetailVO);
|
|
|
- if ( payOrderReceiveVO1.getItemName().equals("学杂费") && !(payOrderReceiveVO1.getPayDetail().contains("/"))) {
|
|
|
+
|
|
|
+ if (payOrderReceiveVO1.getItemName().equals("学杂费") && !(payOrderReceiveVO1.getPayDetail().contains("/"))) {
|
|
|
payOrderEntity.setNowPayAmount(
|
|
|
payOrderEntity.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP)
|
|
|
.subtract(parentNowPayDetailAmount).setScale(2, BigDecimal.ROUND_HALF_UP)
|
|
|
@@ -618,31 +650,34 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
|
|
|
//.subtract(payInfoDetailVO.getPayDetailAmount())
|
|
|
);
|
|
|
- // System.out.println("+++++++++++++++++++++++++++ "+payInfoDetailVO.getNotPayDetailAmount().subtract(parentNowPayDetailAmount).subtract(parentOrderLone));
|
|
|
- }else {
|
|
|
+ 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(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() + " 222222222222222222222");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- // System.out.println( payOrderEntity.getNowPayAmount()+"hyuwsegufgwf");
|
|
|
+ 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().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() + " 33333333333333333");
|
|
|
}
|
|
|
- // System.out.println(payOrderEntity.getNowPayAmount()+" sjdhfuhsbdf getNowPayAmount");
|
|
|
+ System.out.println(payOrderEntity.getNowPayAmount() + " sjdhfuhsbdf getNowPayAmount");
|
|
|
//校验订单的支付金额是否异常
|
|
|
Boolean flag = Boolean.TRUE;
|
|
|
//前端实付金额
|
|
|
@@ -652,51 +687,104 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
if (itemName.equals("水费缴纳")) {
|
|
|
flag = payOrderEntity.getNowPayAmount().compareTo(payableInfoWater.getRealPayAmount()) == 0 ? Boolean.TRUE : Boolean.FALSE;
|
|
|
} else {
|
|
|
- orderLoan = orderLoan.add(parentOrderLone);
|
|
|
+ // orderLoan = orderLoan.add(parentOrderLone);
|
|
|
BigDecimal nowPayAllMount = BigDecimal.ZERO;
|
|
|
if (count > 1) {
|
|
|
- // System.out.println(payInfoDetailVO);
|
|
|
+ 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));
|
|
|
-
|
|
|
+ } 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));
|
|
|
+ // 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;
|
|
|
+ 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);
|
|
|
|
|
|
- }else {
|
|
|
- // System.out.println("555555555555555555555");
|
|
|
- nowPayAllMount = nowPayAllMount.add(payInfoDetailVO.getNotPayDetailAmount()).add(payOrderEntity.getNowPayAmount().add(parentNowPayDetailAmount).add(orderLoan));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- BigDecimal realAmount = (payableInfo.getRealPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP));
|
|
|
+
|
|
|
+ //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);
|
|
|
+ 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(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());
|
|
|
+ System.out.println(flag + "--------------" + realPayAmount + "===realPayAmount==3== payOrderEntity.getNowPayAmount===" + payOrderEntity.getNowPayAmount());
|
|
|
+ }
|
|
|
|
|
|
+ //如果在首页已经缴完本订单的部分项目,则将本订单删除,前往首页缴费
|
|
|
+ if (payableInfo != null && payableInfo.getNotPayDetail() != null && payOrderReceiveVO1.getPayDetail() != null) {
|
|
|
+ String[] splitNotPayDetail = payableInfo.getNotPayDetail().split("/");
|
|
|
+ String[] splitRealPayDetail = payOrderReceiveVO1.getPayDetail().split("/");
|
|
|
+ if (splitRealPayDetail.length > splitNotPayDetail.length) {
|
|
|
+ throw new RRException(BizCodeEnume.ORDER_IS_PAY);
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
if (!flag) {
|
|
|
- throw new RRException(BizCodeEnume.PAY_AMOUNT_ERROR, "支付金额异常。");
|
|
|
+ throw new RRException(BizCodeEnume.PAY_AMOUNT_ERROR, "支付金额异常");
|
|
|
}
|
|
|
+ payOrderEntity.setPayerCardNumber(payOrderReceiveVO1.getPayerCardNumber());
|
|
|
+ payOrderEntity.setPayerName(payOrderReceiveVO1.getPayerName());
|
|
|
payOrderEntity.setOrderNotice(orderNotice);
|
|
|
/* 首次订单支付成功之后如果还有未支付的 状态为 3 无未支付的状态为 2
|
|
|
当所有未支付的明细完成缴费之后 首单状态变为 2 状态:支付成功且完成所有缴费
|
|
|
|
|
|
检测该订单是否异常,订单异常自动发送 订单异常微校通知
|
|
|
- wechatController.sendException(itemName);
|
|
|
*/
|
|
|
+ //设置订单下载TXT类型为未下载
|
|
|
+ payOrderEntity.setTxtType("0");
|
|
|
this.save(payOrderEntity);
|
|
|
|
|
|
|
|
|
@@ -852,6 +940,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
wrapper.eq("status", "1");
|
|
|
}
|
|
|
}
|
|
|
+ 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);
|
|
|
@@ -867,7 +956,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
String[] splitStr = payOrderDetail.split("/");
|
|
|
for (int j = 0; j < splitStr.length; j++) {
|
|
|
String[] split = splitStr[j].split(":");
|
|
|
- outPutStr += payOrderEntity.getPayForIdentify() + "\t" + payOrderEntity.getStudentName() + "\t" +
|
|
|
+ outPutStr += payOrderEntity.getSerialNumber() + "\t" + payOrderEntity.getStudentName() + "\t" +
|
|
|
year + "\t" + split[0] + "\t" + "\"" + split[1] + "\"" + "\t" + "\r";
|
|
|
}
|
|
|
}
|
|
|
@@ -887,17 +976,22 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
QueryWrapper<PayOrderEntity> wrapper = new QueryWrapper<>();
|
|
|
|
|
|
if (type.equals("quarter")) {
|
|
|
- wrapper.eq("status", "2")
|
|
|
- .le("finish_time", LocalDateTime.now())
|
|
|
- .ge("finish_time", LocalDateTime.now().plusMinutes(-15L));
|
|
|
- }else if ( type.equals("today") ){
|
|
|
-
|
|
|
- wrapper.eq("status", "2")
|
|
|
- .le("finish_time", LocalDateTime.of(LocalDateTime.now().toLocalDate(), LocalTime.MAX))
|
|
|
- .ge("finish_time", LocalDateTime.of(LocalDateTime.now().toLocalDate(), LocalTime.MIN));
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ wrapper.eq("pay_item", "学杂费");
|
|
|
+ wrapper.eq("status", "2");
|
|
|
+ wrapper.eq("txt_type", "0");
|
|
|
+
|
|
|
+// QueryWrapper<PayOrderEntity> orderWapper = new QueryWrapper<>();
|
|
|
+// orderWapper.eq("pay_item", "学杂费");
|
|
|
+// orderWapper.eq("status", "2");
|
|
|
+// orderWapper.eq("txt_type", "1");
|
|
|
+// payOrderService.update(orderWapper);
|
|
|
+// .le("finish_time", LocalDateTime.now())
|
|
|
+// .ge("finish_time", LocalDateTime.now().plusMinutes(-15L));
|
|
|
+ } else if (type.equals("today")) {
|
|
|
+
|
|
|
+ wrapper.eq("pay_item", "学杂费");
|
|
|
+ wrapper.eq("status", "2");
|
|
|
+ wrapper.eq("txt_type", "0");
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -910,10 +1004,12 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
jsonArray.addAll(parOrder);
|
|
|
for (int i = 0; i < jsonArray.size(); i++) {
|
|
|
PayOrderEntity payOrderEntity = (PayOrderEntity) jsonArray.get(i);
|
|
|
-
|
|
|
+ payOrderEntity.setTxtType("1");
|
|
|
+ payOrderService.updateById(payOrderEntity);
|
|
|
String year = payOrderEntity.getPayYear().split("-")[0];
|
|
|
String payOrderDetail = payItemDetailController.queryAllItemDetail(payOrderEntity.getPayDetail());
|
|
|
String[] splitStr = payOrderDetail.split("/");
|
|
|
+
|
|
|
for (int j = 0; j < splitStr.length; j++) {
|
|
|
String[] split = splitStr[j].split(":");
|
|
|
outPutStr += payOrderEntity.getSerialNumber() + "\t" + payOrderEntity.getStudentName() + "\t" +
|
|
|
@@ -948,7 +1044,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
wrapper.eq("status", "1");
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ 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 = "";
|
|
|
@@ -1042,15 +1138,20 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
wrapper.eq(StringUtils.hasText(queryTO.getPayYear()), "pay_year", queryTO.getPayYear())
|
|
|
.eq(StringUtils.hasText(queryTO.getItemName()), "pay_item", queryTO.getItemName())
|
|
|
.eq(StringUtils.hasText(queryTO.getPayStatus()), "status", queryTO.getPayStatus())
|
|
|
- .select("ifnull(sum(now_pay_amount), 0) as total,count(id) as count");
|
|
|
+ .eq(StringUtils.hasText(queryTO.getBankName()), "pay_bank", queryTO.getBankName())
|
|
|
+ .select("ifnull(sum(now_pay_amount), 0) as total,ifnull(sum(pay_order_loan), 0) as orderLoan,count(id) as count");
|
|
|
List<PayOrderEntity> list = this.payOrderService.list(wrapper);
|
|
|
|
|
|
if (list.size() > 0) {
|
|
|
Map<String, Object> resultMap = this.getMap(wrapper);
|
|
|
String count = String.valueOf(resultMap.get("count"));
|
|
|
BigDecimal realPayAmount = new BigDecimal(String.valueOf(resultMap.get("total"))).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
- return realPayAmount + "-" + count;
|
|
|
+ BigDecimal orderLoan = new BigDecimal(String.valueOf(resultMap.get("orderLoan"))).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
+ System.out.println(orderLoan+"-------");
|
|
|
+ return realPayAmount + "-" + count+"-"+orderLoan;
|
|
|
}
|
|
|
+ }else {
|
|
|
+ return "0-0-0";
|
|
|
}
|
|
|
}
|
|
|
return "0-0";
|
|
|
@@ -1063,6 +1164,7 @@ public class PayOrderServiceImpl extends ServiceImpl<PayOrderDao, PayOrderEntity
|
|
|
.eq("status", status)
|
|
|
.eq(StringUtils.hasText(itemName), "pay_item", itemName)
|
|
|
.eq(StringUtils.hasText(payYear), "pay_year", payYear);
|
|
|
+ wrapper.orderByDesc("create_time").orderByDesc("finish_time");
|
|
|
|
|
|
|
|
|
IPage<PayOrderEntity> page = this.page(
|