06f69860 张雷

Merge remote-tracking branch 'origin/master' into master

2 个父辈 00d3760a e6ec9091
......@@ -159,8 +159,16 @@ public class AjhRectificationInfoController {
public Result<List<Map<String,Object>>> getDefectHandleCount(AjhRectificationInfo ajhRectificationInfo, HttpServletRequest req){
Result<List<Map<String,Object>>> result = new Result<>();
QueryWrapper<AjhRectificationInfo> queryWrapper = QueryGenerator.initQueryWrapper(ajhRectificationInfo, req.getParameterMap());
queryWrapper.select("count(id) count,handle_result handleResult");
queryWrapper.groupBy("handle_result");
/* if(StringUtils.isEmpty(ajhRectificationInfo.getDepartId())){
ajhRectificationInfo.setDepartId(BaseContextHandler.getDeparts());
}*/
if (!"1".equals(BaseContextHandler.get("userType"))) {
queryWrapper.in("depart_id",BaseContextHandler.getDeparts());
}
List<Map<String,Object>> list = ajhRectificationInfoService.listMaps(queryWrapper);
result.setSuccess(true);
result.setResult(list);
......
......@@ -18,4 +18,23 @@ public interface IAlarmLimitCustomService {
Map<String, Map<String,Double>> getAlarmLimitData(String departIds);
public Map<String, Map<String, Map<String, Double>>> riverAlarmMap(String alarmParamCodes);
/**
* 指标值报警预警
* @param value 指标值
* @param stringIntegerMap key->factoryId+_+code val->报警上下限值
* @return
*/
public String alarmValue(Double value, Map<String, Double> stringIntegerMap);
/***
* 指标值超上下限
* @param value
* @param stringIntegerMap key->factoryId+_+code val->报警上下限值
* @return
*/
public String alarmValueLimit(Double value, Map<String, Double> stringIntegerMap);
public Double riverAlarm(Map<String, Map<String, Map<String, Double>>> riverAlarmMap, String paramId,Double paramValue);
}
......
package com.skua.modules.algorithm.handle.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.skua.core.util.ConvertUtils;
import com.skua.modules.alarmtmp.entity.AlarmLevelStandardConfig;
import com.skua.modules.alarmtmp.entity.AlarmParamStandardConfig;
import com.skua.modules.alarmtmp.service.AlarmLevelStandardConfigService;
import com.skua.modules.alarmtmp.service.AlarmParamStandardConfigService;
import com.skua.modules.algorithm.handle.IAlarmLimitCustomService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
......@@ -14,10 +23,103 @@ import java.util.Map;
*/
@Component("alarmLimitCustomServiceImpl")
public class IAlarmLimitCustomServiceImpl implements IAlarmLimitCustomService {
@Autowired
private AlarmLevelStandardConfigService alarmLevelStandardConfigService;
@Autowired
private AlarmParamStandardConfigService alarmParamStandardConfigService;
/**
* 指标值报警预警
*
* @param value 指标值
* @param stringIntegerMap key->alarmUpperLimit val->报警上限值
* key->alarmLowerLimit val->报警下限值
* @author Gao Ran,
* @Description:
*/
@Override
public String alarmValue(Double value, Map<String, Double> stringIntegerMap) {
if ((stringIntegerMap != null && stringIntegerMap.get("alarmUpperLimit") != null && value > stringIntegerMap.get("alarmUpperLimit")) ||
(stringIntegerMap != null && stringIntegerMap.get("alarmLowerLimit") != null && value < stringIntegerMap.get("alarmLowerLimit"))) {
//报警
return ("2");
} else if ((stringIntegerMap != null && stringIntegerMap.get("warnUpperLimit") != null && value > stringIntegerMap.get("warnUpperLimit")) ||
(stringIntegerMap != null && stringIntegerMap.get("warnLowerLimit") != null && value < stringIntegerMap.get("warnLowerLimit"))) {
//预警
return ("1");
} else {
//正常
return ("0");
}
}
public String alarmValueLimit(Double value, Map<String, Double> stringIntegerMap) {
if ((stringIntegerMap != null && stringIntegerMap.get("alarmUpperLimit") != null && value > stringIntegerMap.get("alarmUpperLimit"))) {
//超上限
return ("2");
} else if ((stringIntegerMap != null && stringIntegerMap.get("alarmLowerLimit") != null && value < stringIntegerMap.get("alarmLowerLimit"))) {
//低于下限
return ("1");
} else {
//正常
return ("0");
}
}
@Override
public Double riverAlarm(Map<String, Map<String, Map<String, Double>>> riverAlarmMap, String paramId, Double paramValue) {
//河道地表水标准
//三类水标准
Map<String, Map<String, Double>> threeMap = riverAlarmMap.get("DBSSL");
//四类水标准
Map<String, Map<String, Double>> fourMap = riverAlarmMap.get("DBSSIL");
//五类水标准
Map<String, Map<String, Double>> fiveMap = riverAlarmMap.get("DBSWL");
Map<String, Object> paramMap = new HashMap<>();
if ((threeMap != null && threeMap.get(paramId) != null && paramValue <= threeMap.get(paramId).get("alarmUpperLimit"))
&& (paramValue > threeMap.get(paramId).get("alarmLowerLimit"))) {
paramMap.put("paramLevel", 3);
} else if ((fourMap != null && fourMap.get(paramId) != null && paramValue <= fourMap.get(paramId).get("alarmUpperLimit"))
&& (paramValue > fourMap.get(paramId).get("alarmLowerLimit"))) {
paramMap.put("paramLevel", 4);
} else if ((fiveMap != null && fiveMap.get(paramId) != null && paramValue <= fiveMap.get(paramId).get("alarmUpperLimit"))
&& (paramValue > fiveMap.get(paramId).get("alarmLowerLimit"))) {
paramMap.put("paramLevel", 5);
} else if ((fiveMap != null && fiveMap.get(paramId) != null && paramValue > fiveMap.get(paramId).get("alarmUpperLimit"))) {
paramMap.put("paramLevel", 6);
} else {
paramMap.put("paramLevel", 3);
}
return ConvertUtils.getDouble(paramMap.get("paramLevel"), 0);
}
@Override
public Map<String, Map<String, Double>> getAlarmLimitData(String departIds) {
return new HashMap<>();
}
public Map<String, Map<String, Map<String, Double>>> riverAlarmMap(String alarmParamCodes) {
Map<String, Map<String, Map<String, Double>>> alarmParamMap = new HashMap<>();
for (String alarmParamCode : alarmParamCodes.split(",")) {
AlarmLevelStandardConfig levelCode = alarmLevelStandardConfigService.getOne(new QueryWrapper<AlarmLevelStandardConfig>().eq("alarm_standard_level_code", alarmParamCode), false);
if (ObjectUtil.isEmpty(levelCode)) {
return new HashMap<>();
}
List<AlarmParamStandardConfig> standardConfig = alarmParamStandardConfigService.list(new QueryWrapper<AlarmParamStandardConfig>().
eq("alarm_level_standard_id", levelCode.getId()));
//保存厂站指标报警
Map<String, Map<String, Double>> factoryParamLimitMap = new HashMap<>();
Map<String, Double> paramLimitMap;
for (AlarmParamStandardConfig alarmParamStandardDepartVO : standardConfig) {
paramLimitMap = new HashMap<>();
paramLimitMap.put("alarmUpperLimit", Double.parseDouble(alarmParamStandardDepartVO.getAlarmParamUpperLimit()));
paramLimitMap.put("alarmLowerLimit", Double.parseDouble(alarmParamStandardDepartVO.getAlarmParamLowerLimit()));
factoryParamLimitMap.put(alarmParamStandardDepartVO.getAlarmParamCode(), paramLimitMap);
}
alarmParamMap.put(alarmParamCode, factoryParamLimitMap);
}
return alarmParamMap;
}
}
......
......@@ -97,4 +97,9 @@ public class QuestionDB {
@TableField(exist=false)
@ApiModelProperty(value = "判断题数目")
private Integer judgeNum;
@TableField(exist=false)
@ApiModelProperty(value = "所属厂站")
private String departName;
}
......
......@@ -4,6 +4,7 @@
<resultMap type="com.skua.modules.edu.entity.QuestionDB" id="EduQuestionDbResult">
<result property="id" column="id" />
<result property="departId" column="depart_id" />
<result property="departName" column="depart_name" />
<result property="userId" column="user_id" />
<result property="parentId" column="parent_id" />
<result property="dbName" column="db_name" />
......@@ -25,7 +26,7 @@
</sql>
<select id="selectQuestionDbList" parameterType="com.skua.modules.edu.entity.QuestionDB" resultMap="EduQuestionDbResult">
select t.* , ifnull(aaa.single_num,0) single_num , ifnull(aaa.multiple_num,0) multiple_num , ifnull(aaa.judge_num,0) judge_num from edu_question_db t
select d.depart_name,t.* , ifnull(aaa.single_num,0) single_num , ifnull(aaa.multiple_num,0) multiple_num , ifnull(aaa.judge_num,0) judge_num from edu_question_db t
left join (
SELECT question_db_id , question_type,
SUM(IF(`question_type`='1',1,0))as 'single_num',
......@@ -34,6 +35,7 @@
FROM edu_question
group by question_db_id , question_type
)aaa on aaa.question_db_id = t.id
left join sys_depart d on t.depart_id = d.id
<where>
<if test="departId != null and departId != ''"> and t.depart_id = #{departId}</if>
<if test="userId != null and userId != ''"> and t.user_id = #{userId}</if>
......
......@@ -29,4 +29,16 @@ public interface ScreenMapper {
@Param("dataViewName3a24") String dataViewName3a24, @Param("dataViewName2119") String dataViewName2119,
@Param("startMonth") String startMonth, @Param("endMonth") String endMonth,
@Param("dataViewName4411") String dataViewName4411);
@Select(" select sd.depart_name,( SELECT depart_name from sys_depart WHERE id = sd.parent_id )parent_depart_name,sd.depart_type,smd.metricd_name, smmi.id,smmi.metric_name,smmi.metric_type,smmi.metric_uid_tag ,g.group_name groupName,g.group_type groupType , COALESCE(smmi.metric_unit,smd.metric_unit) metric_unit,smmi.depart_id ,COALESCE(g.sort_num,smmi.sort_num) sort_num from sys_monitor_metric_info smmi left join sys_metric_dict smd on smd.id =smmi.metric_uid_tag " +
"inner join sys_depart sd on smmi.depart_id =sd.id left join sys_metric_dict_group g on g.dict_id =smmi.metric_uid_tag " +
" ${ew.customSqlSegment}")
List<Map<String, Object>> getDictGroupData(@Param(Constants.WRAPPER) QueryWrapper dictGroupQueryWrapper);
/**
* 水厂档案相关查询
* @param queryWrapper
*/
@Select("select sd.id depart_id,sd.parent_id,sd.depart_name,( SELECT depart_name from sys_depart WHERE id = sd.parent_id )parent_depart_name,sd.depart_type,sf.* from sys_depart sd left join sys_factory_info sf on sd.id =sf.depart_id ${ew.customSqlSegment}")
List<Map<String, Object>> factoryDesign(@Param(Constants.WRAPPER) QueryWrapper queryWrapper);
}
......
......@@ -3,6 +3,7 @@ package com.skua.modules.threedimensional.service;
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.skua.modules.threedimensional.vo.StatisticsParams;
import org.apache.ibatis.annotations.Param;
import org.springframework.jdbc.core.JdbcTemplate;
......@@ -24,4 +25,13 @@ public interface IScreenDataService{
List<Map<String, Object>> getYhdlqs(StatisticsParams statisticsParams);
List<Map<String, Object>> getYhylqs(StatisticsParams statisticsParams);
List<Map<String, Object>> getDictGroupData(QueryWrapper dictGroupQueryWrapper);
/**
* 水厂档案相关查询
* @param queryWrapper
* @return
*/
List<Map<String, Object>> factoryDesign(QueryWrapper<Object> queryWrapper);
}
......
package com.skua.modules.threedimensional.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.skua.common.constant.ReportConstant;
import com.skua.common.report.ReportViewUtil;
import com.skua.core.service.IFactoryInfoService;
......@@ -338,6 +339,22 @@ public class ScreenDataServiceImpl implements IScreenDataService {
return months;
}
public List<Map<String, Object>> getDictGroupData(QueryWrapper dictGroupQueryWrapper){
return screenMapper.getDictGroupData(dictGroupQueryWrapper);
}
/***
* 水厂档案相关查询
* @param queryWrapper
* @return
*/
@Override
public List<Map<String, Object>> factoryDesign(QueryWrapper<Object> queryWrapper) {
return screenMapper.factoryDesign(queryWrapper);
}
public static void main(String[] args) {
String startTime = "2024-01-01";//
String endTime = "2024-12-31";
......
......@@ -15,4 +15,7 @@ public class DataParams {
private String startDate;
private String departType;
private String tag;
}
......
package com.skua.modules.threedimensional.vo;
import com.skua.core.util.ConvertUtils;
import com.skua.modules.threedimensional.entity.RealTimeData;
import lombok.Data;
......@@ -16,4 +17,18 @@ public class RealTimeDataVO extends RealTimeData {
private String departName;
private String metricRealName;
private String waterType;
private String groupType;
private String groupName;
private String alarmValue;
private String alarmStatus;
private String parentDepartName;
private String alarmLimit;
private String warnLimit;
private String riverAlarm;
}
......
......@@ -15,26 +15,28 @@ public class PowerCutDownVO {
@ApiModelProperty(value = "部门编号")
public String departId ;
@ApiModelProperty(value = "部门名称")
public String departName;
@ApiModelProperty(value = "名称")
@ApiModelProperty(value = "处理水量")
public String clsl ;
@ApiModelProperty(value = "名称")
@ApiModelProperty(value = "COD")
public String codValue;
@ApiModelProperty(value = "名称")
@ApiModelProperty(value = "耗电量")
public String hdl;
@ApiModelProperty(value = "名称")
@ApiModelProperty(value = "氨氮")
public String nh3nValue;
@ApiModelProperty(value = "名称")
@ApiModelProperty(value = "数量")
public String num;
@ApiModelProperty(value = "名称")
@ApiModelProperty(value = "总氮")
public String tnValue;
@ApiModelProperty(value = "名称")
@ApiModelProperty(value = "总磷")
public String tpValue;
}
......
......@@ -106,7 +106,7 @@ public class OperationReportServiceImpl implements IOperationReportService {
/***************** 实际水量同比下降水务公司原因分析一览表************************/
dataViewName4411 = ReportViewUtil.buildView(ReportConstant.view4411,"ysjsl,tqysjsl,ysjsldyqntqyy", departId, seasonTimeVO.getStartTime(), seasonTimeVO.getEndTime());
sql = " select aaa.depart_id , d.depart_name departName, round(100*(sum(ifnull(aaa.ysjsl,0)) - sum(ifnull(aaa.tqysjsl,0)) )/ sum(ifnull(aaa.tqysjsl,0)),2) 'ratio', ";
sql += " round( sum(ifnull(aaa.ysjsl,0)),2 ) 'ysjsl' ,round( sum(ifnull(aaa.tqysjsl,0)),2 ) 'tqysjsl' ,GROUP_CONCAT(aaa.ysjsldyqntqyy) 'causeAnalysis' from "+ dataViewName4411+" aaa";
sql += " round( sum(ifnull(aaa.ysjsl,0)),2 ) 'ysjsl' ,round( sum(ifnull(aaa.tqysjsl,0)),2 ) 'tqysjsl' ,GROUP_CONCAT(aaa.ysjsldyqntqyy SEPARATOR '') 'causeAnalysis' from "+ dataViewName4411+" aaa";
sql += " left join sys_depart d on d.id = aaa.depart_id";
sql += " group by aaa.depart_id HAVING sum(ifnull(aaa.ysjsl,0)) < sum(ifnull(aaa.tqysjsl,0)) ";
List<FReportWaterMonthDataVO> waterMonthDataList = getJdbcTemplate().query(sql,new BeanPropertyRowMapper<FReportWaterMonthDataVO>(FReportWaterMonthDataVO.class));
......@@ -115,7 +115,7 @@ public class OperationReportServiceImpl implements IOperationReportService {
//水电耗高于控制目标--水务公司列表
dataViewName4411 = ReportViewUtil.buildView(ReportConstant.view4411,"ydh,dhcmbzyy", departId, seasonTimeVO.getStartTime(), seasonTimeVO.getEndTime());
sql = "select * from ( ";
sql += " select d.depart_name 'departName', aaa.depart_id , round(avg(aaa.ydh),2) realConsume , IFNULL(tc.target_power,2) 'targetConsume' ,GROUP_CONCAT(aaa.dhcmbzyy) 'causeAnalysis' from "+ dataViewName4411+" aaa";;
sql += " select d.depart_name 'departName', aaa.depart_id , round(avg(aaa.ydh),2) realConsume , IFNULL(tc.target_power,2) 'targetConsume' ,GROUP_CONCAT(aaa.dhcmbzyy SEPARATOR '') 'causeAnalysis' from "+ dataViewName4411+" aaa";;
sql += " left join report_target_config tc on (tc.depart_id = aaa.depart_id and tc.target_year='2024')";
sql += " left join sys_depart d on d.id = aaa.depart_id ";
sql += " group by aaa.depart_id )bbb where bbb.realConsume > bbb.targetConsume ";
......@@ -126,7 +126,7 @@ public class OperationReportServiceImpl implements IOperationReportService {
//药剂成本高于控制目标--水务公司列表
dataViewName4411 = ReportViewUtil.buildView(ReportConstant.view4411,"yyh,yhcyqyy", departId, seasonTimeVO.getStartTime(), seasonTimeVO.getEndTime());
sql = "select * from ( ";
sql += " select d.depart_name 'departName', aaa.depart_id , round(avg(aaa.yyh),2) realConsume , IFNULL(tc.target_drug,2) 'targetConsume' ,GROUP_CONCAT(aaa.yhcyqyy) 'causeAnalysis' from "+ dataViewName4411+" aaa";;
sql += " select d.depart_name 'departName', aaa.depart_id , round(avg(aaa.yyh),2) realConsume , IFNULL(tc.target_drug,2) 'targetConsume' ,GROUP_CONCAT(aaa.yhcyqyy SEPARATOR '') 'causeAnalysis' from "+ dataViewName4411+" aaa";;
sql += " left join report_target_config tc on (tc.depart_id = aaa.depart_id and tc.target_year='2024')";
sql += " left join sys_depart d on d.id = aaa.depart_id ";
sql += " group by aaa.depart_id )bbb where bbb.realConsume > bbb.targetConsume ";
......
......@@ -9,6 +9,7 @@ import javax.servlet.http.HttpServletResponse;
import cn.hutool.json.JSONObject;
import com.skua.core.context.BaseContextHandler;
import com.skua.core.query.QueryGenerator;
import org.apache.commons.lang.StringUtils;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Sheet;
......@@ -110,6 +111,28 @@ public class EquipmentController {
@Autowired
private Key2ValueService key2ValueService;
@AutoLog(value = "设备台账-所有设备")
@ApiOperation(value = "设备台账-所有设备", notes = "设备台账-所有设备")
@GetMapping(value = "/allList")
public Result<List<EquipmentInfo>> allList(EquipmentInfo equipmentInfo, @RequestParam(name="model", defaultValue="0") Integer model,HttpServletRequest req ) throws Exception {
Result<List<EquipmentInfo>> result = new Result<List<EquipmentInfo>>();
QueryWrapper<EquipmentInfo> queryWrapper = QueryGenerator.initQueryWrapper(equipmentInfo, req.getParameterMap());
// queryWrapper.eq("depart_id", BaseContextHandler.getRealDepartId());
if(equipmentInfo.getDepartId()==null){
equipmentInfo.setDepartId(BaseContextHandler.getDeparts());
}
/* if(model==1){
queryWrapper.isNotNull("is_model");
queryWrapper.last(" and is_model != ''");
}*/
queryWrapper.orderByDesc("create_time");
List<EquipmentInfo> dataList = equipmentInfoService.list(queryWrapper);
result.setSuccess(true);
result.setResult(dataList);
return result;
}
@CustomExceptionAnno(description = "设备台账-设备排序")
@AutoLog(value = "设备台账-设备排序")
@ApiOperation(value = "设备台账-设备排序", notes = "设备台账-设备排序")
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!