package openapi.restcontroller.housekeeper.titem; 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 org.apache.commons.lang.StringUtils; import p2.common.parse.F; import p2.p2server.P2Server; import p2.pao.PaoRemote; import p2.pao.PaoSetRemote; import p2.util.P2Exception; import javax.print.DocFlavor; public class HeadTitem extends Controller { public HeadTitem(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"; if(where!=null){ DBConnect dbConnect=new DBConnect(); if(where.containsKey("fitemname")&&!StringUtils.isBlank(where.getString("fitemname"))){ wherestr+=" and fitemname like '%"+where.getString("fitemname")+"%'"; } SQLFactory factory=new SQLFactory(this,"总部物料查询",pageSize,pageNumber,"t.fitemno"); factory.addParameter("siteid",siteid); factory.addParameter("fagentnum",fagentnum); factory.addParameter_SQL("where",wherestr); Rows rows = dbConnect.runSqlQuery(factory.getSQL()); SQLFactory imagefactory=new SQLFactory(this,"总部物料图片查询"); imagefactory.addParameter("siteid",siteid); imagefactory.addParameter_SQL("fitemno",rows.getInWhere("fitemno")); Rows image_rows = dbConnect.runSqlQuery(imagefactory.getSQL()); RowsMap fitemno = image_rows.toRowsMap("fitemno"); for (Row row : rows) { if(fitemno.containsKey(row.getString("fitemno"))){ row.put("url",fitemno.get(row.getString("fitemno")).get(0).getString("url")); } } return getReturnObject_suc_page(rows,false,0).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[]={"fitemno"}; for (String s1 : s) { if(!where.containsKey(s1)||StringUtils.isBlank(where.getString(s1)))return getReturnObject_err("缺少"+s1+"参数").toString(); } if(where!=null){ try { PaoSetRemote tagents = P2Server.getP2Server().getPaoSet("TAGENTS", P2Server.getP2Server().getSystemUserInfo()); tagents.setInsertSite(siteid); tagents.setWhere("FAGENTNUM='"+fagentnum+"'"); tagents.reset(); if(!tagents.isEmpty()){ PaoRemote tagents_pao = tagents.getPao(0); PaoSetRemote tagents_titem = tagents_pao.getPaoSet("TAGENTS_titem"); tagents_titem.setWhere("fitemno='"+where.getString("fitemno")+"'"); tagents_titem.reset(); if(!tagents_titem.isEmpty())return getReturnObject_err("该物料号重复添加").toString(); PaoRemote remote = tagents_titem.addAtEnd(); if(!StringUtils.isBlank(where.getString("fitemno"))){ remote.setValue("FITEMNO",where.getString("fitemno"),2l); tagents_titem.save(); return getReturnObject_suc().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 addtitems(){ 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[]={"fitemno"}; for (String s1 : s) { if(!where.containsKey(s1)||StringUtils.isBlank(where.getString(s1)))return getReturnObject_err("缺少"+s1+"参数").toString(); } if(where!=null){ try { PaoSetRemote tagents = P2Server.getP2Server().getPaoSet("TAGENTS", P2Server.getP2Server().getSystemUserInfo()); tagents.setInsertSite(siteid); tagents.setWhere("FAGENTNUM='"+fagentnum+"'"); tagents.reset(); if(!tagents.isEmpty()){ PaoRemote tagents_pao = tagents.getPao(0); JSONArray fitemno = where.getJSONArray("fitemno"); for (Object o : fitemno) { String fitemno_child=(String) o; PaoSetRemote tagents_titem = tagents_pao.getPaoSet("TAGENTS_titem"); tagents_titem.setWhere("fitemno='"+fitemno_child+"'"); tagents_titem.reset(); if(tagents_titem.isEmpty()){ PaoRemote remote = tagents_titem.addAtEnd(); remote.setValue("FITEMNO",fitemno_child,2l); tagents_titem.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 detetitems(){ 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[]={"fitemno"}; for (String s1 : s) { if(!where.containsKey(s1)||StringUtils.isBlank(where.getString(s1)))return getReturnObject_err("缺少"+s1+"参数").toString(); } if(where!=null){ try { PaoSetRemote tagents = P2Server.getP2Server().getPaoSet("TAGENTS", P2Server.getP2Server().getSystemUserInfo()); tagents.setInsertSite(siteid); tagents.setWhere("FAGENTNUM='"+fagentnum+"'"); tagents.reset(); if(!tagents.isEmpty()){ PaoRemote tagents_pao = tagents.getPao(0); JSONArray fitemno = where.getJSONArray("fitemno"); for (Object o : fitemno) { PaoSetRemote tagents_titem = tagents_pao.getPaoSet("TAGENTS_titem"); String fitemno_child=(String) o; tagents_titem.setWhere("fitemno='"+fitemno_child+"'"); tagents_titem.reset(); if(!tagents_titem.isEmpty()){ tagents_titem.getPao(0).delete(); tagents_titem.save(); } } return getReturnObject_suc().toString(); } return getReturnObject_err("该经销商不存在").toString(); } catch (P2Exception e) { return getReturnObject_err(e.getMessage()).toString(); } } return getReturnObject_err("缺少where参数").toString(); } }