Selaa lähdekoodia

解决后台查询的bug

oyq28 2 vuotta sitten
vanhempi
commit
def9404aa2

+ 3 - 18
imcs-bt-be/imcs-authority-server/src/main/java/com/github/zuihou/api/OpsAppApi.java

@@ -54,8 +54,7 @@ public class OpsAppApi {
     private MaterialService materialService;
     @Autowired
     private DoorRecordService doorRecordService;
-    @Autowired
-    private RedisTemplate<String, Object> redisTemplate;
+
 
 
     /**
@@ -300,23 +299,9 @@ public class OpsAppApi {
 
 
     @GetMapping("/getEquRunInfo")
-    public R<Map<String, String>> getEquRunInfo(@RequestParam(name = "equId"  ,required = true) String equId) {
+    public R<Map<String, String>> getEquRunInfo(@RequestParam(name = "equId"  ,required = true) Long equId) {
         BaseContextHandler.setTenant("0000");
-        HashMap<String, String> resultMap = new HashMap<>();
-        Boolean exist = redisTemplate.hasKey("equStatus" + equId);
-        if (exist) {
-            String status = (String) redisTemplate.opsForHash().get("equStatus" + equId, "status");
-            if (status.equals("2")) {
-                String errMsg = (String) redisTemplate.opsForHash().get("equStatus" + equId, "errMsg");
-
-                resultMap.put("errMsg", errMsg);
-            }
-            resultMap.put("equStatus", status);
-        } else {
-            resultMap.put("equStatus", "0");
-        }
-
-
+        Map<String, String> resultMap = productionTenantResourceService.getEquRunInfo(equId);
         return R.success(resultMap);
     }
 

+ 4 - 3
imcs-bt-be/imcs-business-biz/src/main/java/com/github/zuihou/business/company/service/impl/CompanyServiceImpl.java

@@ -69,11 +69,12 @@ public class CompanyServiceImpl extends SuperServiceImpl<CompanyMapper, Company>
 
     @Override
     public Page<Company> comPage(PageParams<CompanyPageDTO> params) {
-        Company company = BeanUtil.toBean(params, Company.class);
+        Company company = BeanUtil.toBean(params.getModel(), Company.class);
         QueryWrap<Company> wrapper = Wraps.q(company);
         LbqWrapper<Company> lbqWrapper = wrapper.lambda();
         Page<Company> page = new Page<>(params.getCurrent(),params.getSize());
-        lbqWrapper.like(Company::getComName, company.getComName());
+        lbqWrapper.like(Company::getComName, company.getComName()).eq(Company::getComType, company.getComType()).eq(Company::getComLabel, company.getComLabel())
+                .eq(Company::getComStatus, company.getComStatus());
         page= baseMapper.comPage(page, lbqWrapper);
         page.getRecords().stream().forEach(item -> {
             List<String> provinceList = Lists.newArrayList();
@@ -90,7 +91,7 @@ public class CompanyServiceImpl extends SuperServiceImpl<CompanyMapper, Company>
             HashMap map = new HashMap();
             map.put("orgId", item.getId());
             List orgIds = CommonUtil.getOrgTrees(item.getId());
-            orgIds.add(item.getId());
+
             map.put("orgIds", CollectionUtil.join(orgIds, ","));
             Map dataMap = baseMapper.getStatisticMap(map);
             item.setComAdminAmount(new BigDecimal(dataMap.get("comAdminAmount").toString()).intValue());

+ 5 - 2
imcs-bt-be/imcs-business-biz/src/main/java/com/github/zuihou/business/productionresource/service/ProductionTenantResourceService.java

@@ -6,6 +6,7 @@ import com.github.zuihou.business.productionresource.dto.EquGoodsDto;
 import com.github.zuihou.business.productionresource.entity.ProductionResource;
 import com.github.zuihou.database.mybatis.conditions.query.LbqWrapper;
 
+import java.util.HashMap;
 import java.util.List;
 
 /**
@@ -19,7 +20,9 @@ import java.util.List;
  */
 public interface ProductionTenantResourceService extends SuperService<ProductionResource> {
 
-    IPage<ProductionResource> pageList(IPage  page, LbqWrapper<ProductionResource> wrapper);
+    IPage<ProductionResource> pageList(IPage page, LbqWrapper<ProductionResource> wrapper);
 
     List<EquGoodsDto> getEquGoods(Long equId);
-}
+
+    HashMap<String, String> getEquRunInfo(Long equId);
+}

