فهرست منبع

Merge remote-tracking branch 'origin/master'

ct 1 هفته پیش
والد
کامیت
49ed746316

+ 8 - 8
fs-admin/src/main/java/com/fs/hisStore/task/LiveTask.java

@@ -150,10 +150,10 @@ public class LiveTask {
     private JdbcTemplate jdbcTemplate;
 
     public void PushErp() throws ParseException {
-        List<Long> ids = liveOrderMapper.selectOrderIdByNoErp();
-        for (Long id : ids) {
-            liveOrderService.createOmsOrder(id);
-        }
+//        List<Long> ids = liveOrderMapper.selectOrderIdByNoErp();
+//        for (Long id : ids) {
+//            liveOrderService.createOmsOrder(id);
+//        }
     }
 
     public void redPacketSubMoney() throws Exception {
@@ -317,10 +317,10 @@ public class LiveTask {
     }
 
     public void updateOrderItem() throws ParseException {
-        List<Long> ids = liveOrderService.selectOrderIdByNoErp();
-        for (Long id : ids) {
-            liveOrderService.createOmsOrder(id);
-        }
+//        List<Long> ids = liveOrderService.selectOrderIdByNoErp();
+//        for (Long id : ids) {
+//            liveOrderService.createOmsOrder(id);
+//        }
     }
 
     //每天执行一次

+ 1 - 1
fs-admin/src/main/java/com/fs/live/controller/LiveAutoTaskController.java

@@ -66,7 +66,7 @@ public class LiveAutoTaskController extends BaseController
         return getDataTable(list);
     }
 
-    @PreAuthorize("@ss.hasPermi('live:task:list')")
+//    @PreAuthorize("@ss.hasPermi('live:task:list')")
     @GetMapping("/consoleList")
     public TableDataInfo consoleList(LiveAutoTask liveAutoTask)
     {

+ 11 - 5
fs-admin/src/main/java/com/fs/live/controller/LiveOrderController.java

@@ -484,8 +484,12 @@ public class LiveOrderController extends BaseController
     {
         logger.info("手动推管易 订单号: {}",orderCode);
         LiveOrder order=liveOrderService.selectOrderIdByOrderCode(orderCode);
-        liveOrderService.createOmsOrder(order.getOrderId());
-        return R.ok();
+        if (orderPaymentService.selectByBussinessId(order.getOrderId()) != null) {
+            liveOrderService.createOmsOrder(order.getOrderId());
+            return R.ok();
+        }
+        return R.error("订单未支付!");
+
     }
 
     @Log(title = "同步管易物流单号", businessType = BusinessType.UPDATE)
@@ -636,9 +640,11 @@ public class LiveOrderController extends BaseController
                     orderLogsService.create(orderId, FsStoreOrderLogEnum.SET_PUSH_ACCOUNT.getValue(),
                             nickName + " " +FsStoreOrderLogEnum.SET_PUSH_ACCOUNT.getDesc() + ":" + df.getLoginAccount());
                 }
-                liveOrderService.createOmsOrder(orderId);
-                orderLogsService.create(orderId, FsStoreOrderLogEnum.PUSH_ORDER_ERP.getValue(),
-                        nickName + " " +FsStoreOrderLogEnum.PUSH_ORDER_ERP.getDesc() + ":" + df.getLoginAccount());
+                if (orderPaymentService.selectByBussinessId(orderId) != null) {
+                    liveOrderService.createOmsOrder(orderId);
+                    orderLogsService.create(orderId, FsStoreOrderLogEnum.PUSH_ORDER_ERP.getValue(),
+                            nickName + " " +FsStoreOrderLogEnum.PUSH_ORDER_ERP.getDesc() + ":" + df.getLoginAccount());
+                }
             } catch (ParseException e) {
                 throw new RuntimeException(e);
             }

+ 1 - 1
fs-company/src/main/java/com/fs/company/controller/live/LiveAutoTaskController.java

@@ -55,7 +55,7 @@ public class LiveAutoTaskController extends BaseController
         return getDataTable(list);
     }
 
