package com.webclient.beans.udwlcrk;

import psdi.app.iface.spms.Eam2SpmsService;
import psdi.mbo.MboRemote;
import psdi.mbo.MboSetRemote;
import psdi.server.MXServer;
import psdi.util.MXException;
import psdi.webclient.system.beans.AppBean;
import psdi.webclient.system.beans.ResultsBean;

import java.io.IOException;
import java.rmi.RemoteException;

/**
 * 测试 出入库明细 接口
 * com.webclient.beans.udwlcrk.UdwlcrkAppBean
 */
public class UdwlcrkAppBean extends AppBean {
    //方法名一定要和签名选项的名称一样，否则调不到该方法，否则调不到
    public void HQCRKMX() throws IOException, MXException {
        System.out.println("--------start---------");
        //test data
        String data = "{\n" +
                "    \"IT_REQUEST\": [\n" +
                "        {\n" +
                "            \"lastName\": \"\\u5f6d\\u52c7\\u5fe0(Shane Peng)\",\n" +
                "            \"comments\": \"\\u6d77\\u5916\\u4ed3\\u7bb1\\u7801\\u6536\\u8d27\",\n" +
                "            \"quantity\": 1,\n" +
                "            \"documentType\": \"\\u6d77\\u5916\\u4ed3\\u4ed3\\u5e93\\u5e93\\u5b58\\u65e5\\u5fd7\",\n" +
                "            \"userName\": \"\\u5f6d\\u52c7\\u5fe0(Shane Peng)\",\n" +
                "            \"userId\": \"0113509\",\n" +
                "            \"numerator\": 1,\n" +
                "            \"denominator\": 1,\n" +
                "            \"werks\": \"GF03\",\n" +
                "            \"boxNote\": \"BJ-1180115141-01-03\",\n" +
                "            \"createTime\": \"2023-04-24\",\n" +
                "            \"relateDocumentNumber\": \"5104dbf057954e21aae037484bba5b86\",\n" +
                "            \"logId\": \"db26d0a5b76547068b425ddb9e614ee1\",\n" +
                "            \"operationType\": \"\\u6d77\\u5916\\u7bb1\\u7801\\u6536\\u8d27\",\n" +
                "            \"whsLocationCode\": \"1006\",\n" +
                "            \"logAutoId\": 20171\n" +
                "        },\n" +
                "        {\n" +
                "            \"lastName\": \"\\u5f6d\\u52c7\\u5fe0(Shane Peng)\",\n" +
                "            \"comments\": \"\\u6d77\\u5916\\u4ed3\\u7bb1\\u7801\\u6536\\u8d27\",\n" +
                "            \"quantity\": 1,\n" +
                "            \"documentType\": \"\\u6d77\\u5916\\u4ed3\\u4ed3\\u5e93\\u5e93\\u5b58\\u65e5\\u5fd7\",\n" +
                "            \"userName\": \"\\u5f6d\\u52c7\\u5fe0(Shane Peng)\",\n" +
                "            \"userId\": \"0113509\",\n" +
                "            \"numerator\": 1,\n" +
                "            \"denominator\": 1,\n" +
                "            \"werks\": \"GF03\",\n" +
                "            \"boxNote\": \"BJ-1180115141-03-03\",\n" +
                "            \"createTime\": \"2023-04-24\",\n" +
                "            \"relateDocumentNumber\": \"5104dbf057954e21aae037484bba5b86\",\n" +
                "            \"logId\": \"4f818ab660274d94a58575f3726c08fa\",\n" +
                "            \"operationType\": \"\\u6d77\\u5916\\u7bb1\\u7801\\u6536\\u8d27\",\n" +
                "            \"whsLocationCode\": \"1006\",\n" +
                "            \"logAutoId\": 20170\n" +
                "        }\n" +
                "    ]\n" +
                "}";
        new Eam2SpmsService().Z_SPMS_STOCK_LIST_TO_EAM(data);
        System.out.println("-------end-------------");
    }

    public void initializeApp() throws MXException, RemoteException {
        super.initializeApp();
        ResultsBean resultsbean = app.getResultsBean();
        MboSetRemote set=resultsbean.getMboSet();
        String userid=set.getUserInfo().getPersonId();
        MboSetRemote pset= MXServer.getMXServer().getMboSet("person", set.getUserInfo());
        pset.setWhere("personid='"+userid+"'");
        if(!pset.isEmpty() && pset.count()>0){
            MboRemote per=pset.getMbo(0);
            //权限等级
            String aut=per.getString("UDAUTGRADE");
            String orgid=per.getString("LOCATIONORG");
            String siteid=per.getString("LOCATIONSITE");

            if("Level 1".equalsIgnoreCase(aut)){
                set.setWhere(" 1=1 ");
            }else if("Level 2".equalsIgnoreCase(aut)){
                set.setWhere(" WERKS in(SELECT siteid FROM SITE WHERE ORGID='"+orgid+"') ");
            }else if("Level 3".equalsIgnoreCase(aut)){
                set.setWhere(" WERKS='"+siteid+"' ");
            }else{
                //没有等级
                set.setWhere("1=2");
            }
        }
        pset.close();

    }

}
