‘linchangsheng’ 7 mēneši atpakaļ
vecāks
revīzija
8e8ba580f6

+ 45 - 9
mall-server-api/src/main/java/com/gree/mall/manager/logic/big/BigLogic.java

@@ -82,6 +82,9 @@ public class BigLogic {
     @Autowired
     RedisUtil redisUtil;
 
+    @Autowired
+    WebsitUserService websitUserService;
+
 
     public String getRegion(String country, String province, String city, String area) {
 
@@ -250,7 +253,7 @@ public class BigLogic {
 
 
         List<String> companyIds = adminUser.getCompanyWechatIds();
-
+        List<String> websitIds = adminUser.getAdminWebsitIds();
 
 
         Integer loginComapnyNum = userLogService.lambdaQuery().eq(UserLog::getLoginType, IsYesNoEnum.YES.getKey())
@@ -266,23 +269,33 @@ public class BigLogic {
                 .between(UserLog::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -1), DateUtil.offsetDay(DateUtil.endOfDay(new Date()), -1))
                 .count();
 
-        Integer allWorker = userService.lambdaQuery().eq(User::getType, UserTypeEnum.WORKER.getKey())
-                .in(!CollectionUtils.isEmpty(companyIds), User::getCompanyWechatId, companyIds)
+        Integer allWorker = websitUserService.lambdaQuery().in(CollectionUtils.isEmpty(websitIds),WebsitUser::getWebsitId, websitIds).groupBy(WebsitUser::getUserId)
                 .count();
 
 
-        Integer allWorkerLogin = userLogService.lambdaQuery().eq(UserLog::getLoginType, IsYesNoEnum.NO.getKey())
+        List<String> userIds = userLogService.lambdaQuery().eq(UserLog::getLoginType, IsYesNoEnum.NO.getKey())
                 .eq(UserLog::getMiniType, UserTypeEnum.WORKER.getKey())
                 .eq(UserLog::getType, "LOGIN")
                 .in(!CollectionUtils.isEmpty(companyIds), UserLog::getCompanyWechatId, companyIds)
-                .between(UserLog::getCreateTime, DateUtil.beginOfDay(new Date()), DateUtil.endOfDay(new Date())).count();
+                .between(UserLog::getCreateTime, DateUtil.beginOfDay(new Date()), DateUtil.endOfDay(new Date()))
+                .select(UserLog::getUserId)
+                .list().stream().map(UserLog::getUserId).collect(Collectors.toList());
+
+
+        Integer allWorkerLogin = CollectionUtils.isEmpty(userIds)?0:websitUserService.lambdaQuery()
+                .in(CollectionUtils.isEmpty(websitIds) && !adminUser.getIsMaster(),WebsitUser::getWebsitId, websitIds).in(WebsitUser::getUserId,userIds).count();
 
-        Integer allWorkerLoginBefore = userLogService.lambdaQuery().eq(UserLog::getLoginType, IsYesNoEnum.YES.getKey())
+
+        List<String> userIdBefores = userLogService.lambdaQuery().eq(UserLog::getLoginType, IsYesNoEnum.YES.getKey())
                 .eq(UserLog::getMiniType, UserTypeEnum.WORKER.getKey())
                 .eq(UserLog::getType, "LOGIN")
                 .in(!CollectionUtils.isEmpty(companyIds), UserLog::getCompanyWechatId, companyIds)
-                .between(UserLog::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -1), DateUtil.offsetDay(DateUtil.endOfDay(new Date()), -1)).count();
+                .between(UserLog::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -1), DateUtil.offsetDay(DateUtil.endOfDay(new Date()), -1))
+                .select(UserLog::getUserId)
+                .list().stream().map(UserLog::getUserId).collect(Collectors.toList());
 
+        Integer allWorkerLoginBefore = CollectionUtils.isEmpty(userIdBefores)?0:websitUserService.lambdaQuery()
+                .in(CollectionUtils.isEmpty(websitIds) &&!adminUser.getIsMaster(),WebsitUser::getWebsitId, websitIds).in(WebsitUser::getUserId,userIdBefores).count();
 
         Integer allService = userService.lambdaQuery().eq(User::getType, UserTypeEnum.SERVICE.getKey())
                 .in(!CollectionUtils.isEmpty(companyIds), User::getCompanyWechatId, companyIds).count();
@@ -395,8 +408,10 @@ public class BigLogic {
     public LargeMpBean getLarge4() {
 
         AdminUserCom adminUser = commonLogic.getAdminUser();
+        List<String> websitIds = adminUser.getAdminWebsitIds();
         List<WebsitSales> websitSales = websitSalesService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), WebsitSales::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(websitIds) && !adminUser.getIsMaster(), WebsitSales::getWebsitId, websitIds)
                 .eq(WebsitSales::getPayFlag, "YES")
                 .ne(WebsitSales::getFlag, "IMPORT_ERR")
                 .between(WebsitSales::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -30), new Date())
