xinyb
2024-07-17 b18bafa57176ae38541587a97dde3b3da25a1034
优化20 30窗体加载面板做排序处理
4个文件已修改
70 ■■■■■ 已修改文件
WebRoot/public/template/0/20/panel.jsp 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebRoot/public/template/0/30/panel.jsp 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/yc/service/panel/PanelManageDao.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/yc/service/panel/PanelManageImpl.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebRoot/public/template/0/20/panel.jsp
@@ -56,7 +56,8 @@
                      sql=sql.replaceAll("&doccode&",doccode.replaceAll("'",""));
              }
              SpObserver.setDBtoInstance("_"+request.getSession().getAttribute(SessionKey.DATA_BASE_ID));
              listInfo=PanelManageBo.getFromEnd(sql,tableIs,(wherePan==null?wherePan:wherePan.replaceAll("_ycid_","id")),@formType@,request);
//              listInfo=PanelManageBo.getFromEnd(sql,tableIs,(wherePan==null?wherePan:wherePan.replaceAll("_ycid_","id")),@formType@,request);//注释原因:调用下面的方法进行排序处理 xin 2024-7-17 15:12:33
            listInfo=PanelManageBo.getFromEndOrder(sql,tableIs,(wherePan==null?wherePan:wherePan.replaceAll("_ycid_","id")),@formId@,@formType@,request,response);
        }catch(Exception e){
           throw e;
        }finally{
WebRoot/public/template/0/30/panel.jsp
@@ -58,7 +58,8 @@
                  sql=sql.replaceAll("&doccode&",doccode.replaceAll("'",""));
             }
             SpObserver.setDBtoInstance("_"+request.getSession().getAttribute(SessionKey.DATA_BASE_ID));
             listInfo=PanelManageBo.getFromEnd(sql,tableIs,(wherePan==null?wherePan:wherePan.replaceAll("_ycid_","id")),@formType@,request);
//             listInfo=PanelManageBo.getFromEnd(sql,tableIs,(wherePan==null?wherePan:wherePan.replaceAll("_ycid_","id")),@formType@,request);//注释原因:调用下面的方法进行排序处理 xin 2024-7-17 15:12:33
            listInfo=PanelManageBo.getFromEndOrder(sql,tableIs,(wherePan==null?wherePan:wherePan.replaceAll("_ycid_","id")),@formId@,@formType@,request,response);
        }catch(Exception e){
             throw e;
   //                  sql="select top 1 @selectColAll@ from "+tableIs2+" where "+wherePan; 
src/com/yc/service/panel/PanelManageDao.java
@@ -1,11 +1,11 @@
package com.yc.service.panel;
import java.util.List;
import java.util.Map;
import com.yc.entity.FormLoadParameterEntity;
import javax.servlet.http.HttpServletRequest;
import com.yc.entity.FormLoadParameterEntity;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
 * 
@@ -34,6 +34,21 @@
    public abstract List<Map<String, Object>> getFromEnd(String sql, String tableis, String where, int formType,
            HttpServletRequest request) throws Exception;
    /**
     * 针对20 ,30窗体类型
     * @param sql
     * @param tableis
     * @param where
     * @param formId
     * @param formType
     * @param request
     * @param response
     * @return
     * @throws Exception
     */
    public abstract List<Map<String, Object>> getFromEndOrder(String sql, String tableis, String where, Integer formId , Integer formType,
                                                              HttpServletRequest request, HttpServletResponse response) throws Exception;
    /**
     * 复单的时候调用
     * @return
src/com/yc/service/panel/PanelManageImpl.java
@@ -1,19 +1,24 @@
package com.yc.service.panel;
import com.yc.api.bean.FormInfo;
import com.yc.api.controller.ApiController;
import com.yc.entity.FormLoadParameterEntity;
import com.yc.factory.FactoryBean;
import com.yc.sdk.password.action.ChangePassword;
import com.yc.sdk.shopping.util.SettingKey;
import com.yc.service.BaseService;
import com.yc.service.impl.DBHelper;
import com.yc.service.tree.TreeIfc;
import com.yc.utils.EncodeUtil;
import com.yc.utils.SessionKey;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.BadSqlGrammarException;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.net.URLDecoder;
import java.net.URLEncoder;
@@ -35,6 +40,10 @@
    @Autowired
    GfieldApprovedButtonIfc gButtonIfc;
    @Autowired
    ApiController apiController;
    @Autowired
    TreeIfc treeIfc;
    // 针对多表
    private Map<String, List<Map<String, Object>>> multiList = new HashMap<>();
@@ -57,6 +66,38 @@
    }
    /**
     * 针对20,30窗体加载面板数据时候做排序
     * @param sql
     * @param tableis
     * @param where
     * @param formId
     * @param formType
     * @param request
     * @param response
     * @return
     * @throws Exception
     */
    public List<Map<String, Object>> getFromEndOrder(String sql, String tableis, String where, Integer formId , Integer formType,
                                                     HttpServletRequest request, HttpServletResponse response) throws Exception {
        Integer treeFormId = formId;
        //通过功能号查询树功能号
        List<Map<String, Object>> list = treeIfc.getTreeSetByFormid("top 1 treeformid ", formId + "");
        if (list != null && list.size() > 0) {
            treeFormId = MapUtils.getInteger(list.get(0), "treeformid");
        }
        FormInfo info = new FormInfo();
        info.setFormid(treeFormId);
        info.setWintype("20@p@0");
        Map<String, String> map = apiController.getPrimKey(info, request, response);
        if (map != null && !map.isEmpty()) {
            String sortCols = MapUtils.getString(map, "sortCols");
            Integer sortTypes = MapUtils.getInteger(map, "sortTypes");
            where += " order by " + sortCols + " " + (sortTypes == 1 ? "desc" : "");
        }
        return getFromEnd(sql, tableis, where, formType, request);
    }
    /**
     * 加载单据信息
     */
//    @Override