yangdamao пре 1 година
родитељ
комит
fcedeb3756

+ 15 - 0
zhongzheng-admin-saas/src/main/java/com/zhongzheng/controller/order/TopOldOrderController.java

@@ -5,8 +5,10 @@ import com.zhongzheng.common.core.domain.AjaxResult;
 import com.zhongzheng.common.core.domain.model.TopLoginUser;
 import com.zhongzheng.common.core.page.TableDataInfo;
 import com.zhongzheng.common.utils.ServletUtils;
+import com.zhongzheng.common.utils.poi.EasyPoiUtil;
 import com.zhongzheng.common.utils.poi.ExcelUtil;
 import com.zhongzheng.framework.web.service.TopTokenService;
+import com.zhongzheng.modules.bank.vo.QuestionImportV2;
 import com.zhongzheng.modules.top.financial.bo.OrderRefundPayBo;
 import com.zhongzheng.modules.top.financial.bo.TopDivideLogQueryBo;
 import com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo;
@@ -16,6 +18,7 @@ import com.zhongzheng.modules.top.financial.vo.TopOrderLogVo;
 import com.zhongzheng.modules.top.goods.bo.*;
 import com.zhongzheng.modules.top.goods.service.ITopOldOrderService;
 import com.zhongzheng.modules.top.goods.vo.*;
+import com.zhongzheng.modules.top.order.bo.TopOldOrderCustomerBo;
 import com.zhongzheng.modules.top.order.vo.TopOldOrderCommissionExportVo;
 import com.zhongzheng.modules.top.order.vo.TopOldOrderCompanyExportVo;
 import com.zhongzheng.modules.top.order.vo.TopOldOrderSellerExportVo;
@@ -25,6 +28,7 @@ import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
 import java.util.Map;
@@ -332,4 +336,15 @@ public class TopOldOrderController extends BaseController {
         return AjaxResult.success(iTopOldOrderService.getOrderRefundPayDetail(orderSn));
     }
 
+    /**
+     * 订单导入
+     */
+    @ApiOperation("订单导入")
+    @PostMapping("/customer/import")
+    public AjaxResult importOldOrderCustomer(MultipartFile file) {
+        List<TopOldOrderCustomerBo> customerBos = EasyPoiUtil.importExcel(file,0,1,TopOldOrderCustomerBo.class);
+        iTopOldOrderService.importOldOrderCustomer(customerBos);
+        return AjaxResult.success();
+    }
+
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/service/ITopOldOrderService.java

@@ -9,6 +9,7 @@ import com.zhongzheng.modules.top.goods.bo.*;
 import com.zhongzheng.modules.top.goods.domain.TopOldOrder;
 import com.zhongzheng.modules.top.goods.vo.*;
 import com.zhongzheng.modules.top.order.bo.PayOrderCallBackBo;
+import com.zhongzheng.modules.top.order.bo.TopOldOrderCustomerBo;
 import com.zhongzheng.modules.top.order.bo.TopOrderStatisticsBo;
 import com.zhongzheng.modules.top.order.bo.TopOrderStatisticsViewBo;
 import com.zhongzheng.modules.top.order.vo.*;
@@ -194,4 +195,6 @@ public interface ITopOldOrderService extends IService<TopOldOrder> {
 	List<TopTenantDataVo> getSaleListData(TopOrderStatisticsBo bo);
 
 	TopOrderOrgVo getTopOrderGoodsList(TopOldOrderQueryBo bo);
+
+    void importOldOrderCustomer(List<TopOldOrderCustomerBo> customerBos);
 }

+ 37 - 9
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/service/impl/TopOldOrderServiceImpl.java

@@ -58,10 +58,7 @@ import com.zhongzheng.modules.top.goods.domain.*;
 import com.zhongzheng.modules.top.goods.mapper.TopOldOrderMapper;
 import com.zhongzheng.modules.top.goods.service.*;
 import com.zhongzheng.modules.top.goods.vo.*;
