Browse Source

Merge remote-tracking branch 'origin/developerH' into developer

zhijiezhao 2 years ago
parent
commit
00dcc94fc1

+ 53 - 24
src/main/java/com/caimei365/order/controller/ReceiptApi.java

@@ -125,11 +125,11 @@ public class ReceiptApi {
      * crm:/api/user/receivables/save
      *
      * @param receiptOperateDto {
-     *                   id:收款Id
-     *                   receiptType: 1订单款,2非订单款,3返佣款 4订单款或者非订单款(因财务阶段无法区分订单非订单), 5供应商退款
-     *                   noOrderReason: 非订单款说明
-     *                   delFlag: 作废标记: 0否,其余是
-     *                   }
+     *                          id:收款Id
+     *                          receiptType: 1订单款,2非订单款,3返佣款 4订单款或者非订单款(因财务阶段无法区分订单非订单), 5供应商退款
+     *                          noOrderReason: 非订单款说明
+     *                          delFlag: 作废标记: 0否,其余是
+     *                          }
      */
     @ApiOperation("操作收款信息(作废,设为返佣/普通/供应商退款/非订单款)")
     @PostMapping("/operate")
@@ -156,14 +156,14 @@ public class ReceiptApi {
             @ApiImplicitParam(required = false, name = "pageSize", value = "每页数量")
     })
     @GetMapping("/list")
-    public ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType, Integer receiptStatus, String smsContent, String startDate, String endDate,
+    public ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer newReceiptType, Integer receiptType, Integer receiptStatus, String smsContent, String startDate, String endDate,
                                                             @RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
                                                             @RequestParam(value = "pageSize", defaultValue = "10") int pageSize,
                                                             @RequestHeader HttpHeaders headers) {
         if (null == receiptType || receiptType <= 0) {
             return ResponseJson.error("款项类型不能为空", null);
         }
-        return receiptService.getReceiptList(receiptType, receiptStatus, smsContent, startDate, endDate, pageNum, pageSize, headers);
+        return receiptService.getReceiptList(newReceiptType, receiptType, receiptStatus, smsContent, startDate, endDate, pageNum, pageSize, headers);
     }
 
     /**
@@ -309,11 +309,11 @@ public class ReceiptApi {
      * crm:/api/user/receivables/confirmReceipt
      *
      * @param receiptOperateDto {
-     *                            id: 收款Id
-     *                            orderIds: 关联订单IDS
-     *                            confirmType: 确认订单类型:1小额抹平确认,2大额抹平确认,3大额退款余额,4确认关联
-     *                            noOrderReason: 非订单款说明
-     *                            }
+     *                          id: 收款Id
+     *                          orderIds: 关联订单IDS
+     *                          confirmType: 确认订单类型:1小额抹平确认,2大额抹平确认,3大额退款余额,4确认关联
+     *                          noOrderReason: 非订单款说明
+     *                          }
      */
     @ApiOperation("确认收款-关联订单款")
     @PostMapping("/confirm")
@@ -332,9 +332,9 @@ public class ReceiptApi {
      * crm:/api/user/shop/relation
      *
      * @param receiptOperateDto {
-     *                            id:          收款Id
-     *                            shopOrderId: 关联供应商退款子订单ID
-     *                            }
+     *                          id:          收款Id
+     *                          shopOrderId: 关联供应商退款子订单ID
+     *                          }
      */
     @ApiOperation("确认收款-关联供应商退款")
     @PostMapping("/confirm/refund")
@@ -353,10 +353,10 @@ public class ReceiptApi {
      * crm:/api/user/rebate/relation
      *
      * @param receiptOperateDto {
-     *                            id:           收款Id
-     *                            shopOrderId: 关联返佣子订单ID
-     *                            rebateRemarks:关联返佣备注
-     *                            }
+     *                          id:           收款Id
+     *                          shopOrderId: 关联返佣子订单ID
+     *                          rebateRemarks:关联返佣备注
+     *                          }
      */
     @ApiOperation("确认收款-关联返佣款")
     @PostMapping("/confirm/rebate")
