Explorar o código

Merge remote-tracking branch 'origin/master'

wangbo %!s(int64=4) %!d(string=hai) anos
pai
achega
523ab64a85

+ 1 - 0
gateway/src/main/java/com/huaxu/gateway/config/SwaggerProvider.java

@@ -32,6 +32,7 @@ public class SwaggerProvider implements SwaggerResourcesProvider {
         resources.add(swaggerResource("用户管理接口", "/user-center/v2/api-docs?group=api"));
         resources.add(swaggerResource("调度中心接口", "/sms-water/v2/api-docs?group=api"));
         resources.add(swaggerResource("运维管理接口", "/operation-manager/v2/api-docs?group=api"));
+        resources.add(swaggerResource("消息中心接口", "/uims-message/v2/api-docs?group=api"));
         return resources;
     }
 

+ 24 - 22
operation_manager/src/main/java/com/huaxu/order/controller/WorkOrderManageController.java

@@ -89,26 +89,28 @@ public class WorkOrderManageController {
         workOrderManage.setTaskNo(DatesUtil.formatDate(new Date(),"yyyyMMddHHmmss")+String.valueOf((int) (Math.random()*(9999-1000)+1000)));
         workOrderManageService.insertSelective(workOrderManage);
         int result =workOrderManage.getId();//返回新增数据的id
-        //发消息
-        try {
-            Message message=new Message();
-            message.setStatus(1);
-            message.setCreateBy(currentUser.getId().toString());
-            message.setTenantId(currentUser.getTenantId());
-            message.setMessageContent(workOrderManage.getTaskDesc());
-            message.setMessageId(UUID.randomUUID().toString());
-            message.setMessageType(3);
-            message.setMessageTemplateId(3);
-            message.setChannel(0);
-            message.setUrl(String.valueOf(result));
-            //获取需要发消息的用户
-            List<Long> users=userCenterClient.findUserIdsForOrg();
-            for(Long user : users){
-                message.setUserId(user.intValue());
-                messageSendUtil.send(message);
+        if(workOrderManage.getEventType()==1) {
+            //发消息
+            try {
+                Message message=new Message();
+                message.setStatus(1);
+                message.setCreateBy(currentUser.getId().toString());
+                message.setTenantId(currentUser.getTenantId());
+                message.setMessageContent(workOrderManage.getTaskDesc());
+                message.setMessageId(UUID.randomUUID().toString());
+                message.setMessageType(3);
+                message.setMessageTemplateId(3);
+                message.setChannel(0);
+                message.setUrl(String.valueOf(result));
+                //获取需要发消息的用户
+                List<Long> users=userCenterClient.findUserIdsForOrg();
+                for(Long user : users){
+                    message.setUserId(user.intValue());
+                    messageSendUtil.send(message);
+                }
+            }catch(Exception e){
+                e.printStackTrace();
             }
-        }catch(Exception e){
-            e.printStackTrace();
         }
 
         return new AjaxMessage<>(ResultStatus.OK, result);
@@ -185,7 +187,7 @@ public class WorkOrderManageController {
             workFlowLog.setTaskId(plan.getCurrentTaskId());
 
             if(action!=null){
-                List<TaskPorcessResult> handleResult = workFlowService.handleTask(action,plan.getCurrentTaskId(), null, null);
+                List<TaskPorcessResult> handleResult = workFlowService.handleTask(action,plan.getCurrentTaskId(), args, null);
                 plan.setCurrentTaskId(handleResult.size()>0?handleResult.get(0).getCurrentTaskId():null);
                 plan.setCurrentUsers(handleResult.size()>0?handleResult.get(0).getCurrentTaskUsers():null);
                 plan.setCurrentTaskName(handleResult.size()>0?handleResult.get(0).getCurrentTaskName():null);
@@ -232,7 +234,7 @@ public class WorkOrderManageController {
             }
 
             if(action!=null){
-                List<TaskPorcessResult> handleResult = workFlowService.handleTask(action,order.getCurrentTaskId(), null, null);
+                List<TaskPorcessResult> handleResult = workFlowService.handleTask(action,order.getCurrentTaskId(), args, null);
                 order.setCurrentTaskId(handleResult.size()>0?handleResult.get(0).getCurrentTaskId():null);
                 order.setCurrentUsers(handleResult.size()>0?handleResult.get(0).getCurrentTaskUsers():null);
                 order.setCurrentTaskName(handleResult.size()>0?handleResult.get(0).getCurrentTaskName():null);
@@ -404,7 +406,7 @@ public class WorkOrderManageController {
             new AjaxMessage(ResultStatus.ERROR,"没有创建流程,不能提交!");
         }
         Map<String,Object> vars = new HashMap<>();
-        vars.put("assineeFormUserId",loginUser.getId().toString());
+        vars.put("assineeFormUserId",orderUserId);
         //巡检发送系统消息所需参数
         vars.put("任务类型",orderType);
         vars.put("任务编号",workOrderManage.getId());

+ 4 - 1
operation_manager/src/main/java/com/huaxu/order/service/impl/WorkOrderManageServiceImpl.java

@@ -82,7 +82,10 @@ public class WorkOrderManageServiceImpl implements WorkOrderManageService {
      */
     @Override
     public Integer batchInsertByAlarms(List<WorkOrderManageByAlarmDto> workOrderManages) {
-        return workOrderManageMapper.batchInsertByAlarms(workOrderManages);
+        if(workOrderManages.size()>0){
+            return workOrderManageMapper.batchInsertByAlarms(workOrderManages);
+        }
+        return 0;
     }
 
     @Override

+ 1 - 1
operation_manager/src/main/java/com/huaxu/task/controller/PlanManageController.java

@@ -208,7 +208,7 @@ public class PlanManageController {
             new AjaxMessage(ResultStatus.ERROR,"没有创建流程,不能提交!");
         }
         Map<String,Object> vars = new HashMap<>();
-        vars.put("assineeFormUserId",loginUser.getId().toString());
+        vars.put("assineeFormUserId",planManage.getUserId());
         //巡检发送系统消息所需参数
         vars.put("任务类型",taskType);
         vars.put("任务编号",planManage.getId());

+ 1 - 1
operation_manager/src/main/resources/mapper/task/PlanManageMapper.xml

@@ -477,7 +477,7 @@
   <select id="selectPlanDetail" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
     select t1.*,t2.flow_detail
     from sc_plan_manage t1
-    left join sc_work_flow_detail t2 on t1.INTEGERid=t2.flow_id and t2.flow_type=1
+    left join sc_work_flow_detail t2 on t1.id=t2.flow_id and t2.flow_type=1
     where t1.id = #{id,jdbcType=INTEGER}
   </select>
 

+ 17 - 12
sms_water/src/main/java/com/huaxu/service/SecSupplyService.java

@@ -190,6 +190,16 @@ public class SecSupplyService {
         WaterPieDto waterPieDto = new WaterPieDto();
         DeviceParmEntity deviceParmEntity = new DeviceParmEntity();
         deviceParmEntity.setSceneEntities(sceneEntities);
+
+
+        List<ParmTypeCountDto> listTotal = deviceParmService.findAlarmTotalCount(deviceParmEntity);
+        WaterPieStateDto waterPieStateDto4 = new WaterPieStateDto();
+        waterPieStateDto4.setNormalCount(listTotal.get(0).getTotalCount()- listTotal.get(0).getNbnormalCount());
+        waterPieStateDto4.setNbnormalCount(listTotal.get(0).getNbnormalCount());
+        waterPieStateDto4.setPercentage((double) (Math.round((Double.valueOf(listTotal.get(0).getTotalCount()- listTotal.get(0).getNbnormalCount())/Double.valueOf(listTotal.get(0).getTotalCount()))*100)));
+        waterPieDto.setWaterQuality(waterPieStateDto4);
+
+
         List<ParmTypeCountDto> list = deviceParmService.findAlarmCount(deviceParmEntity);
         //余氯11 浊度9  PH8  cod 15   15,8,9,11,18,19
         for(ParmTypeCountDto item : list)
@@ -198,35 +208,30 @@ public class SecSupplyService {
             {
                 case 8:
                     WaterPieStateDto waterPieStateDto1 = new WaterPieStateDto();
-                    waterPieStateDto1.setNormalCount(item.getTotalCount()- item.getNbnormalCount());
+                    waterPieStateDto1.setNormalCount(listTotal.get(0).getTotalCount()- item.getNbnormalCount());
                     waterPieStateDto1.setNbnormalCount(item.getNbnormalCount());
                     DecimalFormat df1 = new DecimalFormat("#.00");
-                    waterPieStateDto1.setPercentage((double) (Math.round((Double.valueOf(item.getTotalCount()- item.getNbnormalCount())/Double.valueOf(item.getTotalCount()))*100)));
+                    waterPieStateDto1.setPercentage((double) (Math.round((Double.valueOf(listTotal.get(0).getTotalCount()- item.getNbnormalCount())/Double.valueOf(listTotal.get(0).getTotalCount()))*100)));
                     waterPieDto.setPh(waterPieStateDto1);
                     break;
                 case 9:
                     WaterPieStateDto waterPieStateDto2 = new WaterPieStateDto();
-                    waterPieStateDto2.setNormalCount(item.getTotalCount()- item.getNbnormalCount());
+                    waterPieStateDto2.setNormalCount(listTotal.get(0).getTotalCount()- item.getNbnormalCount());
                     waterPieStateDto2.setNbnormalCount(item.getNbnormalCount());
                     DecimalFormat df2 = new DecimalFormat("#.00");
-                    waterPieStateDto2.setPercentage((double) (Math.round((Double.valueOf(item.getTotalCount()- item.getNbnormalCount())/Double.valueOf(item.getTotalCount()))*100)));
+                    waterPieStateDto2.setPercentage((double) (Math.round((Double.valueOf(listTotal.get(0).getTotalCount()- item.getNbnormalCount())/Double.valueOf(listTotal.get(0).getTotalCount()))*100)));
                     waterPieDto.setTurbidity(waterPieStateDto2);
                     break;
                 case 11:
                     WaterPieStateDto waterPieStateDto3 = new WaterPieStateDto();
-                    waterPieStateDto3.setNormalCount(item.getTotalCount()- item.getNbnormalCount());
+                    waterPieStateDto3.setNormalCount(listTotal.get(0).getTotalCount()- item.getNbnormalCount());
                     waterPieStateDto3.setNbnormalCount(item.getNbnormalCount());
-                    waterPieStateDto3.setPercentage((double) (Math.round((Double.valueOf(item.getTotalCount()- item.getNbnormalCount())/Double.valueOf(item.getTotalCount()))*100)));
+                    waterPieStateDto3.setPercentage((double) (Math.round((Double.valueOf(listTotal.get(0).getTotalCount()- item.getNbnormalCount())/Double.valueOf(listTotal.get(0).getTotalCount()))*100)));
                     waterPieDto.setResidualChlorine(waterPieStateDto3);
                     break;
             }
         }
-        List<ParmTypeCountDto> listTotal = deviceParmService.findAlarmTotalCount(deviceParmEntity);
-        WaterPieStateDto waterPieStateDto4 = new WaterPieStateDto();
-        waterPieStateDto4.setNormalCount(listTotal.get(0).getTotalCount()- listTotal.get(0).getNbnormalCount());
-        waterPieStateDto4.setNbnormalCount(listTotal.get(0).getNbnormalCount());
-        waterPieStateDto4.setPercentage((double) (Math.round((Double.valueOf(listTotal.get(0).getTotalCount()- listTotal.get(0).getNbnormalCount())/Double.valueOf(listTotal.get(0).getTotalCount()))*100)));
-        waterPieDto.setWaterQuality(waterPieStateDto4);
+
         return waterPieDto;
     }
 }

+ 2 - 2
sms_water/src/main/java/com/huaxu/service/impl/OnlineMonitorImpl.java

@@ -427,11 +427,11 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
         onlineDataDto.setSceneIds(monitorDataCollectDto.getSceneIds());
         List<DeviceCountStatsDto> pres=statsDeviceQualified(onlineDataDto);
         result.setPresQualifiedRate(pres.size()>0&&pres.get(0).getTotalCount()!=0&&pres.get(0).getParmQualified().size()>0?
-                (double)pres.get(0).getParmQualified().get(0).getNormalCount()/pres.get(0).getTotalCount()*100:null);
+                (double)pres.get(0).getParmQualified().get(0).getNormalCount()/pres.get(0).getTotalCount()*100:100);
 
         onlineDataDto.setSceneTypeName("水质");
         List<DeviceCountStatsDto> water=statsDeviceQualified(onlineDataDto);
-        result.setWaterQualifiedRate(water.size()>0&&water.get(0).getTotalCount()!=0?(double)water.get(0).getNormalCount()/water.get(0).getTotalCount()*100:null);
+        result.setWaterQualifiedRate(water.size()>0&&water.get(0).getTotalCount()!=0?(double)water.get(0).getNormalCount()/water.get(0).getTotalCount()*100:100);
 
         return result;
     }

+ 5 - 5
sms_water/src/main/resources/mapper/DayReportMapper.xml

@@ -229,11 +229,11 @@
         case when b.PARM_TYPE=7 then a.avg_value end as "avgPHValue" ,
         case when b.PARM_TYPE=7 then a.sum_value end as "sumPHValue" ,
         case when b.PARM_TYPE=7 then a.latest_value end as "latestPHValue",
-        case when b.PARM_TYPE=10 then a.min_value end as "minQuValue" ,
-        case when b.PARM_TYPE=10 then a.max_value end as "maxQuValue" ,
-        case when b.PARM_TYPE=10 then a.avg_value end as "avgQuValue" ,
-        case when b.PARM_TYPE=10 then a.sum_value end as "sumQuValue" ,
-        case when b.PARM_TYPE=10 then a.latest_value end as "latestQuValue",
+        case when b.PARM_TYPE=9 then a.min_value end as "minQuValue" ,
+        case when b.PARM_TYPE=9 then a.max_value end as "maxQuValue" ,
+        case when b.PARM_TYPE=9 then a.avg_value end as "avgQuValue" ,
+        case when b.PARM_TYPE=9 then a.sum_value end as "sumQuValue" ,
+        case when b.PARM_TYPE=9 then a.latest_value end as "latestQuValue",
         case when b.PARM_TYPE=11 then a.min_value end as "minCLValue" ,
         case when b.PARM_TYPE=11 then a.max_value end as "maxCLValue" ,
         case when b.PARM_TYPE=11 then a.avg_value end as "avgCLValue" ,

+ 1 - 1
sms_water/src/main/resources/mapper/MonitorDataReportMapper.xml

@@ -1171,7 +1171,7 @@
 
             where s.`STATUS`=1 and st.SCENE_TYPE_NAME = '水厂' and s.TENANT_ID =#{tenantId}
             <if test="parmType != null and  parmType == -1">
-                and dp.PARM_TYPE in (15,8,9,11,18,19)
+                and dp.PARM_TYPE in (15,8,10,11,18,19)
             </if>
             <if test="parmType != null and  parmType != -1">
                 and dp.PARM_TYPE = #{parmType}

+ 5 - 5
sms_water/src/main/resources/mapper/MonthReportMapper.xml

@@ -224,11 +224,11 @@
         case when b.PARM_TYPE=7 then a.avg_value end as "avgPHValue" ,
         case when b.PARM_TYPE=7 then a.sum_value end as "sumPHValue" ,
         case when b.PARM_TYPE=7 then a.latest_value end as "latestPHValue",
-        case when b.PARM_TYPE=10 then a.min_value end as "minQuValue" ,
-        case when b.PARM_TYPE=10 then a.max_value end as "maxQuValue" ,
-        case when b.PARM_TYPE=10 then a.avg_value end as "avgQuValue" ,
-        case when b.PARM_TYPE=10 then a.sum_value end as "sumQuValue" ,
-        case when b.PARM_TYPE=10 then a.latest_value end as "latestQuValue",
+        case when b.PARM_TYPE=9 then a.min_value end as "minQuValue" ,
+        case when b.PARM_TYPE=9 then a.max_value end as "maxQuValue" ,
+        case when b.PARM_TYPE=9 then a.avg_value end as "avgQuValue" ,
+        case when b.PARM_TYPE=9 then a.sum_value end as "sumQuValue" ,
+        case when b.PARM_TYPE=9 then a.latest_value end as "latestQuValue",
         case when b.PARM_TYPE=11 then a.min_value end as "minCLValue" ,
         case when b.PARM_TYPE=11 then a.max_value end as "maxCLValue" ,
         case when b.PARM_TYPE=11 then a.avg_value end as "avgCLValue" ,

+ 5 - 5
sms_water/src/main/resources/mapper/YearReportMapper.xml

@@ -221,11 +221,11 @@
         case when b.PARM_TYPE=7 then a.avg_value end as "avgPHValue" ,
         case when b.PARM_TYPE=7 then a.sum_value end as "sumPHValue" ,
         case when b.PARM_TYPE=7 then a.latest_value end as "latestPHValue",
-        case when b.PARM_TYPE=10 then a.min_value end as "minQuValue" ,
-        case when b.PARM_TYPE=10 then a.max_value end as "maxQuValue" ,
-        case when b.PARM_TYPE=10 then a.avg_value end as "avgQuValue" ,
-        case when b.PARM_TYPE=10 then a.sum_value end as "sumQuValue" ,
-        case when b.PARM_TYPE=10 then a.latest_value end as "latestQuValue",
+        case when b.PARM_TYPE=9 then a.min_value end as "minQuValue" ,
+        case when b.PARM_TYPE=9 then a.max_value end as "maxQuValue" ,
+        case when b.PARM_TYPE=9 then a.avg_value end as "avgQuValue" ,
+        case when b.PARM_TYPE=9 then a.sum_value end as "sumQuValue" ,
+        case when b.PARM_TYPE=9 then a.latest_value end as "latestQuValue",
         case when b.PARM_TYPE=11 then a.min_value end as "minCLValue" ,
         case when b.PARM_TYPE=11 then a.max_value end as "maxCLValue" ,
         case when b.PARM_TYPE=11 then a.avg_value end as "avgCLValue" ,

+ 2 - 0
user_center/src/main/java/com/huaxu/dao/OrgMapper.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.huaxu.dto.OrgTree;
 import com.huaxu.entity.Org;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -88,4 +89,5 @@ public interface OrgMapper {
 
     List<Org> findOrgByTenant(String tenantId);
 
+    String findParentOrgByChildId(@Param(value = "childId") Integer childId);
 }

+ 1 - 1
user_center/src/main/java/com/huaxu/dao/UserMapper.java

@@ -38,7 +38,7 @@ public interface UserMapper extends BaseMapper<UserEntity> {
 
     List<UserEntity> findUserList(@Param("user")UserEntity userEntity);
 
-    List<UserEntity> findUserIdsForOrg(@Param("compayId")Integer compayId, @Param("deptId")Integer deptId);
+    List<UserEntity> findUserIdsForOrg(@Param("compayId")Integer compayId, @Param("deptId")Integer deptId,@Param("ids")String ids);
 
 
 

+ 1 - 0
user_center/src/main/java/com/huaxu/service/OrgService.java

@@ -88,4 +88,5 @@ public interface OrgService {
     IPage<Org> selectPage(Org org, IPage<Org> page);
     List<OrgTree> getTrees(Org org);
     List<OrgTree>getUserTrees(Org org);
+    String findParentOrgByChildId(Integer childId);
 }

+ 5 - 1
user_center/src/main/java/com/huaxu/service/UserService.java

@@ -346,7 +346,11 @@ public class UserService extends ServiceImpl<UserMapper,UserEntity> {
 		LoginUser currentUser = UserUtil.getCurrentUser();
 		Integer compayId = currentUser.getCompanyId();
 		Integer deptId = currentUser.getDepartmentId();
-		List<UserEntity> list = userMapper.findUserIdsForOrg(compayId,deptId);
+		compayId = 262;
+		String ids = "";
+		if (deptId != null)
+			ids = orgMapper.findParentOrgByChildId(deptId);
+		List<UserEntity> list = userMapper.findUserIdsForOrg(compayId, deptId, ids);
 		return list;
 	}
 	public List<Integer> findUserIdsByPermissonOrg(String tenantId,Integer companyOrgId,Integer deptOrgId){

+ 5 - 1
user_center/src/main/java/com/huaxu/service/impl/OrgServiceImpl.java

@@ -11,6 +11,7 @@ import com.huaxu.util.ByteArrayUtils;
 import com.huaxu.util.RedisUtil;
 import com.huaxu.util.UserUtil;
 import io.swagger.models.auth.In;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -326,5 +327,8 @@ public class OrgServiceImpl implements OrgService {
             return null;
         }
     }
-
+   public String findParentOrgByChildId(Integer childId)
+   {
+      return  orgMapper.findParentOrgByChildId(childId);
+   }
 }

+ 3 - 0
user_center/src/main/resources/mapper/OrgMapper.xml

@@ -292,4 +292,7 @@
         from uims_org
         where `STATUS` = 1 and TENANT_ID= #{tenantId}
     </select>
+    <select id="findParentOrgByChildId" resultType="String">
+       select getParentList(#{childId})
+    </select>
 </mapper>

+ 8 - 2
user_center/src/main/resources/mapper/UserMapper.xml

@@ -219,14 +219,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         FROM uims_user a
         <include refid="sysAreaJoins"/>
         where a.status=1
-        <if test="compayId != null and compayId != ''">
+        <if test="compayId != null and compayId != '' and deptId != null and deptId != ''">
             and (
                a.COMPANY_ORG_ID = #{compayId}
                 <if test="deptId != null and deptId != ''">
-                   or a.DEPT_ORG_ID = #{deptId}
+                   and a.DEPT_ORG_ID in (#{ids})
                 </if>
             )
         </if>
+        <if test="compayId != null and compayId != '' and (deptId == null or deptId ==0 )">
+            and (
+                a.COMPANY_ORG_ID = #{compayId}
+                and (a.DEPT_ORG_ID is null or a.DEPT_ORG_ID =0)
+            )
+        </if>
     </select>
 
     <select id="findUserIdsByPermissonOrg" resultType="java.lang.Integer">