|
|
@@ -399,11 +399,13 @@ public class WorkOrder extends Controller {
|
|
|
}
|
|
|
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());
|
|
|
+ Rows rows = dbConnect.runSqlQuery(factory.getSQL());
|
|
|
+ long start2 =System.currentTimeMillis();
|
|
|
+ long start3 =start2;
|
|
|
if(!rows.isEmpty()){
|
|
|
Row rowdetail = rows.get(0);
|
|
|
if(WebClientRest.FISUPLOADFOROBS){
|
|
|
@@ -411,6 +413,7 @@ public class WorkOrder extends Controller {
|
|
|
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"));
|
|
|
@@ -423,25 +426,26 @@ public class WorkOrder extends Controller {
|
|
|
|
|
|
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");
|
|
|
- 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);
|
|
|
- }
|
|
|
- }
|
|
|
+// 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, "物料图片查询");
|
|
|
@@ -457,13 +461,16 @@ public class WorkOrder extends Controller {
|
|
|
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();
|
|
|
|
|
|
@@ -527,7 +534,66 @@ public class WorkOrder extends Controller {
|
|
|
}
|
|
|
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(){
|