@@ -414,6 +429,7 @@ public class BigLogic {
 
         List<WebsitSalesRet> websitSalesRets = websitSalesRetService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), WebsitSalesRet::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(websitIds)  && !adminUser.getIsMaster(), WebsitSalesRet::getWebsitId, websitIds)
                 .eq(WebsitSalesRet::getRetState, "OK")
                 .between(WebsitSalesRet::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -30), new Date())
                 .select(WebsitSalesRet::getSalesRetId, WebsitSalesRet::getGoodsType, WebsitSalesRet::getRetState).list();
@@ -430,6 +446,7 @@ public class BigLogic {
 
         List<WebsitPartsRet> websitPartsRets = websitPartsRetService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), WebsitPartsRet::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(websitIds)  && !adminUser.getIsMaster(), WebsitPartsRet::getWebsitId, websitIds)
                 .eq(WebsitPartsRet::getFlag, "SUBMIT")
                 .between(WebsitPartsRet::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -30), new Date())
                 .select(WebsitPartsRet::getFlag, WebsitPartsRet::getGoodsType, WebsitPartsRet::getPartsRetId, WebsitPartsRet::getType)
@@ -483,7 +500,8 @@ public class BigLogic {
 
         List<PgOrderBase> pgOrderBases = pgOrderBaseService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), PgOrderBase::getCompanyWechatId, adminUser.getCompanyWechatId())
-                .ne(PgOrderBase::getOrderStatus, "YQX")
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) &&  !adminUser.getIsMaster(), PgOrderBase::getWebsitId, adminUser.getAdminWebsitIds())
+                .notIn(PgOrderBase::getOrderStatus, "YQX","FWZT","YCGB","FWQX","FL")
                 .between(PgOrderBase::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -30), new Date())
                 .select(PgOrderBase::getOrderSmallTypeText, PgOrderBase::getId, PgOrderBase::getTotalNum, PgOrderBase::getUndoneNum,
                         PgOrderBase::getSaleType).list();
@@ -562,7 +580,8 @@ public class BigLogic {
 
         List<PgOrderBase> pgOrderBases = pgOrderBaseService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), PgOrderBase::getCompanyWechatId, adminUser.getCompanyWechatId())
-                .ne(PgOrderBase::getOrderStatus, "YQX")
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) &&  !adminUser.getIsMaster(), PgOrderBase::getWebsitId, adminUser.getAdminWebsitIds())
+                .notIn(PgOrderBase::getOrderStatus, "YQX","FWZT","YCGB","FWQX","FL")
                 .between(PgOrderBase::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -30), new Date())
                 .select(PgOrderBase::getOrderSmallTypeText, PgOrderBase::getId, PgOrderBase::getTotalNum, PgOrderBase::getUndoneNum, PgOrderBase::getCreateTime,
                         PgOrderBase::getSaleType).list();
