he2802 1 tahun lalu
induk
melakukan
0df478b5cb

+ 12 - 4
zhongzheng-api/src/main/java/com/zhongzheng/controller/order/OrderHandleController.java

@@ -47,7 +47,7 @@ import io.swagger.annotations.ApiOperation;
 @Api(value = "经办录单控制器", tags = {"经办录单管理"})
 @RequiredArgsConstructor(onConstructor_ = @Autowired)
 @RestController
-@RequestMapping("/prder/handle")
+@RequestMapping("/order/handle")
 public class OrderHandleController extends BaseController {
 
     private final IOrderHandleService iOrderHandleService;
@@ -63,9 +63,9 @@ public class OrderHandleController extends BaseController {
     @PreAuthorize("@ss.hasPermi('system:handle:list')")
     @GetMapping("/list")
     public TableDataInfo<OrderHandleVo> list(OrderHandleQueryBo bo) {
-        startPage();
         ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
         bo.setCreateUserId(loginUser.getUser().getUserId());
+        startPage();
         List<OrderHandleVo> list = iOrderHandleService.selectList(bo);
         return getDataTable(list);
     }
@@ -74,7 +74,6 @@ public class OrderHandleController extends BaseController {
     @PreAuthorize("@ss.hasPermi('system:handle:list')")
     @GetMapping("/detail")
     public AjaxResult<OrderHandleVo> detail(OrderHandleQueryBo bo) {
-        startPage();
         ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
         bo.setCreateUserId(loginUser.getUser().getUserId());
         List<OrderHandleVo> list = iOrderHandleService.selectList(bo);
@@ -109,9 +108,9 @@ public class OrderHandleController extends BaseController {
     @PreAuthorize("@ss.hasPermi('system:handle:list')")
     @GetMapping("/goodsList")
     public TableDataInfo<OrderHandleGoodsVo> goodsList(OrderHandleQueryBo bo) {
-        startPage();
         ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
         bo.setCreateUserId(loginUser.getUser().getUserId());
+        startPage();
         List<OrderHandleGoodsVo> list = iOrderHandleService.selectOrderGoodsList(bo);
         return getDataTable(list);
     }
@@ -124,4 +123,13 @@ public class OrderHandleController extends BaseController {
         bo.setCreateUserId(loginUser.getUser().getUserId());
         return AjaxResult.success("支付结果",iOrderHandleService.resumePayOrder(bo));
     }
+
+    @ApiOperation("经办订单关闭")
+    @PreAuthorize("@ss.hasPermi('system:handle:list')")
+    @PostMapping("/closeOrder")
+    public AjaxResult<Void> closeOrder(@RequestBody OrderHandleAddBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setCreateUserId(loginUser.getUser().getUserId());
+        return toAjax(iOrderHandleService.closeOrder(bo) ? 1 : 0);
+    }
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/domain/OrderHandle.java

@@ -68,4 +68,6 @@ private static final long serialVersionUID=1L;
     private String companyRemark;
 
     private String companyPayImg;
+
+    private Long closeTime;
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/IOrderHandleService.java

@@ -47,6 +47,8 @@ public interface IOrderHandleService extends IService<OrderHandle> {
 
 	Map<String, String> resumePayOrder(OrderHandleAddBo bo);
 
+	Boolean closeOrder(OrderHandleAddBo bo);
+
 	/**
 	 * 根据编辑业务对象修改经办录单
 	 * @param bo 经办录单编辑业务对象

+ 31 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderHandleServiceImpl.java

@@ -232,6 +232,37 @@ public class OrderHandleServiceImpl extends ServiceImpl<OrderHandleMapper, Order
         return null;
     }
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean closeOrder(OrderHandleAddBo bo) {
+        OrderHandle orderHandle = queryBySn(bo.getHandleOrderSn());
+        if (Validator.isEmpty(orderHandle)) {
+            throw new CustomException("录单单号不存在");
+        }
+        if(orderHandle.getCreateUserId()!=bo.getCreateUserId()){
+            throw new CustomException("非法操作");
+        }
+        if(orderHandle.getPayStatus()!=0){
+            throw new CustomException("非待支付状态");
+        }
+        LambdaUpdateWrapper<OrderHandle> objectLambdaUpdateWrapper = Wrappers.lambdaUpdate();
+        objectLambdaUpdateWrapper.eq(OrderHandle::getId, orderHandle.getId());
+        objectLambdaUpdateWrapper.set(OrderHandle::getUpdateTime,DateUtils.getNowTime());
+        objectLambdaUpdateWrapper.set(OrderHandle::getCloseTime,DateUtils.getNowTime());
+        objectLambdaUpdateWrapper.set(OrderHandle::getPayStatus,-1);
+        this.update(null, objectLambdaUpdateWrapper);
+
+        List<Order> list = iOrderService.list(new LambdaQueryWrapper<Order>().eq(Order::getHandleOrderSn, orderHandle.getHandleOrderSn()));
+        for(Order order : list){
+            OrderEditBo editBo = new OrderEditBo();
+            editBo.setOrderId(order.getOrderId());
+            editBo.setOrderStatus(-1);
+            iOrderService.updateByEditBo(editBo);
+        }
+
+        return null;
+    }
+
     @Override
     public Boolean updateByEditBo(OrderHandleEditBo bo) {
         OrderHandle update = BeanUtil.toBean(bo, OrderHandle.class);

+ 2 - 10
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderServiceImpl.java

@@ -1008,9 +1008,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
             if (orderGoods.getGoodsRealPrice().compareTo(BigDecimal.ZERO) == 0) {
                 //免费的
                 freeList.add(orderGoods);
-            } else if (orderGoods.getGoodsRealPrice().compareTo(BigDecimal.ZERO) > 0 ) {
-                //有收费的
-                payList.add(orderGoods);
             }
         }
 
@@ -1028,16 +1025,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         iOrderHandleService.updateById(orderHandle);
         //有已收费的商品,修改订单支付状态
         if ((freeList.size() + payList.size()) > 0) {
-            add.setOrderStatus(Order.ORDER_STATUS_PAY);
+
             if (payPrice.compareTo(BigDecimal.ZERO) == 0) {
+                add.setOrderStatus(Order.ORDER_STATUS_PAY);
                 //总订单0元
                 add.setPayStatus(Order.PAY_FREE);
-            } else if (payPrice.compareTo(receivedPrice) == 0) {
-                //完全收费
-                add.setPayStatus(Order.PAY_FULL);
-            } else {
-                //部分收费
-                add.setPayStatus(Order.PAY_PART);
             }
             add.setStatus(1);
         }