@@ -375,10 +375,10 @@ public class ReceiptApi {
      * crm:/api/user/rebate/verballyReceipt
      *
      * @param receiptOperateDto {
-     *                            verbalAmount: 口头返佣佣金
-     *                            shopOrderId: 关联返佣子订单ID
-     *                            rebateRemarks:关联返佣备注
-     *                            }
+     *                          verbalAmount: 口头返佣佣金
+     *                          shopOrderId: 关联返佣子订单ID
+     *                          rebateRemarks:关联返佣备注
+     *                          }
      */
     @ApiOperation("确认收款-关联口头佣金")
     @PostMapping("/confirm/rebate/verbal")
@@ -400,7 +400,7 @@ public class ReceiptApi {
      *                          id            收款Id
      *                          receiptStatus 收款状态
      *                          reviewReason  审核不通过原因
-     * }
+     *                          }
      */
     @ApiOperation("审核收款信息")
     @PostMapping("/audit")
@@ -414,5 +414,34 @@ public class ReceiptApi {
         return receiptService.receiptAudit(receiptOperateDto.getId(), receiptOperateDto.getReceiptStatus(), receiptOperateDto.getReviewReason(), headers);
     }
 
+
+    @ApiOperation("待确认订单款供应商信息")
+    @GetMapping("/shop")
+    public ResponseJson<PageInfo<ShopOrderVo>> ReceiptDetailVo(String keyWord,
+                                                               Integer newReceiptType,
+                                                               @RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
+                                                               @RequestParam(value = "pageSize", defaultValue = "10") int pageSize) {
+        if (newReceiptType != 1) {
+            //1采美已上线供应商  3,4:认证通供应商
+            return receiptService.ReceiptDetails(keyWord, pageNum, pageSize);
+        } else {
+            return receiptService.ReceiptDetailVo(keyWord, pageNum, pageSize);
+        }
+    }
+
+    @ApiOperation("订单返佣-非返佣订单信息")
+    @GetMapping("/shoporder")
+    public ResponseJson<PageInfo<ShopOrderVo>> ReceiptDetail(String keyWord,
+                                                             @RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
+                                                             @RequestParam(value = "pageSize", defaultValue = "10") int pageSize) {
+        return receiptService.ReceiptDetail(keyWord, pageNum, pageSize);
+    }
+
+//    @ApiOperation("认证通会员-非返佣订单信息")
+//    @GetMapping("/shoporders")
+//    public ResponseJson<List<ShopOrderVo>> ReceiptDetails(String keyWord) {
+//
+//        return receiptService.ReceiptDetails(keyWord);
+//    }
 }
 

+ 12 - 0
src/main/java/com/caimei365/order/mapper/ReceiptMapper.java

