📄 addfavorhandler.java
字号:
package com.huiton.mainframe.control.web.handlers;import com.huiton.cerp.pub.util.*;import com.huiton.cerp.pub.util.functions.*;import com.huiton.mainframe.control.event.CERPEvent;import com.huiton.mainframe.control.exceptions.DuplicateRecordException;import com.huiton.mainframe.control.web.CustomerWebImpl;import com.huiton.mainframe.control.web.ModelManager;import com.huiton.mainframe.control.web.handlers.RequestHandlerSupport;import com.huiton.mainframe.util.tracer.Debug;import com.huiton.pub.dbx.*;import java.sql.*;import java.util.ArrayList;import java.util.Vector;import javax.servlet.ServletRequest;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;public class AddFavorHandler extends RequestHandlerSupport{ public AddFavorHandler() { } public CERPEvent processRequest(HttpServletRequest request) throws Exception, DuplicateRecordException, SQLException { try { Debug.println("----AddFavorHandler: processRequest()"); ModelManager mm = (ModelManager)request.getSession().getAttribute("mm"); CustomerWebImpl customer = mm.getCustomerWebImpl(); String companyCode = customer.getCompanyCode(); String userUniqueNo = customer.getUserUniqueNo(); String sessionCode = customer.getSessionCode(); String lang = customer.getLanguage(); String opFlag = null; //operation flag String outFlag = "1"; // outcome flag, 1 means succeeds Vector vct = null; //保存记录 String sql = null; int currentPage = 0; //当前页 int pageCount = 0; //总页数 opFlag = request.getParameter("opFlag"); opFlag = (opFlag==null ? "" : opFlag.trim()); opFlag = (opFlag.length()<1 ? "query" : opFlag); int pageSize = 15; PageQuery pageQuery = DBOperators.getPageQuery(request, sessionCode, SubsystemKeys.SAM, "AddFavorHandler"); String condition = ""; // set query Condition to nothing //selectAll //全选标记 String selectAll = request.getParameter("selectAll"); selectAll = (selectAll==null ? "0" : selectAll.trim()); // get currentPage and pageCount String m_currentPage = request.getParameter("currentPage"); m_currentPage = (m_currentPage==null ? "1" : m_currentPage.trim()); currentPage = Integer.parseInt(m_currentPage); currentPage = (currentPage < 1 ? 1 : currentPage); m_currentPage = request.getParameter("pageCount"); m_currentPage = (m_currentPage==null ? "1" : m_currentPage.trim()); pageCount = Integer.parseInt(m_currentPage); pageCount = (pageCount < 1 ? 1 : pageCount); Debug.println("----opFlag=" + opFlag); // to decide which field to get String favor_name = "favor_name_cn"; String prog_name = "prog_name_cn"; if (lang.equalsIgnoreCase("en")) { favor_name = "favor_name_en"; prog_name = "prog_name_en"; } if (opFlag.equalsIgnoreCase("query")) { // 查询 String strFields = "sys_code,prog_code," + favor_name + ",favor_type" ; String strConditions = null; if (condition.length()<1) { strConditions = " company_code='"+companyCode +"' and user_unique_no='"+userUniqueNo +"' order by favor_type,favor_index "; }else { strConditions = condition + " and (company_code='"+companyCode +"' and user_unique_no='"+userUniqueNo +"') order by favor_type,favor_index "; } String strTables = "sam_user_favor_v"; pageQuery.getData(strFields,strTables,strConditions,pageSize); pageCount = pageQuery.pageCount; pageCount = (pageCount < 1 ? 1 : pageCount); currentPage = (currentPage > pageCount ? pageCount : currentPage); vct = pageQuery.dividePage(currentPage,pageSize); } else if (opFlag.equalsIgnoreCase("delete")) { // 删除选中记录 String [] id = request.getParameterValues("id"); if (id !=null) { for (int ii=0;ii<id.length;ii++) { // split id into sys_code and prog_code int sepPos = id[ii].indexOf("__"); sepPos = (sepPos<0 ? id[ii].length() : sepPos); String mm_sys_code = id[ii].substring(0,sepPos); String mm_prog_code = id[ii].substring((sepPos==id[ii].length() ? sepPos : sepPos+2)); Debug.println("id["+ii+"] = " +id[ii]); String delSql = "delete from sam_user_favor " + " where company_code='" + companyCode + "' and user_unique_no='" + userUniqueNo + "' and sys_code='" + mm_sys_code + "' and prog_code='" + mm_prog_code + "'"; pageQuery.simpleUpdate(delSql); } } // show data String strFields = "sys_code,prog_code," + favor_name + ",favor_type" ; String strConditions = null; if (condition.length()<1) { strConditions = " company_code='"+companyCode +"' and user_unique_no='"+userUniqueNo +"' order by favor_type,favor_index "; }else { strConditions = condition + " and (company_code='"+companyCode +"' and user_unique_no='"+userUniqueNo +"') order by favor_type,favor_index "; } String strTables = "sam_user_favor_v"; pageQuery.getData(strFields,strTables,strConditions,pageSize); pageCount = pageQuery.pageCount; pageCount = (pageCount < 1 ? 1 : pageCount); currentPage = (currentPage > pageCount ? pageCount : currentPage); vct = pageQuery.dividePage(currentPage,pageSize); } else if (opFlag.equalsIgnoreCase("delAll")) { // 删除所有符合条件的记录 String strConditions = null; if (condition.length()<1) { strConditions = " company_code='"+companyCode +"' and user_unique_no='"+userUniqueNo+"' "; }else { strConditions = condition + " and (company_code='"+companyCode +"' and user_unique_no='" + userUniqueNo + "') "; } String strTables = "sam_user_favor"; boolean bFlag = pageQuery.simpleUpdate("delete from " + strTables + " where " + strConditions); outFlag = (bFlag ? "1" : "0"); pageCount = 1 ; currentPage = 1 ; selectAll = "0" ; vct = new Vector(); } else if (opFlag.equalsIgnoreCase("addNew")) { String m_url = request.getParameter("m_url"); Debug.println("m_url="+m_url); m_url = (m_url==null ? "" : m_url.trim()); if (m_url.length()<1) { outFlag = "0"; }else { Debug.println("before trimed m_url="+m_url); int startPos = m_url.indexOf("//"); startPos = (startPos>-1 ? startPos+2 : 0); // get start Position int idxPos = m_url.indexOf("/",startPos); idxPos = (idxPos>-1 ? idxPos : 0 );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -