|
@@ -120,23 +120,29 @@ public class TOrderController {
|
|
|
//没有优惠码
|
|
|
}else {
|
|
|
//有优惠码,需要对优惠码进行验证
|
|
|
- IPage<TPromoCode> pagePromoCode = R.getDataIfSuccess(szwlFeign.getTPromoCode(code));
|
|
|
- List<TPromoCode> codeList = pagePromoCode.getRecords();
|
|
|
- if (codeList.size() == 0) {
|
|
|
+// IPage<TPromoCode> pagePromoCode = R.getDataIfSuccess(szwlFeign.getTPromoCode(code));
|
|
|
+ TPromoCode tPromoCode = R.getDataIfSuccess(szwlFeign.selectTPromoCode(code, equipment.getAdminId().toString()));
|
|
|
+ promoCode = tPromoCode;
|
|
|
+ if (tPromoCode == null||tPromoCode.getId()==null) {
|
|
|
//不存在
|
|
|
return JsonMessage.success("1");
|
|
|
}
|
|
|
- for (TPromoCode cod : codeList) {
|
|
|
- if(!cod.getAdminId().equals("1")){
|
|
|
- String adminId = cod.getAdminId();
|
|
|
- String adminId1 = String.valueOf(equipment.getAdminId());
|
|
|
- if (adminId.equals(adminId1)) {
|
|
|
- promoCode = cod;
|
|
|
- }
|
|
|
- }else{
|
|
|
- promoCode = cod;
|
|
|
- }
|
|
|
- }
|
|
|
+// List<TPromoCode> codeList = pagePromoCode.getRecords();
|
|
|
+// if (codeList.size() == 0) {
|
|
|
+// //不存在
|
|
|
+// return JsonMessage.success("1");
|
|
|
+// }
|
|
|
+// for (TPromoCode cod : codeList) {
|
|
|
+// if(!cod.getAdminId().equals("1")){
|
|
|
+// String adminId = cod.getAdminId();
|
|
|
+// String adminId1 = String.valueOf(equipment.getAdminId());
|
|
|
+// if (adminId.equals(adminId1)) {
|
|
|
+// promoCode = cod;
|
|
|
+// }
|
|
|
+// }else{
|
|
|
+// promoCode = cod;
|
|
|
+// }
|
|
|
+// }
|
|
|
if (promoCode.getId() == null) {
|
|
|
//不存在
|
|
|
return JsonMessage.success("1");
|
|
@@ -520,23 +526,29 @@ public class TOrderController {
|
|
|
//没有优惠码
|
|
|
}else {
|
|
|
//有优惠码,需要对优惠码进行验证
|
|
|
- IPage<TPromoCode> pagePromoCode = R.getDataIfSuccess(szwlFeign.getTPromoCode(code));
|
|
|
- List<TPromoCode> codeList = pagePromoCode.getRecords();
|
|
|
- if (codeList.size() == 0) {
|
|
|
+ TPromoCode tPromoCode = R.getDataIfSuccess(szwlFeign.selectTPromoCode(code, equipment.getAdminId().toString()));
|
|
|
+ promoCode = tPromoCode;
|
|
|
+ if (tPromoCode == null||tPromoCode.getId()==null) {
|
|
|
//不存在
|
|
|
return JsonMessage.success("1");
|
|
|
}
|
|
|
- for (TPromoCode cod : codeList) {
|
|
|
- if(!cod.getAdminId().equals("1")){
|
|
|
- String adminId = cod.getAdminId();
|
|
|
- String adminId1 = String.valueOf(equipment.getAdminId());
|
|
|
- if (adminId.equals(adminId1)) {
|
|
|
- promoCode = cod;
|
|
|
- }
|
|
|
- }else{
|
|
|
- promoCode = cod;
|
|
|
- }
|
|
|
- }
|
|
|
+// IPage<TPromoCode> pagePromoCode = R.getDataIfSuccess(szwlFeign.getTPromoCode(code));
|
|
|
+// List<TPromoCode> codeList = pagePromoCode.getRecords();
|
|
|
+// if (codeList.size() == 0) {
|
|
|
+// //不存在
|
|
|
+// return JsonMessage.success("1");
|
|
|
+// }
|
|
|
+// for (TPromoCode cod : codeList) {
|
|
|
+// if(!cod.getAdminId().equals("1")){
|
|
|
+// String adminId = cod.getAdminId();
|
|
|
+// String adminId1 = String.valueOf(equipment.getAdminId());
|
|
|
+// if (adminId.equals(adminId1)) {
|
|
|
+// promoCode = cod;
|
|
|
+// }
|
|
|
+// }else{
|
|
|
+// promoCode = cod;
|
|
|
+// }
|
|
|
+// }
|
|
|
if (promoCode.getId() == null) {
|
|
|
//不存在
|
|
|
return JsonMessage.success("1");
|
|
@@ -919,23 +931,29 @@ public class TOrderController {
|
|
|
//没有优惠码
|
|
|
}else {
|
|
|
//有优惠码,需要对优惠码进行验证
|
|
|
- IPage<TPromoCode> pagePromoCode = R.getDataIfSuccess(szwlFeign.getTPromoCode(code));
|
|
|
- List<TPromoCode> codeList = pagePromoCode.getRecords();
|
|
|
- if (codeList.size() == 0) {
|
|
|
+ TPromoCode tPromoCode = R.getDataIfSuccess(szwlFeign.selectTPromoCode(code, equipment.getAdminId().toString()));
|
|
|
+ promoCode = tPromoCode;
|
|
|
+ if (tPromoCode == null||tPromoCode.getId()==null) {
|
|
|
//不存在
|
|
|
return JsonMessage.success("1");
|
|
|
}
|
|
|
- for (TPromoCode cod : codeList) {
|
|
|
- if(!cod.getAdminId().equals("1")){
|
|
|
- String adminId = cod.getAdminId();
|
|
|
- String adminId1 = String.valueOf(equipment.getAdminId());
|
|
|
- if (adminId.equals(adminId1)) {
|
|
|
- promoCode = cod;
|
|
|
- }
|
|
|
- }else{
|
|
|
- promoCode = cod;
|
|
|
- }
|
|
|
- }
|
|
|
+// IPage<TPromoCode> pagePromoCode = R.getDataIfSuccess(szwlFeign.getTPromoCode(code));
|
|
|
+// List<TPromoCode> codeList = pagePromoCode.getRecords();
|
|
|
+// if (codeList.size() == 0) {
|
|
|
+// //不存在
|
|
|
+// return JsonMessage.success("1");
|
|
|
+// }
|
|
|
+// for (TPromoCode cod : codeList) {
|
|
|
+// if(!cod.getAdminId().equals("1")){
|
|
|
+// String adminId = cod.getAdminId();
|
|
|
+// String adminId1 = String.valueOf(equipment.getAdminId());
|
|
|
+// if (adminId.equals(adminId1)) {
|
|
|
+// promoCode = cod;
|
|
|
+// }
|
|
|
+// }else{
|
|
|
+// promoCode = cod;
|
|
|
+// }
|
|
|
+// }
|
|
|
if (promoCode.getId() == null) {
|
|
|
//不存在
|
|
|
return JsonMessage.success("1");
|
|
@@ -1322,7 +1340,7 @@ public class TOrderController {
|
|
|
}
|
|
|
|
|
|
}
|
|
|
- @ApiOperation(value = "请求在线支付 二码合一")
|
|
|
+ @ApiOperation(value = "购物车 请求在线支付 二码合一")
|
|
|
@PostMapping("/carsPay")
|
|
|
public Object carsPay(String clientId, @RequestBody Map<String,String> productNameMap) {
|
|
|
// IPage<?> iPage = R.getDataIfSuccess(szwlFeign.testPay("1"));
|
|
@@ -1331,6 +1349,7 @@ public class TOrderController {
|
|
|
return JsonMessage.error("数据出错");
|
|
|
}
|
|
|
StringBuffer productName1 = new StringBuffer();
|
|
|
+ StringBuffer note = new StringBuffer();
|
|
|
StringBuffer productName = new StringBuffer();
|
|
|
TEquipment equipment = R.getDataIfSuccess(szwlFeign.findEquipmentByClientId(clientId));
|
|
|
if(equipment==null||equipment.getId()==null){
|
|
@@ -1352,24 +1371,31 @@ public class TOrderController {
|
|
|
if(value.size()>0){
|
|
|
for(String code:value){
|
|
|
if(!code.equals("0")){
|
|
|
- IPage<TPromoCode> pagePromoCode = R.getDataIfSuccess(szwlFeign.getTPromoCode(code));
|
|
|
- List<TPromoCode> codeList = pagePromoCode.getRecords();
|
|
|
TPromoCode promoCode = new TPromoCode();
|
|
|
- if (codeList.size() == 0) {
|
|
|
+ TPromoCode tPromoCode = R.getDataIfSuccess(szwlFeign.selectTPromoCode(code, equipment.getAdminId().toString()));
|
|
|
+ promoCode = tPromoCode;
|
|
|
+ if (tPromoCode == null||tPromoCode.getId()==null) {
|
|
|
//不存在
|
|
|
return JsonMessage.success("1");
|
|
|
}
|
|
|
- for (TPromoCode cod : codeList) {
|
|
|
- if(!cod.getAdminId().equals("1")){
|
|
|
- String adminId = cod.getAdminId();
|
|
|
- String adminId1 = String.valueOf(equipment.getAdminId());
|
|
|
- if (adminId.equals(adminId1)) {
|
|
|
- promoCode = cod;
|
|
|
- }
|
|
|
- }else{
|
|
|
- promoCode = cod;
|
|
|
- }
|
|
|
- }
|
|
|
+// IPage<TPromoCode> pagePromoCode = R.getDataIfSuccess(szwlFeign.getTPromoCode(code));
|
|
|
+// List<TPromoCode> codeList = pagePromoCode.getRecords();
|
|
|
+//
|
|
|
+// if (codeList.size() == 0) {
|
|
|
+// //不存在
|
|
|
+// return JsonMessage.success("1");
|
|
|
+// }
|
|
|
+// for (TPromoCode cod : codeList) {
|
|
|
+// if(!cod.getAdminId().equals("1")){
|
|
|
+// String adminId = cod.getAdminId();
|
|
|
+// String adminId1 = String.valueOf(equipment.getAdminId());
|
|
|
+// if (adminId.equals(adminId1)) {
|
|
|
+// promoCode = cod;
|
|
|
+// }
|
|
|
+// }else{
|
|
|
+// promoCode = cod;
|
|
|
+// }
|
|
|
+// }
|
|
|
Date lastUseDate = null;
|
|
|
if (promoCode != null) {
|
|
|
lastUseDate = promoCode.getLastUseDate();
|
|
@@ -1413,6 +1439,7 @@ public class TOrderController {
|
|
|
String productNamea = productNum[0];
|
|
|
String num = productNum[1];
|
|
|
productName.append(productNamea).append(num);
|
|
|
+ note.append(productNamea).append(num).append(":");
|
|
|
productName1.append(productNamea).append(num);
|
|
|
//确定价格,然后叠加R.getDataIfSuccess(szwlFeign.getProduct(String.valueOf(equipmentId), productName));
|
|
|
TProduct product = R.getDataIfSuccess(szwlFeign.getProduct(String.valueOf(equipment.getId()), productName.toString()));
|
|
@@ -1422,22 +1449,27 @@ public class TOrderController {
|
|
|
BigDecimal productPrice = product.getRmbPrice();
|
|
|
if(promoCodeList.size()>0){
|
|
|
//有优惠码
|
|
|
+ BigDecimal onePrice = new BigDecimal("0.00");
|
|
|
int i;
|
|
|
for( i = 0;i<promoCodeList.size();i++){
|
|
|
BigDecimal discount = BigDecimal.valueOf(promoCodeList.get(i).getDiscount()).setScale(2, RoundingMode.HALF_DOWN);
|
|
|
BigDecimal price1 = productPrice.multiply(discount).divide(new BigDecimal(10)).setScale(2, RoundingMode.HALF_DOWN);
|
|
|
price = price.add(price1);
|
|
|
+ onePrice = onePrice.add(price1);
|
|
|
}
|
|
|
if(i<Integer.valueOf(num)){
|
|
|
int a = Integer.valueOf(num)-i;
|
|
|
BigDecimal price2 = productPrice.multiply(new BigDecimal(a)).setScale(2, RoundingMode.HALF_DOWN);
|
|
|
price =price.add(price2);
|
|
|
+ onePrice = onePrice.add(price2);
|
|
|
}
|
|
|
+ note.append(onePrice).append(",");
|
|
|
}else {
|
|
|
//1,type=0,原始设定,没有第二件半价
|
|
|
int a = Integer.valueOf(num);
|
|
|
BigDecimal price2 = productPrice.multiply(new BigDecimal(a)).setScale(2, RoundingMode.HALF_DOWN);
|
|
|
price =price.add(price2);
|
|
|
+ note.append(price2).append(",");
|
|
|
}
|
|
|
}
|
|
|
}else {
|
|
@@ -1454,21 +1486,25 @@ public class TOrderController {
|
|
|
BigDecimal productPrice = product.getRmbPrice();
|
|
|
productName.append(productNamea).append(num);
|
|
|
productName1.append(productNamea).append(num);
|
|
|
+ note.append(productNamea).append(num).append(":");
|
|
|
switch (num) {
|
|
|
case "1":
|
|
|
//1个 0个半价
|
|
|
price =price.add(productPrice);
|
|
|
+ note.append(price).append(",");
|
|
|
break;
|
|
|
case "2":
|
|
|
//2个 1个半价
|
|
|
price =price.add(productPrice);
|
|
|
price =price.add(productPrice.multiply(new BigDecimal(5)).divide(new BigDecimal(10)).setScale(2, RoundingMode.HALF_DOWN));
|
|
|
+ note.append(price).append(",");
|
|
|
break;
|
|
|
case "3":
|
|
|
//3个 1个半价
|
|
|
price =price.add(productPrice);
|
|
|
price =price.add(productPrice.multiply(new BigDecimal(5)).divide(new BigDecimal(10)).setScale(2, RoundingMode.HALF_DOWN));
|
|
|
price =price.add(productPrice);
|
|
|
+ note.append(price).append(",");
|
|
|
break;
|
|
|
case "4":
|
|
|
//4个 2个半价
|
|
@@ -1476,6 +1512,7 @@ public class TOrderController {
|
|
|
price =price.add(productPrice.multiply(new BigDecimal(5)).divide(new BigDecimal(10)).setScale(2, RoundingMode.HALF_DOWN));
|
|
|
price =price.add(productPrice);
|
|
|
price =price.add(productPrice.multiply(new BigDecimal(5)).divide(new BigDecimal(10)).setScale(2, RoundingMode.HALF_DOWN));
|
|
|
+ note.append(price).append(",");
|
|
|
break;
|
|
|
case "5":
|
|
|
//5个 2个半价
|
|
@@ -1484,6 +1521,7 @@ public class TOrderController {
|
|
|
price =price.add(productPrice);
|
|
|
price =price.add(productPrice.multiply(new BigDecimal(5)).divide(new BigDecimal(10)).setScale(2, RoundingMode.HALF_DOWN));
|
|
|
price =price.add(productPrice);
|
|
|
+ note.append(price).append(",");
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
@@ -1741,6 +1779,7 @@ public class TOrderController {
|
|
|
if(StringUtils.isNotEmpty(payPlatform)&&payPlatform.equals("1")){
|
|
|
order.setIsSettlement("0");
|
|
|
}
|
|
|
+ order.setNote(note.toString());
|
|
|
orderService.save(order);
|
|
|
TOrder order2 = new TOrder();
|
|
|
order2.setCreateDate(new Date());
|
|
@@ -1782,6 +1821,7 @@ public class TOrderController {
|
|
|
if(StringUtils.isNotEmpty(payPlatform)&&payPlatform.equals("1")){
|
|
|
order2.setIsSettlement("0");
|
|
|
}
|
|
|
+ order2.setNote(note.toString());
|
|
|
orderService.save(order2);
|
|
|
Iterator<Object> iterator = altInfo.iterator();
|
|
|
while (iterator.hasNext()) {
|
|
@@ -1871,7 +1911,7 @@ public class TOrderController {
|
|
|
String sn = request.getParameter("r2_OrderNo");
|
|
|
LambdaQueryWrapper<TOrder> query = Wrappers.lambdaQuery();
|
|
|
query.eq(TOrder::getSn,sn);
|
|
|
- List<TOrder> list = orderService.list();
|
|
|
+ List<TOrder> list = orderService.list(query);
|
|
|
TOrder order = new TOrder();
|
|
|
if(list.size()>0){
|
|
|
order = list.get(0);
|
|
@@ -1913,22 +1953,10 @@ public class TOrderController {
|
|
|
String gtClientId = byClientId.getGtClientId();
|
|
|
equipmentService.sentMessage(byClientId.getClientId(), PushUtils.buildJson("pay_success", kindData.toString()).toString());
|
|
|
// PushUtils.push(gtClientId, "支付成功", "您的订单支付成功", PushUtils.buildJson("pay_success", kindData.toString()).toString());
|
|
|
- order.setNote(gtClientId + "已推送");
|
|
|
-// TOrder order1 = order;
|
|
|
-// order1.setModifyDate(new Date());
|
|
|
-// String data = com.alibaba.fastjson.JSON.toJSONString(order1);
|
|
|
+// order.setNote(gtClientId + "已推送");
|
|
|
try {
|
|
|
-// String result = HttpClientUtils.sentData(HttpClientUtils.Order_Url, data);
|
|
|
-// if(!result.equals("200")){
|
|
|
-// result = HttpClientUtils.sentData(HttpClientUtils.Order_Url, data);
|
|
|
-// if(!result.equals("200")){
|
|
|
-// result = HttpClientUtils.sentData(HttpClientUtils.Order_Url, data);
|
|
|
-// if(!result.equals("200")){
|
|
|
-// order.setEs("1");
|
|
|
-// }
|
|
|
-// }
|
|
|
-// }
|
|
|
esTOrderService.insertData(order);
|
|
|
+ orderService.updateById(order);
|
|
|
}catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
@@ -2284,6 +2312,19 @@ public class TOrderController {
|
|
|
|
|
|
// 已退款
|
|
|
order.setStatus(3);
|
|
|
+ BigDecimal r4_refundAmount = new BigDecimal(request.getParameter("r4_RefundAmount_str"));
|
|
|
+ BigDecimal price = order.getPrice();
|
|
|
+ if(r4_refundAmount.compareTo(price)==-1){
|
|
|
+ BigDecimal refundAmount = order.getRefundAmount();
|
|
|
+ if(refundAmount!=null){
|
|
|
+ order.setRefundAmount(refundAmount.add(r4_refundAmount));
|
|
|
+ }else {
|
|
|
+ // 退款金额
|
|
|
+ order.setRefundAmount(new BigDecimal(request.getParameter("r4_RefundAmount_str")));
|
|
|
+ }
|
|
|
+ order.setStatus(1);
|
|
|
+ order.setPrice(price.divide(r4_refundAmount));
|
|
|
+ }
|
|
|
// 退款金额
|
|
|
order.setRefundAmount(new BigDecimal(request.getParameter("r4_RefundAmount_str")));
|
|
|
// 支付平台产生的退款流水号
|