hz-zhhq-app-service/greenH5modul/.svn/pristine/8b/8ba15474e3ba082c0b24689244c...

557 lines
24 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.nationalelectric.greenH5;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import javax.annotation.Resource;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.type.TypeReference;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.nationalelectirc.Constant.Constant;
import com.nationalelectirc.utils.RestResult;
import com.nationalelectric.greenH5.bizc.BaseServiceImpl;
import com.nationalelectric.greenH5.bizc.IGreenOperateLogBizc;
import com.nationalelectric.greenH5.bizc.IGreenUserInfoBizc;
import com.nationalelectric.greenH5.po.GreenUserInfo;
import com.nationalelectric.greenH5.utils.DateTime;
import com.nationalelectric.greenH5.utils.DateUtil;
import com.sgcc.uap.persistence.IHibernateDao;
import okhttp3.Call;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
/**
* <b>概述</b><br>
* <p>
* <b>功能</b><br>
*
* @author chenweikang
*/
@Controller
@RequestMapping("/greenMyHealthy")
public class GreenMyHealthyController extends GreenBaseController {
/**
* 用户controller
*/
@Resource
private GreenUserInfoController greenUserInfoController;
/**
* 用户service
*/
@Resource
private IGreenUserInfoBizc greenuserinfoBizc;
/**
* 字典表controller
*/
@Resource
private GreenDictionaryInfoController greenDictionaryInfoController;
@Resource
private IGreenOperateLogBizc greenOperateLogBizc;
/**
* HibernateDao逻辑构件
*/
@Autowired
IHibernateDao hibernateDao;
@Autowired
private BaseServiceImpl baseService;
/**
* 获取访客统计
*
* @param stime
* @param etime
* @return
*/
@SuppressWarnings({ "unchecked", "unused" })
@RequestMapping(value = "/saveMyHealthy", method = RequestMethod.POST)
public @ResponseBody RestResult saveMyHealthy(@RequestBody Object requestBody) {
try {
Map<String, Object> map = new ObjectMapper().convertValue(requestBody, new TypeReference<Map<String, Object>>(){});
String userId = map.get("userId") == null || "".equals(map.get("userId")) ? null : map.get("userId").toString();
GreenUserInfo info = getUserInfo(userId);
if (info == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
String insertSql = "INSERT INTO green_healthy_record (uuid,temperature,cough,weak,breathe,discomfort_explain,"
+ "contact_epidemic_area,contact_overseas_returning,user_id,user_phone,"
+ " user_dpm,user_company,user_type,source,longitude,latitude,commit_time,creator,modifier,user_name,"
+ "location,location_detail) "
+ "VALUES(?,?,?,?,?,?,?,?,?,?,?, "
+ " ?,?,?,?,?,DATE_FORMAT(?, '%Y-%m-%d %H:%i:%s'),?,?,?,?,?)";
hibernateDao.updateWithSql(insertSql,new Object[] { UUID.randomUUID().toString(),map.get("temperature"),
map.get("cough"),map.get("weak"),map.get("breathe"),map.get("discomfortExplain"),map.get("epidemic"),
map.get("overseas"),map.get("userId"),info.getMobile(),info.getDepartmentName(),info.getOrgName(),0,0,
map.get("longitude"),map.get("latitude"),map.get("commitTime"),map.get("userId"),map.get("userId"),info.getRealName(),
map.get("location"),map.get("locationDetail")});
return new RestResult(Constant.SUCCESS, "提交成功", null);
} catch (Exception e) {
e.printStackTrace();
return new RestResult(Constant.FAILED, "请求失败");
}
}
/**
* 获取访客统计
*
* @param stime
* @param etime
* @return
*/
@SuppressWarnings({ "unchecked", "unused" })
@RequestMapping(value = "/getHealthyList", method = RequestMethod.POST)
public @ResponseBody RestResult getHealthyList(@RequestBody Object requestBody) {
try {
Map<String, Object> map = new ObjectMapper().convertValue(requestBody, new TypeReference<Map<String, Object>>(){});
String userId = map.get("userId") == null || "".equals(map.get("userId")) ? null : map.get("userId").toString();
GreenUserInfo info = getUserInfo(userId);
if (info == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
HashMap<String, Object> content = new HashMap<String, Object>();
String now = DateUtil.dateToStr(new Date(), "yyyy-MM-dd");
List<Map<String, Object>> dictionaryInfo = greenDictionaryInfoController.getDictionaryInfo("temperature");
String querySql = "SELECT hr.user_name userName ,DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') commitTime,"
+ "DATE_FORMAT(hr.commit_time,'%m-%d %H:%i') time,hr.temperature, "
+ " CASE hr.source WHEN 1 THEN 'AI检测' ELSE '个人上报' END source,CASE hr.cough WHEN 0 THEN '否' ELSE '是' END cough "
+ " FROM green_healthy_record hr WHERE hr.is_deleted = 'N' AND hr.user_type = 0 "
+ " AND hr.user_id = ? AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') > ? AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') < ? "
+ " GROUP BY hr.user_name, DATE_FORMAT(hr.commit_time,'%Y-%m-%d') order by hr.cough DESC, MIN(DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T')) desc";
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
String startTime = DateUtil.addDays(-6,DateUtil.strToDateLong(now+" 00:00:01", "yyyy-MM-dd HH:mm:ss")).toString();
list = hibernateDao.queryForListWithSql(querySql.toString(), new Object[]{ map.get("userId"),startTime,now+" 23:59:59"});
HashMap<String, Object> rMap = new HashMap<String, Object>();
HashMap<String, Object> categoriesmap = new HashMap<String, Object>();
HashMap<String, Object> datamap = new HashMap<String, Object>();
List<String> categoriesList = new ArrayList<String>();
List<String> dataList = new ArrayList<String>();
List<Object> dataList2 = new ArrayList<Object>();
List<Object> seriesList = new ArrayList<Object>();
for (int i = 0; i < list.size(); i++) {
categoriesList.add(DateTime.dateToStr(DateTime.strToDateLong4(list.get(list.size()-1-i).get("commitTime").toString()),"MM-dd"));
dataList.add(list.get(list.size()-1-i).get("temperature").toString());
}
categoriesmap.put("categories", categoriesList);
datamap.put("name", "体温");
datamap.put("data", dataList);
datamap.put("color", "green");
dataList2.add(datamap);
categoriesmap.put("series", dataList2);
rMap.put("tmpV", dictionaryInfo.get(0).get("data_value"));
rMap.put("list", list);
rMap.put("categoriesmap", categoriesmap);
return new RestResult(Constant.SUCCESS, "请求成功",rMap);
} catch (Exception e) {
e.printStackTrace();
return new RestResult(Constant.FAILED, "请求失败");
}
}
/**
* 获取访客统计
*
* @param stime
* @param etime
* @return
*/
@SuppressWarnings({ "unchecked", "unused" })
@RequestMapping(value = "/getMyHealthyStatistics", method = RequestMethod.POST)
public @ResponseBody RestResult getMyHealthyStatistics(String startDate,String endDate,String userId) {
try {
HashMap<String, Object> content = new HashMap<String, Object>();
GreenUserInfo userInfo = getUserInfo(userId);
if (userInfo == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
int role = -1;
List<Map<String, Object>> dictionaryInfo = greenDictionaryInfoController.getDictionaryInfo("temperature");
String now = DateUtil.dateToStr(new Date(), "yyyy-MM-dd");
String year = DateUtil.dateToStr(DateTime.strToDate(startDate, "yyyy-MM-dd"), "yyyy-MM-dd");
endDate = DateUtil.dateToStr(DateTime.strToDate(endDate, "yyyy-MM-dd"), "yyyy-MM-dd");
String startTime = year + " 00:00:01";
String endTime = endDate + " 23:59:59";
// String visitorSql = "SELECT count(t.name) total,t.name, 0 yc from (SELECT hr.user_dpm name,hr.user_name FROM green_healthy_record hr "
// + " WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' AND hr.user_company IS NOT NULL "
// + " and hr.user_id is not NULL AND DATE_FORMAT( hr.commit_time, '%Y-%m-%d %T') > ? "
// + "AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') < ? ";
// if(!userInfo.getDepartmentName().equals("新技术应用事业部")){
// visitorSql = visitorSql+ " AND hr.user_dpm = '" +userInfo.getDepartmentName() +"'";
// }
//
// visitorSql = visitorSql+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.name ";
String userRoleSql = "select t.role_id from green_user_role_rel t where t.user_id=?";
List<HashMap<String, Object>> userRolelist = hibernateDao.queryForListWithSql(userRoleSql,
new Object[] { userId });
role = -1;
if(userRolelist.size()>0){
role = Integer.valueOf(userRolelist.get(0).get("role_id").toString());
}
String visitorSql = "";
String visitorSql1 = "";
visitorSql = "SELECT name,if(isnull(tt.total),0,tt.total) as total, 0 yc FROM green_department dp LEFT JOIN "
+ " ( SELECT count(t.dpm) total,t.dpm from (SELECT hr.user_dpm dpm , hr.user_name FROM green_healthy_record hr "
+ " WHERE "
+ " hr.is_deleted = 'N' AND DATE_FORMAT( hr.commit_time, '%Y-%m-%d %T') > ? "
+ " AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') < ? " ;
if(role == 40){
visitorSql = visitorSql+ " AND hr.user_dpm = '" +userInfo.getDepartmentName() +"'";
visitorSql = visitorSql+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.dpm "
+ ") tt ON tt.dpm = dp.name where dp.parent_id = 40 ";
visitorSql = visitorSql+ " AND dp.name = '" +userInfo.getDepartmentName() +"'";
visitorSql = visitorSql+ " ORDER BY dp.seq ASC ";
visitorSql1 = "SELECT count(t.name) total,t.name from (SELECT hr.user_dpm name,hr.user_name FROM green_healthy_record hr "
+ " WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' AND hr.user_company IS NOT NULL "
+ "AND hr.user_company='国网技术学院'"
+ " AND (hr.temperature > ? or hr.cough = 1 or hr.weak = 1 or hr.breathe = 1 or hr.contact_epidemic_area = 1 or hr.contact_overseas_returning = 1 ) "
+ " and hr.user_id is not NULL AND DATE_FORMAT( hr.commit_time, '%Y-%m-%d %T') > ? "
+ "AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') < ? ";
visitorSql1 = visitorSql1+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.name ";
}else if(role == 41){
visitorSql = visitorSql+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.dpm "
+ ") tt ON tt.dpm = dp.name where dp.parent_id = 40 ORDER BY dp.seq ASC ";
visitorSql1 = "SELECT count(t.name) total,t.name from (SELECT hr.user_dpm name,hr.user_name FROM green_healthy_record hr "
+ " WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' AND hr.user_company IS NOT NULL "
+ "AND hr.user_company='国网技术学院'"
+ " AND (hr.temperature > ? or hr.cough = 1 or hr.weak = 1 or hr.breathe = 1 or hr.contact_epidemic_area = 1 or hr.contact_overseas_returning = 1 ) "
+ " and hr.user_id is not NULL AND DATE_FORMAT( hr.commit_time, '%Y-%m-%d %T') > ? "
+ "AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') < ? ";
visitorSql1 = visitorSql1+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.name ";
}else{
if(!userInfo.getDepartmentName().equals("新技术应用事业部")){
visitorSql = visitorSql+ " AND hr.user_dpm = '" +userInfo.getDepartmentName() +"'";
}
if(role > 20){
visitorSql1 = "SELECT count(t.name) total,t.name from (SELECT hr.user_dpm name,hr.user_name FROM green_healthy_record hr "
+ " WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' AND hr.user_company IS NOT NULL "
+ "AND hr.user_company='安徽公司_xt'"
+ " AND (hr.temperature > ? or hr.cough = 1 or hr.weak = 1 or hr.breathe = 1 or hr.contact_epidemic_area = 1 or hr.contact_overseas_returning = 1 ) "
+ " and hr.user_id is not NULL AND DATE_FORMAT( hr.commit_time, '%Y-%m-%d %T') > ? "
+ "AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') < ? ";
}
else{
visitorSql1 = "SELECT count(t.name) total,t.name from (SELECT hr.user_dpm name,hr.user_name FROM green_healthy_record hr "
+ " WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' AND hr.user_company IS NOT NULL AND"
+ " (hr.temperature > ? or hr.cough = 1 or hr.weak = 1 or hr.breathe = 1 or hr.contact_epidemic_area = 1 or hr.contact_overseas_returning = 1 ) "
+ " and hr.user_id is not NULL AND DATE_FORMAT( hr.commit_time, '%Y-%m-%d %T') > ? "
+ "AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') < ? ";
}
if(!userInfo.getDepartmentName().equals("新技术应用事业部") && !userInfo.getDepartmentName().equals("综合管理部")){
visitorSql1 = visitorSql1+ " AND hr.user_dpm = '" +userInfo.getDepartmentName() +"'";
}
// dictionaryInfo.get(i).get("data_value");
if(role >20){
visitorSql = visitorSql+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.dpm "
+ ") tt ON tt.dpm = dp.name where dp.parent_id =2 ORDER BY dp.seq ASC ";
visitorSql1 = visitorSql1+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.name ";
}
else{
visitorSql = visitorSql+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.dpm "
+ ") tt ON tt.dpm = dp.name where dp.parent_id =1 ORDER BY dp.seq ASC ";
visitorSql1 = visitorSql1+ " GROUP BY hr.user_dpm,DATE_FORMAT(hr.commit_time,'%Y-%m-%d'),hr.user_name )t GROUP BY t.name ";
}
}
List<HashMap<String, Object>> visitlist = hibernateDao.queryForListWithSql(visitorSql,
new Object[] { startTime, endTime });
List<HashMap<String, Object>> retinuelist = hibernateDao.queryForListWithSql(visitorSql1,
new Object[] { dictionaryInfo.get(0).get("data_value") ,startTime, endTime });
ArrayList<String> depList = new ArrayList<String>();
int total = 0;
int ycTotal = 0;
for (int i = 0; i < visitlist.size(); i++) {
total = total + Integer.valueOf(visitlist.get(i).get("total").toString());
for (int j = 0; j < retinuelist.size(); j++) {
if(visitlist.get(i).get("name").equals(retinuelist.get(j).get("name"))){
visitlist.get(i).put("yc", retinuelist.get(j).get("total").toString());
ycTotal = ycTotal + Integer.valueOf(retinuelist.get(j).get("total").toString());
}
}
}
depList.clear();
depList.add("全部");
if(userInfo.getDepartmentName().equals("新技术应用事业部") && !userInfo.getDepartmentName().equals("综合管理部")){
String queryAllDeptSql = "SELECT gd.id,gd.name FROM GREEN_DEPARTMENT gd WHERE 1=1 AND gd.dp_sort!=0 and gd.parent_id = '1' and gd.is_deleted='N' ORDER BY gd.seq ASC";
if(role >= 40){
queryAllDeptSql = "SELECT gd.id,gd.name FROM GREEN_DEPARTMENT gd WHERE 1=1 AND gd.dp_sort!=0 and gd.parent_id = '40' and gd.is_deleted='N' ORDER BY gd.seq ASC";
}else if(role > 20){
queryAllDeptSql = "SELECT gd.id,gd.name FROM GREEN_DEPARTMENT gd WHERE 1=1 AND gd.dp_sort!=0 and gd.parent_id = '2' and gd.is_deleted='N' ORDER BY gd.seq ASC";
}
List<Map<String,Object>> queryAllDeptList = hibernateDao.queryForListWithSql(queryAllDeptSql);
for(int i=0; i<queryAllDeptList.size(); i++){
depList.add(queryAllDeptList.get(i).get("name").toString());
}
} else{
if(role == 41){
String queryAllDeptSql = "SELECT gd.id,gd.name FROM GREEN_DEPARTMENT gd WHERE 1=1 AND gd.dp_sort!=0 and gd.parent_id = '40' and gd.is_deleted='N' ORDER BY gd.seq ASC";
List<Map<String,Object>> queryAllDeptList = hibernateDao.queryForListWithSql(queryAllDeptSql);
for(int i=0; i<queryAllDeptList.size(); i++){
depList.add(queryAllDeptList.get(i).get("name").toString());
}
}else{
depList.add(userInfo.getDepartmentName());
}
}
// [{name=互联网部, total=5, ty=0}, {name=发展策划部, total=1, ty=0}, {name=后勤工作部, total=2, ty=2}]
Map<String, Object> rMap = new HashMap<String, Object>();
HashMap<String, Object> totalmap = new HashMap<String, Object>();
rMap.put("total", total);
rMap.put("tmpV", dictionaryInfo.get(0).get("data_value"));
rMap.put("ycTotal", ycTotal);
rMap.put("depList", depList);
rMap.put("visitlist", visitlist);
return new RestResult(Constant.SUCCESS, "请求成功", rMap);
} catch (Exception e) {
e.printStackTrace();
return new RestResult(Constant.FAILED, "请求失败");
}
}
/**
* 查询我的预约申请列表和我的邀约列表
*
* @param result
* @return
*/
@SuppressWarnings("unchecked")
@RequestMapping(value = "/getMyHealthyDetailed", method = RequestMethod.POST)
public @ResponseBody RestResult getMyHealthyDetailed(String startDate,String endDate,String depName,String page,String userId,String type) {
try {
startDate = DateUtil.dateToStr(DateTime.strToDate(startDate, "yyyy-MM-dd"), "yyyy-MM-dd");
endDate = DateUtil.dateToStr(DateTime.strToDate(endDate, "yyyy-MM-dd"), "yyyy-MM-dd");
String startTime = startDate + " 00:00:01";
String endTime = endDate + " 23:59:59";
GreenUserInfo userInfo = getUserInfo(userId);
if (userInfo == null) {
return new RestResult(Constant.FAILED, "非法用户");
}
String pageSize = "20";
String userRoleSql = "select t.role_id from green_user_role_rel t where t.user_id=?";
List<HashMap<String, Object>> userRolelist = hibernateDao.queryForListWithSql(userRoleSql,
new Object[] { userId });
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
StringBuffer querySql = new StringBuffer();
ArrayList<Object> params = new ArrayList<Object>();
int role = -1;
if(userRolelist.size()>0){
role = Integer.valueOf(userRolelist.get(0).get("role_id").toString());
}
if(role >= 40){
querySql.append( " SELECT DATE_FORMAT(hr.commit_time,'%m-%d %H:%i') time,hr.user_name name,CASE hr.source WHEN 1 THEN 'AI检测' ELSE '个人上报' END source,"
+ "CASE hr.cough WHEN 0 THEN '否' ELSE '是' END cough "
+ ",hr.temperature,hr.user_name FROM green_healthy_record hr "
+ " WHERE hr.is_deleted = 'N' AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') > ? "
// querySql.append( " SELECT DATE_FORMAT(hr.commit_time,'%m-%d %H:%i') time,hr.user_name name,CASE hr.source WHEN 1 THEN '监测' ELSE '手机' END source,CASE hr.cough WHEN 0 THEN '否' ELSE '是' END cough "
// + ",hr.temperature,hr.user_name FROM green_healthy_record hr WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' "
// + " AND hr.user_company IS NOT NULL AND hr.user_id IS NOT NULL AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') > ? "
//
// querySql.append( " SELECT DATE_FORMAT(hr.commit_time,'%m-%d %H:%i') time,hr.user_name name,CASE hr.source WHEN 1 THEN 'AI检测' ELSE '个人上报' END source,CASE hr.cough WHEN 0 THEN '否' ELSE '是' END cough "
// + ",hr.temperature,hr.user_name FROM green_healthy_record hr WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' "
// + " AND hr.user_company IS NOT NULL AND hr.user_id IS NOT NULL AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') > ? "
+ " AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') <? ");
params.add(startTime);
params.add(endTime);
if(type.equals("异常")){
List<Map<String, Object>> dictionaryInfo = greenDictionaryInfoController.getDictionaryInfo("temperature");
querySql.append(" AND (hr.temperature > ? or hr.cough = 1 or hr.weak = 1 or hr.breathe = 1 or hr.contact_epidemic_area = 1 or hr.contact_overseas_returning = 1) ");
params.add(dictionaryInfo.get(0).get("data_value"));
}
// if(userInfo.getDepartmentName().equals("技术学院")){
if(role == 41){
if(!depName.equals("全部")){
querySql.append(" and hr.user_dpm= ? ");
params.add(depName);
}else{
querySql.append("and hr.user_dpm in (select name FROM green_department WHERE 1 = 1 AND parent_id = '40')");
}
}else{
if(!depName.equals("全部")){
querySql.append(" and hr.user_dpm= ? ");
params.add(depName);
} else{
// querySql.append("and hr.user_dpm =" +);
if(!depName.equals("全部")){
querySql.append(" and hr.user_dpm= ? ");
params.add(userInfo.getDepartmentName());
}
}
}
// }
// else{
// // if(!depName.equals("全部")){
// querySql.append(" and iu.department_name= ? ");
// params.add(userInfo.getDepartmentName());
// // }
// }
// 排序
if(page.matches("\\d+") && pageSize.matches("\\d+")){
Integer x = Integer.valueOf(page);
Integer y = Integer.valueOf(pageSize);
params.add((x-1)*y);
params.add(y);
querySql.append(" ORDER BY commit_time DESC LIMIT ?,?");
}
}else{
querySql.append( " SELECT DATE_FORMAT(hr.commit_time,'%m-%d %H:%i') time,hr.user_name name,CASE hr.source WHEN 1 THEN 'AI检测' ELSE '个人上报' END source,"
+ "CASE hr.cough WHEN 0 THEN '否' ELSE '是' END cough "
+ ",hr.temperature,hr.user_name FROM green_healthy_record hr INNER JOIN green_internal_user iu ON hr.user_phone = iu.phone "
+ " WHERE hr.is_deleted = 'N' AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') > ? "
// querySql.append( " SELECT DATE_FORMAT(hr.commit_time,'%m-%d %H:%i') time,hr.user_name name,CASE hr.source WHEN 1 THEN '监测' ELSE '手机' END source,CASE hr.cough WHEN 0 THEN '否' ELSE '是' END cough "
// + ",hr.temperature,hr.user_name FROM green_healthy_record hr WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' "
// + " AND hr.user_company IS NOT NULL AND hr.user_id IS NOT NULL AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') > ? "
//
// querySql.append( " SELECT DATE_FORMAT(hr.commit_time,'%m-%d %H:%i') time,hr.user_name name,CASE hr.source WHEN 1 THEN 'AI检测' ELSE '个人上报' END source,CASE hr.cough WHEN 0 THEN '否' ELSE '是' END cough "
// + ",hr.temperature,hr.user_name FROM green_healthy_record hr WHERE hr.is_deleted = 'N' AND hr.user_dpm IS NOT NULL AND hr.user_dpm != '' "
// + " AND hr.user_company IS NOT NULL AND hr.user_id IS NOT NULL AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') > ? "
+ " AND DATE_FORMAT(hr.commit_time,'%Y-%m-%d %T') <? ");
params.add(startTime);
params.add(endTime);
if(type.equals("异常")){
List<Map<String, Object>> dictionaryInfo = greenDictionaryInfoController.getDictionaryInfo("temperature");
querySql.append(" AND (hr.temperature > ? or hr.cough = 1 or hr.weak = 1 or hr.breathe = 1 or hr.contact_epidemic_area = 1 or hr.contact_overseas_returning = 1) ");
params.add(dictionaryInfo.get(0).get("data_value"));
}
if(userInfo.getDepartmentName().equals("新技术应用事业部")){
// if(!depName.equals("全部")){
// querySql.append(" and iu.department= ? ");
// params.add(depName);
// }else{
// querySql.append("and hr.user_dpm in (select name FROM green_department WHERE 1 = 1 AND parent_id = '2')");
//
// }
if(role >20){
if(!depName.equals("全部")){
querySql.append(" and iu.department_name= ? ");
params.add(depName);
}else{
querySql.append("and hr.user_dpm in (select name FROM green_department WHERE 1 = 1 AND parent_id = '2')");
}
}else{
if(!depName.equals("全部")){
querySql.append(" and iu.department_name= ? ");
params.add(depName);
} else{
querySql.append("and hr.user_dpm in (select name FROM green_department WHERE 1 = 1 AND parent_id = '1')");
}
}
}else{
// if(!depName.equals("全部")){
querySql.append(" and iu.department= ? ");
params.add(userInfo.getDepartmentName());
// }
}
// 排序
if(page.matches("\\d+") && pageSize.matches("\\d+")){
Integer x = Integer.valueOf(page);
Integer y = Integer.valueOf(pageSize);
params.add((x-1)*y);
params.add(y);
querySql.append(" ORDER BY commit_time DESC LIMIT ?,?");
}
}
list = hibernateDao.queryForListWithSql(querySql.toString(),params.toArray());
return new RestResult(Constant.SUCCESS, "查询成功", list);
}catch (Exception e) {
e.printStackTrace();
return new RestResult(Constant.FAILED, "查询失败!");
}
}
}