18870042648 преди 2 години
родител
ревизия
177f69dfe2
променени са 3 файла, в които са добавени 106 реда и са изтрити 0 реда
  1. 3 0
      ypff/META-INF/service.upm
  2. 0 0
      ypff/ypff/src/client/.gitkeep
  3. 103 0
      ypff/ypff/src/private/nc/bs/yp/impl/PomUpdateStatusImpl.java

+ 3 - 0
ypff/META-INF/service.upm

@@ -10,6 +10,9 @@
  		<component name="Modify" accessProtected="false"  remote="true" singleton="true" tx="NONE" supportAlias="true">
        		<implementation>nc.bs.yp.impl.ModifyMaintianImpl</implementation>
  		</component>
+ 		<component name="Pomstatus" accessProtected="false"  remote="true" singleton="true" tx="NONE" supportAlias="true">
+       		<implementation>nc.bs.yp.impl.PomUpdateStatusImpl</implementation>
+ 		</component>
  		<component priority="0" singleton="true" remote="true" tx="CMT" supportAlias="true">
             <interface>nc.yp.dao.IUtilMaintain</interface>
             <implementation>nc.bs.yp.impl.UtilMaintainImpl</implementation>

+ 0 - 0
ypff/ypff/src/client/.gitkeep


+ 103 - 0
ypff/ypff/src/private/nc/bs/yp/impl/PomUpdateStatusImpl.java

@@ -0,0 +1,103 @@
+package nc.bs.yp.impl;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import nc.bs.dao.BaseDAO;
+import nc.bs.framework.adaptor.IHttpServletAdaptor;
+import nc.bs.framework.common.NCLocator;
+import nc.bs.servlet.service.BaseServlet;
+import nc.md.model.MetaDataException;
+import nc.md.persist.framework.IMDPersistenceQueryService;
+import nc.vo.mmpac.pmo.pac0002.entity.PMOAggVO;
+import net.sf.json.JSONObject;
+
+/**
+ * 生产订单修改库存状态
+ * @author LP
+ *
+ */
+@SuppressWarnings("restriction")
+public class PomUpdateStatusImpl extends BaseServlet implements IHttpServletAdaptor {
+	
+	private static final String TURE = "0";
+	private static final String FALSE = "1";
+	private StringBuffer error = new StringBuffer();
+	private IMDPersistenceQueryService qryService = NCLocator.getInstance().lookup(IMDPersistenceQueryService.class);
+	private BaseDAO basedao = new BaseDAO();
+
+	@Override
+	public void doAction(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+		
+		String json = buildJson(req, resp, this.getClass().getName());
+		PrintWriter out = resp.getWriter();
+		
+		JSONObject p_data = JSONObject.fromObject(json);//获取报文
+		
+		if (!checkJson(p_data)) {
+			out.print(formatRSJsonData(FALSE, p_data.getString("vbillcode"), error.toString()));
+			out.flush();
+			out.close();
+		}
+		
+		try {
+			
+			String vbillcode = p_data.getString("vbillcode");//获取流程生产订单单号
+			PMOAggVO pmoAggVO = getPmoVO(vbillcode);
+			out.print(formatRSJsonData(TURE, p_data.getString("vbillcode"), "成功"));
+			
+		} catch (MetaDataException e) {
+			out.print(formatRSJsonData(FALSE, p_data.getString("vbillcode"), e.getMessage()==null?e.toString():e.getMessage().toString()));
+			out.flush();
+			out.close();
+		}
+		
+	}
+	
+	/*
+	 * 非空判断
+	 */
+	private boolean checkJson(JSONObject p_data) {
+		
+		boolean check = true;
+		StringBuffer mags = new StringBuffer();
+		
+		String vbillcode = "vbillcode";//生产订单单号
+ 
+		String[] HeadKey = {vbillcode};
+		
+		for (String as : HeadKey) {
+
+			if (p_data.getString(as).isEmpty()) {
+				mags.append("'" + as + "' ");
+				check = false;
+			}
+		}
+		
+		if (!check) {
+			error.append("以下字段不可为空:"+mags);
+		}
+		return check;
+	}
+	
+	/*
+	 * 获取生产订单VO
+	 */
+	private PMOAggVO getPmoVO(String vbillcode) throws MetaDataException {
+		
+		PMOAggVO pmoAggVO = (PMOAggVO) qryService.queryBillOfVOByCond(PMOAggVO.class, vbillcode,true,false);
+		
+		if (pmoAggVO == null) {
+			error.append("根据单据号'"+vbillcode+"'未找到生产订单,请检查!");
+			return null;
+		}
+		
+		return pmoAggVO;
+		
+	}
+
+}