fs-danaus
2022-03-26 59226b7f7f2986501b3dc3efcf9c646bb0e64ff3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="java.util.*"%>
<%@page import="com.yc.service.panel.SqlDBHelperIfc"%>
<%@page import="com.yc.service.panel.GfieldApprovedButtonIfc"%>
<%@page import="com.yc.service.panel.time.PanelTimeDao"%>
<%@page import="com.yc.service.panel.PanelManageDao"%>
<%@page import="com.yc.service.panel.TypeControlDao"%>
<%@page import="com.yc.service.build.BuildFuncIfc"%>
<%@page import="com.yc.service.commons.SqlQueryIfc"%>
<%@page import="com.yc.service.build.top.BuildTopIfc"%>
<%@page import="com.yc.service.commons.GfieldIfc"%>
<%@page import="com.yc.utils.SessionKey"%>
<%@page import="java.util.UUID" %>
<%@page import="com.yc.utils.FormOpUtil"%>
<%@page import="org.springframework.jdbc.support.rowset.SqlRowSet"%>
<%@page import="com.yc.factory.FactoryBean"%>
<%@page import="com.yc.service.impl.DBHelper" %>
<%@page import="com.yc.service.build.top.PrintLinkSpellUtils"%>
<%@page import="com.yc.utils.CheckInputPwdUtils"%>
<%@page import="com.yc.sdk.shopping.util.SettingKey"%>
<%@page import="com.yc.entity.FormLoadParameterEntity"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="com.yc.service.impl.EnvHelper"%>
<%@page import="com.yc.service.upload.AttachmentIfc"%>
<%@page import="com.yc.utils.DefaultSet"%>
<%@page import="java.sql.SQLException"%>
<%@page import="net.sf.json.JSONObject"%>
<%@page import="org.springframework.jdbc.BadSqlGrammarException"%>
<%@page import="org.springframework.dao.EmptyResultDataAccessException"%>
<%@page import="org.springframework.dao.DataAccessException"%>
<%@page import="com.yc.multiData.SpObserver"%>
<%@page import="com.google.gson.JsonArray"%>
<%@page import="com.google.gson.JsonObject"%>
<%@page import="com.yc.service.panel.SystemSettingsDao"%>
<%@page import="com.yc.action.BaseAction"%>
<%@page import="com.yc.utils.RequestParameterUtils"%>
<%@page import="com.yc.service.build.top.ExportSpellUtils"%>
<%@page import="com.yc.utils.HtmlUtil"%>
<%@page import="com.yc.utils.FormOpUtil"%>
 
