gdzcpdjh.jsp 6.24 KB
<%--
  Created by IntelliJ IDEA.
  User: zhaiyaqi
  Date: 2020/3/15
  Time: 7:34 PM
  To change this template use File | Settings | File Templates.
--%>
<%@ page import="com.alibaba.fastjson.JSON" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="org.apache.commons.logging.Log" %>
<%@ page import="org.apache.commons.logging.LogFactory" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="java.io.ByteArrayOutputStream" %>
<%@ page import="java.io.InputStream" %>
<%@ page import="weaver.general.BaseBean" %>
<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="com.alibaba.fastjson.JSONArray" %>
<%@ page import="weaver.conn.RecordSetDataSource" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
    response.setContentType("application/json;charset=utf-8");
    out.clear();
    JSONObject result = new JSONObject(true);
    String apikey = Util.null2String(request.getHeader("apikey"));
    writeLog("apikey----" + apikey);
    BaseBean baseBean = new BaseBean();
    String local_apikey = Util.null2String(baseBean.getPropValue("apikeys", "gdzcpdjh_jsp"));
    if (local_apikey.equals("")) {
        result.put("code", -1);
        result.put("message", "接口异常");
        out.print(result.toJSONString());
        return;
    }
    if (!apikey.equals(local_apikey)) {
        result.put("code", -1);
        result.put("message", "API Key 错误");
        out.print(result.toJSONString());
        return;
    }
    String jsonStr = null;
    try {
        jsonStr = new String(readInputStream(request.getInputStream()), "UTF-8");
    } catch (Exception e) {
        e.printStackTrace();
        result.put("code", -1);
        result.put("message", "传参错误");
        out.print(result.toJSONString());
        return;
    }
    if (Util.null2String(jsonStr).equals("")) {
        result.put("code", -1);
        result.put("message", "传参错误");
        out.print(result.toJSONString());
        return;
    }
    JSONObject obj = JSON.parseObject(jsonStr);
    String wxid = Util.null2String(obj.getString("wxid"));

    RecordSet rs = new RecordSet();
    RecordSet rs1 = new RecordSet();
    String sql;
    sql = "select id from cus_fielddata where scopeid=-1 and field0='" + wxid + "'";
    writeLog(sql);
    rs.execute(sql);
    if (!rs.next()) {
        result.put("code", -1);
        result.put("message", "OA中无此人员账号");
        out.print(result.toJSONString());
        return;
    }

    String id = rs.getString("id");
    sql = "select t1.pdjh,t2.gdzckph,t2.mc,t2.dj,t2.ks from uf_pdjhb t1,uf_pdjhb_dt1 t2 where t1.id=t2.mainid and t1.pdr='" + id + "'";
    sql = "select t1.id,t1.pdjh from uf_pdjhb t1 where t1.pdr='" + id + "'";
    rs.execute(sql);
    if (rs.getCounts() <= 0) {
        result.put("code", -1);
        result.put("message", "无盘点计划");
        out.print(result.toJSONString());
        return;
    }
    String pdr = getLastName(id);
    JSONArray array = new JSONArray();
    while (rs.next()) {
        JSONObject jo = new JSONObject();
        jo.put("PDR", pdr);
        jo.put("PDJH", Util.null2String(rs.getString("pdjh")));

        sql = "select gdzckph from uf_pdjhb_dt1 where mainid=" + rs.getString("id");
        writeLog(sql);
        rs1.execute(sql);
        JSONArray array1 = new JSONArray();
        while (rs1.next()) {
            array1.add(getData(Util.null2String(rs1.getString("gdzckph"))));
        }

        jo.put("arr", array1);

        array.add(jo);
    }
    result.put("data", array);
    result.put("code", 0);
    result.put("message", "成功");
    out.print(result.toJSONString());
%>
<%!
    private void writeLog(Object o) {
        Log var3 = LogFactory.getLog(this.getClass().getName());
        if(o instanceof Exception) {
            var3.info(this.getClass().getName(), (Exception)o);
        } else {
            var3.info(o);
        }
    }

    private JSONObject getData(String GDZCKPH) {
        JSONObject jo = new JSONObject();
        RecordSetDataSource rsds = new RecordSetDataSource("HERP");
        String sql;
        sql = "select * from uf_gdzcb where id='" + GDZCKPH + "'";
        rsds.execute(sql);
        String[] fields = rsds.getColumnName();
        List<String> list = new ArrayList<String>();
        list.add("ID");
        list.add("REQUESTID");
        list.add("FORMMODEID");
        list.add("MODEDATACREATER");
        list.add("MODEDATACREATERTYPE");
        list.add("MODEDATACREATEDATE");
        list.add("MODEDATACREATETIME");
        list.add("MODEUUID");
        list.add("FLOOR");
        list.add("LONGITUDE");
        list.add("LATITUDE");
        list.add("REGIONUUID");
        list.add("REGIONNAME");
        list.add("REGIONAREA");
        list.add("NEARESTREGIONUUID");
        list.add("NEARESTREGIONNAME");
        list.add("NEARESTREGIONDISTANCE");
        list.add("IMAGELIST");
        list.add("STATUS");
        while (rsds.next()) {
            for (String field : fields) {
                if (!list.contains(field.toUpperCase())) {
                    jo.put(field.toUpperCase(), Util.null2String(rsds.getString(field)));
                }
            }
        }
        return jo;
    }

    private String getGDZCKPH(String id) {
        if (id.equals("")) {
            return "";
        }
        RecordSetDataSource rsds = new RecordSetDataSource("HERP");
        String sql;
        sql = "select GDZCKPH from UF_GDZCB where id=" + id;
        rsds.execute(sql);
        rsds.next();
        return Util.null2String(rsds.getString("GDZCKPH"));
    }

    private String getLastName(String id) {
        RecordSet rs = new RecordSet();
        String sql;
        sql = "select lastname from hrmresource where id=" + id;
        rs.execute(sql);
        rs.next();
        return Util.null2String(rs.getString(1));
    }

    private byte[] readInputStream(InputStream inStream) throws Exception {
        ByteArrayOutputStream outSteam = new ByteArrayOutputStream();
        byte[] buffer = new byte[1024];
        boolean var3 = false;

        int len;
        while((len = inStream.read(buffer)) != -1) {
            outSteam.write(buffer, 0, len);
        }

        outSteam.close();
        inStream.close();
        return outSteam.toByteArray();
    }
%>