package openapi.restcontroller.housekeeperwebapp.workorder; import baseclass.tools.GetP2Type; import net.sf.json.JSONArray; 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 openapi.base.restful.WebClientRest; import ordernode.ordernode; import org.apache.commons.lang.StringUtils; import org.apache.cxf.ws.security.wss4j.policyvalidators.UsernameTokenPolicyValidator; import org.sqlite.date.DateFormatUtils; import p2.p2server.P2Server; import p2.pao.*; import p2.util.P2AppException; import p2.util.P2Exception; import workorder.workorder; import java.util.*; public class WorkOrder extends Controller { public WorkOrder(JSONObject content) { super(content); } /**工单列表**/ public String list(){ 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"; String s[]={"fstatus"}; for (String s1 : s) { if(!where.containsKey(s1)&&!StringUtils.isBlank(where.getString(s1)))return getReturnObject_err("缺少"+s1+"参数").toString(); } if(where!=null){ DBConnect dbConnect=new DBConnect(); if(where.containsKey("fstatus")&&!StringUtils.isBlank(where.getString("fstatus"))){ wherestr+=" and t.fstatus ='"+where.getString("fstatus")+"' "; } SQLFactory factory=new SQLFactory(this,"工单列表查询",pageSize,pageNumber,"t.createdate desc"); factory.addParameter("hrid",hrid); factory.addParameter("siteid",siteid); factory.addParameter_SQL("where",wherestr); SQLFactory factory2=new SQLFactory(this,"工单状态统计"); factory2.addParameter("hrid",hrid); factory2.addParameter("siteid",siteid); Rows rows_total = dbConnect.runSqlQuery(factory2.getSQL()); Rows rows = dbConnect.runSqlQuery(factory.getSQL()); if(!rows_total.isEmpty())returnObject.put("rows_total",rows_total.get(0)); return getReturnObject_suc_page(rows,false,0).toString(); } return getReturnObject_err("缺少where参数").toString(); } /**工单详情2**/ public String detail2(){ // 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[] = {"fworknum"}; for (String s1 : s) { if (!where.containsKey(s1) && !StringUtils.isBlank(where.getString(s1))) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if (where != null) { DBConnect dbConnect = new DBConnect(); SQLFactory factory = new SQLFactory(this, "工单详情"); factory.addParameter("fworknum", where.getString("fworknum")); factory.addParameter("siteid", siteid); Rows rows_details = dbConnect.runSqlQuery(factory.getSQL()); if(!rows_details.isEmpty()){ Row row_detail = rows_details.get(0); SQLFactory factory_team = new SQLFactory(this, "工单团队查询"); factory_team.addParameter("fworknum", where.getString("fworknum")); factory_team.addParameter("siteid", row_detail.getString("siteid")); Rows rows_team = dbConnect.runSqlQuery(factory_team.getSQL()); row_detail.put("team",rows_team); SQLFactory factory_nodes = new SQLFactory(this, "工单节点一级查询"); factory_nodes.addParameter("fworknum", where.getString("fworknum")); factory_nodes.addParameter("siteid", row_detail.getString("siteid")); Rows rows_nodes = dbConnect.runSqlQuery(factory_nodes.getSQL()); for (Row rows_node : rows_nodes) { SQLFactory factorynode_node = new SQLFactory(this, "工单节点二级查询"); factorynode_node.addParameter("fworknum",where.getString("fworknum")); factorynode_node.addParameter("supid",rows_node.getInteger("ownerid")); Rows rows = dbConnect.runSqlQuery(factorynode_node.getSQL()); for (Row row : rows) { Rows url = dbConnect.runSqlQuery("select tattachmentid,fdocument document,UPPER(postfix) postfix,fobsurl url,serialnumber,type,case when postfix in ('JPG','PNG','JEPG','jpg','png','jepg') then 'image' when postfix in ('MP4','mp4') then 'video' else 'file' end type2 from tattachment where ownertable='ORDERNODE' and ownerid =" + row.getInteger("ownerid")); row.put("url",url); } rows_node.put("child",rows); } for (Row rows_node : rows_nodes) { Rows url = dbConnect.runSqlQuery("select tattachmentid,fdocument document,UPPER(postfix) postfix,fobsurl url,serialnumber,type,case when postfix in ('JPG','PNG','JEPG','jpg','png','jepg') then 'image' when postfix in ('MP4','mp4') then 'video' else 'file' end type2 from tattachment where ownertable='ORDERNODE' and ownerid =" + rows_node.getInteger("ownerid")); rows_node.put("url",url); } row_detail.put("nodes",rows_nodes); SQLFactory factory_titem = new SQLFactory(this, "工单物料查询"); factory_titem.addParameter("fworknum", where.getString("fworknum")); factory_titem.addParameter("siteid", row_detail.getString("siteid")); Rows rows_titems = dbConnect.runSqlQuery(factory_titem.getSQL()); SQLFactory factory_imgurl = new SQLFactory(this, "物料图片查询"); factory_imgurl.addParameter("fagentnum", row_detail.getString("fagentnum")); factory_imgurl.addParameter("siteid", row_detail.getString("siteid")); factory_imgurl.addParameter_SQL("fitemno",rows_titems.getInWhere("fitemno")); Rows rows_titem_img = dbConnect.runSqlQuery(factory_imgurl.getSQL()); RowsMap fitemno = rows_titem_img.toRowsMap("fitemno"); for (Row rows_titem : rows_titems) { if(fitemno.containsKey(rows_titem.getString("fitemno"))){ rows_titem.put("url",fitemno.get(rows_titem.getString("fitemno")).get(0).getString("url")); }else{ rows_titem.put("url",null); } } row_detail.put("titems",rows_titems); return getReturnObject_suc(row_detail,false).toString(); } return getReturnObject_err("该工单不存在").toString(); } return getReturnObject_err("缺少where参数").toString(); } /**工单详情3**/ public String detail3(){ // 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[] = {"fworknum"}; for (String s1 : s) { if (!where.containsKey(s1) && !StringUtils.isBlank(where.getString(s1))) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if (where != null) { try { PaoSetRemote workorder = getpaoset("Workorder"); workorder.setInsertSite(siteid); workorder.setWhere("fworknum='" + where.getString("fworknum") + "'"); workorder.reset(); if (!workorder.isEmpty()) { PaoRemote workorderpao = workorder.getPao(0); String []from_detail={"fprovince","fcity","fcounty","fstatus","ftype","fworknum","servernum","customername","customephone","createdate","faddress","installer","installerphone","ownerid"}; String []to_detail={"fprovince","fcity","fcounty","fstatus","ftype","fworknum","servernum","customername","customephone","createdate","faddress","installer","installerphone","workorderid"}; Row row_detail = getrow(from_detail,to_detail,workorderpao); /**工单详情**/ /** * t.fstatus,t.ftype,t.fworknum,t.servernum,t.customername,t.customephone,convert(varchar,t.createdate,120)createdate,t.faddress,t.installer, * t.installerphone,t1.fisfillac,t.siteid,t.fagentnum * **/ PaoSetRemote workordertemplate = workorderpao.getPaoSet("WORKORDERTEMPLATE"); if(!workordertemplate.isEmpty()){ row_detail.put("fisfillac", String.valueOf(workordertemplate.getPao(0).getInt("fisfillac"))); } /**工单团队查询**/ PaoSetRemote workorder_team = workorderpao.getPaoSet("WORKORDER_TEAM"); Rows rows_team=new Rows(); if(!workorder_team.isEmpty()){ for(int i=0;i set=new HashSet<>(); for (Object o : team) { String worker=(String)o; set.add(worker); } for (String s1 : set) { PaoSetRemote ordernode_team = ordernodePao.getPaoSet("ordernode_team"); PaoRemote remote = ordernode_team.addAtEnd(); remote.setValue("workerphone",s1,2l); } } /**添加是否合格项**/ if(where.containsKey("qualified")){ ordernodePao.setValue("qualified",where.getBoolean("qualified"),11l); } if(where.containsKey("explain")){ ordernodePao.setValue("explain",where.getString("explain"),11l); } if(where.containsKey("isconfirm")){ if(where.getBoolean("isconfirm")){ ordernodePao.setValue("isconfirm",true,11l); ordernodePao.setValue("Operator",hrid,11l); ordernodePao.setValue("fstatus","完成",11l); Row completeAndTotal = workorderPao.getCompleteAndTotal(); double count = completeAndTotal.getDouble("count"); double complete = completeAndTotal.getInteger("complete"); double result=(complete+1)/count*100; workorderPao.setValue("progress",result>=100?100:result,11l); ordernodePao.setValue("Operatingtime",new Date(),11l); String fiscomplate = ordernodePao.fiscomplate(); if(!fiscomplate.equals("true"))return getReturnObject_err(fiscomplate).toString(); }else{ ordernodePao.setValue("isconfirm",false,11l); ordernodePao.setValue("fstatus","进行中",11l); Row completeAndTotal = workorderPao.getCompleteAndTotal(); double count = completeAndTotal.getDouble("count"); double complete = completeAndTotal.getInteger("complete"); workorderPao.setValue("progress",(complete-1)/count*100,11l); } } //设置是否操作过 ordernodePao.setValue("fisOperator",true,11l); //ordernode.save(); workorder.save(); return getReturnObject_suc().toString(); } getReturnObject_err("该节点不存在").toString(); } return getReturnObject_err("该工单不存在").toString(); } catch (P2Exception e) { return getReturnObject_err(e.getMessage()).toString(); } } return getReturnObject_err("缺少where参数").toString(); } /**退回工单**/ public String backorder(){ 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[] = {"fworknum","reason"}; for (String s1 : s) { if (!where.containsKey(s1) && !StringUtils.isBlank(where.getString(s1))) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if (where != null) { try { PaoSetRemote workorder = P2Server.getP2Server().getPaoSet("Workorder", P2Server.getP2Server().getSystemUserInfo()); workorder.setInsertSite(siteid); workorder.setWhere("fworknum='"+where.getString("fworknum")+"'"); workorder.reset(); if(!workorder.isEmpty()){ workorder workorderPao = (workorder) workorder.getPao(0); workorderPao.back(); workorder.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 completeorder(){ 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[] = {"fworknum"}; for (String s1 : s) { if (!where.containsKey(s1) && !StringUtils.isBlank(where.getString(s1))) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if (where != null) { try { PaoSetRemote workorder = P2Server.getP2Server().getPaoSet("Workorder", P2Server.getP2Server().getSystemUserInfo()); workorder.setInsertSite(siteid); workorder.setWhere("fworknum='"+where.getString("fworknum")+"'"); workorder.reset(); if(!workorder.isEmpty()){ workorder workorderPao = (workorder) workorder.getPao(0); PaoSetRemote workorder_errormsg_set = workorderPao.getPaoSet("workorder_errormsg"); workorder_errormsg_set.setWhere("fisprocess=0"); workorder_errormsg_set.reset(); if(!workorder_errormsg_set.isEmpty()){ return getReturnObject_err("该工单存在申请待处理,不能继续操作").toString(); } if(where.containsKey("massage")){ JSONObject msg = where.getJSONObject("massage"); int type = msg.getInt("type"); if(type==1){//生成质保卡 workorderPao.complete(true,hrid); /**客户积分更新**/ workorder.save(); return getReturnObject_suc().toString(); }else if(type==2){//不生成质保卡 workorderPao.complete(false,hrid); /**客户积分更新**/ workorder.save(); return getReturnObject_suc().toString(); }else if(type==3){ String reason =""; if(msg.containsKey("reason")) { if(!StringUtils.isBlank(msg.getString("reason"))) { reason = msg.getString("reason"); } } PaoSetRemote ordernodeset = workorderPao.getPaoSet("ordernode"); ordernodeset.setWhere("fisrequirednode =1 and isconfirm=0 and ischilden=0"); ordernodeset.reset(); if(ordernodeset.count()>0) { if(StringUtils.isBlank(ordernodeset.getPao(0).getString("TWOPROCESSNAME"))) { throw new P2AppException("", "还有必填的服务工序【"+ordernodeset.getPao(0).getString("oneprocessname")+"】没有确认"); }else if(StringUtils.isBlank(ordernodeset.getPao(0).getString("oneprocessname"))) { throw new P2AppException("", "还有必填的服务工序【"+ordernodeset.getPao(0).getString("TWOPROCESSNAME")+"】没有确认"); } } PaoSetRemote workorder_errormsg = workorderPao.getPaoSet("workorder_errormsg"); PaoRemote remote = workorder_errormsg.addAtEnd(); remote.setValue("ftype","工单异常",11l); remote.setValue("reason",reason,11l); PaoSetRemote paoSet = remote.getPaoSet("$worker", "worker", "workphone='" + hrid + "'"); if(!paoSet.isEmpty()){ remote.setValue("CREATEBY",paoSet.getPao(0).getString("FNAME"),11l); } workorderPao.setValue("fstatus","质保卡审批",11l); workorder.save(); return getReturnObject_suc().toString(); }else{ workorderPao.complete(true,hrid); /**客户积分更新**/ workorder.save(); return getReturnObject_suc().toString(); } }else{ workorderPao.complete(true,hrid); /**客户积分更新**/ workorder.save(); return getReturnObject_suc().toString(); } } return getReturnObject_err("该工单不存在").toString(); } catch (P2Exception e) { e.printStackTrace(); return getReturnObject_err(e.getMessage()).toString(); } catch (Exception e) { e.printStackTrace(); return getReturnObject_err(e.getMessage()).toString(); } } return getReturnObject_err("缺少where参数").toString(); } /**开始工单**/ public String start(){ 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[] = {"fworknum"}; for (String s1 : s) { if (!where.containsKey(s1) && !StringUtils.isBlank(where.getString(s1))) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if (where != null) { try { PaoSetRemote workorder = P2Server.getP2Server().getPaoSet("Workorder", P2Server.getP2Server().getSystemUserInfo()); workorder.setInsertSite(siteid); workorder.setWhere("fworknum='"+where.getString("fworknum")+"'"); workorder.reset(); if(!workorder.isEmpty()){ workorder workorderPao = (workorder) workorder.getPao(0); workorderPao.start(); workorder.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 integralrule(){ 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(); DBConnect dbConnect=new DBConnect(); Rows rows = dbConnect.runSqlQuery("select t.ftype,t.calculationrules from Integralrule t\n" + "where EXISTS(select 1 from TAGENTS t1 where t1.TAGENTSid=t.fparentid and t1.FAGENTNUM='" + fagentnum + "') and siteid='" + siteid + "'"); return getReturnObject_suc(rows,false).toString(); } /**工单添加AC积分**/ public String addACIntegralrule(){ 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[] = {"fworknum","aintegralrule","cintegralrule"}; for (String s1 : s) { if (!where.containsKey(s1)) return getReturnObject_err("缺少" + s1 + "参数").toString(); } try { PaoSetRemote workorder = P2Server.getP2Server().getPaoSet("Workorder", P2Server.getP2Server().getSystemUserInfo()); workorder.setInsertSite(siteid); workorder.setWhere("fworknum='"+where.getString("fworknum")+"'"); workorder.reset(); if(!workorder.isEmpty()){ PaoRemote pao = workorder.getPao(0); if (where != null) { /**A积分设置**/ if(where.containsKey("aintegralrule")) { JSONObject aintegralrule_objects = where.getJSONObject("aintegralrule"); PaoSetRemote aintegralrule = pao.getPaoSet("AINTEGRALRULE"); if (!aintegralrule.isEmpty()) { PaoRemote remote = aintegralrule.getPao(0); if (!aintegralrule_objects.containsKey("calculationrules")) return getReturnObject_err("没有填写规则参数").toString(); remote.setValue("calculationrules", aintegralrule_objects.getString("calculationrules")); remote.setValue("fname", aintegralrule_objects.getString("fname"), 11l); remote.setValue("phone", aintegralrule_objects.getString("phone"), 11l); if (remote.getString("calculationrules").equals("管材") || remote.getString("calculationrules").equals("丝扣嵌件")) { remote.setValue("fvalue", aintegralrule_objects.getInt("fvalue"), 11l); } if (remote.getString("calculationrules").equals("户型")) { remote.setValue("balcony", aintegralrule_objects.getInt("balcony"), 11l); remote.setValue("kitchen", aintegralrule_objects.getInt("kitchen"), 11l); remote.setValue("toilet", aintegralrule_objects.getInt("toilet"), 11l); } } else { PaoRemote remote = aintegralrule.addAtEnd(); remote.setValue("ftype", "A积分", 11l); if (!aintegralrule_objects.containsKey("calculationrules")) return getReturnObject_err("没有填写规则参数").toString(); remote.setValue("calculationrules", aintegralrule_objects.getString("calculationrules")); remote.setValue("fname", aintegralrule_objects.getString("fname"), 11l); remote.setValue("phone", aintegralrule_objects.getString("phone"), 11l); if (remote.getString("calculationrules").equals("管材") || remote.getString("calculationrules").equals("丝扣嵌件")) { remote.setValue("fvalue", aintegralrule_objects.getInt("fvalue"), 11l); } if (remote.getString("calculationrules").equals("户型")) { remote.setValue("balcony", aintegralrule_objects.getInt("balcony"), 11l); remote.setValue("kitchen", aintegralrule_objects.getInt("kitchen"), 11l); remote.setValue("toilet", aintegralrule_objects.getInt("toilet"), 11l); } } // PaoSetRemote personnel = P2Server.getP2Server().getPaoSet("personnel", P2Server.getP2Server().getSystemUserInfo()); // personnel.setInsertSite(siteid); // personnel.setWhere("customerphone='" + aintegralrule_objects.getString("phone") + "'"); // personnel.reset(); // if (personnel.isEmpty()) { // if(!StringUtils.isBlank(aintegralrule_objects.getString("fname"))&&!StringUtils.isBlank(aintegralrule_objects.getString("phone"))) { // PaoRemote remote = personnel.addAtEnd(); // remote.setValue("customername", aintegralrule_objects.getString("fname"), 11l); // remote.setValue("customerphone", aintegralrule_objects.getString("phone"), 11l); // remote.setValue("FAGENTNUM", fagentnum, 11l); // } // } // personnel.save(); } /**C积分设置**/ if(where.containsKey("cintegralrule")) { JSONObject cintegralrule_objects = where.getJSONObject("cintegralrule"); PaoSetRemote cintegralrule = pao.getPaoSet("CINTEGRALRULE"); if (!cintegralrule.isEmpty()) { PaoRemote remote = cintegralrule.getPao(0); if (!cintegralrule_objects.containsKey("calculationrules")) return getReturnObject_err("没有填写规则参数").toString(); remote.setValue("calculationrules", cintegralrule_objects.getString("calculationrules")); remote.setValue("fname", cintegralrule_objects.getString("fname"), 11l); remote.setValue("phone", cintegralrule_objects.getString("phone"), 11l); if (remote.getString("calculationrules").equals("管材") || remote.getString("calculationrules").equals("丝扣嵌件")) { remote.setValue("fvalue", cintegralrule_objects.getInt("fvalue"), 11l); } if (remote.getString("calculationrules").equals("户型")) { remote.setValue("balcony", cintegralrule_objects.getInt("balcony"), 11l); remote.setValue("kitchen", cintegralrule_objects.getInt("kitchen"), 11l); remote.setValue("toilet", cintegralrule_objects.getInt("toilet"), 11l); } } else { PaoRemote remote = cintegralrule.addAtEnd(); if (!cintegralrule_objects.containsKey("calculationrules")) return getReturnObject_err("没有填写规则参数").toString(); remote.setValue("ftype", "C积分", 11l); remote.setValue("calculationrules", cintegralrule_objects.getString("calculationrules")); remote.setValue("fname", cintegralrule_objects.getString("fname"), 11l); remote.setValue("phone", cintegralrule_objects.getString("phone"), 11l); if (remote.getString("calculationrules").equals("管材") || remote.getString("calculationrules").equals("丝扣嵌件")) { remote.setValue("fvalue", cintegralrule_objects.getInt("fvalue"), 11l); } if (remote.getString("calculationrules").equals("户型")) { remote.setValue("balcony", cintegralrule_objects.getInt("balcony"), 11l); remote.setValue("kitchen", cintegralrule_objects.getInt("kitchen"), 11l); remote.setValue("toilet", cintegralrule_objects.getInt("toilet"), 11l); } } // PaoSetRemote personnel2 = P2Server.getP2Server().getPaoSet("personnel", P2Server.getP2Server().getSystemUserInfo()); // personnel2.setInsertSite(siteid); // personnel2.setWhere("customerphone='" + cintegralrule_objects.getString("phone") + "'"); // personnel2.reset(); // if (personnel2.isEmpty()) { // if(!StringUtils.isBlank(cintegralrule_objects.getString("fname"))&&!StringUtils.isBlank(cintegralrule_objects.getString("phone"))) { // PaoRemote remote = personnel2.addAtEnd(); // remote.setValue("customername", cintegralrule_objects.getString("fname"), 11l); // remote.setValue("customerphone", cintegralrule_objects.getString("phone"), 11l); // remote.setValue("FAGENTNUM", fagentnum, 11l); // } // } // personnel2.save(); } }else{ return getReturnObject_err("缺少where参数").toString(); } }else{ return getReturnObject_err("没有该工单").toString(); } workorder.save(); } catch (P2Exception e) { e.printStackTrace(); return getReturnObject_err(e.getMessage()).toString(); } return getReturnObject_suc().toString(); } /**查询工单AC积分**/ public String workorder_AC(){ 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[] = {"fworknum"}; for (String s1 : s) { if (!where.containsKey(s1)) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if(where!=null){ DBConnect dbConnect=new DBConnect(); Rows rows = dbConnect.runSqlQuery("select t.ftype,t.calculationrules,t.fvalue,t.balcony,t.kitchen,t.toilet,t.fname,t.phone from WORKORDER_AC t\n" + "where EXISTS(select 1 from Workorder t1 where t1.Workorderid=t.fparentid and t1.fworknum='" + where.getString("fworknum") + "')"); return getReturnObject_suc(rows,false).toString(); } return getReturnObject_err("where参数不存在").toString(); } /**工单是否合格**/ public String fisqualified(){ 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[] = {"fworknum"}; for (String s1 : s) { if (!where.containsKey(s1)) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if(where!=null){ SQLFactory factory=new SQLFactory(this,"工单是否合格"); factory.addParameter("fworknum",where.getString("fworknum")); DBConnect dbConnect=new DBConnect(); Rows rows = dbConnect.runSqlQuery(factory.getSQL()); return getReturnObject_suc(rows.get(0),false).toString(); } return getReturnObject_err("where参数不存在").toString(); } /**查询现场联系人,手机号,地址**/ public String findscenefname(){ 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[] = {"fworknum"}; for (String s1 : s) { if (!where.containsKey(s1)) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if(where!=null){ DBConnect dbConnect=new DBConnect(); Rows rows = dbConnect.runSqlQuery("select t.scenefname,t.scenephone,t.faddress,t.customername,t.customephone from Workorder t\n" + "where t.fworknum='"+where.getString("fworknum")+"'"); if(!rows.isEmpty()) return getReturnObject_suc(rows.get(0),false).toString(); else return getReturnObject_err("没有该工单").toString(); } return getReturnObject_err("where参数不存在").toString(); } /**更新现场联系人,手机号,地址**/ public String updatescenefname(){ 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[] = {"fworknum"}; for (String s1 : s) { if (!where.containsKey(s1)) return getReturnObject_err("缺少" + s1 + "参数").toString(); } if(where!=null){ try { PaoSetRemote workorder = P2Server.getP2Server().getPaoSet("Workorder", P2Server.getP2Server().getSystemUserInfo()); workorder.setInsertSite(siteid); workorder.setWhere("fworknum='"+where.getString("fworknum")+"'"); workorder.reset(); if(workorder.isEmpty())return getReturnObject_err("没有该工单").toString(); PaoRemote pao = workorder.getPao(0); PaoSetRemote paoSetRemote = pao.getPaoSet("SERVICEFORM"); // if(where.containsKey("scenefname")){ // pao.setValue("scenefname",where.getString("scenefname"),11l); // } // if(where.containsKey("scenephone")){ // pao.setValue("scenephone",where.getString("scenephone"),11l); // } if(where.containsKey("faddress")&&!StringUtils.isBlank(where.getString("faddress"))){ pao.setValue("faddress",where.getString("faddress"),11l); if (!paoSetRemote.isEmpty()) { paoSetRemote.getPao(0).setValue("faddress", where.getString("faddress"),11l); } } workorder.save(); return getReturnObject_suc().toString(); } catch (P2Exception e) { return getReturnObject_err(e.getMessage()).toString(); } } return getReturnObject_err("where参数不存在").toString(); } }