@@ -102,6 +102,10 @@ public interface ReceiptMapper {
      * 获取收款关联订单
      */
     List<OrderVo> getReceiptOrders(Integer receiptId);
+
+    List<OrderVo> getReceiptOrderlist(Integer receiptId);
+
+    List<OrderVo> getReceiptOrderlists(Integer receiptId);
     /**
      * 获取收款商品订单列表
      */
@@ -211,4 +215,12 @@ public interface ReceiptMapper {
      * 更新供应商欠款金额
      */
     void updateShopRebateAmount(Integer shopId, Double amount);
+
+    List<ShopOrderVo>ReceiptDetailVo(String keyWord);
+
+    List<ShopOrderVo> ReceiptDetail(String keyWord);
+
+    List<ShopOrderVo> ReceiptDetails(String keyWord);
+
+
 }

+ 4 - 0
src/main/java/com/caimei365/order/model/bo/ReceiptParamsBo.java

@@ -63,5 +63,9 @@ public class ReceiptParamsBo implements Serializable {
      * 组织Id
      */
     private Integer organizeId;
+    /**
+     * 关联订单类型
+     */
+    private Integer newReceiptType;
 
 }

+ 16 - 0
src/main/java/com/caimei365/order/model/dto/ReceiptOperateDto.java

@@ -76,4 +76,20 @@ public class ReceiptOperateDto implements Serializable {
      */
     @ApiModelProperty("口头返佣佣金")
     private Double verbalAmount;
+    /**
+     * 收款款项二级类别
+     */
+    @ApiModelProperty("收款款项二级类别1.上架费2.订单返佣3.认证通会员4.认证通企划")
+    private Integer newReceiptType;
+    /**
+     * 关联供应ID
+     */
+    @ApiModelProperty("关联供应商ID")
+    private Integer shopId;
+    /**
+     * 关联供应商id
+     */
+    @ApiModelProperty("关联供应商name")
+    private String shopName;
+
 }

+ 16 - 0
src/main/java/com/caimei365/order/model/po/ReceiptPo.java

@@ -122,5 +122,21 @@ public class ReceiptPo implements Serializable {
      * 返佣关联备注
      */
     private String rebateRemarks;
+    /**
+     * 收款款项二级类别
+     */
+    private Integer newReceiptType;
+    /**
+     * 关联供ID
+     */
+    private Integer shopId;
+    /**
+     * 关联子订单ID
+     */
+    private Integer shopOrderId;
+    /**
+     * 关联供应商id
+     */
+    private String shopName;
 
 }

+ 9 - 0
src/main/java/com/caimei365/order/model/vo/OrderVo.java

@@ -315,4 +315,13 @@ public class OrderVo implements Serializable {
      * 总税费
      */
     private Double totalAddedValueTax;
+
+    /**
+     * 供应商名称
+     */
+    private String shopName;
+    /**
+     * 收款款项二级类别1.上架费2.订单返佣3.认证通会员4.认证通企划
+     */
+    private Integer newReceiptType;
 }

+ 4 - 0
src/main/java/com/caimei365/order/model/vo/ReceiptVo.java

@@ -146,4 +146,8 @@ public class ReceiptVo implements Serializable {
     private Integer cancelUserPermissionId;
     private String cancelUserName;
 
+    private Integer newReceiptType;
+
+    private String shopName;
+
 }

+ 20 - 0
src/main/java/com/caimei365/order/model/vo/ShopOrderVo.java

@@ -219,4 +219,24 @@ public class ShopOrderVo implements Serializable {
      * 子订单分帐号
      */
     private String splitCode;
+    /**
+     * 供应商联系人
+     */
+    private String linkMan;
+    /**
+     * 供应商手机号
+     */
+    private String contractMobile;
+    /**
+     * 客户名称
+     */
+    private String userName;
+    /**
+     * 下单日期
+     */
+    private String confirmTime;
+    /**
+     * 收款款项二级类别1.上架费2.订单返佣3.认证通会员4.认证通企划
+     */
+   private Integer newReceiptType;
 }

+ 6 - 1
src/main/java/com/caimei365/order/service/ReceiptService.java

@@ -76,7 +76,7 @@ public interface ReceiptService {
      * @param pageNum       页码
      * @param pageSize      每页数量
      */
-    ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType, Integer receiptStatus, String smsContent, String startDate, String endDate, int pageNum, int pageSize, HttpHeaders headers);
+    ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer newReceiptType,Integer receiptType, Integer receiptStatus, String smsContent, String startDate, String endDate, int pageNum, int pageSize, HttpHeaders headers);
 
     /**
      * 收款详情(订单/非订单)
@@ -208,6 +208,11 @@ public interface ReceiptService {
      */
     ResponseJson<Void> receiptAudit(Integer id, Integer receiptStatus, String reviewReason, HttpHeaders headers);
 
+    ResponseJson<PageInfo<ShopOrderVo>> ReceiptDetailVo(String keyWord,int pageNum, int pageSize);
+
+    ResponseJson<PageInfo<ShopOrderVo>> ReceiptDetail(String keyWord,int pageNum, int pageSize);
+
+    ResponseJson<PageInfo<ShopOrderVo>> ReceiptDetails(String keyWord,int pageNum, int pageSize);
     /**
      * 微信收款信息推送(待确认超时)
      */

+ 56 - 10
src/main/java/com/caimei365/order/service/impl/ReceiptServiceImpl.java

