记得上下班打卡 | git大法好,push需谨慎

Commit bef33278 authored by jiangxiulong's avatar jiangxiulong

取消下单

parent ae146080
...@@ -9,6 +9,9 @@ package com.liquidnet.service.kylin.constant; ...@@ -9,6 +9,9 @@ package com.liquidnet.service.kylin.constant;
* @since 2021-05-25 6:38 下午 * @since 2021-05-25 6:38 下午
*/ */
public class KylinTableStatusConst { public class KylinTableStatusConst {
/**
* 退款
*/
// 批量退款 1处理完成 11 处理中 // 批量退款 1处理完成 11 处理中
public static final Integer STATUS_APPLY = 1; // 1申请退款 public static final Integer STATUS_APPLY = 1; // 1申请退款
public static final Integer STATUS_APPLY11 = 11; public static final Integer STATUS_APPLY11 = 11;
...@@ -72,4 +75,10 @@ public class KylinTableStatusConst { ...@@ -72,4 +75,10 @@ public class KylinTableStatusConst {
// 出票状态 // 出票状态
public static final Integer ENTITIES_STATUS0 = 0; // 未出票 public static final Integer ENTITIES_STATUS0 = 0; // 未出票
public static final Integer ENTITIES_STATUS1 = 1; // 已出票 public static final Integer ENTITIES_STATUS1 = 1; // 已出票
/**
* 快递
*/
public static final Integer ORDER_EXPRESS_STATUS1 = 1; // 申请
public static final Integer ORDER_EXPRESS_STATUS2 = 2; // 取消
} }
...@@ -95,4 +95,23 @@ public class PerformancesExpressController extends BaseController { ...@@ -95,4 +95,23 @@ public class PerformancesExpressController extends BaseController {
} }
} }
/**
* 取消
*/
@RequiresPermissions("kylin:performancesExpress:cancelOrder")
@PostMapping("/cancelOrder")
@ResponseBody
public AjaxResult cancelOrder(PerformanceExpressSearchAdminParam performanceExpressSearchAdminParam) {
ResponseDto res = performancesExpressServiceImpl.cancelOrder(performanceExpressSearchAdminParam);
try {
if (res.isSuccess()) {
return success();
} else {
return error(res.getMessage());
}
} catch (Exception e) {
return error(e.getMessage());
}
}
} }
...@@ -69,6 +69,7 @@ ...@@ -69,6 +69,7 @@
<th:block th:include="include :: footer"/> <th:block th:include="include :: footer"/>
<script th:inline="javascript"> <script th:inline="javascript">
var placeOrderFlag = [[${@permission.hasPermi('kylin:performancesExpress:placeOrder')}]]; var placeOrderFlag = [[${@permission.hasPermi('kylin:performancesExpress:placeOrder')}]];
var cancelOrderFlag = [[${@permission.hasPermi('kylin:performancesExpress:cancelOrder')}]];
var prefix = ctx + "kylin/performancesExpress"; var prefix = ctx + "kylin/performancesExpress";
...@@ -79,6 +80,7 @@ ...@@ -79,6 +80,7 @@
url: prefix + "/performanceOrderList", url: prefix + "/performanceOrderList",
modalName: "演出订单", modalName: "演出订单",
placeOrderUrl: prefix + "/placeOrder", placeOrderUrl: prefix + "/placeOrder",
cancelOrderUrl: prefix + "/cancelOrder",
columns: [{ columns: [{
checkbox: true checkbox: true
}, },
...@@ -135,7 +137,8 @@ ...@@ -135,7 +137,8 @@
align: 'center', align: 'center',
formatter: function (value, row, index) { formatter: function (value, row, index) {
var actions = []; var actions = [];
actions.push('<a class="btn btn-danger btn-xs ' + placeOrderFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.orderTicketsId + '\', \'确定下单吗?\', table.options.placeOrderUrl)"></i>下单</a> '); actions.push('<a class="btn btn-success btn-xs ' + placeOrderFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.orderTicketsId + '\', \'确定下单吗?\', table.options.placeOrderUrl)"></i>下单</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + cancelOrderFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.orderTicketsId + '\', \'确定取消快递单吗?\', table.options.cancelOrderUrl)"></i>取消</a> ');
return actions.join(''); return actions.join('');
} }
}] }]
......
package com.liquidnet.client.admin.zhengzai.kylin.service.impl; package com.liquidnet.client.admin.zhengzai.kylin.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.client.admin.common.utils.StringUtils;
import com.liquidnet.client.admin.zhengzai.kylin.utils.ShunfengSignUtils; import com.liquidnet.client.admin.zhengzai.kylin.utils.ShunfengSignUtils;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.DateUtil; import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator; import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils; import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dao.*; import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.dto.param.*; import com.liquidnet.service.kylin.dto.param.*;
import com.liquidnet.service.kylin.entity.*; import com.liquidnet.service.kylin.entity.*;
...@@ -52,9 +55,9 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres ...@@ -52,9 +55,9 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
@Value("${liquidnet.shunfeng.jAddress}") @Value("${liquidnet.shunfeng.jAddress}")
private String jAddress; private String jAddress;
@Value("${liquidnet.shunfeng.payMethod}") @Value("${liquidnet.shunfeng.payMethod}")
private String payMethod; private Integer payMethod;
@Value("${liquidnet.shunfeng.expressType}") @Value("${liquidnet.shunfeng.expressType}")
private String expressType; private Integer expressType;
@Value("${liquidnet.shunfeng.depositumInfo}") @Value("${liquidnet.shunfeng.depositumInfo}")
private String depositumInfo; private String depositumInfo;
...@@ -115,7 +118,15 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres ...@@ -115,7 +118,15 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
hBody.put("depositumInfo", depositumInfo); hBody.put("depositumInfo", depositumInfo);
hBody.put("orderId", orderInfo.getOrderCode()); Integer placeCount = kylinOrderExpressMapper.selectCount(
new QueryWrapper<KylinOrderExpress>()
.eq("order_tickets_id", orderTicketsId)
);
String codeNum = StringUtils.leftPad(String.valueOf(placeCount), 3, "0");
String OrderExpressCode = "NEW"+orderInfo.getOrderCode().concat(codeNum);
hBody.put("orderId", OrderExpressCode);
hBody.put("depositumNo", orderInfo.getNumber()); hBody.put("depositumNo", orderInfo.getNumber());
hBody.put("dContact", orderInfo.getExpressContacts()); hBody.put("dContact", orderInfo.getExpressContacts());
hBody.put("dMobile", orderInfo.getExpressPhone()); hBody.put("dMobile", orderInfo.getExpressPhone());
...@@ -134,23 +145,59 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres ...@@ -134,23 +145,59 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
String msg = (String) hashMap.get("msg"); String msg = (String) hashMap.get("msg");
return ResponseDto.failure(msg); return ResponseDto.failure(msg);
} else { } else {
HashMap hashMapResult = (HashMap) hashMap.get("result");
KylinOrderExpress kylinOrderExpress = new KylinOrderExpress(); KylinOrderExpress kylinOrderExpress = new KylinOrderExpress();
String orderExpressId = IDGenerator.nextSnowId(); String orderExpressId = IDGenerator.nextSnowId();
kylinOrderExpress.setExpressStatus(KylinTableStatusConst.ORDER_EXPRESS_STATUS1);
kylinOrderExpress.setOrderExpressId(orderExpressId); kylinOrderExpress.setOrderExpressId(orderExpressId);
kylinOrderExpress.setOrderTicketsId(orderTicketsId); kylinOrderExpress.setOrderTicketsId(orderTicketsId);
kylinOrderExpress.setMailno((String) hashMap.get("mailno")); kylinOrderExpress.setOrderExpressCode(OrderExpressCode);
kylinOrderExpress.setExpressType(1); kylinOrderExpress.setMailno((String) hashMapResult.get("mailno"));
kylinOrderExpress.setFilterResult((Integer) hashMap.get("filter_result")); kylinOrderExpress.setExpressType(expressType);
kylinOrderExpress.setRemark((String) hashMap.get("remark")); kylinOrderExpress.setFilterResult(hashMapResult.get("filter_result").toString());
kylinOrderExpress.setOrigincode((String) hashMap.get("origincode")); kylinOrderExpress.setRemark((String) hashMapResult.get("remark"));
kylinOrderExpress.setDestcode((String) hashMap.get("destcode")); kylinOrderExpress.setOrigincode((String) hashMapResult.get("origincode"));
kylinOrderExpress.setPrintIcon((String) hashMap.get("printIcon")); kylinOrderExpress.setDestcode((String) hashMapResult.get("destcode"));
kylinOrderExpress.setPrintFlag((String) hashMap.get("printFlag")); kylinOrderExpress.setPrintIcon((String) hashMapResult.get("printIcon"));
kylinOrderExpress.setTwoDimensionCode((String) hashMap.get("twoDimensionCode")); kylinOrderExpress.setPrintFlag((String) hashMapResult.get("printFlag"));
kylinOrderExpress.setTwoDimensionCode((String) hashMapResult.get("twoDimensionCode"));
kylinOrderExpress.setCreatedAt(DateUtil.getNowTime()); kylinOrderExpress.setCreatedAt(DateUtil.getNowTime());
kylinOrderExpressMapper.insert(kylinOrderExpress); kylinOrderExpressMapper.insert(kylinOrderExpress);
} }
} }
return ResponseDto.success(); return ResponseDto.success();
} }
public ResponseDto cancelOrder(PerformanceExpressSearchAdminParam performanceExpressSearchAdminParam) {
List<String> ids = performanceExpressSearchAdminParam.getIds();
for (String orderTicketsId : ids) {
KylinOrderExpress orderExpressInfo = kylinOrderExpressMapper.selectOne(
new QueryWrapper<KylinOrderExpress>().eq("order_tickets_id", orderTicketsId)
.ne("express_status", KylinTableStatusConst.ORDER_EXPRESS_STATUS2)
);
HashMap<String, Object> hBody = new HashMap<>();
hBody.put("orderId", orderExpressInfo.getOrderExpressCode());
// 时间戳
long currentTimeMillis = System.currentTimeMillis();
// 生成签名并请求
String result = shunfengSignUtils.generateSignatureAndRequest(currentTimeMillis + "", hBody, "/public/order/v1/cancelOrder");
HashMap hashMap = JsonUtils.fromJson(result, HashMap.class);
System.out.println(result);
if (hashMap.get("succ").equals("fail")) {
String msg = (String) hashMap.get("msg");
return ResponseDto.failure(msg);
} else {
KylinOrderExpress kylinOrderExpress = new KylinOrderExpress();
kylinOrderExpress.setExpressStatus(KylinTableStatusConst.ORDER_EXPRESS_STATUS2);
kylinOrderExpress.setUpdatedAt(DateUtil.getNowTime());
kylinOrderExpressMapper.update(
kylinOrderExpress
, new UpdateWrapper<KylinOrderExpress>().in("order_express_id", orderExpressInfo.getOrderExpressId())
);
}
}
return ResponseDto.success();
}
} }
...@@ -19,6 +19,7 @@ public class PerformanceExpressPerformanceOrderListAdminDao { ...@@ -19,6 +19,7 @@ public class PerformanceExpressPerformanceOrderListAdminDao {
String expressContacts; String expressContacts;
String expressAddress; String expressAddress;
String expressPhone; String expressPhone;
String expressStatus;
Integer expressType; Integer expressType;
......
...@@ -26,10 +26,12 @@ public class KylinOrderExpress implements Serializable { ...@@ -26,10 +26,12 @@ public class KylinOrderExpress implements Serializable {
private String orderExpressId; private String orderExpressId;
private String orderTicketsId; private String orderTicketsId;
private String OrderExpressCode;
private String mailno; private String mailno;
private Integer expressType; private Integer expressType;
private Integer filterResult; private String filterResult;
private String remark; private String remark;
private Integer expressStatus;
private String origincode; private String origincode;
private String destcode; private String destcode;
private String printIcon; private String printIcon;
......
...@@ -751,11 +751,12 @@ CREATE TABLE `kylin_order_express` ...@@ -751,11 +751,12 @@ CREATE TABLE `kylin_order_express`
`mid` int unsigned NOT NULL AUTO_INCREMENT, `mid` int unsigned NOT NULL AUTO_INCREMENT,
`order_express_id` varchar(255) NOT NULL DEFAULT '' COMMENT 'order_express_id', `order_express_id` varchar(255) NOT NULL DEFAULT '' COMMENT 'order_express_id',
`order_tickets_id` varchar(255) NOT NULL DEFAULT '' COMMENT '订单id', `order_tickets_id` varchar(255) NOT NULL DEFAULT '' COMMENT '订单id',
`order_express_code` varchar(255) NOT NULL DEFAULT '' COMMENT '订单快递编号',
`mailno` varchar(255) NOT NULL DEFAULT '' COMMENT '顺丰运单号', `mailno` varchar(255) NOT NULL DEFAULT '' COMMENT '顺丰运单号',
`express_type` tinyint NOT NULL DEFAULT '0' COMMENT '快件产品类型 1顺丰特快...', `express_type` tinyint NOT NULL DEFAULT '0' COMMENT '快件产品类型 1顺丰特快...',
`filter_result` tinyint NOT NULL DEFAULT '0' COMMENT '1-人工确认;2-可收派;3-不可以收派', `filter_result` varchar(2) NOT NULL DEFAULT '0' COMMENT '1-人工确认;2-可收派;3-不可以收派',
`remark` varchar(255) NOT NULL DEFAULT '' COMMENT 'filter_result=3时返回不可以收派的原因代码', `remark` varchar(255) NOT NULL DEFAULT '' COMMENT 'filter_result=3时返回不可以收派的原因代码',
`status` tinyint NOT NULL DEFAULT '0' COMMENT '快递状态', `express_status` tinyint NOT NULL DEFAULT '0' COMMENT '快递状态',
`origincode` varchar(255) NOT NULL DEFAULT '' COMMENT '原寄地区域代码 可用于顺丰电子面单标签打印', `origincode` varchar(255) NOT NULL DEFAULT '' COMMENT '原寄地区域代码 可用于顺丰电子面单标签打印',
`destcode` varchar(255) NOT NULL DEFAULT '' COMMENT '目的地区域代码 可用于顺丰电子面单标签打印', `destcode` varchar(255) NOT NULL DEFAULT '' COMMENT '目的地区域代码 可用于顺丰电子面单标签打印',
`print_icon` varchar(255) NOT NULL DEFAULT '' COMMENT '打印图标', `print_icon` varchar(255) NOT NULL DEFAULT '' COMMENT '打印图标',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment