Parcourir la source

Merge remote-tracking branch 'origin/master'

吴树波 il y a 1 semaine
Parent
commit
b69e1a596f
20 fichiers modifiés avec 199 ajouts et 90 suppressions
  1. 2 0
      fs-admin/src/main/java/com/fs/his/controller/FsPackageOrderController.java
  2. 4 2
      fs-admin/src/main/java/com/fs/his/controller/FsStoreOrderController.java
  3. 4 2
      fs-company/src/main/java/com/fs/company/controller/store/FsStoreOrderController.java
  4. 2 0
      fs-service/src/main/java/com/fs/company/mapper/CompanyDeptMapper.java
  5. 6 1
      fs-service/src/main/java/com/fs/company/service/impl/CompanyServiceImpl.java
  6. 67 57
      fs-service/src/main/java/com/fs/course/service/impl/FsUserWatchStatisticsServiceImpl.java
  7. 14 1
      fs-service/src/main/java/com/fs/erp/service/impl/DfOrderServiceImpl.java
  8. 6 1
      fs-service/src/main/java/com/fs/his/enums/FsStoreOrderLogEnum.java
  9. 1 0
      fs-service/src/main/java/com/fs/his/mapper/FsStorePaymentMapper.java
  10. 2 2
      fs-service/src/main/java/com/fs/his/service/IFsStoreOrderService.java
  11. 11 0
      fs-service/src/main/java/com/fs/his/service/impl/FsPackageOrderServiceImpl.java
  12. 15 0
      fs-service/src/main/java/com/fs/his/service/impl/FsStoreAfterSalesServiceImpl.java
  13. 13 9
      fs-service/src/main/java/com/fs/his/service/impl/FsStoreOrderServiceImpl.java
  14. 3 0
      fs-service/src/main/java/com/fs/his/vo/FsPackageOrderExcelVO.java
  15. 17 0
      fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreAfterSalesScrmServiceImpl.java
  16. 12 6
      fs-service/src/main/resources/mapper/company/CompanyDeptMapper.xml
  17. 7 6
      fs-service/src/main/resources/mapper/his/FsMaterialMapper.xml
  18. 3 0
      fs-service/src/main/resources/mapper/his/FsStorePaymentMapper.xml
  19. 8 1
      fs-service/src/main/resources/mapper/his/FsUserMapper.xml
  20. 2 2
      fs-store/src/main/java/com/fs/store/controller/store/FsStoreOrderController.java

+ 2 - 0
fs-admin/src/main/java/com/fs/his/controller/FsPackageOrderController.java

@@ -77,6 +77,7 @@ public class FsPackageOrderController extends BaseController
     @GetMapping("/export")
     public AjaxResult export(FsPackageOrderParam  fsPackageOrder)
     {
+        Integer status = fsPackageOrder.getStatus();
         Integer exportType1 = exportTaskService.isExportType1(SecurityUtils.getUserId());
         if (exportType1>0){
             return AjaxResult.error("你已经有正在导出的任务");
@@ -85,6 +86,7 @@ public class FsPackageOrderController extends BaseController
         if (fsPackageOrderService.isEntityNull(fsPackageOrder)){
             return AjaxResult.error("请筛选数据导出");
         }
+        fsPackageOrder.setStatus(status); //解决isEntityNull方法后status缺失
         Long count = fsPackageOrderService.selectFsPackageOrderExcelListVOCount(fsPackageOrder);
         if (count>30000){
             return AjaxResult.error("导出数据不可超过3w条");

+ 4 - 2
fs-admin/src/main/java/com/fs/his/controller/FsStoreOrderController.java

@@ -528,7 +528,8 @@ public class FsStoreOrderController extends BaseController
     @PutMapping("/sendGoods")
     public AjaxResult sendGoods(@RequestBody FsStoreOrder fsStoreOrder)
     {
-        return toAjax(fsStoreOrderService.sendGoods(fsStoreOrder));
+        String nickName = getLoginUser().getUser().getNickName();
+        return toAjax(fsStoreOrderService.sendGoods(fsStoreOrder,nickName));
     }
     /**
      * 推送到智慧药房
@@ -560,7 +561,8 @@ public class FsStoreOrderController extends BaseController
     public AjaxResult getGoods(@RequestBody FsStoreOrder fsStoreOrder)
     {
         logger.info("总后台手动确认收货:"+fsStoreOrder.getOrderId());
-        return toAjax(fsStoreOrderService.getGoods(fsStoreOrder.getOrderId()));
+        String nickName = getLoginUser().getUser().getNickName();
+        return toAjax(fsStoreOrderService.getGoods(fsStoreOrder.getOrderId(),nickName));
     }
 
     /**

+ 4 - 2
fs-company/src/main/java/com/fs/company/controller/store/FsStoreOrderController.java

@@ -347,7 +347,8 @@ public class FsStoreOrderController extends BaseController
     @PutMapping("/sendGoods")
     public AjaxResult sendGoods(@RequestBody FsStoreOrder fsStoreOrder)
     {
-        return toAjax(fsStoreOrderService.sendGoods(fsStoreOrder));
+        String nickName = getLoginUser().getUser().getNickName();
+        return toAjax(fsStoreOrderService.sendGoods(fsStoreOrder,nickName));
     }
 
     @PutMapping("/bindCustomer")
@@ -401,7 +402,8 @@ public class FsStoreOrderController extends BaseController
     @RepeatSubmit
     public AjaxResult getGoods(@RequestBody FsStoreOrder fsStoreOrder)
     {
-        return toAjax(fsStoreOrderService.getGoods(fsStoreOrder.getOrderId()));
+        String nickName = getLoginUser().getUser().getNickName();
+        return toAjax(fsStoreOrderService.getGoods(fsStoreOrder.getOrderId(),nickName));
     }
 
     /**

+ 2 - 0
fs-service/src/main/java/com/fs/company/mapper/CompanyDeptMapper.java

@@ -116,4 +116,6 @@ public interface CompanyDeptMapper
 
     @Select("select dept_id,dept_name from company_dept where dept_name=#{deptName} limit 1")
     CompanyDept selectDeptNameBydeptName(@Param("deptName") String deptName);
+
+    void deleteCompanyDeptByCompanyIds(Long[] companyIds);
 }

+ 6 - 1
fs-service/src/main/java/com/fs/company/service/impl/CompanyServiceImpl.java

@@ -296,7 +296,12 @@ public class CompanyServiceImpl implements ICompanyService
     @Override
     public int deleteCompanyByIds(Long[] companyIds)
     {
-        return companyMapper.deleteCompanyByIds(companyIds);
+        int i = companyMapper.deleteCompanyByIds(companyIds);
+        //删除对应部门
+        if (i > 0){
+            companyDeptMapper.deleteCompanyDeptByCompanyIds(companyIds);
+        }
+        return i;
     }
 
     /**

+ 67 - 57
fs-service/src/main/java/com/fs/course/service/impl/FsUserWatchStatisticsServiceImpl.java

@@ -140,63 +140,73 @@ public class FsUserWatchStatisticsServiceImpl extends ServiceImpl<FsUserWatchSta
 
         //获取公司的会员数量和今日新增会员数量
         List<FsUserWatchStatistics> userTotal = fsUserMapper.selectFsUserTotal();
-        Map<String, FsUserWatchStatistics> userTotalMap = userTotal.stream().collect(Collectors.toMap(FsUserWatchStatistics::getCompanyId, Function.identity()));
-
-        List<FsUserWatchStatistics> list = fsUserCoursePeriods.stream()
-                .flatMap(item -> Arrays.stream(item.getCompanyId().split(","))
-                        .map(companyIdStr -> {
-                            Long companyId = Long.valueOf(companyIdStr.trim());
-                            Company company = companyMap.get(companyId);
-
-                            // 赋值
-                            FsUserWatchStatistics fsUserWatchStatistics = new FsUserWatchStatistics();
-                            BeanUtils.copyProperties(item, fsUserWatchStatistics);
-                            ZonedDateTime zonedDateTime = item.getPeriodStartingTime().atStartOfDay(ZoneId.systemDefault());
-                            // 改成使用营期线来表示营期开始时间
-                            fsUserWatchStatistics.setPeriodStartingTime(item.getPeriodLine() != null ? item.getPeriodLine() : Date.from(zonedDateTime.toInstant()));
-                            fsUserWatchStatistics.setCompanyId(companyIdStr.trim());
-                            fsUserWatchStatistics.setCompanyName(company != null ? company.getCompanyName() : null);
-
-                            FsUserWatchStatistics userTotalData = userTotalMap.get(fsUserWatchStatistics.getCompanyId());
-
-                            String key = String.format("%s-%s", fsUserWatchStatistics.getPeriodId(), fsUserWatchStatistics.getCompanyId());
-                            FsUserWatchStatistics watchData = courseWatchStatisticsMap.get(key);
-
-                            if(userTotalData != null){
-                                fsUserWatchStatistics.setUserNum(userTotalData.getUserNum());
-                                fsUserWatchStatistics.setNewUserNum(userTotalData.getNewUserNum());
-                            } else {
-                                fsUserWatchStatistics.setUserNum(0);
-                                fsUserWatchStatistics.setNewUserNum(0);
-                            }
-
-                            if(watchData != null){
-                                fsUserWatchStatistics.setWatchNum(watchData.getWatchNum());
-                                fsUserWatchStatistics.setCompleteWatchNum(watchData.getCompleteWatchNum());
-                                fsUserWatchStatistics.setCompleteWatchRate(watchData.getCompleteWatchRate());
-                            } else {
-                                fsUserWatchStatistics.setWatchNum(0);
-                                fsUserWatchStatistics.setCompleteWatchNum(0);
-                                fsUserWatchStatistics.setCompleteWatchRate(BigDecimal.ZERO);
-                            }
-
-                            // 计算上线率
-                            BigDecimal watchNum = new BigDecimal(fsUserWatchStatistics.getWatchNum());
-                            BigDecimal userNum = new BigDecimal(fsUserWatchStatistics.getUserNum());
-                            if(!userNum.equals(BigDecimal.ZERO)){
-                                BigDecimal onlineRate = watchNum.divide(userNum, 2, RoundingMode.HALF_UP).multiply(new BigDecimal(100));
-                                fsUserWatchStatistics.setOnlineRate(onlineRate);
-                            } else {
-                                fsUserWatchStatistics.setOnlineRate(BigDecimal.ZERO);
-                            }
-
-                            fsUserWatchStatistics.setCreateTime(new Date());
-                            fsUserWatchStatistics.setUpdateTime(new Date());
-                            return fsUserWatchStatistics;
-                        })).collect(Collectors.toList());
-
-        //2、分批次插入数据
-        this.batchInsert(list);
+        Map<String, FsUserWatchStatistics> userTotalMap;
+        if (userTotal != null && userTotal.size() > 0) {
+            userTotalMap = userTotal.stream().collect(Collectors.toMap(FsUserWatchStatistics::getCompanyId, Function.identity()));
+
+        } else {
+            userTotalMap = null;
+        }
+        if (!fsUserCoursePeriods.isEmpty()) {
+            List<FsUserWatchStatistics> list = fsUserCoursePeriods.stream()
+                    .flatMap(item -> Arrays.stream(item.getCompanyId().split(","))
+                            .map(companyIdStr -> {
+                                Long companyId = Long.valueOf(companyIdStr.trim());
+                                Company company = companyMap.get(companyId);
+
+                                // 赋值
+                                FsUserWatchStatistics fsUserWatchStatistics = new FsUserWatchStatistics();
+                                BeanUtils.copyProperties(item, fsUserWatchStatistics);
+                                ZonedDateTime zonedDateTime = item.getPeriodStartingTime().atStartOfDay(ZoneId.systemDefault());
+                                // 改成使用营期线来表示营期开始时间
+                                fsUserWatchStatistics.setPeriodStartingTime(item.getPeriodLine() != null ? item.getPeriodLine() : Date.from(zonedDateTime.toInstant()));
+                                fsUserWatchStatistics.setCompanyId(companyIdStr.trim());
+                                fsUserWatchStatistics.setCompanyName(company != null ? company.getCompanyName() : null);
+                                if (Objects.nonNull(userTotalMap)){
+                                    FsUserWatchStatistics userTotalData = userTotalMap.get(fsUserWatchStatistics.getCompanyId());
+                                    if(userTotalData != null){
+                                        fsUserWatchStatistics.setUserNum(userTotalData.getUserNum());
+                                        fsUserWatchStatistics.setNewUserNum(userTotalData.getNewUserNum());
+                                    } else {
+                                        fsUserWatchStatistics.setUserNum(0);
+                                        fsUserWatchStatistics.setNewUserNum(0);
+                                    }
+                                }
+
+                                String key = String.format("%s-%s", fsUserWatchStatistics.getPeriodId(), fsUserWatchStatistics.getCompanyId());
+                                FsUserWatchStatistics watchData = courseWatchStatisticsMap.get(key);
+
+
+
+                                if(watchData != null){
+                                    fsUserWatchStatistics.setWatchNum(watchData.getWatchNum());
+                                    fsUserWatchStatistics.setCompleteWatchNum(watchData.getCompleteWatchNum());
+                                    fsUserWatchStatistics.setCompleteWatchRate(watchData.getCompleteWatchRate());
+                                } else {
+                                    fsUserWatchStatistics.setWatchNum(0);
+                                    fsUserWatchStatistics.setCompleteWatchNum(0);
+                                    fsUserWatchStatistics.setCompleteWatchRate(BigDecimal.ZERO);
+                                }
+
+                                // 计算上线率
+                                BigDecimal watchNum = new BigDecimal(fsUserWatchStatistics.getWatchNum());
+                                BigDecimal userNum = new BigDecimal(fsUserWatchStatistics.getUserNum());
+                                if(!userNum.equals(BigDecimal.ZERO)){
+                                    BigDecimal onlineRate = watchNum.divide(userNum, 2, RoundingMode.HALF_UP).multiply(new BigDecimal(100));
+                                    fsUserWatchStatistics.setOnlineRate(onlineRate);
+                                } else {
+                                    fsUserWatchStatistics.setOnlineRate(BigDecimal.ZERO);
+                                }
+
+                                fsUserWatchStatistics.setCreateTime(new Date());
+                                fsUserWatchStatistics.setUpdateTime(new Date());
+                                return fsUserWatchStatistics;
+                            })).collect(Collectors.toList());
+            //2、分批次插入数据
+            this.batchInsert(list);
+        }
+
+
     }
 
     private void batchInsert(List<FsUserWatchStatistics> list) {

+ 14 - 1
fs-service/src/main/java/com/fs/erp/service/impl/DfOrderServiceImpl.java

@@ -20,6 +20,7 @@ import com.fs.erp.service.IErpOrderService;
 import com.fs.his.config.FsSysConfig;
 import com.fs.his.domain.*;
 import com.fs.his.enums.FsStoreOrderLogEnum;
+import com.fs.his.enums.FsStoreOrderStatusEnum;
 import com.fs.his.mapper.*;
 import com.fs.his.param.FsStoreOrderSalesParam;
 import com.fs.his.service.IFsExpressService;
@@ -263,6 +264,10 @@ public class DfOrderServiceImpl implements IErpOrderService
             if ("运单不存在".equals(dfApiResponse.getMsg())){
                 //取消订单
                 FsStoreOrderSalesParam afterSalesParam = new FsStoreOrderSalesParam();
+                //修改订单状态 方便后续重新发货
+                order.setStatus(FsStoreOrderStatusEnum.STATUS_2.getValue());
+                order.setExtendOrderId("");
+                fsStoreOrderMapper.updateFsStoreOrder(order);
                 afterSalesParam.setOrderId(order.getOrderId());
                 afterSalesParam.setReasons("代服管家取消订单");
                 afterSalesParam.setOperator("代服管家");
@@ -272,6 +277,8 @@ public class DfOrderServiceImpl implements IErpOrderService
                 df.setStatus(2);
                 df.setUpdateTime(new Date());
                 fsStoreOrderDfMapper.updateFsStoreOrderDf(df);
+                fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.REFUND_ORDER_DF.getValue(),
+                        "运单不存在,"+FsStoreOrderLogEnum.REFUND_ORDER_DF.getDesc());
                 log.info("代服管家 订单取消成功: {}", response);
             }
             //3.处理请求结果
@@ -329,7 +336,7 @@ public class DfOrderServiceImpl implements IErpOrderService
                         Map<String, Object> config = (Map<String, Object>) JSON.parse(sysConfig.getConfigValue());
                         Object isUpdateOrder = config.get("isUpdateOrder");
                         if (isUpdateOrder == null || "1".equals(isUpdateOrder.toString())) {
-                            fsStoreOrderService.getGoods(order.getOrderId());
+                            fsStoreOrderService.getGoods(order.getOrderId(),"物流自动");
                         }
                         break;
                     case 10:
@@ -339,6 +346,10 @@ public class DfOrderServiceImpl implements IErpOrderService
                         if (fsStoreOrders != null && !fsStoreOrders.isEmpty()) {
                             fsStoreOrders.forEach(tempOrder -> {
                                 FsStoreOrderSalesParam afterSalesParam = new FsStoreOrderSalesParam();
+                                //修改订单状态 方便后续重新发货
+                                order.setStatus(FsStoreOrderStatusEnum.STATUS_2.getValue());
+                                order.setExtendOrderId("");
+                                fsStoreOrderMapper.updateFsStoreOrder(order);
                                 afterSalesParam.setOrderId(tempOrder.getOrderId());
                                 afterSalesParam.setReasons("代服管家取消订单");
                                 afterSalesParam.setOperator("代服管家");
@@ -348,6 +359,8 @@ public class DfOrderServiceImpl implements IErpOrderService
                                 df.setStatus(2);
                                 df.setUpdateTime(new Date());
                                 fsStoreOrderDfMapper.updateFsStoreOrderDf(df);
+                                fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.REFUND_ORDER_DF.getValue(),
+                                        FsStoreOrderLogEnum.REFUND_ORDER_DF.getDesc());
                                 log.info("代服管家 订单取消成功: {}", response);
                             });
                         }

+ 6 - 1
fs-service/src/main/java/com/fs/his/enums/FsStoreOrderLogEnum.java

@@ -13,6 +13,7 @@ public enum FsStoreOrderLogEnum {
     REMOVE_ORDER("remove_order","删除订单"),
     EVAL_ORDER("order_eval","用户评价"),
     REFUND_ORDER_APPLY("apply_refund","用户申请退款"),
+    REFUND_ORDER_DF("refund_order_df","代服取消订单,申请退款"),
     TAKE_ORDER_DELIVERY("user_take_delivery","用户已收货"),
     PAY_ORDER_SUCCESS("pay_success","用户付款成功"),
     PAY_REMAIN_ORDER_SUCCESS("pay_remain_success","用户付款尾款成功"),
@@ -24,8 +25,12 @@ public enum FsStoreOrderLogEnum {
     FINISH_ORDER("finish","确认收货"),
     LOCK_TUI_MONEY("lock_tui_money","冻结推广金"),
     UNLOCK_TUI_MONEY("unlock_tui_money","解冻推广金"),
-    EDIT_ORDER_PRICE("edit_order_money","改价");
+    EDIT_ORDER_PRICE("edit_order_money","改价"),
 
+    PLATFORM_REVIEW_SALES("PLATFORM_REVIEW_SALES","平台已审核"),
+    WAREHOUSE_REVIEW_SALES("WAREHOUSE_REVIEW_SALES","仓库已审核"),
+    FINANCE_REVIEW_SALES("FINANCE_REVIEW_SALES","财务已审核"),
+    PLATFORM_REVIEW_CANCEL("PLATFORM_REVIEW_CANCEL","平台已取消售后");
     private String value;
     private String desc;
 

+ 1 - 0
fs-service/src/main/java/com/fs/his/mapper/FsStorePaymentMapper.java

@@ -312,4 +312,5 @@ public interface FsStorePaymentMapper
             "</script>"})
     List<FsStorePaymentVO> selectFsStorePaymentListQueryVO(@Param("maps") FsStorePaymentParam fsStorePayment);
 
+    FsStorePayment selectLastByBusinessCode(@Param("orderSn")String orderSn);
 }

+ 2 - 2
fs-service/src/main/java/com/fs/his/service/IFsStoreOrderService.java

@@ -93,9 +93,9 @@ public interface IFsStoreOrderService
     List<FsStoreOrderLogs> selectFsStoreOrderLogsList(String orderId);
 
 
-    int sendGoods(FsStoreOrder fsStoreOrder);
+    int sendGoods(FsStoreOrder fsStoreOrder,String opeName);
 
-    int getGoods(Long orderId);
+    int getGoods(Long orderId,String opeName);
 
     int updateMoney(FsStoreOrder fsStoreOrder);
 

+ 11 - 0
fs-service/src/main/java/com/fs/his/service/impl/FsPackageOrderServiceImpl.java

@@ -7,6 +7,7 @@ import java.time.Duration;
 import java.time.LocalDate;
 import java.time.ZoneId;
 import java.util.*;
+import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.TimeUnit;
 
 import cn.hutool.core.bean.BeanUtil;
@@ -1396,9 +1397,19 @@ public class FsPackageOrderServiceImpl implements IFsPackageOrderService
         String configValue = sysConfigMapper.selectConfigByConfigKey("his.package").getConfigValue();
         Map<String, Object> config = (Map<String, Object>) JSON.parse(configValue);
         Integer followRate = (Integer)config.get("followRate");
+        List<CompletableFuture<Void>> futures = new ArrayList<>();
         for (FsPackageOrderExcelVO vo : list) {
             vo.setFollowRate(followRate);
+            //银行交易单号
+            CompletableFuture<Void> future = CompletableFuture.runAsync(() -> {
+                FsStorePayment fsStorePayment = fsStorePaymentMapper.selectLastByBusinessCode(vo.getOrderSn());
+                if (fsStorePayment != null) {
+                    vo.setBusinessCode("package-" + fsStorePayment.getBusinessCode());
+                }
+            });
+            futures.add(future);
         }
+        CompletableFuture.allOf(futures.toArray(new CompletableFuture[0])).join();
         ExcelUtil<FsPackageOrderExcelVO> util = new ExcelUtil<FsPackageOrderExcelVO>(FsPackageOrderExcelVO.class);
         AjaxResult result= util.exportExcel(list, "套餐包导出");
         FsExportTask task=exportTaskService.selectFsExportTaskByTaskId(fsPackageOrder.getTaskId());

+ 15 - 0
fs-service/src/main/java/com/fs/his/service/impl/FsStoreAfterSalesServiceImpl.java

@@ -32,6 +32,7 @@ import com.fs.his.dto.FsStoreAfterSalesProductDTO;
 import com.fs.his.dto.PayConfigDTO;
 import com.fs.his.enums.FsInquiryOrderStatusEnum;
 import com.fs.his.enums.FsStoreAfterSalesStatusEnum;
+import com.fs.his.enums.FsStoreOrderLogEnum;
 import com.fs.his.enums.FsStoreOrderStatusEnum;
 import com.fs.his.mapper.*;
 import com.fs.his.param.*;
@@ -152,6 +153,8 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService {
     IFsStoreOrderBillLogService fsStoreOrderBillLogService;
     @Autowired
     private ConfigUtil configUtil;
+    @Autowired
+    private IFsStoreOrderLogsService fsStoreOrderLogsService;
 
     /**
      * 查询售后记录
@@ -280,6 +283,9 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService {
         logs.setChangeMessage(FsStoreAfterSalesStatusEnum.STATUS_1.getDesc());
         logs.setOperator(fsStoreAfterSales.getOperator());
         fsStoreAfterSalesLogsMapper.insertFsStoreAfterSalesLogs(logs);
+        //添加订单日志
+        fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.PLATFORM_REVIEW_SALES.getValue(),
+                logs.getOperator()+" "+FsStoreOrderLogEnum.PLATFORM_REVIEW_SALES.getDesc());
         return 1;
     }
 
@@ -306,6 +312,9 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService {
         logs.setChangeMessage(FsStoreAfterSalesStatusEnum.STATUS_6.getDesc() + " " + fsStoreAfterSales.getRemark());
         logs.setOperator(fsStoreAfterSales.getOperator());
         fsStoreAfterSalesLogsMapper.insertFsStoreAfterSalesLogs(logs);
+        //添加订单日志
+        fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.PLATFORM_REVIEW_CANCEL.getValue(),
+                logs.getOperator() + " " +FsStoreOrderLogEnum.PLATFORM_REVIEW_CANCEL.getDesc());
 //        FsStoreOrderLogs Logs = new FsStoreOrderLogs();
 //        Logs.setChangeMessage("已取消退款");
 //        Logs.setOrderId(order.getOrderId());
@@ -383,6 +392,9 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService {
         logs.setChangeMessage(FsStoreAfterSalesStatusEnum.STATUS_4.getDesc());
         logs.setOperator(fsStoreAfterSales.getOperator());
         fsStoreAfterSalesLogsMapper.insertFsStoreAfterSalesLogs(logs);
+        //添加订单日志
+        fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.FINANCE_REVIEW_SALES.getValue(),
+                logs.getOperator() + " " +FsStoreOrderLogEnum.FINANCE_REVIEW_SALES.getDesc());
         //更改订单状态
         FsStoreOrder or = new FsStoreOrder();
         or.setOrderId(order.getOrderId());
@@ -870,6 +882,9 @@ public class FsStoreAfterSalesServiceImpl implements IFsStoreAfterSalesService {
         logs.setChangeMessage(FsStoreAfterSalesStatusEnum.STATUS_3.getDesc());
         logs.setOperator(fsStoreAfterSales.getOperator());
         fsStoreAfterSalesLogsMapper.insertFsStoreAfterSalesLogs(logs);
+        //添加订单日志
+        fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.WAREHOUSE_REVIEW_SALES.getValue(),
+                logs.getOperator() + " " +FsStoreOrderLogEnum.WAREHOUSE_REVIEW_SALES.getDesc());
         return 1;
     }
 

+ 13 - 9
fs-service/src/main/java/com/fs/his/service/impl/FsStoreOrderServiceImpl.java

@@ -426,7 +426,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
 
 
     @Override
-    public int sendGoods(FsStoreOrder fsStoreOrder) {
+    public int sendGoods(FsStoreOrder fsStoreOrder,String opeName) {
         FsStoreOrder order = fsStoreOrderMapper.selectFsStoreOrderByOrderId(fsStoreOrder.getOrderId());
         if (order == null) throw new CustomException("订单不存在");
         if (order.getStatus() != 2) throw new CustomException("非法更改");
@@ -445,12 +445,11 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
             companyService.subtractCompanyMoney(order);
         }
         FsStoreOrderLogs Logs = new FsStoreOrderLogs();
-        Logs.setChangeMessage("订单发货");
+        Logs.setChangeMessage(opeName+" 订单发货");
         Logs.setOrderId(fsStoreOrder.getOrderId());
         Logs.setChangeTime(new DateTime());
         Logs.setChangeType("delivery_goods");
         fsStoreOrderLogsMapper.insertFsStoreOrderLogs(Logs);
-
         String lastFourNumber = "";
         if (order.getDeliveryCode().equals(ShipperCodeEnum.SF.getValue())) {
             lastFourNumber = order.getUserPhone();
@@ -463,8 +462,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
     }
 
     @Override
-    public int getGoods(Long orderId) {
-
+    public int getGoods(Long orderId,String opeName) {
         FsStoreOrder order = fsStoreOrderMapper.selectFsStoreOrderByOrderId(orderId);
         if (order == null) throw new CustomException("订单不存在");
         if (order.getStatus() != FsStoreOrderStatusEnum.STATUS_3.getValue()) throw new CustomException("非法更改");
@@ -482,7 +480,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
         fsUserWatchService.addUserWatch(order);
         int i = fsStoreOrderMapper.updateFsStoreOrder(o1);
         fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.FINISH_ORDER.getValue(),
-                FsStoreOrderLogEnum.FINISH_ORDER.getDesc());
+                opeName + " " +FsStoreOrderLogEnum.FINISH_ORDER.getDesc());
         return i;
     }
 
@@ -1921,7 +1919,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
                                 this.updateFsStoreOrder(map);
                                 //如果是正常签收,更新订单状态
                                 if (dto.getState().equals("3") && (dto.getStateEx().equals("301") || dto.getStateEx().equals("302") || dto.getStateEx().equals("304") || dto.getStateEx().equals("311"))) {
-                                    this.getGoods(order.getOrderId());
+                                    this.getGoods(order.getOrderId(),"物流签收");
                                     //app订单签收通知
                                     try {
                                         uniPush2Service.pushOne(
@@ -2050,7 +2048,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
             Map<String, Object> config = (Map<String, Object>) JSON.parse(sysConfig.getConfigValue());
             Object isUpdateOrder = config.get("isUpdateOrder");
             if (isUpdateOrder == null || "1".equals(isUpdateOrder.toString())) {
-                this.getGoods(order.getOrderId());
+                this.getGoods(order.getOrderId(),"物流签收");
             }
         }
         return R.ok();
@@ -3445,7 +3443,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
                 Map<String, Object> config = (Map<String, Object>) JSON.parse(sysConfig.getConfigValue());
                 Object isUpdateOrder = config.get("isUpdateOrder");
                 if (isUpdateOrder == null || "1".equals(isUpdateOrder.toString())) {
-                    this.getGoods(order.getOrderId());
+                    this.getGoods(order.getOrderId(),"物流签收");
                 }
 
             }
@@ -3541,6 +3539,10 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
                             if (fsStoreOrders != null && !fsStoreOrders.isEmpty()) {
                                 fsStoreOrders.forEach(order -> {
                                     FsStoreOrderSalesParam afterSalesParam = new FsStoreOrderSalesParam();
+                                    //修改订单状态 方便后续重新发货
+                                    order.setStatus(FsStoreOrderStatusEnum.STATUS_2.getValue());
+                                    order.setExtendOrderId("");
+                                    fsStoreOrderMapper.updateFsStoreOrder(order);
                                     afterSalesParam.setOrderId(order.getOrderId());
                                     afterSalesParam.setReasons("代服管家取消订单");
                                     afterSalesParam.setOperator("代服管家");
@@ -3550,6 +3552,8 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService {
                                     df.setStatus(2);
                                     df.setUpdateTime(new Date());
                                     fsStoreOrderDfMapper.updateFsStoreOrderDf(df);
+                                    fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.REFUND_ORDER_DF.getValue(),
+                                            FsStoreOrderLogEnum.REFUND_ORDER_DF.getDesc());
                                 });
                             }
                         }

+ 3 - 0
fs-service/src/main/java/com/fs/his/vo/FsPackageOrderExcelVO.java

@@ -10,6 +10,9 @@ import java.util.Date;
 @Data
 public class FsPackageOrderExcelVO {
 
+    @Excel(name = "支付订单号")
+    private String businessCode;
+
     @Excel(name = "订单号")
     private String orderSn;
 

+ 17 - 0
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreAfterSalesScrmServiceImpl.java

@@ -21,8 +21,10 @@ import com.fs.erp.service.IErpOrderService;
 import com.fs.his.config.FsSysConfig;
 import com.fs.his.domain.*;
 import com.fs.his.enums.FsStoreAfterSalesStatusEnum;
+import com.fs.his.enums.FsStoreOrderLogEnum;
 import com.fs.his.enums.FsStoreOrderStatusEnum;
 import com.fs.his.mapper.*;
+import com.fs.his.service.IFsStoreOrderLogsService;
 import com.fs.his.utils.ConfigUtil;
 import com.fs.his.vo.FsStoreAfterSalesExcelVO;
 import com.fs.his.vo.FsStoreAfterSalesLogsVO;
@@ -181,6 +183,9 @@ public class FsStoreAfterSalesScrmServiceImpl implements IFsStoreAfterSalesScrmS
     @Autowired
     private TzBankService tzBankService;
 
+    @Autowired
+    private IFsStoreOrderLogsService fsStoreOrderLogsService;
+
     /**
      * 查询售后记录
      *
@@ -1106,6 +1111,9 @@ public class FsStoreAfterSalesScrmServiceImpl implements IFsStoreAfterSalesScrmS
         logs.setChangeMessage(FsStoreAfterSalesStatusEnum.STATUS_1.getDesc());
         logs.setOperator(fsStoreAfterSales.getOperator());
         fsStoreAfterSalesLogsMapper.insertFsStoreAfterSalesLogs(logs);
+        //添加订单日志
+        fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.PLATFORM_REVIEW_SALES.getValue(),
+                logs.getOperator()+" "+FsStoreOrderLogEnum.PLATFORM_REVIEW_SALES.getDesc());
         return 1;
     }
 
@@ -1128,6 +1136,9 @@ public class FsStoreAfterSalesScrmServiceImpl implements IFsStoreAfterSalesScrmS
         logs.setChangeMessage(FsStoreAfterSalesStatusEnum.STATUS_3.getDesc());
         logs.setOperator(fsStoreAfterSales.getOperator());
         fsStoreAfterSalesLogsMapper.insertFsStoreAfterSalesLogs(logs);
+        //添加订单日志
+        fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.WAREHOUSE_REVIEW_SALES.getValue(),
+                logs.getOperator() + " " +FsStoreOrderLogEnum.WAREHOUSE_REVIEW_SALES.getDesc());
         return 1;
     }
 
@@ -1153,6 +1164,9 @@ public class FsStoreAfterSalesScrmServiceImpl implements IFsStoreAfterSalesScrmS
         logs.setChangeMessage(FsStoreAfterSalesStatusEnum.STATUS_6.getDesc() + " " + fsStoreAfterSales.getRemark());
         logs.setOperator(fsStoreAfterSales.getOperator());
         fsStoreAfterSalesLogsMapper.insertFsStoreAfterSalesLogs(logs);
+        //添加订单日志
+        fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.PLATFORM_REVIEW_CANCEL.getValue(),
+                logs.getOperator() + " " +FsStoreOrderLogEnum.PLATFORM_REVIEW_CANCEL.getDesc());
 //        FsStoreOrderLogsScrm Logs = new FsStoreOrderLogsScrm();
 //        Logs.setChangeMessage("已取消退款");
 //        Logs.setOrderId(order.getOrderId());
@@ -1229,6 +1243,9 @@ public class FsStoreAfterSalesScrmServiceImpl implements IFsStoreAfterSalesScrmS
         logs.setChangeMessage(FsStoreAfterSalesStatusEnum.STATUS_4.getDesc());
         logs.setOperator(fsStoreAfterSales.getOperator());
         fsStoreAfterSalesLogsMapper.insertFsStoreAfterSalesLogs(logs);
+        //添加订单日志
+        fsStoreOrderLogsService.create(order.getOrderId(), FsStoreOrderLogEnum.FINANCE_REVIEW_SALES.getValue(),
+                logs.getOperator() + " " +FsStoreOrderLogEnum.FINANCE_REVIEW_SALES.getDesc());
         //更改订单状态
         FsStoreOrderScrm or = new FsStoreOrderScrm();
         or.setId(order.getOrderId());

+ 12 - 6
fs-service/src/main/resources/mapper/company/CompanyDeptMapper.xml

@@ -3,7 +3,7 @@
 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fs.company.mapper.CompanyDeptMapper">
-    
+
     <resultMap type="CompanyDept" id="CompanyDeptResult">
         <result property="deptId"    column="dept_id"    />
         <result property="parentId"    column="parent_id"    />
@@ -28,7 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="selectCompanyDeptList" parameterType="CompanyDept" resultMap="CompanyDeptResult">
         <include refid="selectCompanyDeptVo"/>
-        <where>  
+        <where>
             <if test="parentId != null "> and parent_id = #{parentId}</if>
             <if test="companyId != null "> and company_id = #{companyId}</if>
             <if test="ancestors != null  and ancestors != ''"> and ancestors = #{ancestors}</if>
@@ -40,12 +40,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="status != null  and status != ''"> and status = #{status}</if>
         </where>
     </select>
-    
+
     <select id="selectCompanyDeptById" parameterType="Long" resultMap="CompanyDeptResult">
         <include refid="selectCompanyDeptVo"/>
         where dept_id = #{deptId}
     </select>
-        
+
     <insert id="insertCompanyDept" parameterType="CompanyDept" useGeneratedKeys="true" keyProperty="deptId">
         insert into company_dept
         <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -108,11 +108,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </delete>
 
     <delete id="deleteCompanyDeptByIds" parameterType="String">
-        delete from company_dept where dept_id in 
+        delete from company_dept where dept_id in
         <foreach item="deptId" collection="array" open="(" separator="," close=")">
             #{deptId}
         </foreach>
     </delete>
+    <delete id="deleteCompanyDeptByCompanyIds">
+        delete from company_dept where company_id in
+        <foreach item="companyId" collection="array" open="(" separator="," close=")">
+            #{companyId}
+        </foreach>
+    </delete>
 
     <select id="selectDeptListByRoleId" resultType="Integer">
         select d.dept_id
@@ -165,4 +171,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         select * from company_dept where find_in_set(#{deptId}, ancestors)
     </select>
 
-</mapper>
+</mapper>

+ 7 - 6
fs-service/src/main/resources/mapper/his/FsMaterialMapper.xml

@@ -3,7 +3,7 @@
 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fs.his.mapper.FsMaterialMapper">
-    
+
     <resultMap type="FsMaterial" id="FsMaterialResult">
         <result property="materialId"    column="material_id"    />
         <result property="type"    column="type"    />
@@ -23,7 +23,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="selectFsMaterialList" parameterType="FsMaterial" resultMap="FsMaterialResult">
         <include refid="selectFsMaterialVo"/>
-        <where>  
+        <where>
             <if test="type != null  and type != ''"> and type = #{type}</if>
             <if test="groupId != null "> and group_id = #{groupId}</if>
             <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
@@ -32,13 +32,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="createUserId != null "> and create_user_id = #{createUserId}</if>
             <if test="storeId != null "> and store_id = #{storeId}</if>
         </where>
+        order by create_time desc
     </select>
-    
+
     <select id="selectFsMaterialByMaterialId" parameterType="Long" resultMap="FsMaterialResult">
         <include refid="selectFsMaterialVo"/>
         where material_id = #{materialId}
     </select>
-        
+
     <insert id="insertFsMaterial" parameterType="FsMaterial" useGeneratedKeys="true" keyProperty="materialId">
         insert into fs_material
         <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -86,9 +87,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </delete>
 
     <delete id="deleteFsMaterialByMaterialIds" parameterType="String">
-        delete from fs_material where material_id in 
+        delete from fs_material where material_id in
         <foreach item="materialId" collection="array" open="(" separator="," close=")">
             #{materialId}
         </foreach>
     </delete>
-</mapper>
+</mapper>

+ 3 - 0
fs-service/src/main/resources/mapper/his/FsStorePaymentMapper.xml

@@ -261,4 +261,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             and DATE(sp.pay_time) &lt;= DATE(#{maps.payEndTime})
         </if>
     </select>
+    <select id="selectLastByBusinessCode" resultType="com.fs.his.domain.FsStorePayment">
+        select * from fs_store_payment where business_code like #{orderSn} order by create_time desc limit 1
+    </select>
 </mapper>

+ 8 - 1
fs-service/src/main/resources/mapper/his/FsUserMapper.xml

@@ -1853,7 +1853,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             1 = 1
             AND (u.nickname IS NOT NULL or u.nick_name IS NOT NULL)
             <if test = "maps.nickname != null and  maps.nickname !='' " >
-                AND u.nickname LIKE CONCAT("%",#{maps.nickname},"%")
+                AND (
+                     u.nickname LIKE CONCAT("%",#{maps.nickname},"%")
+                    or
+                    u.nick_name LIKE CONCAT("%",#{maps.nickname},"%")
+                )
             </if >
             <if test = "maps.userId != null and  maps.userId !='' " >
                 AND u.user_id = #{maps.userId}
@@ -1875,6 +1879,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test = "maps.companyId != null and maps.companyId != '' " >
                 AND company.company_id = #{maps.companyId}
             </if >
+            <if test = "maps.companyUserId != null" >
+                AND company_user.user_id = #{maps.companyUserId}
+            </if >
             <if test = "maps.projectId != null" >
                 AND ucu.project_id = #{maps.projectId}
             </if >

+ 2 - 2
fs-store/src/main/java/com/fs/store/controller/store/FsStoreOrderController.java

@@ -245,7 +245,7 @@ public class FsStoreOrderController extends BaseController
     @PutMapping("/sendGoods")
     public AjaxResult sendGoods(@RequestBody FsStoreOrder fsStoreOrder)
     {
-        return toAjax(fsStoreOrderService.sendGoods(fsStoreOrder));
+        return toAjax(fsStoreOrderService.sendGoods(fsStoreOrder,"店铺端"));
     }
 
 
@@ -256,7 +256,7 @@ public class FsStoreOrderController extends BaseController
     @PutMapping("/getGoods")
     public AjaxResult getGoods(@RequestBody FsStoreOrder fsStoreOrder)
     {
-        return toAjax(fsStoreOrderService.getGoods(fsStoreOrder.getOrderId()));
+        return toAjax(fsStoreOrderService.getGoods(fsStoreOrder.getOrderId(),"店铺端"));
     }
 
     /**