-import com.zhongzheng.modules.top.order.bo.PayOrderCallBackBo;
-import com.zhongzheng.modules.top.order.bo.TopDetailStatisticsTotal;
-import com.zhongzheng.modules.top.order.bo.TopOrderStatisticsBo;
-import com.zhongzheng.modules.top.order.bo.TopOrderStatisticsViewBo;
+import com.zhongzheng.modules.top.order.bo.*;
 import com.zhongzheng.modules.top.order.domain.TopOrderBankPay;
 import com.zhongzheng.modules.top.order.service.ITopOrderBankPayService;
 import com.zhongzheng.modules.top.order.vo.*;
@@ -345,6 +342,18 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         if (ObjectUtils.isNotNull(brokerageCheck)) {
             orderVo.setBrokerageCheck(brokerageCheck.getCheckStatus());
         }
+        //收奖方式
+        if (ObjectUtils.isNotNull(orderVo.getBrokerageType())){
+            switch (orderVo.getBrokerageType()){
+                case 1://微信
+                    orderVo.setBrokerageStr(orderVo.getBrokerageBankAccount());
+                    break;
+                case 5://网银
+                    orderVo.setBrokerageStr(String.format("账号:%s;%s;%s。",orderVo.getBrokerageBankName(),orderVo.getBrokerageBank(),orderVo.getBrokerageBankAccount()));
+                    break;
+            }
+        }
+
         //发票金额
         List<TopNuoMplatformLog> fromLogs = topNuoMplatformLogService
                 .list(new LambdaQueryWrapper<TopNuoMplatformLog>()
@@ -1110,6 +1119,8 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
 
     @Override
     public List<TopOldOrderGoodsListVo> getOrderGoodsList(TopOldOrderGoodsQuery query) {
+        //奖金
+        TopOldOrder oldOrder = baseMapper.getOrderBySn(query.getOrderSn());
         //学员数量
         Integer userCount = 0;
         List<TopOldOrderGoodsListVo> list;
@@ -1118,7 +1129,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
             list = orderGoodsService.listByOrderSn(query);
             userCount = 1;
             if (CollectionUtils.isNotEmpty(list)) {
-                list.forEach(item -> {
+                for (TopOldOrderGoodsListVo item : list) {
                     item.setPretaxBrokerage(BigDecimal.ZERO);
                     item.setUserCount(1);
                     item.setCheckStatusStr(item.getCheckStr(item.getCheckStatus()));
@@ -1152,7 +1163,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                     }else {
                         item.setDivideRateStr(item.getDivideRate().toString());
                     }
-                });
+                }
             }
         } else {
             //旧系统订单
@@ -1209,7 +1220,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                             }
                             //分成模式
                             if (ObjectUtils.isNotNull(item.getDivideType()) && item.getDivideType() == 1){
-                                item.setDivideRateStr(item.getDivideRate().multiply(new BigDecimal("100.00"))+"%");
+                                item.setDivideRateStr(item.getDivideRate()+"%");
                             }else {
                                 item.setDivideRateStr(item.getDivideRate().toString());
                             }
@@ -1243,7 +1254,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                                     x.setStudyStatus("未开始");
                                     //分成模式
                                     if (ObjectUtils.isNotNull(x.getDivideType()) && x.getDivideType() == 1){
-                                        x.setDivideRateStr(x.getDivideRate().multiply(new BigDecimal("100.00"))+"%");
+                                        x.setDivideRateStr(x.getDivideRate()+"%");
                                     }else {
                                         x.setDivideRateStr(x.getDivideRate().toString());
                                     }
@@ -1266,7 +1277,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                                     }
                                     //分成模式
                                     if (ObjectUtils.isNotNull(item.getDivideType()) && item.getDivideType() == 1){
-                                        item.setDivideRateStr(item.getDivideRate().multiply(new BigDecimal("100.00"))+"%");
+                                        item.setDivideRateStr(item.getDivideRate()+"%");
                                     }else {
                                         item.setDivideRateStr(item.getDivideRate().toString());
                                     }
