|  | @@ -1,260 +0,0 @@
 | 
	
		
			
				|  |  | -package cn.com.usky.iot.userstatus.service;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -import java.text.SimpleDateFormat;
 | 
	
		
			
				|  |  | -import java.util.Date;
 | 
	
		
			
				|  |  | -import java.util.HashMap;
 | 
	
		
			
				|  |  | -import java.util.List;
 | 
	
		
			
				|  |  | -import java.util.Map;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -import cn.com.usky.iot.EfAnalysis.dao.YtiotTEfAnalysisDao;
 | 
	
		
			
				|  |  | -import cn.com.usky.iot.admin.dao.YtiotVUserCompanyDao;
 | 
	
		
			
				|  |  | -import cn.com.usky.iot.entity.YtiotTAdminStateEntity;
 | 
	
		
			
				|  |  | -import cn.com.usky.iot.entity.YtiotTEfAnalysis;
 | 
	
		
			
				|  |  | -import cn.com.usky.iot.entity.YtiotTWaterAnalysis;
 | 
	
		
			
				|  |  | -import cn.com.usky.iot.entity.YtiotVUsercompany;
 | 
	
		
			
				|  |  | -import cn.com.usky.iot.entity.YtiotVUsercompanyId;
 | 
	
		
			
				|  |  | -import cn.com.usky.iot.userstatus.dao.YtiotTAdminStateEntityDao;
 | 
	
		
			
				|  |  | -import cn.com.usky.utils.DaoResult;
 | 
	
		
			
				|  |  | -import cn.com.usky.utils.MD5Util;
 | 
	
		
			
				|  |  | -import net.sf.json.JSONArray;
 | 
	
		
			
				|  |  | -import net.sf.json.JSONObject;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -public class YtiotTAdminStateEntityServicesImpl implements YtiotTAdminStateEntityService {
 | 
	
		
			
				|  |  | -	private YtiotTAdminStateEntityDao ytiotTAdminStateEntityDao;
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -	public YtiotTAdminStateEntityDao getYtiotTAdminStateEntityDao() {
 | 
	
		
			
				|  |  | -		return ytiotTAdminStateEntityDao;
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -			   
 | 
	
		
			
				|  |  | -	public void setYtiotTAdminStateEntityDao(YtiotTAdminStateEntityDao ytiotTAdminStateEntityDao) {
 | 
	
		
			
				|  |  | -		this.ytiotTAdminStateEntityDao = ytiotTAdminStateEntityDao;
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -	private YtiotVUserCompanyDao ytiotVUserCompanyDao;
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -	public YtiotVUserCompanyDao getYtiotVUserCompanyDao() {
 | 
	
		
			
				|  |  | -		return ytiotVUserCompanyDao;
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -			   
 | 
	
		
			
				|  |  | -	public void setYtiotVUserCompanyDao(YtiotVUserCompanyDao ytiotVUserCompanyDao) {
 | 
	
		
			
				|  |  | -		this.ytiotVUserCompanyDao = ytiotVUserCompanyDao;
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -	private YtiotTEfAnalysisDao ytiotTEfAnalysisDao;
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -	public YtiotTEfAnalysisDao getYtiotTEfAnalysisDao() {
 | 
	
		
			
				|  |  | -		return ytiotTEfAnalysisDao;
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -			   
 | 
	
		
			
				|  |  | -	public void setYtiotTEfAnalysisDao(YtiotTEfAnalysisDao ytiotTEfAnalysisDao) {
 | 
	
		
			
				|  |  | -		this.ytiotTEfAnalysisDao = ytiotTEfAnalysisDao;
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -	public boolean chk_string_param(String param) {
 | 
	
		
			
				|  |  | -		if(param==null)
 | 
	
		
			
				|  |  | -			return true;
 | 
	
		
			
				|  |  | -		if(param.indexOf("=")>=0)
 | 
	
		
			
				|  |  | -			return false;
 | 
	
		
			
				|  |  | -		if(param.indexOf("\'")>=0)
 | 
	
		
			
				|  |  | -			return false;
 | 
	
		
			
				|  |  | -		if(param.indexOf("\"")>=0)
 | 
	
		
			
				|  |  | -			return false;
 | 
	
		
			
				|  |  | -		return true;
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -	public String chkhw(String hqlwhere){
 | 
	
		
			
				|  |  | -		if(hqlwhere==null)
 | 
	
		
			
				|  |  | -			return " where ";
 | 
	
		
			
				|  |  | -		else
 | 
	
		
			
				|  |  | -			return hqlwhere+" and ";
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -	public String fieldname(String field){
 | 
	
		
			
				|  |  | -		if(field.equals("UUSID"))
 | 
	
		
			
				|  |  | -			return "uusid";
 | 
	
		
			
				|  |  | -		if(field.equals("V_LOGINNAME"))
 | 
	
		
			
				|  |  | -			return "vLoginname";
 | 
	
		
			
				|  |  | -		if(field.equals("STATE"))
 | 
	
		
			
				|  |  | -			return "state";
 | 
	
		
			
				|  |  | -		return null;
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -	@Override
 | 
	
		
			
				|  |  | -	public String updateUserState(String queryJson) throws Exception {
 | 
	
		
			
				|  |  | -		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
 | 
	
		
			
				|  |  | -		String V_LOGINNAME = null;
 | 
	
		
			
				|  |  | -		String STATE = null;
 | 
	
		
			
				|  |  | -		JSONObject q_json = null;
 | 
	
		
			
				|  |  | -		JSONArray jSONArray = new JSONArray();
 | 
	
		
			
				|  |  | -		JSONObject json = new JSONObject();
 | 
	
		
			
				|  |  | -		if(queryJson!=null) {
 | 
	
		
			
				|  |  | -			q_json = JSONObject.fromObject(queryJson);
 | 
	
		
			
				|  |  | -			V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null;
 | 
	
		
			
				|  |  | -			STATE = q_json.has("STATE")?q_json.getString("STATE"):null;
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | -		if(chk_string_param(V_LOGINNAME)) {
 | 
	
		
			
				|  |  | -			if(V_LOGINNAME!=null&&!V_LOGINNAME.equals("")&&STATE!=null&&!STATE.equals("")) {
 | 
	
		
			
				|  |  | -				List list = ytiotTAdminStateEntityDao.query(" where u."+fieldname("V_LOGINNAME")+" ='"+V_LOGINNAME+"' ", null, null, null, null);
 | 
	
		
			
				|  |  | -				if(list.size()>0) {
 | 
	
		
			
				|  |  | -					YtiotTAdminStateEntity o = (YtiotTAdminStateEntity) list.get(0);
 | 
	
		
			
				|  |  | -					if(o.getState().equals("1")&&STATE.equals("2")) {
 | 
	
		
			
				|  |  | -						o.setState("3");
 | 
	
		
			
				|  |  | -					}else if(o.getState().equals("2")&&STATE.equals("1")){
 | 
	
		
			
				|  |  | -						o.setState("3");
 | 
	
		
			
				|  |  | -					}else if(o.getState().equals("3")&&!STATE.equals("0")){
 | 
	
		
			
				|  |  | -						o.setState("3");
 | 
	
		
			
				|  |  | -					}else if(STATE.equals("0")){
 | 
	
		
			
				|  |  | -						o.setState("0");
 | 
	
		
			
				|  |  | -					}else {
 | 
	
		
			
				|  |  | -						o.setState(STATE);
 | 
	
		
			
				|  |  | -					}
 | 
	
		
			
				|  |  | -					
 | 
	
		
			
				|  |  | -					o.setTime(formatter.format(new Date()));
 | 
	
		
			
				|  |  | -					
 | 
	
		
			
				|  |  | -					DaoResult ret = ytiotTAdminStateEntityDao.update(o);
 | 
	
		
			
				|  |  | -					json.put("success", ret.isSuccess());
 | 
	
		
			
				|  |  | -					json.put("MSG", ret.getResult());
 | 
	
		
			
				|  |  | -				}else {
 | 
	
		
			
				|  |  | -					json.put("success", false);
 | 
	
		
			
				|  |  | -					json.put("MSG", "需要编辑的权限记录不存在");
 | 
	
		
			
				|  |  | -				}
 | 
	
		
			
				|  |  | -			}else {
 | 
	
		
			
				|  |  | -				json.put("success", false);
 | 
	
		
			
				|  |  | -				json.put("MSG", "登录用户不能为空");
 | 
	
		
			
				|  |  | -			}
 | 
	
		
			
				|  |  | -		}else {
 | 
	
		
			
				|  |  | -			json.put("success", false);
 | 
	
		
			
				|  |  | -			json.put("MSG", "缺少重要参数");
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | -		return json.toString();
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -	@Override
 | 
	
		
			
				|  |  | -	public String getUserStateList(String queryJson) throws Exception {
 | 
	
		
			
				|  |  | -		SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM");
 | 
	
		
			
				|  |  | -		String V_LOGINNAME = null;
 | 
	
		
			
				|  |  | -		String hqlwhere = null;
 | 
	
		
			
				|  |  | -		String Company_Code_List = null;
 | 
	
		
			
				|  |  | -		JSONObject q_json = null;
 | 
	
		
			
				|  |  | -		JSONArray jSONArray = new JSONArray();
 | 
	
		
			
				|  |  | -		JSONObject json = new JSONObject();
 | 
	
		
			
				|  |  | -		if(queryJson!=null) {
 | 
	
		
			
				|  |  | -			q_json = JSONObject.fromObject(queryJson);	
 | 
	
		
			
				|  |  | -			V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null;
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | -		
 | 
	
		
			
				|  |  | -		
 | 
	
		
			
				|  |  | -		
 | 
	
		
			
				|  |  | -		
 | 
	
		
			
				|  |  | -		if((V_LOGINNAME!=null)&&(!V_LOGINNAME.equals(""))) {
 | 
	
		
			
				|  |  | -			String where1 = " where u.id.agentid='"+V_LOGINNAME+"' ";
 | 
	
		
			
				|  |  | -			List list1 = ytiotVUserCompanyDao.query(where1, null, null, null, null);
 | 
	
		
			
				|  |  | -			if(list1.size()>0) {
 | 
	
		
			
				|  |  | -				for(int i=0;i<list1.size();i++) {
 | 
	
		
			
				|  |  | -					YtiotVUsercompany a1 = (YtiotVUsercompany)list1.get(i);
 | 
	
		
			
				|  |  | -					YtiotVUsercompanyId oid = a1.getId();
 | 
	
		
			
				|  |  | -					if(i==0) {
 | 
	
		
			
				|  |  | -						Company_Code_List = "'" + oid.getOwnerCode() + "'";
 | 
	
		
			
				|  |  | -					}else {
 | 
	
		
			
				|  |  | -						Company_Code_List +=",'" +oid.getOwnerCode() + "'";
 | 
	
		
			
				|  |  | -					}
 | 
	
		
			
				|  |  | -					
 | 
	
		
			
				|  |  | -				}
 | 
	
		
			
				|  |  | -			}else {
 | 
	
		
			
				|  |  | -				json.put("success", false);
 | 
	
		
			
				|  |  | -				json.put("mgs", "数据错误");
 | 
	
		
			
				|  |  | -			}
 | 
	
		
			
				|  |  | -			
 | 
	
		
			
				|  |  | -			
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -				hqlwhere = chkhw(hqlwhere) + "u."+fieldname("V_LOGINNAME")+"='"+V_LOGINNAME+"'";
 | 
	
		
			
				|  |  | -				List list = ytiotTAdminStateEntityDao.query(hqlwhere,null ,null, null, null);
 | 
	
		
			
				|  |  | -				if(list.size()>0) {
 | 
	
		
			
				|  |  | -					YtiotTAdminStateEntity o = (YtiotTAdminStateEntity)list.get(0);
 | 
	
		
			
				|  |  | -					Map map = new HashMap();
 | 
	
		
			
				|  |  | -					if(o.getState().equals("0")) {
 | 
	
		
			
				|  |  | -						map.put("UUSID", o.getUusid());
 | 
	
		
			
				|  |  | -		            	map.put("V_LOGINNAME", o.getvLoginname());
 | 
	
		
			
				|  |  | -		            	map.put("STATE", "0");
 | 
	
		
			
				|  |  | -					}else if(o.getState().equals("1")||o.getState().equals("2")){
 | 
	
		
			
				|  |  | -						map.put("UUSID", o.getUusid());
 | 
	
		
			
				|  |  | -		            	map.put("V_LOGINNAME", o.getvLoginname());
 | 
	
		
			
				|  |  | -		            	map.put("STATE", o.getState());
 | 
	
		
			
				|  |  | -					}else if(o.getState().equals("3")){
 | 
	
		
			
				|  |  | -						String where2 = " where u.companyCode in("+Company_Code_List+") ";
 | 
	
		
			
				|  |  | -						List list2 = ytiotTEfAnalysisDao.query(where2, " order by u.id ", " desc ", null, null);
 | 
	
		
			
				|  |  | -						YtiotTEfAnalysis o2 = (YtiotTEfAnalysis)list2.get(0);
 | 
	
		
			
				|  |  | -						
 | 
	
		
			
				|  |  | -						String where3 = " where u.companyCode in("+Company_Code_List+") ";
 | 
	
		
			
				|  |  | -						List list3 = ytiotTEfAnalysisDao.queryWater(where3, " order by u.id ", " desc ", null, null);
 | 
	
		
			
				|  |  | -						YtiotTWaterAnalysis o3 = (YtiotTWaterAnalysis)list3.get(0);
 | 
	
		
			
				|  |  | -						
 | 
	
		
			
				|  |  | -						int startDay1=0;
 | 
	
		
			
				|  |  | -						int startDay2=0;
 | 
	
		
			
				|  |  | -						int endDay=0;
 | 
	
		
			
				|  |  | -						if(list2.size()>0&&list3.size()>0) {
 | 
	
		
			
				|  |  | -							try {
 | 
	
		
			
				|  |  | -					            Date dateStart1 = formatter.parse(o2.getGenerationTime());
 | 
	
		
			
				|  |  | -					            Date dateStart2 = formatter.parse(o3.getGenerationTime());
 | 
	
		
			
				|  |  | -					            Date datEnd = formatter.parse(o.getTime());
 | 
	
		
			
				|  |  | -					            startDay1 = (int) (dateStart1.getTime() / 1000);
 | 
	
		
			
				|  |  | -					            startDay2 = (int) (dateStart2.getTime() / 1000);
 | 
	
		
			
				|  |  | -					            endDay = (int) (datEnd.getTime() / 1000);
 | 
	
		
			
				|  |  | -					            
 | 
	
		
			
				|  |  | -					        } catch (Exception e) {
 | 
	
		
			
				|  |  | -					            e.printStackTrace();
 | 
	
		
			
				|  |  | -					        }
 | 
	
		
			
				|  |  | -							
 | 
	
		
			
				|  |  | -							if(startDay1>=endDay&&startDay2>=endDay) {
 | 
	
		
			
				|  |  | -					        	//未读
 | 
	
		
			
				|  |  | -								map.put("UUSID", o.getUusid());
 | 
	
		
			
				|  |  | -				            	map.put("V_LOGINNAME", o.getvLoginname());
 | 
	
		
			
				|  |  | -				            	map.put("STATE", "0");
 | 
	
		
			
				|  |  | -				            }else if(startDay1<endDay&&startDay2>=endDay){
 | 
	
		
			
				|  |  | -					        	//已读
 | 
	
		
			
				|  |  | -				            	map.put("UUSID", o.getUusid());
 | 
	
		
			
				|  |  | -				            	map.put("V_LOGINNAME", o.getvLoginname());
 | 
	
		
			
				|  |  | -				            	map.put("STATE", "1");
 | 
	
		
			
				|  |  | -				            }else if(startDay1>=endDay&&startDay2<endDay){
 | 
	
		
			
				|  |  | -					        	//已读
 | 
	
		
			
				|  |  | -				            	map.put("UUSID", o.getUusid());
 | 
	
		
			
				|  |  | -				            	map.put("V_LOGINNAME", o.getvLoginname());
 | 
	
		
			
				|  |  | -				            	map.put("STATE", "2");
 | 
	
		
			
				|  |  | -				            }else if(startDay1<endDay&&startDay2<endDay){
 | 
	
		
			
				|  |  | -					        	//已读
 | 
	
		
			
				|  |  | -				            	map.put("UUSID", o.getUusid());
 | 
	
		
			
				|  |  | -				            	map.put("V_LOGINNAME", o.getvLoginname());
 | 
	
		
			
				|  |  | -				            	map.put("STATE", "3");
 | 
	
		
			
				|  |  | -				            }
 | 
	
		
			
				|  |  | -						
 | 
	
		
			
				|  |  | -						}else {
 | 
	
		
			
				|  |  | -							json.put("success", false);
 | 
	
		
			
				|  |  | -							json.put("mgs", "数据错误");
 | 
	
		
			
				|  |  | -						}
 | 
	
		
			
				|  |  | -					}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -					JSONObject jSONObject = JSONObject.fromObject(map);
 | 
	
		
			
				|  |  | -					jSONArray.add(jSONObject);
 | 
	
		
			
				|  |  | -					json.put("RESULT", jSONArray);
 | 
	
		
			
				|  |  | -					json.put("success", true);
 | 
	
		
			
				|  |  | -					json.put("mgs", "操作成功");
 | 
	
		
			
				|  |  | -				}else {
 | 
	
		
			
				|  |  | -					json.put("success", false);
 | 
	
		
			
				|  |  | -					json.put("mgs", "数据错误");
 | 
	
		
			
				|  |  | -				}
 | 
	
		
			
				|  |  | -				
 | 
	
		
			
				|  |  | -		}else {
 | 
	
		
			
				|  |  | -			json.put("success", false);
 | 
	
		
			
				|  |  | -			json.put("mgs", "缺少重要参数");
 | 
	
		
			
				|  |  | -			
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | -		return json.toString();
 | 
	
		
			
				|  |  | -	}
 | 
	
		
			
				|  |  | -	
 | 
	
		
			
				|  |  | -}
 |