From aa2885980b4b6aeb309aab9762a6220e903b498a Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Sat, 24 Sep 2022 15:16:12 +0800
Subject: [PATCH] 20220902
---
src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java | 4 +
src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java | 52 ++++++++++++++---
src/main/resources/mapper/modules/MallOrderInfoMapper.xml | 22 +++++++
src/main/resources/templates/febs/views/modules/order/orderList.html | 47 +++++++++++++--
src/main/resources/static/febs/index.js | 2
5 files changed, 109 insertions(+), 18 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
index c019b2e..9efa5ee 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
@@ -362,6 +362,32 @@
return new FebsResponse().success();
}
+ @GetMapping("deliverOrder")
+ @ControllerEndpoint(operation = "导出订单列表,系统自动发货", exceptionMessage = "操作失败")
+ public FebsResponse deliverOrder(MallOrderInfo mallOrderInfoDto){
+ String orderIds = mallOrderInfoDto.getOrderIds();
+ List<String> ids = StrUtil.splitTrim(orderIds, ",");
+ for(String id : ids){
+ long orderId = Long.parseLong(id);
+ MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectByIdAndTakeUniqueCode(orderId,mallOrderInfoDto.getTakeUniqueCode());
+ if(ObjectUtil.isEmpty(mallOrderInfo)){
+ return new FebsResponse().fail().message("订单不存在");
+ }
+ Integer status = mallOrderInfo.getStatus() == null ? 0 : mallOrderInfo.getStatus();
+ Integer deliveryState = mallOrderInfo.getDeliveryState() == null ? 0 : mallOrderInfo.getDeliveryState();
+ if(OrderStatusEnum.WAIT_SHIPPING.getValue() != status){
+// continue;
+ return new FebsResponse().fail().message("状态不是待发货");
+ }
+ if(1 != deliveryState){
+// continue;
+ return new FebsResponse().fail().message("配送状态不是待配送");
+ }
+ adminMallOrderService.updateOrderStateAndDeliveryState(mallOrderInfo.getId(), OrderStatusEnum.WAIT_FINISH.getValue(), OrderDeliveryStateEnum.DELIVERY_ING.getValue());
+ }
+ return new FebsResponse().success();
+ }
+
/**
* 根据用户ID和订单ID获取所购买商品名称
* @return 所含商品名称(多个以","隔开)
@@ -409,23 +435,26 @@
String title = "订单列表";
orderSheet.setSheetName(title);
orderSheet.setTitle(title);
- String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "商品名称", "团长名称", "团长手机号码", "自提点名称","详细地址"};
+ String[] header = {"订单编号", "商品名称", "订单金额", "提货码", "配送方式", "收货姓名", "收货电话", "团长名称", "团长手机号码", "自提点名称","详细地址"};
orderSheet.setHeaders(header);
QueryRequest request = new QueryRequest();
request.setPageNum(1);
request.setPageSize(9999);
- List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords();
+ List<MallOrderInfo> dataList = new ArrayList<>();
+ String orderIds = mallOrderInfo.getOrderIds();
+ List<String> ids = StrUtil.splitTrim(orderIds, ",");
+ for(String id : ids){
+ long orderId = Long.parseLong(id);
+ MallOrderInfo mallOrderInfo1 = mallOrderInfoMapper.selectAllOrderInfoByIdAndTakeUniqueCode(orderId,mallOrderInfo.getTakeUniqueCode());
+ dataList.add(mallOrderInfo1);
+ }
+// List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords();
List<List<Object>> list = new ArrayList<>();
if (dataList.size() > 0) {
for (MallOrderInfo item : dataList) {
List<Object> temp = new ArrayList<>();
temp.add(item.getOrderNo());
- temp.add(item.getAmount());
- temp.add(DateUtil.format(item.getOrderTime(), "yyyy-MM-dd HH:mm:ss"));
- temp.add("自提");
- temp.add(item.getName());
- temp.add(item.getPhone());
if (CollUtil.isNotEmpty(item.getItems())) {
StringBuilder sb = new StringBuilder();
@@ -440,13 +469,18 @@
} else {
temp.add("");
}
+ temp.add(item.getAmount());
+ temp.add(item.getTakeCode());
+ temp.add("自提");
+ temp.add(item.getName());
+ temp.add(item.getPhone());
+
temp.add(item.getLeaderName());
temp.add(item.getLeaderPhone());
temp.add(item.getAddressArea());
temp.add(item.getDetailAddress());
list.add(temp);
-
- adminMallOrderService.updateOrderStateAndDeliveryState(item.getId(), OrderStatusEnum.WAIT_FINISH.getValue(), OrderDeliveryStateEnum.DELIVERY_ING.getValue());
+// adminMallOrderService.updateOrderStateAndDeliveryState(item.getId(), OrderStatusEnum.WAIT_FINISH.getValue(), OrderDeliveryStateEnum.DELIVERY_ING.getValue());
}
}
orderSheet.setDataList(list);
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
index 540ec89..bccbe07 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
@@ -72,4 +72,8 @@
List<MallOrderInfo> selectOrderByStatusAndPayTime(@Param("status")Integer i, @Param("paytime")DateTime offsetDay);
IPage<MallOrderInfo> selectNewApiOrderListInPage(IPage<MallOrderInfo> page, @Param("record") OrderListDto orderListDto);
+
+ MallOrderInfo selectByIdAndTakeUniqueCode(@Param("orderId")long orderId,@Param("takeUniqueCode") String takeUniqueCode);
+
+ MallOrderInfo selectAllOrderInfoByIdAndTakeUniqueCode(@Param("orderId")long orderId,@Param("takeUniqueCode") String takeUniqueCode);
}
diff --git a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
index 9babf59..9657848 100644
--- a/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
+++ b/src/main/resources/mapper/modules/MallOrderInfoMapper.xml
@@ -442,4 +442,26 @@
</where>
order by a.created_time desc
</select>
+
+ <select id="selectByIdAndTakeUniqueCode" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo">
+ select * from mall_order_info where id = #{orderId} and take_unique_code = #{takeUniqueCode}
+ </select>
+
+ <select id="selectAllOrderInfoByIdAndTakeUniqueCode" resultMap="OrderInfoMap">
+ select
+ a.*,
+ b.goods_name,
+ b.cnt,
+ b.price,
+ b.amount,
+ c.name leader_name,
+ c.phone leader_phone,
+ c.address_area,
+ c.detail_address
+ from mall_order_info a
+ inner join mall_order_item b on a.id=b.order_id
+ inner join mall_team_leader c on a.take_unique_code=c.unique_code
+ where a.del_flag=2 and a.id = #{orderId} and a.take_unique_code = #{takeUniqueCode}
+ order by a.created_time desc
+ </select>
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/static/febs/index.js b/src/main/resources/static/febs/index.js
index cf90796..3c5332a 100644
--- a/src/main/resources/static/febs/index.js
+++ b/src/main/resources/static/febs/index.js
@@ -3,6 +3,6 @@
validate: 'lay/modules/validate'
}).define(['febs', 'conf'], function (exports) {
layui.febs.initPage();
- console.log("\n %c FEBS-Shiro 2.0 %c https://github.com/wuyouzhuguli/FEBS-Shiro %c 如果该项目对您有帮助的话,还请点个star给予精神支持!🐤", "color: #fff; font-size: .84rem;background: #366ed8; padding:5px 0;", "font-size: .84rem;background: #fff; border: 2px solid #b0e0a8;border-left: none; padding:3px 0;"," font-size: .84rem;background: #fcf9ec; padding:5px 0;margin-left: 8px");
+ // console.log("\n %c FEBS-Shiro 2.0 %c https://github.com/wuyouzhuguli/FEBS-Shiro %c 如果该项目对您有帮助的话,还请点个star给予精神支持!🐤", "color: #fff; font-size: .84rem;background: #366ed8; padding:5px 0;", "font-size: .84rem;background: #fff; border: 2px solid #b0e0a8;border-left: none; padding:3px 0;"," font-size: .84rem;background: #fcf9ec; padding:5px 0;margin-left: 8px");
exports('index', {});
});
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/modules/order/orderList.html b/src/main/resources/templates/febs/views/modules/order/orderList.html
index b921561..4db20d2 100644
--- a/src/main/resources/templates/febs/views/modules/order/orderList.html
+++ b/src/main/resources/templates/febs/views/modules/order/orderList.html
@@ -171,20 +171,28 @@
var id = obj.config.id;
var checkStatus = table.checkStatus(id);
if(event === 'confirmOrder'){
+ let uniqueCodeValue = $searchForm.find("select[name='uniqueCode']").val();
+ if(uniqueCodeValue == '' || uniqueCodeValue == null){
+ febs.alert.warn('请选择团长');
+ return;
+ }
var data = checkStatus.data;
let ids = "";
for(let i = 0;i < data.length;i++){
- ids = ids + data[i].id+","
+ if(data[i].status != 3){
+ febs.alert.warn('请选择待收货的订单');
+ return;
+ }else if(data[i].deliveryState != 2){
+ febs.alert.warn('请选择配送中的订单');
+ return;
+ }else{
+ ids = ids + data[i].id+",";
+ }
}
// layer.alert(layui.util.escape(JSON.stringify(data)));
console.log(ids);
if(ids == null || ids == ""){
febs.alert.warn('请选择确认到货的订单');
- return;
- }
- let uniqueCodeValue = $searchForm.find("select[name='uniqueCode']").val();
- if(uniqueCodeValue == '' || uniqueCodeValue == null){
- febs.alert.warn('请选择团长');
return;
}
febs.get(ctx + 'admin/order/confirmOrder?takeUniqueCode='+uniqueCodeValue+'&orderIds='+ids, null, function () {
@@ -199,8 +207,31 @@
febs.alert.warn('请选择团长');
return;
}
- window.location.href = ctx + "admin/order/exportOrderListOne?orderType=1&status=2&deliveryType=1&takeUniqueCode="+uniqueCodeValue;
- $query.click();
+ var data = checkStatus.data;
+ let ids = "";
+ for(let i = 0;i < data.length;i++){
+ if(data[i].status != 2){
+ febs.alert.warn('请选择待发货的订单');
+ return;
+ }else if(data[i].deliveryState != 1){
+ febs.alert.warn('请选择待配送的订单');
+ return;
+ }else{
+ ids = ids + data[i].id+",";
+ }
+ }
+ // layer.alert(layui.util.escape(JSON.stringify(data)));
+ console.log(ids);
+ if(ids == null || ids == ""){
+ febs.alert.warn('请选择待发货的订单');
+ return;
+ }
+ window.location.href = ctx + "admin/order/exportOrderListOne?orderType=1&status=2&deliveryType=1&takeUniqueCode="+uniqueCodeValue+'&orderIds='+ids;
+ febs.get(ctx + 'admin/order/deliverOrder?takeUniqueCode='+uniqueCodeValue+'&orderIds='+ids, null, function () {
+ febs.alert.success('操作成功');
+ $query.click();
+
+ });
}
if (event == 'exportDeliverTwo') {
--
Gitblit v1.9.1