package openapi.restcontroller.housekeeper.user; import net.sf.json.JSONObject; import openapi.base.Controller; import openapi.base.SQLFactory; import openapi.base.data.Row; import openapi.base.data.Rows; import openapi.base.data.RowsMap; import openapi.base.data.db.DBConnect; import org.apache.commons.lang.StringUtils; import org.apache.ibatis.jdbc.SQL; import p2.p2server.P2Server; import p2.pao.PaoRemote; import p2.pao.PaoSetRemote; import p2.util.P2Exception; public class Worker extends Controller { public Worker(JSONObject jsonObject){ super(jsonObject); } /**服务人员列表**/ public String workerlist(){ if(StringUtils.isBlank(hrid))return getReturnObject_err("hrid为空").toString(); if(StringUtils.isBlank(fagentnum))return getReturnObject_err("fagentnum为空").toString(); if(StringUtils.isBlank(siteid))return getReturnObject_err("siteid为空").toString(); JSONObject where = content.getJSONObject("where"); String wherestr="1=1"; if(where!=null){ if(where.containsKey("workphone")&&!StringUtils.isBlank(where.getString("workphone"))) wherestr+=" and (workphone like '%"+where.getString("workphone")+"%' or fname like '%"+where.getString("workphone")+"%')"; if(where.containsKey("fisused")&&!StringUtils.isBlank(where.getString("fisused"))){ wherestr+=" and fisused="+where.getInt("fisused"); } if(where.containsKey("role")&&!StringUtils.isBlank(where.getString("role"))){ wherestr+=" and role='"+where.getString("role")+"'"; } DBConnect dbConnect=new DBConnect(); SQLFactory factory=new SQLFactory(this,"服务人员列表",pageSize,pageNumber,"t.fname"); factory.addParameter("fagentnum",fagentnum); factory.addParameter("siteid",siteid); factory.addParameter_SQL("where",wherestr); Rows rows = dbConnect.runSqlQuery(factory.getSQL()); System.out.println(factory.getSQL()); SQLFactory imgfactory=new SQLFactory(this,"查询服务人员头像"); imgfactory.addParameter("siteid",siteid); imgfactory.addParameter_SQL("workphone",rows.getInWhere("workphone")); Rows imgurl = dbConnect.runSqlQuery(imgfactory.getSQL()); RowsMap workphone = imgurl.toRowsMap("workphone"); for (Row row : rows) { if(workphone.containsKey(row.getString("workphone"))){ row.put("url",workphone.get(row.getString("workphone")).get(0).getString("url")); }else{ row.put("url",null); } } return getReturnObject_suc_page(rows,false,0).toString(); } return getReturnObject_err("where参数为空").toString(); } /**服务人员添加**/ public String workeradd(){ if(StringUtils.isBlank(hrid))return getReturnObject_err("hrid为空").toString(); if(StringUtils.isBlank(fagentnum))return getReturnObject_err("fagentnum为空").toString(); if(StringUtils.isBlank(siteid))return getReturnObject_err("siteid为空").toString(); JSONObject where = content.getJSONObject("where"); String s[]={"workphone","password","fname","role"}; for (String s1 : s) { if(!where.containsKey(s1)||StringUtils.isBlank(where.getString(s1)))return getReturnObject_err("缺少"+s1+"参数").toString(); } if(where.getString("password").length()<6)getReturnObject_err("密码不能小于6位").toString(); try { PaoSetRemote worker = P2Server.getP2Server().getPaoSet("worker", P2Server.getP2Server().getSystemUserInfo()); worker.setInsertSite(siteid); worker.setWhere("workphone='"+where.getString("workphone")+"'"); worker.reset(); if(!worker.isEmpty())return getReturnObject_err("已存在该人员").toString(); PaoRemote workerpao = worker.addAtEnd(); workerpao.setValue("FAGENTNUM",fagentnum,11l); workerpao.setValue("fname",where.getString("fname"),11l); workerpao.setValue("workphone",where.getString("workphone"),11l); workerpao.setValue("password",where.getString("password"),11l); workerpao.setValue("role",where.getString("role"),11l); if(where.containsKey("fnotes"))workerpao.setValue("fnotes",where.getString("fnotes"),11l); if(where.containsKey("fsex"))workerpao.setValue("fsex",where.getString("fsex"),11l); worker.save(); } catch (P2Exception e) { return getReturnObject_err(e.getMessage()).toString(); } return getReturnObject_suc().toString(); } /**服务人员更新**/ public String workerupdate() { if(StringUtils.isBlank(hrid))return getReturnObject_err("hrid为空").toString(); if(StringUtils.isBlank(fagentnum))return getReturnObject_err("fagentnum为空").toString(); if(StringUtils.isBlank(siteid))return getReturnObject_err("siteid为空").toString(); JSONObject where = content.getJSONObject("where"); String s[]={"workphone"}; for (String s1 : s) { if(!where.containsKey(s1)||StringUtils.isBlank(where.getString(s1)))return getReturnObject_err("缺少"+s1+"参数").toString(); } if(where!=null){ try { PaoSetRemote worker = P2Server.getP2Server().getPaoSet("worker", P2Server.getP2Server().getSystemUserInfo()); worker.setInsertSite(siteid); worker.setWhere("workphone='"+where.getString("workphone")+"'"); worker.reset(); if(!worker.isEmpty()){ PaoRemote workerpao = worker.getPao(0); if(where.containsKey("fname")&&!StringUtils.isBlank(where.getString("fname"))){ workerpao.setValue("fname",where.getString("fname"),11l); } if(where.containsKey("fsex")&&!StringUtils.isBlank(where.getString("fsex"))){ workerpao.setValue("fsex",where.getString("fsex"),11l); } if(where.containsKey("role")&&!StringUtils.isBlank(where.getString("role"))){ workerpao.setValue("role",where.getString("role"),11l); } if(where.containsKey("fnotes")&&!StringUtils.isBlank(where.getString("fnotes"))){ workerpao.setValue("fnotes",where.getString("fnotes"),11l); } if(where.containsKey("fisused")){ workerpao.setValue("fisused",where.getBoolean("fisused"),11l); } if(where.containsKey("password")&&!StringUtils.isBlank(where.getString("password"))){ if(where.getString("password").length()<6)return getReturnObject_err("密码不能小于6位").toString(); workerpao.setValue("password",where.getString("password"),11l); } worker.save(); return getReturnObject_suc().toString(); } return getReturnObject_err("该人员不存在").toString(); } catch (P2Exception e) { return getReturnObject_err(e.getMessage()).toString(); } } return getReturnObject_err("缺少where参数").toString(); } /**服务人员删除**/ public String workerdelete(){ if(StringUtils.isBlank(hrid))getReturnObject_err("hrid为空").toString(); if(StringUtils.isBlank(fagentnum))getReturnObject_err("fagentnum为空").toString(); if(StringUtils.isBlank(siteid))getReturnObject_err("siteid为空").toString(); JSONObject where = content.getJSONObject("where"); String s[]={"workphone"}; for (String s1 : s) { if(!where.containsKey(s1)||StringUtils.isBlank(where.getString(s1)))getReturnObject_err("缺少"+s1+"参数").toString(); } if(where!=null){ try { PaoSetRemote worker = P2Server.getP2Server().getPaoSet("worker", P2Server.getP2Server().getSystemUserInfo()); worker.setInsertSite(siteid); worker.setWhere("workphone='"+where.getString("workphone")+"'"); if(!worker.isEmpty()){ PaoRemote workerpao = worker.getPao(0); workerpao.delete(); worker.save(); return getReturnObject_suc().toString(); } return getReturnObject_err("该人员不存在").toString(); } catch (P2Exception e) { return getReturnObject_err(e.getMessage()).toString(); } } return getReturnObject_err("缺少where参数").toString(); } /**工人筛选**/ public String worker_get(){ if(StringUtils.isBlank(hrid))return getReturnObject_err("hrid为空").toString(); if(StringUtils.isBlank(fagentnum))return getReturnObject_err("fagentnum为空").toString(); if(StringUtils.isBlank(siteid))return getReturnObject_err("siteid为空").toString(); JSONObject where = content.getJSONObject("where"); String wherestr="1=1"; if(where!=null){ wherestr+=" and t.role<>'服务组长' and t.fisused=1"; DBConnect dbConnect=new DBConnect(); SQLFactory factory=new SQLFactory(this,"工人刷选",pageSize,pageNumber,"t.fname"); factory.addParameter("fagentnum",fagentnum); factory.addParameter("siteid",siteid); factory.addParameter_SQL("where",wherestr); Rows rows = dbConnect.runSqlQuery(factory.getSQL()); SQLFactory imgfactory=new SQLFactory(this,"查询服务人员头像"); imgfactory.addParameter("siteid",siteid); imgfactory.addParameter_SQL("workphone",rows.getInWhere("workphone")); Rows imgurl = dbConnect.runSqlQuery(imgfactory.getSQL()); RowsMap workphone = imgurl.toRowsMap("workphone"); for (Row row : rows) { if(workphone.containsKey(row.getString("workphone"))){ row.put("url",workphone.get(row.getString("workphone")).get(0).getString("url")); }else{ row.put("url",null); } } //工人刷选 return getReturnObject_suc_page(rows,false,0).toString(); } return getReturnObject_err("where参数为空").toString(); } /**工人角色**/ public String worker_role(){ if(StringUtils.isBlank(hrid))return getReturnObject_err("hrid为空").toString(); if(StringUtils.isBlank(fagentnum))return getReturnObject_err("fagentnum为空").toString(); if(StringUtils.isBlank(siteid))return getReturnObject_err("siteid为空").toString(); JSONObject where = content.getJSONObject("where"); String wherestr="1=1"; if(where!=null){ DBConnect dbConnect=new DBConnect(); Rows rows = dbConnect.runSqlQuery("select value from PS_DATABIND_LIST where databindid='WORKERROLE'"); return getReturnObject_suc(rows,true).toString(); } return getReturnObject_err("where参数为空").toString(); } }