瀏覽代碼

宁波工单增加工单修改物料接口

hu 3 年之前
父節點
當前提交
3e43e7dc60
共有 1 個文件被更改,包括 60 次插入1 次删除
  1. 60 1
      src/rest/openapi/restcontroller/housekeeperwebapp/workorder/WorkOrder.java

+ 60 - 1
src/rest/openapi/restcontroller/housekeeperwebapp/workorder/WorkOrder.java

@@ -527,7 +527,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(){