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

Commit bef33278 authored by jiangxiulong's avatar jiangxiulong

取消下单

parent ae146080
......@@ -9,6 +9,9 @@ package com.liquidnet.service.kylin.constant;
* @since 2021-05-25 6:38 下午
*/
public class KylinTableStatusConst {
/**
* 退款
*/
// 批量退款 1处理完成 11 处理中
public static final Integer STATUS_APPLY = 1; // 1申请退款
public static final Integer STATUS_APPLY11 = 11;
......@@ -72,4 +75,10 @@ public class KylinTableStatusConst {
// 出票状态
public static final Integer ENTITIES_STATUS0 = 0; // 未出票
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 {
}
}
/**
* 取消
*/
@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 @@
<th:block th:include="include :: footer"/>
<script th:inline="javascript">
var placeOrderFlag = [[${@permission.hasPermi('kylin:performancesExpress:placeOrder')}]];
var cancelOrderFlag = [[${@permission.hasPermi('kylin:performancesExpress:cancelOrder')}]];
var prefix = ctx + "kylin/performancesExpress";
......@@ -79,6 +80,7 @@
url: prefix + "/performanceOrderList",
modalName: "演出订单",
placeOrderUrl: prefix + "/placeOrder",
cancelOrderUrl: prefix + "/cancelOrder",
columns: [{
checkbox: true
},
......@@ -135,7 +137,8 @@
align: 'center',
formatter: function (value, row, index) {
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('');
}
}]
......
package com.liquidnet.client.admin.zhengzai.kylin.service.impl;
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.liquidnet.client.admin.common.utils.StringUtils;
import com.liquidnet.client.admin.zhengzai.kylin.utils.ShunfengSignUtils;
import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.dto.param.*;
import com.liquidnet.service.kylin.entity.*;
......@@ -52,9 +55,9 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
@Value("${liquidnet.shunfeng.jAddress}")
private String jAddress;
@Value("${liquidnet.shunfeng.payMethod}")
private String payMethod;
private Integer payMethod;
@Value("${liquidnet.shunfeng.expressType}")
private String expressType;
private Integer expressType;
@Value("${liquidnet.shunfeng.depositumInfo}")
private String depositumInfo;
......@@ -115,7 +118,15 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
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("dContact", orderInfo.getExpressContacts());
hBody.put("dMobile", orderInfo.getExpressPhone());
......@@ -134,23 +145,59 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
String msg = (String) hashMap.get("msg");
return ResponseDto.failure(msg);
} else {
HashMap hashMapResult = (HashMap) hashMap.get("result");
KylinOrderExpress kylinOrderExpress = new KylinOrderExpress();
String orderExpressId = IDGenerator.nextSnowId();
kylinOrderExpress.setExpressStatus(KylinTableStatusConst.ORDER_EXPRESS_STATUS1);
kylinOrderExpress.setOrderExpressId(orderExpressId);
kylinOrderExpress.setOrderTicketsId(orderTicketsId);
kylinOrderExpress.setMailno((String) hashMap.get("mailno"));
kylinOrderExpress.setExpressType(1);
kylinOrderExpress.setFilterResult((Integer) hashMap.get("filter_result"));
kylinOrderExpress.setRemark((String) hashMap.get("remark"));
kylinOrderExpress.setOrigincode((String) hashMap.get("origincode"));
kylinOrderExpress.setDestcode((String) hashMap.get("destcode"));
kylinOrderExpress.setPrintIcon((String) hashMap.get("printIcon"));
kylinOrderExpress.setPrintFlag((String) hashMap.get("printFlag"));
kylinOrderExpress.setTwoDimensionCode((String) hashMap.get("twoDimensionCode"));
kylinOrderExpress.setOrderExpressCode(OrderExpressCode);
kylinOrderExpress.setMailno((String) hashMapResult.get("mailno"));
kylinOrderExpress.setExpressType(expressType);
kylinOrderExpress.setFilterResult(hashMapResult.get("filter_result").toString());
kylinOrderExpress.setRemark((String) hashMapResult.get("remark"));
kylinOrderExpress.setOrigincode((String) hashMapResult.get("origincode"));
kylinOrderExpress.setDestcode((String) hashMapResult.get("destcode"));
kylinOrderExpress.setPrintIcon((String) hashMapResult.get("printIcon"));
kylinOrderExpress.setPrintFlag((String) hashMapResult.get("printFlag"));
kylinOrderExpress.setTwoDimensionCode((String) hashMapResult.get("twoDimensionCode"));
kylinOrderExpress.setCreatedAt(DateUtil.getNowTime());
kylinOrderExpressMapper.insert(kylinOrderExpress);
}
}
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 {
String expressContacts;
String expressAddress;
String expressPhone;
String expressStatus;
Integer expressType;
......
......@@ -26,10 +26,12 @@ public class KylinOrderExpress implements Serializable {
private String orderExpressId;
private String orderTicketsId;
private String OrderExpressCode;
private String mailno;
private Integer expressType;
private Integer filterResult;
private String filterResult;
private String remark;
private Integer expressStatus;
private String origincode;
private String destcode;
private String printIcon;
......
......@@ -751,11 +751,12 @@ CREATE TABLE `kylin_order_express`
`mid` int unsigned NOT NULL AUTO_INCREMENT,
`order_express_id` varchar(255) NOT NULL DEFAULT '' COMMENT 'order_express_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 '顺丰运单号',
`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时返回不可以收派的原因代码',
`status` tinyint NOT NULL DEFAULT '0' COMMENT '快递状态',
`express_status` tinyint NOT NULL DEFAULT '0' COMMENT '快递状态',
`origincode` varchar(255) NOT NULL DEFAULT '' COMMENT '原寄地区域代码 可用于顺丰电子面单标签打印',
`destcode` 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