| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114 |
- 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<workorder_team.count();i++){
- Row row=new Row();
- //t.workername,t.ftype role,t.workephone workerllphone
- row.put("workername",workorder_team.getPao(i).getString("workername"));
- row.put("role",workorder_team.getPao(i).getString("ftype"));
- row.put("workerllphone",workorder_team.getPao(i).getString("workephone"));
- rows_team.add(row);
- }
- }
- row_detail.put("team",rows_team);
- /**工单工序查询**/
- PaoSetRemote ordernode = workorderpao.getPaoSet("ORDERNODE");
- ordernode.setWhere("oneprocessname is not null");
- ordernode.setOrderBy("frownum");
- ordernode.reset();
- Rows rows_nodes=new Rows();
- /**一级工序**/
- if(!ordernode.isEmpty()){
- String []from_nodes={"frownum","oneprocessname","twoprocessname","operating","operatingtime","fnotes","ownerid","supid","ischilden","isconfirm","fisupload","fisnotes","fisaddtitem","fiscomplete","qualified","fisqualified","fissignature","fisrequirednode"};
- String []to_nodes={"frownum","oneprocessname","twoprocessname","operating","operatingtime","fnotes","ordernodeid","supid","ischilden","isconfirm","fisupload","fisnotes","fisaddtitem","fiscomplete","qualified","fisqualified","fissignature","fisrequirednode"};
- for(int i=0;i<ordernode.count();i++){
- PaoRemote pao = ordernode.getPao(i);
- Row row=getrow(from_nodes,to_nodes,pao);
- //t.frownum,t.oneprocessname,t.twoprocessname,t.operating,substring( convert(varchar,t.operatingtime,120),1,16)operatingtime,t1.fname operator,
- // t.fnotes,t.ordernodeid ownerid,t.supid,t.ischilden,t.isconfirm,t.fisupload,t.fisnotes,t.fisaddtitem,t.fiscomplete
- PaoSetRemote paoSet = pao.getPaoSet("$worker", "worker", "workphone='" + pao.getString("operator") + "'");
- if(!paoSet.isEmpty()){
- row.put("operator",paoSet.getPao(0).getString("fname"));
- }else{
- row.put("operator",null);
- }
- /**附件查询**/
- //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
- PaoSetRemote paoSet_url = pao.getPaoSet("$tattachment", "tattachment", "ownertable='ORDERNODE' and ownerid =" + pao.getInt("ordernodeid"));
- if(!paoSet_url.isEmpty()){
- Rows rows=new Rows();
- for(int index=0;index<paoSet_url.count();index++){
- PaoRemote pao1 = paoSet_url.getPao(index);
- Row row1=new Row();
- String postfix = pao1.getString("postfix");
- row1.put("tattachmentid",pao1.getInt("tattachmentid"));
- row1.put("document",pao1.getString("fdocument"));
- row1.put("postfix",postfix.toUpperCase());
- row1.put("url",pao1.getString("fobsurl"));
- row1.put("serialnumber",pao1.getString("serialnumber"));
- row1.put("type",pao1.getString("type"));
- if(postfix.equalsIgnoreCase("JPG")||postfix.equalsIgnoreCase("PNG")||postfix.equalsIgnoreCase("JEPG")){
- row1.put("type2","image");
- }else if(postfix.equalsIgnoreCase("mp4")){
- row1.put("type2","video");
- }else{
- row1.put("type2","file");
- }
- rows.add(row1);
- }
- row.put("url",rows);
- }else{
- row.put("url",new Rows());
- }
- Rows child=new Rows();
- PaoSetRemote ordernode2 = workorderpao.getPaoSet("$ORDERNODE","ORDERNODE","fparentid="+workorderpao.getUniqueIDValue()+" and supid="+pao.getUniqueIDValue());
- // System.out.println(workorderpao.getUniqueIDValue());
- // System.out.println(pao.getInt("supid"));
- ordernode2.setOrderBy("frownum");
- ordernode2.reset();
- /**二级工序**/
- String []from_nodes2={"frownum","oneprocessname","twoprocessname","operating","operatingtime","fnotes","ownerid","supid","ischilden","isconfirm","fisupload","fisnotes","fisaddtitem","fiscomplete","qualified","fisqualified","fissignature","fisrequirednode"};
- String []to_nodes2={"frownum","oneprocessname","twoprocessname","operating","operatingtime","fnotes","ordernodeid","supid","ischilden","isconfirm","fisupload","fisnotes","fisaddtitem","fiscomplete","qualified","fisqualified","fissignature","fisrequirednode"};
- for(int j=0;j<ordernode2.count();j++){
- PaoRemote pao1 = ordernode2.getPao(j);
- Row row1=getrow(from_nodes2, to_nodes2,pao1);
- PaoSetRemote paoSet2 = pao.getPaoSet("$worker", "worker", "workphone='" + pao1.getString("operator") + "'");
- if(!paoSet2.isEmpty()){
- row1.put("operator",paoSet2.getPao(0).getString("fname"));
- }else{
- row1.put("operator",null);
- }
- PaoSetRemote paoSet_url2 = pao.getPaoSet("$tattachment", "tattachment", "ownertable='ORDERNODE' and ownerid =" + pao1.getInt("ordernodeid"));
- if(!paoSet_url.isEmpty()){
- Rows rows=new Rows();
- for(int index=0;index<paoSet_url2.count();index++){
- PaoRemote pao2 = paoSet_url2.getPao(index);
- Row row2=new Row();
- String postfix = pao2.getString("postfix");
- row2.put("tattachmentid",pao2.getInt("tattachmentid"));
- row2.put("document",pao2.getString("fdocument"));
- row2.put("postfix",postfix.toUpperCase());
- row2.put("url",pao2.getString("fobsurl"));
- row2.put("serialnumber",pao2.getString("serialnumber"));
- row2.put("type",pao2.getString("type"));
- if(postfix.equalsIgnoreCase("JPG")||postfix.equalsIgnoreCase("PNG")||postfix.equalsIgnoreCase("JEPG")){
- row2.put("type2","image");
- }else if(postfix.equalsIgnoreCase("mp4")){
- row2.put("type2","video");
- }else{
- row2.put("type2","file");
- }
- rows.add(row2);
- }
- row1.put("url",rows);
- }else{
- row1.put("url",new Rows());
- }
- child.add(row1);
- }
- row.put("child",child);
- rows_nodes.add(row);
- }
- }
- row_detail.put("nodes",rows_nodes);
- /**工单物料查询**/
- PaoSetRemote workorder_titem = workorderpao.getPaoSet("workorder_titem");
- Rows rows_titems=new Rows();
- String url="null";
- PaoSetRemote sysvars = getpaoset("sysvars");
- sysvars.setInsertSite(workorderpao.getInsertSite());
- if(!sysvars.isEmpty())url=WebClientRest.FILE_URL+sysvars.getPao(0).getInt("fdefaultitempic");
- if(!workorder_titem.isEmpty()){
- for(int i=0;i<workorder_titem.count();i++){
- PaoRemote pao = workorder_titem.getPao(i);
- Row row=new Row();
- row.put("fitemno",pao.getString("fitemno"));
- row.put("fitemname",pao.getString("fitemname"));
- row.put("fmodel",pao.getString("fmodel"));
- row.put("fspec",pao.getString("fspec"));
- row.put("fqty",pao.getInt("fqty"));
- PaoSetRemote tagents_titem = pao.getPaoSet("TAGENTS_TITEM");
- if(!tagents_titem.isEmpty()){
- PaoRemote tagents_titem_pao = tagents_titem.getPao(0);
- PaoSetRemote paoSet = tagents_titem_pao.getPaoSet("$doclinks", "doclinks", "ownertable='TAGENTS_TITEM' and ownerid=" + tagents_titem_pao.getUniqueIDValue());
- paoSet.setOrderBy("doclinksid desc");
- paoSet.reset();
- if(!paoSet.isEmpty()){
- row.put("url",WebClientRest.FILE_URL+paoSet.getPao(0).getInt("docinfoid"));
- }else{
- PaoSetRemote titem = tagents_titem_pao.getPaoSet("TITEM");
- if(!titem.isEmpty()){
- PaoRemote pao1 = titem.getPao(0);
- PaoSetRemote paoSet1 = pao1.getPaoSet("$doclinks", "doclinks", "ownertable='TITEM' and ownerid=" + pao1.getUniqueIDValue());
- paoSet1.setOrderBy("doclinksid desc");
- paoSet1.reset();
- if(!paoSet1.isEmpty()){
- row.put("url",WebClientRest.FILE_URL+paoSet1.getPao(0).getInt("docinfoid"));
- }else{
- row.put("url",url);
- }
- }else{
- row.put("url",url);
- }
- }
- }else{
- row.put("url",url);
- }
- rows_titems.add(row);
- }
- }
- row_detail.put("titems",rows_titems);
- return getReturnObject_suc(row_detail,false).toString();
- }
- return getReturnObject_err("该工单不存在").toString();
- } catch (P2Exception e) {
- e.printStackTrace();
- return getReturnObject_err(e.getMessage()).toString();
- }
- }
- return null;
- }
- public Row getrow(String []from,String[]to,PaoRemote pao) throws P2Exception {
- GetP2Type getP2Type = new GetP2Type(pao.getName());
- String pattern="yyyy-MM-dd HH:mm:ss";
- Row row=new Row();
- for (int i = 0; i < from.length; i++) {
- String p2Type = getP2Type.getP2Type(to[i]);
- //DECIMAL,FLOAT,INTEGER,SMALLINT,BOOLEAN
- if(p2Type.equals("BOOLEAN")){
- row.put(from[i],String.valueOf(pao.getInt(to[i])));
- }else if(p2Type.equals("INTEGER")||p2Type.equals("SMALLINT")){
- row.put(from[i],pao.getInt(to[i]));
- }else if(p2Type.equals("DECIMAL")||p2Type.equals("FLOAT")){
- row.put(from[i],pao.getDouble(to[i]));
- }else if(p2Type.equals("DATE")||p2Type.equals("DATETIME")){
- Date date = pao.getDate(to[i]);
- if(date!=null)row.put(from[i],DateFormatUtils.format(date,pattern));
- else row.put(from[i],"");
- }else {
- row.put(from[i],pao.getString(to[i]));
- }
- }
- return row;
- }
- /**节点详情**/
- public String nodedetail(){
- // 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","frownum"};
- 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();
- long start1 =System.currentTimeMillis();
- SQLFactory factory=new SQLFactory(this,"工单节点详情查询");
- factory.addParameter("fworknum",where.getString("fworknum"));
- factory.addParameter("frownum",where.getString("frownum"));
- Rows rows = dbConnect.runSqlQuery(factory.getSQL());
- long start2 =System.currentTimeMillis();
- long start3 =start2;
- if(!rows.isEmpty()){
- Row rowdetail = rows.get(0);
- if(WebClientRest.FISUPLOADFOROBS){
- SQLFactory factoryurl=new SQLFactory(this,"华为云附件查询");
- factoryurl.addParameter("ownerid",rowdetail.getInteger("ownerid"));
- Rows rowsimg = dbConnect.runSqlQuery(factoryurl.getSQL());
- rowdetail.put("url",rowsimg);
- start3 =System.currentTimeMillis();
- }else{
- SQLFactory factoryurl=new SQLFactory(this,"工单节点详情附件查询");
- factoryurl.addParameter("ownerid",rowdetail.getInteger("ownerid"));
- Rows rowsimg = dbConnect.runSqlQuery(factoryurl.getSQL());
- for (Row row : rowsimg) {
- row.put("url", WebClientRest.FILE_URL+row.getString("docinfoid"));
- }
- rowdetail.put("url",rowsimg);
- }
- // Rows rows_team = dbConnect.runSqlQuery("select t.workername,t.workerphone from ordernode_team t\n" +
- // "where EXISTS(select 1 from ordernode t1 where t1.ordernodeid=t.fparentid and t1.ordernodeid="+rowdetail.getInteger("ownerid")+") and siteid='"+siteid+"'");
- // SQLFactory factory_team_url = new SQLFactory(this, "工单节点参与人员头像查询");
- // factory_team_url.addParameter("siteid",rowdetail.getString("siteid"));
- // factory_team_url.addParameter_SQL("workerphone",rows_team.getInWhere("workerphone"));
- // Rows rows_team_url = dbConnect.runSqlQuery(factory_team_url.getSQL());
- // RowsMap workerphone = rows_team_url.toRowsMap("workerphone");
- // long start4 =System.currentTimeMillis();
- // for (Row row : rows_team) {
- // if(workerphone.containsKey(row.getString("workerphone"))){
- // row.put("url",workerphone.get(row.getString("workerphone")).get(0).getString("url"));
- // }else{
- // row.put("url",null);
- // }
- // }
- /**节点关联物料查询**/
- Rows rows_titem = dbConnect.runSqlQuery("select t.fitemno,t.fitemname,t.fmodel,t.fspec,t.fqty from \n" +
- "workorder_titem t\n" +
- "where EXISTS(select 1 from Workorder t1 where t1.fworknum='"+where.getString("fworknum")+"' and t1.Workorderid=t.fparentid)\n" +
- " and t.sourcenode='"+where.getString("frownum")+"'");
- long start5 =System.currentTimeMillis();
- SQLFactory factory_imgurl = new SQLFactory(this, "物料图片查询");
- factory_imgurl.addParameter("fagentnum", rowdetail.getString("fagentnum"));
- factory_imgurl.addParameter("siteid", rowdetail.getString("siteid"));
- factory_imgurl.addParameter_SQL("fitemno",rows_titem.getInWhere("fitemno"));
- Rows rows_titem_img = dbConnect.runSqlQuery(factory_imgurl.getSQL());
- RowsMap fitemno = rows_titem_img.toRowsMap("fitemno");
- for (Row row : rows_titem) {
- if(fitemno.containsKey(row.getString("fitemno"))){
- row.put("url",fitemno.get(row.getString("fitemno")).get(0).getString("url"));
- }else{
- row.put("url",null);
- }
- }
- long start6 =System.currentTimeMillis()
- ;
- // rowdetail.put("team",rows_team);
- rowdetail.put("titem",rows_titem);
- System.err.println("1="+(start2-start1));
- System.err.println("2="+(start3-start2));
- // System.err.println("3="+(start4-start3));
- // System.err.println("4="+(start5-start4));
- System.err.println("5="+(start6-start5));
- return getReturnObject_suc(rowdetail,false).toString();
- }
- return getReturnObject_err("该节点不是末级节点").toString();
- }
- return getReturnObject_err("缺少where参数").toString();
- }
- /**工单添加物料**/
- public String addtitem(){
- 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","frownum"};
- 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);
- if(!workorderPao.getString("fstatus").equals("进行中"))getReturnObject_err("该工单不在进行中状态").toString();
- PaoSetRemote ordernode = workorderPao.getPaoSet("ordernode");
- ordernode.setWhere("frownum="+where.getInt("frownum"));
- ordernode.reset();
- if(!ordernode.isEmpty()){
- ordernode ordernodePao = (ordernode) ordernode.getPao(0);
- if(ordernodePao.getBoolean("fisaddtitem")){
- if(where.containsKey("titems")){
- PaoSetRemote workorder_titem = workorderPao.getPaoSet("workorder_titem");
- workorder_titem.deleteAll();
- JSONArray titems = where.getJSONArray("titems");
- for (Object titem : titems) {
- JSONObject titemnode=(JSONObject) titem;
- PaoRemote remote = workorder_titem.addAtEnd();
- remote.setValue("FITEMNO",titemnode.getString("fitemno"),2l);
- remote.setValue("FQTY",titemnode.getInt("fqty"),11l);
- remote.setValue("sourcenode",String.valueOf(ordernodePao.getInt("FROWNUM")),11l);
- }
- // workorder_titem.save();
- // ordernode.save();
- workorder.save();
- return getReturnObject_suc().toString();
- }
- return getReturnObject_err("titems参数为空").toString();
- }
- return getReturnObject_err("该节点没有授权添加物料").toString();
- }
- return getReturnObject_err("该节点不存在").toString();
- }
- return getReturnObject_err("该工单不存在").toString();
- } catch (P2Exception e) {
- return getReturnObject_err(e.getMessage()).toString();
- }
- }
- return getReturnObject_err("缺少where参数").toString();
- }
-
- /**工单修改物料**/
- public String updatetitem(){
- 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","frownum"};
- 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);
- if(!workorderPao.getString("fstatus").equals("进行中"))getReturnObject_err("该工单不在进行中状态").toString();
- PaoSetRemote ordernode = workorderPao.getPaoSet("ordernode");
- ordernode.setWhere("frownum="+where.getInt("frownum"));
- ordernode.reset();
- if(!ordernode.isEmpty()){
- ordernode ordernodePao = (ordernode) ordernode.getPao(0);
- if(ordernodePao.getBoolean("fisaddtitem")){
- if(where.containsKey("titems")){
- PaoSetRemote workorder_titem = workorderPao.getPaoSet("workorder_titem");
- JSONArray titems = where.getJSONArray("titems");
- for (Object titem : titems) {
- JSONObject titemnode=(JSONObject) titem;
- int i = 0;
- PaoRemote paoRemote = null;
- while ((paoRemote = workorder_titem.getPao(i)) != null) {
- if (paoRemote.getString("fitemno").equals(titemnode.getString("fitemno"))) {
- paoRemote.setValue("FQTY",titemnode.getInt("fqty"),11l);
- break;
- }
- i++;
- }
- }
- // workorder_titem.save();
- // ordernode.save();
- workorder.save();
- return getReturnObject_suc().toString();
- }
- return getReturnObject_err("titems参数为空").toString();
- }
- return getReturnObject_err("该节点没有授权添加物料").toString();
- }
- return getReturnObject_err("该节点不存在").toString();
- }
- return getReturnObject_err("该工单不存在").toString();
- } catch (P2Exception e) {
- return getReturnObject_err(e.getMessage()).toString();
- }
- }
- return getReturnObject_err("缺少where参数").toString();
- }
- /**更新节点内容**/
- public String updatenode(){
- 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","frownum"};
- 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);
- if(workorderPao.fisSuspend())return getReturnObject_err("工单处于暂停中").toString();
- if(workorderPao.fisvoid())return getReturnObject_err("工单已作废").toString();
- if(!workorderPao.getString("fstatus").equals("进行中"))return getReturnObject_err("非进行中工单不可修改").toString();
- PaoSetRemote ordernodeset = workorderPao.getPaoSet("ordernode");
- ordernodeset.setWhere("frownum="+where.getInt("frownum"));
- ordernodeset.reset();
- if(!ordernodeset.isEmpty()){
- ordernode ordernodePao = (ordernode) ordernodeset.getPao(0);
- if(ordernodePao.getBoolean("ischilden"))return getReturnObject_err("该工序不是末级节点").toString();
- //if(ordernodePao.getBoolean("isconfirm"))return getReturnObject_err("该工序已经确认").toString();
- if(where.containsKey("fnotes"))ordernodePao.setValue("fnotes",where.getString("fnotes"),11l);
- /**添加团队**/
- if(where.containsKey("team")){
- JSONArray team = where.getJSONArray("team");
- PaoSetRemote ordernode_team1 = ordernodePao.getPaoSet("ordernode_team");
- ordernode_team1.deleteAll();
- Set<String> 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();
- }
- }
|