-    @PreAuthorize("@ss.hasPermi('live:task:list')")
+//    @PreAuthorize("@ss.hasPermi('live:task:list')")
     @GetMapping("/consoleList")
     public TableDataInfo consoleList(LiveAutoTask liveAutoTask)
     {

+ 2 - 4
fs-ipad-task/src/main/java/com/fs/app/service/IpadSendServer.java

@@ -7,6 +7,7 @@ import com.fs.common.core.redis.RedisCache;
 import com.fs.common.exception.base.BaseException;
 import com.fs.common.utils.StringUtils;
 import com.fs.common.utils.date.DateUtil;
+import com.fs.common.utils.spring.SpringUtils;
 import com.fs.company.domain.CompanyMiniapp;
 import com.fs.company.service.ICompanyMiniappService;
 import com.fs.course.domain.FsCoursePlaySourceConfig;
@@ -52,9 +53,6 @@ public class IpadSendServer {
     private final RedisCache redisCache;
     private final ICompanyMiniappService companyMiniappService;
 
-    @Value("${cloud_host.company_name}")
-    private String signProjectName;
-
     private void sendMiniProgram(BaseVo vo, QwSopCourseFinishTempSetting.Setting content, Map<String, FsCoursePlaySourceConfig> miniMap, Long companyId) {
         String appid = content.getMiniprogramAppid();
         if(companyId != null && content.getMiniType() != null){
@@ -63,7 +61,7 @@ public class IpadSendServer {
             if(!collect.isEmpty() && collect.get(0) != null && StringUtils.isNotEmpty(collect.get(0).getAppId())){
                 appid = collect.get(0).getAppId();
             }
-
+            String signProjectName = SpringUtils.getProperty("cloud_host.company_name");
             //区分新老用户,新用户发送备用小程序,老用户发送主小程序
             if(signProjectName.equals("济南联志健康")){
                 if(!vo.isRoom()){

+ 12 - 0
fs-live-app/src/main/java/com/fs/live/websocket/service/WebSocketServer.java

@@ -365,6 +365,9 @@ public class WebSocketServer {
                 case "goods":
                     sendGoodsMessage(msg);
                     break;
+                case "deleteMsg":
+                    deleteMsg(liveId,msg);
+                    break;
                 case "red":
                     processRed(liveId, msg);
                     break;
@@ -385,6 +388,15 @@ public class WebSocketServer {
         }
     }
 
+    private void deleteMsg(long liveId,SendMsgVo msg) {
+        SendMsgVo sendMsgVo = new SendMsgVo();
+        sendMsgVo.setLiveId(liveId);
+        sendMsgVo.setUserType(0L);
+        sendMsgVo.setCmd("deleteMsg");
+        sendMsgVo.setMsg(msg.getMsg());
+        broadcastMessage(liveId, JSONObject.toJSONString(R.ok().put("data", sendMsgVo)));
+    }
+
     private void processCoupon(long liveId, SendMsgVo msg) {
         JSONObject jsonObject = JSON.parseObject(msg.getData());
         Integer status = jsonObject.getInteger("status");

+ 1 - 1
fs-service/src/main/java/com/fs/live/mapper/LiveOrderMapper.java

@@ -110,7 +110,7 @@ public interface LiveOrderMapper {
     @Select("select order_id from live_order where `status` = 2")
     List<Long> selectSyncExpressIds();
 
-    @Select("select order_id from live_order where `status` = 1 and extend_order_id is null ")
+    @Select("select order_id from live_order where `status` = 1 and extend_order_id is null and is_pay='1'")
     List<Long> selectOrderIdByNoErp();
 
     @Select("select * from live_order where extend_order_id is not null and `status`=2")

+ 2 - 0
fs-service/src/main/java/com/fs/live/service/ILiveOrderPaymentService.java

@@ -65,4 +65,6 @@ public interface ILiveOrderPaymentService {
     LiveOrderPaymentVo selectLiveOrderPaymentByPaymentIdNew(Long paymentId);
 
     List<LiveOrderPayment> selectLiveOrderPaymentByOrderId(Long id);
+
+    LiveOrderPayment selectByBussinessId(Long orderCode);
 }

+ 3 - 1
fs-service/src/main/java/com/fs/live/service/impl/LiveAfterSalesServiceImpl.java

@@ -873,7 +873,9 @@ public class LiveAfterSalesServiceImpl implements ILiveAfterSalesService {
                 }
 
                 try {
-                    liveOrderService.createOmsOrder(order.getOrderId());
+                    if (liveOrderPaymentMapper.selectByBuissnessId(Long.valueOf(order.getOrderCode())) != null) {
+                        liveOrderService.createOmsOrder(order.getOrderId());
+                    }
                 } catch (Exception e) {
                     log.error("推送ERP订单失败!",e);
                 }

+ 5 - 0
fs-service/src/main/java/com/fs/live/service/impl/LiveOrderPaymentServiceImpl.java

@@ -62,6 +62,11 @@ public class LiveOrderPaymentServiceImpl implements ILiveOrderPaymentService {
         return baseMapper.selectLiveOrderPaymentByOrderId(id);
     }
 
+    @Override
+    public LiveOrderPayment selectByBussinessId(Long orderId) {
+        return baseMapper.selectByBuissnessId(orderId);
+    }
+
     /**
      * 新增支付明细
      *

+ 47 - 0
fs-service/src/main/java/com/fs/live/service/impl/LiveOrderServiceImpl.java

@@ -624,6 +624,47 @@ public class LiveOrderServiceImpl implements ILiveOrderService {
 //        return R.error();
 //
 //    }
+    private void createOmsOrderCall(LiveOrder inOrder)  throws ParseException {
+        LiveOrder order = liveOrderMapper.selectLiveOrderByOrderId(String.valueOf(inOrder.getOrderId()));
+        LiveOrderPayment liveOrderPayment = liveOrderPaymentMapper.selectByBuissnessId(order.getOrderId());
+        if (liveOrderPayment == null) {
+            log.info("订单:{},未找到支付信息,不进行推送", order.getOrderCode());
+            return ;
+        }
+        FsSysConfig erpConfig = configUtil.generateStructConfigByKey(SysConfigEnum.HIS_CONFIG.getKey(), FsSysConfig.class);
+        List<Long> noErpCompany = erpConfig.getNoErpCompany();
+        if (noErpCompany != null && noErpCompany.contains(order.getCompanyId())) {
+            log.info("订单:{},相关公司不推送erp", order.getOrderCode());
+            return ;
+        }
+        IErpOrderService erpOrderService = getErpService();
+        if (erpOrderService == null) {
+            log.info("未启用erp");
+            return;
+        }
+        if (!StringUtils.isEmpty(order.getExtendOrderId()) && order.getStatus() != 1) {
+            return ;
+        }
+        if(order.getUserName() == null || StringUtils.isEmpty(order.getUserName())) return;
+        ErpOrder erpOrder = getErpOrder(order);
+        if(erpOrder == null ){
+            log.info("组合码为空,订单ID:" + order.getOrderCode());
+            return ;
+        }
+
+        if (erpOrderService == jSTOrderService) {
+            erpOrder.setShop_code(erpConfig.getErpJstShopCode());
+        }
+        ErpOrderResponse response = erpOrderService.addLiveOrder(erpOrder);
+
+        //写入日志
+        log.info("ErpCreate:" + order.getOrderCode() + ":" + JSONUtil.toJsonStr(response));
+        //支付成功后 将订单号写入待发货的REDIS中
+        redisCache.setCacheObject(DELIVERY + ":" + response.getCode(), order.getOrderCode());
+        //写入外部订单号
+        order.setExtendOrderId(response.getCode());
+        liveOrderMapper.updateLiveOrder(order);
+    }
 
     @Override
     @Transactional(rollbackFor = Throwable.class,propagation = Propagation.REQUIRED)
@@ -687,6 +728,7 @@ public class LiveOrderServiceImpl implements ILiveOrderService {
             order.setPayTime(LocalDateTime.now());
             order.setIsPay("1");
             baseMapper.updateLiveOrder(order);
+            this.createOmsOrderCall(order);
             return "SUCCESS";
         }catch (Exception e){
             log.info("支付错误:"+e.getMessage());
@@ -1504,6 +1546,11 @@ public class LiveOrderServiceImpl implements ILiveOrderService {
     @Override
     public R createOmsOrder(Long orderId)  throws ParseException {
         LiveOrder order = liveOrderMapper.selectLiveOrderByOrderId(String.valueOf(orderId));
+        LiveOrderPayment liveOrderPayment = liveOrderPaymentMapper.selectByBuissnessId(orderId);
+        if (liveOrderPayment == null) {
+            log.info("订单:{},未找到支付信息", order.getOrderCode());
+            return R.error("订单:" + order.getOrderCode() + ",未找到支付信息");
+        }
         FsSysConfig erpConfig = configUtil.generateStructConfigByKey(SysConfigEnum.HIS_CONFIG.getKey(), FsSysConfig.class);
         List<Long> noErpCompany = erpConfig.getNoErpCompany();
         if (noErpCompany != null && noErpCompany.contains(order.getCompanyId())) {

+ 4 - 0
fs-service/src/main/resources/application-druid-kyt.yml

@@ -153,3 +153,7 @@ im:
 isNewWxMerchant: true
 
 enableRedPackAccount: 0
+
+ipad:
+  url: https://manwatch.ylrzcloud.com/prod-api
+  companyId: 99999

+ 1 - 2
fs-service/src/main/resources/mapper/course/FsUserCompanyBindMapper.xml

@@ -134,8 +134,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         b.nick_name fsUserName,
         c.dict_label projectName,
         e.course_name,
-        IF(g.company_user_id = #{userId}, g.qw_user_name, '其他') qwUserName,
---         g.qw_user_name,
+        g.qw_user_name,
         f.title videoName,
         qc.corp_name
         from

+ 15 - 3
fs-user-app/src/main/java/com/fs/app/controller/live/LiveController.java

@@ -8,6 +8,7 @@ import com.fs.common.annotation.RepeatSubmit;
 import com.fs.common.core.domain.BaseEntity;
 import com.fs.common.core.domain.R;
 import com.fs.common.core.page.PageRequest;
+import com.fs.common.core.page.TableDataInfo;
 import com.fs.common.utils.ServletUtils;
 import com.fs.common.utils.bean.BeanUtils;
 import com.fs.live.domain.Live;
@@ -23,6 +24,7 @@ import lombok.AllArgsConstructor;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
@@ -53,6 +55,17 @@ public class LiveController extends AppBaseController {
 	@Autowired
 	private LiveFacadeService liveFacadeService;
 
+	/**
+	 * 查询未结束直播间
+	 */
+	@GetMapping("/listToLiveNoEnd")
+	public TableDataInfo listToLiveNoEnd(Live live)
+	{
+		startPage();
+		List<Live> list = liveService.listToLiveNoEnd(live);
+		return getDataTable(list);
+	}
+
 
 
 
@@ -115,15 +128,14 @@ public class LiveController extends AppBaseController {
 	@GetMapping("/liveListAll")
 	@ApiResponse(code = 200, message = "", response = LiveInfoVo.class)
 	public R liveListAll(PageRequest pageRequest) {
-/*		PageHelper.startPage(Integer.parseInt(ServletUtils.getParameter("pageNum")) ,Integer.parseInt(ServletUtils.getParameter("pageSize")) );
+		PageHelper.startPage(Integer.parseInt(ServletUtils.getParameter("pageNum")) ,Integer.parseInt(ServletUtils.getParameter("pageSize")) );
 		try {
 			List<Live> list = liveService.liveList();
 			PageInfo<Live> result = new PageInfo<>(list);
 			return R.ok().put("data", result);
 		} catch (Exception e) {
 			return R.error("操作异常");
-		}*/
-		return liveService.liveListAll(pageRequest);
+		}
 	}
 
 	@Login

+ 2 - 2
fs-user-app/src/main/java/com/fs/app/controller/live/LiveOrderController.java

@@ -165,7 +165,7 @@ public class LiveOrderController extends AppBaseController
     @ApiOperation("获取我的订单列表")
     @GetMapping("/getMyStoreOrderList")
     public R getMyStoreOrderList(FsMyLiveOrderQueryParam param, HttpServletRequest request){
-        PageHelper.startPage(param.getPage(), param.getPageSize());
+        PageHelper.startPage(param.getPageNum(), param.getPageSize());
         param.setUserId(Long.parseLong(getUserId()));
         List<FsMyLiveOrderListQueryVO> list=orderService.selectFsMyLiveOrderListVO(param);
         PageInfo<FsMyLiveOrderListQueryVO> listPageInfo=new PageInfo<>(list);
@@ -176,7 +176,7 @@ public class LiveOrderController extends AppBaseController
     @ApiOperation("获取销售公司订单列表")
     @GetMapping("/getCompanyStoreOrderList")
     public R getCompanyStoreOrderList(FsMyLiveOrderQueryParam param, HttpServletRequest request){
-        PageHelper.startPage(param.getPage(), param.getPageSize());
+        PageHelper.startPage(param.getPageNum(), param.getPageSize());
         List<FsMyLiveOrderListQueryVO> list=orderService.selectFsCompanyLiveOrderListVO(param);
         PageInfo<FsMyLiveOrderListQueryVO> listPageInfo=new PageInfo<>(list);
         return R.ok().put("data",listPageInfo);