@@ -631,6 +650,7 @@ public class BigLogic {
 
         List<SettlementOrder> settlementOrderList = settlementOrderService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), SettlementOrder::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) && !adminUser.getIsMaster(), SettlementOrder::getWebsitId, adminUser.getAdminWebsitIds())
                 .between(SettlementOrder::getCreateTime, DateUtil.offsetDay(DateUtil.beginOfDay(new Date()), -30), new Date())
                 .select(SettlementOrder::getOrderId, SettlementOrder::getTotalAmount, SettlementOrder::getGoodsType)
                 .list();
@@ -681,6 +701,8 @@ public class BigLogic {
 
         List<SettlementOrder> settlementOrderList = settlementOrderService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), SettlementOrder::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) && !adminUser.getIsMaster(), SettlementOrder::getWebsitId, adminUser.getAdminWebsitIds())
+
                 .between(SettlementOrder::getCreateTime, DateUtil.beginOfDay(DateUtil.offsetDay(new Date(), -30)), new Date())
                 .select(SettlementOrder::getOrderId, SettlementOrder::getTotalAmount, SettlementOrder::getGoodsType, SettlementOrder::getCreateTime)
                 .list();
@@ -755,6 +777,8 @@ public class BigLogic {
         AdminUserCom adminUser = commonLogic.getAdminUser();
         Page<PgOrderBase> pgOrderBasePage = pgOrderBaseService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), PgOrderBase::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) && !adminUser.getIsMaster(), PgOrderBase::getWebsitId, adminUser.getAdminWebsitIds())
+
                 .eq(PgOrderBase::getCity, city)
                 .eq(PgOrderBase::getProvince, province)
                 .eq(PgOrderBase::getArea, area)
@@ -764,6 +788,8 @@ public class BigLogic {
 
         List<PgOrderBase> pgOrderBaseList = pgOrderBaseService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), PgOrderBase::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) && !adminUser.getIsMaster(), PgOrderBase::getWebsitId, adminUser.getAdminWebsitIds())
+
                 .eq(PgOrderBase::getCity, city)
                 .eq(PgOrderBase::getProvince, province)
                 .eq(PgOrderBase::getArea, area)
@@ -926,6 +952,8 @@ public class BigLogic {
 
         List<PgOrderBase> pgOrderBases = pgOrderBaseService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), PgOrderBase::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) && !adminUser.getIsMaster(), PgOrderBase::getWebsitId, adminUser.getAdminWebsitIds())
+
                 .eq(PgOrderBase::getCity, city)
                 .eq(PgOrderBase::getProvince, province)
                 .ne(PgOrderBase::getOrderStatus, "YQX")
@@ -935,6 +963,8 @@ public class BigLogic {
 
         List<PgOrderBase> pgOrderBaseList = pgOrderBaseService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), PgOrderBase::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) && !adminUser.getIsMaster(), PgOrderBase::getWebsitId, adminUser.getAdminWebsitIds())
+
                 .eq(PgOrderBase::getCity, city)
                 .eq(PgOrderBase::getProvince, province)
                 .ne(PgOrderBase::getOrderStatus, "YQX")
@@ -947,6 +977,10 @@ public class BigLogic {
         List<String> status = new ArrayList<>();
         status.add("YWG");
         status.add("YJS");
+        status.add("LRCD");
+        status.add("YWGO");
+        status.add("GCSZX");
+        status.add("WDWG");
 
 
         for (PgOrderBase pgOrderBase : pgOrderBases) {
@@ -991,6 +1025,8 @@ public class BigLogic {
 
         List<PgOrderBase> pgOrderBaseList = pgOrderBaseService.lambdaQuery()
                 .in(!StringUtil.isEmpty(adminUser.getCompanyWechatId()), PgOrderBase::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(!CollectionUtils.isEmpty(adminUser.getAdminWebsitIds()) && !adminUser.getIsMaster(), PgOrderBase::getWebsitId, adminUser.getAdminWebsitIds())
+
                 .eq(PgOrderBase::getCity, city)
                 .eq(PgOrderBase::getProvince, province)
                 .ne(PgOrderBase::getOrderStatus, "YQX")