<%
    SqlDBHelperIfc  sqlDBHelperIfc=(SqlDBHelperIfc)FactoryBean.getBean("SqlDBHelper");
    GfieldApprovedButtonIfc gButtonIfc=(GfieldApprovedButtonIfc)FactoryBean.getBean("GfieldApprovedButton");
    PanelTimeDao PanelTimeBo=(PanelTimeDao)FactoryBean.getBean("PanelTime");
    PanelManageDao PanelManageBo=(PanelManageDao)FactoryBean.getBean("PanelManage");
    TypeControlDao TypeControlBo=(TypeControlDao)FactoryBean.getBean("TypeControl");
    BuildFuncIfc  build=(BuildFuncIfc)FactoryBean.getBean("Build"); 
      SqlQueryIfc sqlQueryIfc = (SqlQueryIfc)FactoryBean.getBean("SqlQueryImpl");
      BuildTopIfc buildTopIfc = (BuildTopIfc)FactoryBean.getBean("BuildTopImpl");
      GfieldIfc gfieldIfc = (GfieldIfc)FactoryBean.getBean("GfieldImpl");
    
    FormLoadParameterEntity load =new FormLoadParameterEntity();//存放加载面板信息需要到的参数
    Map<String, Object> bdMap =new HashMap<String,Object>();//存放加载面板返回的信息  
    String URL =SettingKey.getHostUrl(request);   //路径    
    String pantit="";
    int formId = [?formId];//功能号
    int formType = [?formType];
    int version=[?version];//当前的版本号
    int optype = [?formOptType];//操作类型
    String isShowOnlineMsg="[?isShowOnlineMsg]";//是否打开在线交流
    String isShowProcessTracking="[?isShowProcessTracking]";//是否打开流程跟踪
    //序列号扫码 xin 2021-8-2 17:50:03
    //入库
    Integer isshowinserialbtn=[?isshowinserialbtn];
    String inserialbtneditstatus="[?inserialbtneditstatus]";
    //出库
    Integer isshowoutserialbtn=[?isshowoutserialbtn];
    String outserialbtneditstatus="[?outserialbtneditstatus]";
    //农行支付收款、退款控制 xin 2021-8-23 14:30:39
    Integer isshowonlinepaymentbutton=[?isshowonlinepaymentbutton];
    String online="";
    if(isshowonlinepaymentbutton==1){
    online+=",(case when isnull(OnlinePaymentAmount,0) > 0 then 1 else 0 end) as isshowonlinepaymentbutton";
    }
    String onlinePay=request.getParameter("onlinePay");
    //用户代码
    String userCode = (String)session.getAttribute(SessionKey.USERCODE);
    //用户权限
    Map<String,Map<String,Object>> perssion=(Map<String,Map<String,Object>>)session.getAttribute(SessionKey.PERSSION);
    //用户对于该功能号所拥有的权限代码
    int profile=-1;
    try{
        profile=(Integer)perssion.get(formId+"").get("optype");
    }catch(Exception e){}
    //是否为超级管理员  1 为超级管理员
    String isSuperUser = (String)session.getAttribute(SessionKey.SUPPER_USER);
    isSuperUser=isSuperUser.intern();
    if(isSuperUser=="1")
        profile=FormOpUtil.TotalOP;
    if(optype!=-1){
        profile=profile&optype;
    }        
    //获取查询字符串。比如:http://localhost/test.do?a=b&c=d&e=f
    //通过request.getQueryString()得到的是a=b&c=d&e=f;
    String queryString = request.getQueryString();
    if(queryString==null){
        queryString="";
    }    
    //打开时输入密码
    String isOpenFuncShowPwdEdit = "[?isOpenFuncShowPwdEdit]";
    if(isOpenFuncShowPwdEdit!="" && isOpenFuncShowPwdEdit!="0"){
        boolean hasOpen = CheckInputPwdUtils.checkPwd(isOpenFuncShowPwdEdit,"[?formId]",request,response,session);
        if(!hasOpen){
            return;
        }
    }
    //功能链接表达式
    String hasShowItemExpression = "[?hasShowItemExpression]";    
    //
    SqlRowSet rs = null;
    String panelEnd="";
    //---------获取参数信息--------------
    String p = request.getParameter("p");
    String g = request.getParameter("g");
    String flag = request.getParameter("flag");
    String docCode = request.getParameter("doccode")==null?"":request.getParameter("doccode");
    String copy=request.getParameter("cp");//1表示复单
    String isNew=request.getParameter("isNew");//docCode.equals("")?null:""; //  0不是新单 1是新单
    String wherePan=request.getParameter("wherePan");
    String where = request.getParameter("where");
    if(wherePan==null){
        wherePan=(where!=null?where:null);
    }
    request.setAttribute("wherePan",wherePan);    
    if(wherePan==null&&(queryString.startsWith("where=")||queryString.startsWith("wherePan="))){
        wherePan=queryString.replace("where=", "").replace("wherePan=","");
    }
    //功能连接表达式 &符号的替换属性需要用到   在RequestParameterUtils类的replaceRequestExpression方法调用到。操作时间 2014-6-26 10:40:00
    wherePan=HtmlUtil.prossIntoSessionForStr(wherePan,session);
       
    if(wherePan!=null){
        String []temp = wherePan.split("and");
        String []t=null;
        for(int i=0;i<temp.length;i++){
            t=temp[i].split("=");
            if("doccode".equalsIgnoreCase(t[0])){
                try{
                    docCode=t[1];break;
                }catch(Exception e){}
            }
        }
        panelEnd=wherePan;
    }    
    if(copy!=null){
        docCode=request.getParameter("doccode");  
        where="doccode='"+docCode+"'";
    }
    if(docCode!=null&&!docCode.equals("")){        
        panelEnd=(panelEnd.equals("")?"doccode='"+docCode.replaceAll("'","")+"'":panelEnd)+" and (formid in("+formId+" #dataformid#)) #formdatafilters#";
    }
    
    //panel info
    panelEnd=panelEnd.equals("")?"1=2":panelEnd;
    wherePan=panelEnd+ " and "+DBHelper.getQx(session);
    String doccode=docCode.replaceAll("'","");
    isNew=(isNew!=null?isNew:(doccode.equals("")?"1":"0"));
    //isNew=(doccode.equals(""))?isNew:"0";
    String grid=null;
    //end
    wherePan=DBHelper.getDWFqx(wherePan,request,formId,0);//组装取得数据组权限 
    String docStatus="0";    
    try{    
        //获取单据状态 xin 2019-2-25 16:59:54
        docStatus=PanelManageBo.getDocstatus(wherePan,formId,"[?zhu]",request);
    }catch(Exception e){
        docStatus="0";
    }
     load.setDocStatus(docStatus);
     load.setHasCopy(copy);
     load.setFormId(formId);
     load.setFormType(formType);
     load.setDoccode(docCode);
     load.setSession(request.getSession());
    %>