@@ -495,7 +495,15 @@ public class ReceiptServiceImpl implements ReceiptService {
         // 收款款项类型receiptType:2非订单款
         if (null != receiptOperateDto.getReceiptType() && 2 == receiptOperateDto.getReceiptType()) {
             receiptPo.setNoOrderReason(receiptOperateDto.getNoOrderReason());
+            if (receiptOperateDto.getNewReceiptType() == 2) {
+                receiptPo.setShopOrderId(receiptOperateDto.getShopOrderId());
+            } else {
+                receiptPo.setShopId(receiptOperateDto.getShopId());
+                receiptPo.setShopName(receiptOperateDto.getShopName());
+            }
             receiptPo.setReceiptStatus(2);
+
+            receiptPo.setNewReceiptType(receiptOperateDto.getNewReceiptType());
             receiptPo.setConfirmUserPermissionId(receiptUser.getId());
             receiptPo.setConfirmDate(time);
         }
@@ -522,7 +530,7 @@ public class ReceiptServiceImpl implements ReceiptService {
      * @param pageSize      每页数量
      */
     @Override
-    public ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer receiptType, Integer receiptStatus, String smsContent, String startDate, String endDate, int pageNum, int pageSize, HttpHeaders headers) {
+    public ResponseJson<PageInfo<ReceiptVo>> getReceiptList(Integer newReceiptType, Integer receiptType, Integer receiptStatus, String smsContent, String startDate, String endDate, int pageNum, int pageSize, HttpHeaders headers) {
         ReceiptParamsBo paramsBo = new ReceiptParamsBo();
         PageInfo<ReceiptVo> emptyInfo = new PageInfo();
         if (null != receiptStatus && receiptStatus > 0) {
@@ -597,6 +605,7 @@ public class ReceiptServiceImpl implements ReceiptService {
         paramsBo.setReceiptType(receiptType);
         paramsBo.setStartDate(startDate);
         paramsBo.setEndDate(endDate);
+        paramsBo.setNewReceiptType(newReceiptType);
         // 分页请求数据
         PageHelper.startPage(pageNum, pageSize);
         List<ReceiptVo> list = receiptMapper.getReceiptList(paramsBo);
@@ -641,7 +650,7 @@ public class ReceiptServiceImpl implements ReceiptService {
         ReceiptVo receipt = receiptMapper.getReceiptDetail(id);
         //超级管理员可以看,其他人不能看已确认的单
         if (null != receipt.getConfirmUserPermissionId()) {
-            if(1 == receiptUser.getUserType() && !receiptUser.getId().equals(receipt.getConfirmUserPermissionId())){
+            if (1 == receiptUser.getUserType() && !receiptUser.getId().equals(receipt.getConfirmUserPermissionId())) {
                 return ResponseJson.error("无权限操作!", null);
             }
         }
@@ -661,6 +670,12 @@ public class ReceiptServiceImpl implements ReceiptService {
             } else {
                 // 已确认
                 orderList = receiptMapper.getReceiptOrders(receipt.getId());
+                if ((orderList == null || orderList.size() == 0) && receipt.getReceiptType() == 2) {
+                    if (receipt.getNewReceiptType() == 2) {
+                        orderList = receiptMapper.getReceiptOrderlist(receipt.getId());
+                    }
+
+                }
                 log.info("【线下收款】-----已确认--------");
             }
             if (!CollectionUtils.isEmpty(orderList)) {
@@ -1698,25 +1713,25 @@ public class ReceiptServiceImpl implements ReceiptService {
                         }
                     }
                     log.info("************************订单支付完成消息推送*********************");
-                    if(3 == order.getReceiptStatus()) {
+                    if (3 == order.getReceiptStatus()) {
                         List<Integer> productIds = orderClubMapper.getProductOrder(order.getOrderId());
-                        if (0==order.getSecondHandOrderFlag() && 0==order.getRebateFlag() && (null != productIds && !productIds.contains(6060)) ) {
-                            SubmitServiceImpl s=new SubmitServiceImpl();
+                        if (0 == order.getSecondHandOrderFlag() && 0 == order.getRebateFlag() && (null != productIds && !productIds.contains(6060))) {
+                            SubmitServiceImpl s = new SubmitServiceImpl();
                             try {
                                 String accessToken = weChatService.getAccessToken();
                                 List<String> openidList = orderClubMapper.getOpenidListByPermission(orderClubMapper.FromUnionId(order.getOrderId()));
                                 openidList.removeIf(Objects::isNull);
-                                String name= StringUtils.strip(orderClubMapper.getOrderIds(order.getOrderId()).toString().substring(0,11), "[]");
+                                String name = StringUtils.strip(orderClubMapper.getOrderIds(order.getOrderId()).toString().substring(0, 11), "[]");
                                 String associateTitle = "订单支付成功!";
-                                Double money=order.getPayTotalFee();
+                                Double money = order.getPayTotalFee();
                                 String orderno = orderClubMapper.getOrderNo(order.getOrderId());
-                                String paytime=order.getPayTime();
+                                String paytime = order.getPayTime();
                                 String remarkText = "采美将尽快为您安排发货~";
                                 // 跳转到【小程序付款-选择支付方式页面】
-                                String pagePath = "pages/user/order/order-details?type=share&orderId="+order.getOrderId();
+                                String pagePath = "pages/user/order/order-details?type=share&orderId=" + order.getOrderId();
                                 for (String openid : openidList) {
                                     // sendTemplateMsg(openid, 标题, 金额, 收款日期, 备注, 跳转链接)
-                                    weChatService.sendTemplateMsgz(accessToken, openid, associateTitle,paytime, name,orderno, money, remarkText, pagePath);
+                                    weChatService.sendTemplateMsgz(accessToken, openid, associateTitle, paytime, name, orderno, money, remarkText, pagePath);
                                 }
                             } catch (Exception e) {
                                 log.error("【订单发货通知】获取微信公众号access_token异常!", e);
@@ -1901,6 +1916,7 @@ public class ReceiptServiceImpl implements ReceiptService {
         OrderVo order = orderCommonMapper.getOrderByOrderId(shopOrder.getOrderId());
         String userName = baseMapper.getUserNameByUserId(order.getUserId());
         order.setUserName(userName);
+        order.setPaidAmount(receiptMapper.getPaidAmountByOrderId(order.getOrderId()));
         if (null != order.getRebateFlag() && 1 == order.getRebateFlag()) {
             // 返佣订单
             double needPayAmount = receiptMapper.countNeedPayAmount(order.getOrderId());
@@ -2264,4 +2280,34 @@ public class ReceiptServiceImpl implements ReceiptService {
         return returnedAmount;
     }
 
+    /**
+     * 获取非订单款供应商信息
+     */
+    @Override
+    public ResponseJson<PageInfo<ShopOrderVo>> ReceiptDetailVo(String keyWord, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        List<ShopOrderVo> shopOrder = receiptMapper.ReceiptDetailVo(keyWord);
+        PageInfo<ShopOrderVo> pageInfo = new PageInfo(shopOrder);
+        return ResponseJson.success(pageInfo);
+    }
+
+    @Override
+    public ResponseJson<PageInfo<ShopOrderVo>> ReceiptDetail(String keyWord, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        List<ShopOrderVo> shoporder = receiptMapper.ReceiptDetail(keyWord);
+        for (ShopOrderVo shopOrder : shoporder) {
+            setReceiptedAmount(shopOrder);
+        }
+        PageInfo<ShopOrderVo> pageInfo = new PageInfo(shoporder);
+        return ResponseJson.success(pageInfo);
+    }
+
+    @Override
+    public ResponseJson<PageInfo<ShopOrderVo>> ReceiptDetails(String keyWord, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        List<ShopOrderVo> shoporder = receiptMapper.ReceiptDetails(keyWord);
+        PageInfo<ShopOrderVo> pageInfo = new PageInfo(shoporder);
+        return ResponseJson.success(pageInfo);
+    }
+
 }

File diff suppressed because it is too large
+ 485 - 339
src/main/resources/mapper/ReceiptMapper.xml


Some files were not shown because too many files changed in this diff