@@ -1280,10 +1291,15 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
                 }
             }
         }
+        BigDecimal money = BigDecimal.ZERO;
+        if (ObjectUtils.isNotNull(oldOrder.getPretaxBrokerage())){
+            money = oldOrder.getPretaxBrokerage().divide(new BigDecimal(list.size()));
+        }
         //数据处理
         for (TopOldOrderGoodsListVo item : list) {
             item.setUserCount(userCount);
             item.setCheckStatusStr(item.getCheckStr(item.getCheckStatus()));
+            item.setRealPrice(item.getGoodsRealPrice().subtract(money));
             //退款发起原因和审核意见
             TopOldOrderRefund orderRefund = topOldOrderRefundService
                     .getOne(new LambdaQueryWrapper<TopOldOrderRefund>()
@@ -4309,6 +4325,18 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
         return orgVo;
     }
 
+    @Override
+    public void importOldOrderCustomer(List<TopOldOrderCustomerBo> customerBos) {
+        for (TopOldOrderCustomerBo customerBo : customerBos) {
+            update(new LambdaUpdateWrapper<TopOldOrder>()
+                    .set(TopOldOrder::getOldCustomerId,customerBo.getCustomerId())
+                    .set(TopOldOrder::getOldCompanyId,customerBo.getMemberId())
+                    .set(TopOldOrder::getOldInstitutionId,customerBo.getTrainOrgId())
+                    .set(TopOldOrder::getPurchaseOrg,customerBo.getCompanyName())
+                    .eq(TopOldOrder::getOrderSn,customerBo.getOrderSn()));
+        }
+    }
+
     private List<Long> getDayTime(Long startTime,Long endTime){
         List<Long> tiemList = new ArrayList<>();
         Long zeroTime = DateUtils.getScheduleTimeZeroTime(startTime);

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/vo/TopOldOrderGoodsListVo.java

@@ -41,6 +41,8 @@ public class TopOldOrderGoodsListVo {
 	@ApiModelProperty("商品成交价格")
 	@Excel(name = "单价")
 	private BigDecimal goodsRealPrice;
+	@ApiModelProperty("实际价格")
+	private BigDecimal realPrice;
 	/** 专业名称 */
 	@ApiModelProperty("专业名称")
 	@Excel(name = "专业")

+ 8 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/goods/vo/TopOldOrderVo.java

@@ -298,6 +298,14 @@ public class TopOldOrderVo {
 	private BigDecimal acceptanceMoney;
 	@ApiModelProperty("佣金支付类型:1微信 4现金 5网银")
 	private Integer brokerageType;
+	@ApiModelProperty("奖金方式")
+	private String brokerageStr;
+	@ApiModelProperty("奖金支付银行账号")
+	private String brokerageBankAccount;
+	@ApiModelProperty("奖金支付账号名称")
+	private String brokerageBankName;
+	@ApiModelProperty("奖金支付银行名称")
+	private String brokerageBank;
 	@ApiModelProperty("状态:0待审核,1已通过,-1未通过,2待支付,3已支付 4审核中(非自己待审核显示审核中) 5支付失败(佣金结算) 6支付中")
 	private Integer brokerageCheck;
 

+ 33 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/top/order/bo/TopOldOrderCustomerBo.java

@@ -0,0 +1,33 @@
+package com.zhongzheng.modules.top.order.bo;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2023年11月30日 14:01
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+public class TopOldOrderCustomerBo implements Serializable {
+
+    @Excel(name = "MemberId")
+    private String memberId;
+
+    @Excel(name = "CustomerId")
+    private String customerId;
+
+    @Excel(name = "TrainOrgId")
+    private String trainOrgId;
+
+    @Excel(name = "OrderNo")
+    private String orderSn;
+
+    @Excel(name = "CompanyName")
+    private String companyName;
+}