+ 24 - 0
imcs-bt-be/imcs-business-biz/src/main/java/com/github/zuihou/business/productionresource/service/impl/ProductionTenantResourceServiceImpl.java

@@ -10,8 +10,11 @@ import com.github.zuihou.business.productionresource.service.ProductionTenantRes
 import com.github.zuihou.database.mybatis.auth.DataScope;
 import com.github.zuihou.database.mybatis.conditions.query.LbqWrapper;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 
+import java.util.HashMap;
 import java.util.List;
 
 /**
@@ -27,6 +30,10 @@ import java.util.List;
 @Service
 
 public class ProductionTenantResourceServiceImpl extends SuperServiceImpl<ProductionTenantResourceMapper, ProductionResource> implements ProductionTenantResourceService {
+
+    @Autowired
+    private RedisTemplate<String, Object> redisTemplate;
+
     @Override
     public IPage<ProductionResource> pageList(IPage page, LbqWrapper<ProductionResource> wrapper) {
         return baseMapper.pageList(page, wrapper, new DataScope());
@@ -36,4 +43,21 @@ public class ProductionTenantResourceServiceImpl extends SuperServiceImpl<Produc
     public List<EquGoodsDto> getEquGoods(Long equId) {
         return baseMapper.getEquGoods(equId);
     }
+
+    @Override
+    public HashMap<String, String> getEquRunInfo(Long equId) {
+        HashMap<String, String> resultMap = new HashMap<>();
+        Boolean exist = redisTemplate.hasKey("equStatus" + equId);
+        if (exist) {
+            String status = (String) redisTemplate.opsForHash().get("equStatus" + equId, "status");
+            if (status.equals("2")) {
+                String errMsg = (String) redisTemplate.opsForHash().get("equStatus" + equId, "errMsg");
+                resultMap.put("errMsg", errMsg);
+            }
+            resultMap.put("equStatus", status);
+        } else {
+            resultMap.put("equStatus", "0");
+        }
+        return resultMap;
+    }
 }

+ 2 - 3
imcs-bt-be/imcs-business-biz/src/main/resources/mapper_business/base/company/CompanyMapper.xml

@@ -90,10 +90,9 @@
                 where p.org_id in (${orgIds})
             </if>
             union
-            select 0 as num1 , 0 as num2, count(distinct u.id) as num3,0 as num4 from imcs_tenant_productionresource p left join c_core_org o on p.org_id = o.id
-                left join c_auth_user u on u.org_id = p.org_id
+            select 0 as num1 , 0 as num2, count(distinct o.id) as num3,0 as num4 from c_core_org o
             <if test="orgIds != null and orgIds != ''">
-                where p.org_id in (${orgIds})
+                where o.id in (${orgIds}) and o.id != ${orgId}
             </if>
             union
             select 0 as num1 , 0 as num2, 0 as num3, count(distinct u.id) as num4 from c_core_org o

+ 1 - 3
imcs-bt-be/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/order/OrderController.java

@@ -47,9 +47,7 @@ public class OrderController extends SuperController<OrderService, Long, Order,
         OrderPageDTO data = params.getModel();
         Order model = BeanUtil.toBean(data, Order.class);
         QueryWrap<Order> wrapper = this.handlerWrapper(null, params);
-        wrapper.notIn("order_status", "0");
-        wrapper.orderByDesc("create_time");
-        wrapper.eq(model.getOrderEquId()!=null,"order_equ_id", model.getOrderEquId()).eq(StringUtils.isNotEmpty(model.getOrderStatus()),"order_status", model.getOrderStatus()).orderByDesc("create_time");
+        wrapper.like("orderMemberName", model.getOrderMemberName()).eq("id", model.getId()).eq(model.getOrderEquId()!=null,"order_equ_id", model.getOrderEquId()).eq(StringUtils.isNotEmpty(model.getOrderStatus()),"order_status", model.getOrderStatus()).orderByDesc("create_time");
         baseService.pageList(page, wrapper);
     }
 

+ 36 - 2
imcs-bt-be/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/productionresource/ProductionResourceController.java

@@ -1,6 +1,7 @@
 package com.github.zuihou.business.controller.productionresource;
 
 import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.github.zuihou.base.R;
@@ -19,6 +20,7 @@ import com.github.zuihou.business.productionresource.service.ProductionTenantRes
 import com.github.zuihou.business.spe.entity.Spe;
 import com.github.zuihou.business.spe.service.SpeService;
 import com.github.zuihou.common.util.DateUtil;
+import com.github.zuihou.database.mybatis.conditions.Wraps;
 import com.github.zuihou.database.mybatis.conditions.query.LbqWrapper;
 import com.github.zuihou.database.mybatis.conditions.query.QueryWrap;
 import com.github.zuihou.security.annotation.PreAuth;
@@ -33,6 +35,7 @@ import org.springframework.web.bind.annotation.*;
 
 import java.math.BigDecimal;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
@@ -83,10 +86,9 @@ public class ProductionResourceController extends SuperController<ProductionTena
         ProductionResource model = BeanUtil.toBean(data, ProductionResource.class);
         QueryWrap<ProductionResource> wrap = this.handlerWrapper(null, params);
         LbqWrapper<ProductionResource> wrapper = wrap.lambda();
-        wrapper.like(ProductionResource::getName, model.getName()).like(ProductionResource::getStatus, model.getStatus()).eq(ProductionResource::getOnlineStatus, model.getOnlineStatus()).orderByDesc(ProductionResource::getCreateTime);
+        wrapper.like(ProductionResource::getName, model.getName()).like(ProductionResource::getStatus, model.getStatus()).eq(ProductionResource::getOnlineStatus, model.getOnlineStatus()).eq(ProductionResource::getPlaceId, model.getPlaceId()).orderByDesc(ProductionResource::getCreateTime);
         IPage<ProductionResource> iPage = baseService.pageList(page, wrapper);
 
-
         String date = DateUtil.dateToString(new Date());
         iPage.getRecords().forEach(item->{
             QueryWrap<Order> orderQueryWrap = new QueryWrap<Order>();
@@ -94,6 +96,8 @@ public class ProductionResourceController extends SuperController<ProductionTena
             Order sumOrder = orderService.getOne(orderQueryWrap);
             Float incomeToday = sumOrder.getOrderSum().floatValue();
             item.setIncomeToday(incomeToday);
+            Map<String, String> resultMap = baseService.getEquRunInfo(item.getId());
+            item.setOnlineStatus(resultMap.get("equStatus"));
         });
     }
 
@@ -168,6 +172,36 @@ public class ProductionResourceController extends SuperController<ProductionTena
     }
 
 
+    @ApiOperation(value = "获取设备状态统计", notes = "获取设备状态统计")
+    @PostMapping("/equStatistics")
+    public R<Map<String, Integer>> equStatistics(){
+        /*
+        QueryWrapper<ProductionResource> query = new QueryWrapper<ProductionResource>();
+        query.select("count(online_status) as statusCount").lambda().groupBy(ProductionResource::getOnlineStatus).orderByDesc(ProductionResource::getOnlineStatus);
+        List<Map<String,Object>> list = baseService.listMaps(query);
+        return list; */
+        Map<String, Integer> map = new HashMap<String, Integer>(){
+            {
+                put("onLineCount", 0);
+                put("offlineCount", 0);
+                put("exceptCount", 0);
+            }
+        };
+        List<ProductionResource> list = baseService.list();
+        list.stream().forEach(item->{
+            Map<String, String> resultMap = baseService.getEquRunInfo(item.getId());
+            String equStatus =  resultMap.get("equStatus");
+            if(equStatus=="0"){
+                map.put("offlineCount", map.get("offlineCount")+1);
+            }else if(equStatus=="1"){
+                map.put("onLineCount", map.get("onLineCount")+1);
+            }else{
+                map.put("exceptCount", map.get("exceptCount")+1);
+            }
+        });
+        return R.success(map);
+    }
+
 
 
 

+ 3 - 0
imcs-bt-be/imcs-business-entity/src/main/java/com/github/zuihou/business/order/dto/OrderPageDTO.java

@@ -31,6 +31,9 @@ public class OrderPageDTO implements Serializable {
 
     private static final long serialVersionUID = 1L;
 
+    @ApiModelProperty(value = "订单ID")
+    private Long id;
+
     /**
      * 用户id
      */

+ 6 - 0
imcs-bt-be/imcs-business-entity/src/main/java/com/github/zuihou/business/order/entity/Order.java

@@ -38,6 +38,12 @@ public class Order extends Entity<Long> {
 
     private static final long serialVersionUID = 1L;
 
+    /**
+     * 订单id
+     */
+    @ApiModelProperty(value = "订单ID")
+    private Long id;
+
     /**
      * 用户id
      */