protected static boolean checkIdle(final Point p) throws NimbitsException { final Calendar c = Calendar.getInstance(); c.add(Calendar.SECOND, p.getIdleSeconds() * -1); boolean retVal = false; final List<Entity> result = EntityServiceFactory.getInstance() .getEntityByKey( UserServiceFactory.getServerInstance().getAdmin(), p.getOwner(), EntityType.user); if (!result.isEmpty()) { final User u = (User) result.get(0); final List<Value> v = ValueServiceFactory.getInstance().getCurrentValue(p); if (p.getIdleSeconds() > 0 && !v.isEmpty() && v.get(0).getTimestamp().getTime() <= c.getTimeInMillis() && !p.getIdleAlarmSent()) { p.setIdleAlarmSent(true); EntityServiceFactory.getInstance().addUpdateEntity(u, p); // PointServiceFactory.getInstance().updatePoint(u, p); final Value va = ValueFactory.createValueModel(v.get(0), AlertType.IdleAlert); SubscriptionServiceFactory.getInstance().processSubscriptions(u, p, va); retVal = true; } } return retVal; }
// 一周内的污染源在线脱机联机报表 public static void run7(HttpServletRequest req) throws Exception { String gas_station_type = "2"; String water_station_type = "1"; String so2_col = "val01"; String cod_col = "val02"; Connection cn = null; String sql = null; List list = new ArrayList(); // 存储这周内的数据 List list2 = new ArrayList(); // 存储今天的数据 List list3 = new ArrayList(); // 存储脱机的数据 List l_temp = null; List td_temp = null; // 存储今天的数据 String kv = null; String kv_2 = null; Map tmp = null; Map tmp_2 = null; Map tmp2 = new HashMap(); Map tmp3 = new HashMap(); Map data = null; // 存这周内有数据的站位 Map data2 = null; // 存储今天的数据 Map data3 = null; // 存储这周脱机的站位 List waterStationList = null; List gasStationList = null; // String date = req.getParameter("date"); String now = StringUtil.getNowDate() + ""; // String now = req.getParameter("date")+"";//黄宝修改 String date1, date2 = null; // 从现在开始,退后7天。 Calendar cal = Calendar.getInstance(); Calendar cal2 = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); cal.setTime(cal.getTime()); cal.add(Calendar.DAY_OF_MONTH, -7); // 退后7天 String now_7 = sdf.format(cal.getTime()); cal2.setTime(cal2.getTime()); cal2.add(Calendar.DAY_OF_MONTH, -1); // 退后1天 String now_1 = sdf.format(cal2.getTime()) + " 23:59:59"; ; date1 = sdf.format(cal2.getTime()) + " 23:59:59"; date2 = now_7 + ""; Map areaMap = null; Map bean = new HashMap(); int i, num = 0; Map m = null; String area_id = null; try { area_id = req.getParameter("area_id"); if (area_id == null) { area_id = ""; } // date1 = req.getParameter("date1"); // date1 = req.getParameter("date1"); sql = "select station_id,m_time," + so2_col + "," + cod_col + " from " + req.getParameter("tableName"); sql = sql + " where m_time>='" + date2 + "' and m_time<='" + date1 + "'"; sql = sql + " and station_id in ("; sql = sql + "select station_id from t_cfg_station_info where station_type in ('1','2') and area_id like '" + area_id + "%') order by m_time desc"; // System.out.println(sql); cn = f.getConn(); // System.out.println(sql); l_temp = f.query(cn, sql, null); // 最近一周的数据 num = l_temp.size(); for (i = 0; i < num; i++) { tmp = (Map) l_temp.get(i); kv = (String) tmp.get("station_id"); String station_id_t = (String) tmp2.get(kv); if ("".equals(station_id_t) || station_id_t == null) { list.add(tmp); // 最近一周都有的数据 tmp2.put(kv, kv); } } // data = f.getListMap(list,"station_id");//最近一周都有的数据 // 查询今天有数据的站位 String now_time = StringUtil.getNowDate() + ""; date1 = now_time + ""; date2 = now_time + " 23:59:59"; sql = "select station_id,m_time," + so2_col + "," + cod_col + " from " + req.getParameter("tableName"); sql = sql + " where m_time>='" + date1 + "' and m_time<='" + date2 + "'"; sql = sql + " and station_id in ("; sql = sql + "select station_id from t_cfg_station_info where station_type in ('1','2') and area_id like '" + area_id + "%') order by m_time desc"; td_temp = f.query(cn, sql, null); // 今天的数据 tmp2 = null; num = td_temp.size(); for (i = 0; i < num; i++) { tmp = (Map) td_temp.get(i); kv = (String) tmp.get("station_id"); String station_id_t = (String) tmp3.get(kv); if ("".equals(station_id_t) || station_id_t == null) { list2.add(tmp); // 今天有数据的站位。 tmp3.put(kv, kv); } } // 循环这一周内有数据的站位列表list,如果list中的站位不能在今天的站位信息列表中list2中找到的话,则表明是脱机 num = list.size(); int j = 0; int num2 = list2.size(); String station_id_1 = ""; String station_id_2 = ""; int l = 0; for (i = 0; i < num; i++) { tmp = (Map) list.get(i); station_id_1 = (String) tmp.get("station_id"); l = 0; for (j = 0; j < num2; j++) { tmp_2 = (Map) list2.get(j); station_id_2 = (String) tmp_2.get("station_id"); if (station_id_1.equals(station_id_2)) { l++; } } if (l == 0) { list3.add(tmp); } } data = f.getListMap(list3, "station_id"); // 这周脱机的站位信息列表 l_temp = null; tmp = null; list2 = null; list3 = null; tmp_2 = null; tmp3 = null; sql = "select station_id,station_desc,ep_type,area_id,station_bz from t_cfg_station_info where station_type='1' and area_id like '" + area_id + "%' order by area_id,station_desc"; waterStationList = f.query(cn, sql, null); // System.out.println(sql); sql = "select station_id,station_desc,ep_type,area_id from t_cfg_station_info where station_type='2' and area_id like '" + area_id + "%' order by area_id,station_desc"; gasStationList = f.query(cn, sql, null); // System.out.println(sql); sql = "select area_id,area_name from t_cfg_area"; areaMap = f.getMap(cn, sql); // System.out.println(sql); num = waterStationList.size(); for (i = 0; i < num; i++) { m = (Map) waterStationList.get(i); area_id = (String) m.get("area_id"); m.put("area_name", areaMap.get(area_id)); } num = gasStationList.size(); for (i = 0; i < num; i++) { m = (Map) gasStationList.get(i); area_id = (String) m.get("area_id"); m.put("area_name", areaMap.get(area_id)); } // System.out.println("before close,cn="+cn); f.close(cn); // System.out.println("after close,cn="+cn); int waterOnlineNum, gasOnlineNum, onlineNum = 0; int waterOfflineNum, gasOfflineNum, offlineNum = 0; int waterOfflineNumNation, gasOfflineNumNation, offlineNumNation = 0; int waterZeroNum, gasZeroNum, zeroNum = 0; int waterZeroNumNation, gasZeroNumNation, zeroNumNation = 0; waterOnlineNum = OnlineReport.getOnlineNum(waterStationList, data); gasOnlineNum = OnlineReport.getOnlineNum(gasStationList, data); onlineNum = waterOnlineNum + gasOnlineNum; // System.out.println(onlineNum); waterOfflineNum = OnlineReport.getOfflineNum(waterStationList, data); gasOfflineNum = OnlineReport.getOfflineNum(gasStationList, data); offlineNum = waterOfflineNum + gasOfflineNum; // System.out.println("zeroNumNation "+zeroNumNation); waterOfflineNumNation = OnlineReport.getOfflineNumNation(waterStationList, data); gasOfflineNumNation = OnlineReport.getOfflineNumNation(gasStationList, data); offlineNumNation = waterOfflineNumNation + gasOfflineNumNation; // System.out.println("offlineNumNation "+offlineNumNation); waterZeroNum = OnlineReport.getZeroNum(waterStationList, data, cod_col); gasZeroNum = OnlineReport.getZeroNum(gasStationList, data, so2_col); zeroNum = waterZeroNum + gasZeroNum; // System.out.println(zeroNum); waterZeroNumNation = OnlineReport.getZeroNumNation(waterStationList, data, cod_col); gasZeroNumNation = OnlineReport.getZeroNumNation(gasStationList, data, so2_col); zeroNumNation = waterZeroNumNation + gasZeroNumNation; // System.out.println(zeroNumNation); bean.put("waterOnlineNum", waterOnlineNum + ""); bean.put("gasOnlineNum", gasOnlineNum + ""); bean.put("onlineNum", onlineNum + ""); bean.put("waterOfflineNum", waterOfflineNum + ""); bean.put("gasOfflineNum", gasOfflineNum + ""); bean.put("offlineNum", offlineNum + ""); bean.put("waterOfflineNumNation", waterOfflineNumNation + ""); bean.put("gasOfflineNumNation", gasOfflineNumNation + ""); bean.put("offlineNumNation", offlineNumNation + ""); bean.put("waterZeroNum", waterZeroNum + ""); bean.put("gasZeroNum", gasZeroNum + ""); bean.put("zeroNum", zeroNum + ""); bean.put("waterZeroNumNation", waterZeroNumNation + ""); bean.put("gasZeroNumNation", gasZeroNumNation + ""); bean.put("zeroNumNation", zeroNumNation + ""); date1 = now_7; date2 = StringUtil.getNowDate() + ""; bean.put("date1", date2); bean.put("date2", date1); req.setAttribute("bean", bean); list = getOfflineList2(waterStationList, data); req.setAttribute("waterOfflineList", list); list = getOfflineList2(gasStationList, data); req.setAttribute("gasOfflineList", list); list = getOfflineListNation(waterStationList, data); req.setAttribute("waterOfflineListNation", list); list = getOfflineListNation(gasStationList, data); req.setAttribute("gasOfflineListNation", list); list = getZeroListNation(waterStationList, data, cod_col); req.setAttribute("waterZeroListNation", list); list = getZeroListNation(gasStationList, data, so2_col); req.setAttribute("gasZeroListNation", list); } catch (Exception e) { throw e; } finally { f.close(cn); } }
private void _jspService( javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, com.caucho.jsp.PageContextImpl pageContext, javax.servlet.ServletContext application, javax.servlet.http.HttpSession session, TagState _jsp_state) throws Throwable { javax.servlet.jsp.JspWriter out = pageContext.getOut(); final javax.el.ELContext _jsp_env = pageContext.getELContext(); javax.servlet.ServletConfig config = getServletConfig(); javax.servlet.Servlet page = this; javax.servlet.jsp.tagext.JspTag _jsp_parent_tag = null; com.caucho.jsp.PageContextImpl _jsp_parentContext = pageContext; response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); out.write(_jsp_string0, 0, _jsp_string0.length); CP_Classes.EthnicGroup ethnic; synchronized (pageContext.getSession()) { ethnic = (CP_Classes.EthnicGroup) pageContext.getSession().getAttribute("ethnic"); if (ethnic == null) { ethnic = new CP_Classes.EthnicGroup(); pageContext.getSession().setAttribute("ethnic", ethnic); } } out.write(_jsp_string1, 0, _jsp_string1.length); CP_Classes.Login logchk; synchronized (pageContext.getSession()) { logchk = (CP_Classes.Login) pageContext.getSession().getAttribute("logchk"); if (logchk == null) { logchk = new CP_Classes.Login(); pageContext.getSession().setAttribute("logchk", logchk); } } out.write(_jsp_string1, 0, _jsp_string1.length); CP_Classes.Translate trans; synchronized (pageContext.getSession()) { trans = (CP_Classes.Translate) pageContext.getSession().getAttribute("trans"); if (trans == null) { trans = new CP_Classes.Translate(); pageContext.getSession().setAttribute("trans", trans); } } out.write(_jsp_string1, 0, _jsp_string1.length); // added to check whether organisation is a consulting company // Mark Oei 09 Mar 2010 out.write(_jsp_string1, 0, _jsp_string1.length); CP_Classes.Organization Org; synchronized (pageContext.getSession()) { Org = (CP_Classes.Organization) pageContext.getSession().getAttribute("Org"); if (Org == null) { Org = new CP_Classes.Organization(); pageContext.getSession().setAttribute("Org", Org); } } out.write(_jsp_string1, 0, _jsp_string1.length); CP_Classes.Create_Edit_Survey CE_Survey; synchronized (pageContext.getSession()) { CE_Survey = (CP_Classes.Create_Edit_Survey) pageContext.getSession().getAttribute("CE_Survey"); if (CE_Survey == null) { CE_Survey = new CP_Classes.Create_Edit_Survey(); pageContext.getSession().setAttribute("CE_Survey", CE_Survey); } } out.write(_jsp_string2, 0, _jsp_string2.length); // by lydia Date 05/09/2008 Fix jsp file to support Thai language out.write(_jsp_string3, 0, _jsp_string3.length); out.print((trans.tslt("Delete Ethnic Group"))); out.write(_jsp_string4, 0, _jsp_string4.length); out.print((trans.tslt("Edit Ethnic Group"))); out.write(_jsp_string5, 0, _jsp_string5.length); out.print((trans.tslt("Please enter Ethnic Group"))); out.write(_jsp_string6, 0, _jsp_string6.length); out.print((trans.tslt("Add Ethnic Group"))); out.write(_jsp_string7, 0, _jsp_string7.length); out.print((trans.tslt("Please enter Ethnic Group"))); out.write(_jsp_string8, 0, _jsp_string8.length); String username = (String) session.getAttribute("username"); if (!logchk.isUsable(username)) { out.write(_jsp_string9, 0, _jsp_string9.length); } else { if (request.getParameter("proceed") != null) { int PKOrg = new Integer(request.getParameter("proceed")).intValue(); logchk.setOrg(PKOrg); } if (request.getParameter("Delete") != null) { int Ethnic_ID = new Integer(request.getParameter("ethnic_ID")).intValue(); boolean bIsDeleted = ethnic.deleteRecord(Ethnic_ID, logchk.getPKUser()); if (bIsDeleted) { out.write(_jsp_string10, 0, _jsp_string10.length); } } if (request.getParameter("Edit") != null) { int Ethnic_ID = new Integer(request.getParameter("ethnic_ID")).intValue(); String txtEthnic = request.getParameter("txtEthnic"); boolean bIsEdited = ethnic.editRecord(Ethnic_ID, txtEthnic, logchk.getOrg(), logchk.getPKUser()); if (bIsEdited) { out.write(_jsp_string11, 0, _jsp_string11.length); } else { out.write(_jsp_string12, 0, _jsp_string12.length); } } if (request.getParameter("Add") != null) { String txtEthnic = request.getParameter("txtEthnic"); boolean bExist = ethnic.existRecord(txtEthnic, logchk.getOrg()); if (!bExist) { boolean bIsAdded = ethnic.addRecord(txtEthnic, logchk.getOrg(), logchk.getPKUser()); if (bIsAdded) { out.write(_jsp_string13, 0, _jsp_string13.length); } } else { out.write(_jsp_string14, 0, _jsp_string14.length); } } out.write(_jsp_string15, 0, _jsp_string15.length); out.print((trans.tslt("Ethnic Group"))); out.write(_jsp_string16, 0, _jsp_string16.length); out.print((trans.tslt("To Add, click on the Add button"))); out.write(_jsp_string17, 0, _jsp_string17.length); out.print( (trans.tslt("To Edit, click on the relevant radio button and click on the Edit button"))); out.write(_jsp_string17, 0, _jsp_string17.length); out.print( (trans.tslt( "To Delete, click on the relevant radio button and click on the Delete button"))); out.write(_jsp_string18, 0, _jsp_string18.length); out.print((trans.tslt("Organisation"))); out.write(_jsp_string19, 0, _jsp_string19.length); // Added to check whether organisation is also a consulting company // if yes, will display a dropdown list of organisation managed by this company // else, it will display the current organisation only // Mark Oei 09 Mar 2010 String[] UserDetail = new String[14]; UserDetail = CE_Survey.getUserDetail(logchk.getPKUser()); boolean isConsulting = true; isConsulting = Org.isConsulting(UserDetail[10]); // check whether organisation is a consulting company if (isConsulting) { Vector vOrg = logchk.getOrgList(logchk.getCompany()); for (int i = 0; i < vOrg.size(); i++) { votblOrganization vo = (votblOrganization) vOrg.elementAt(i); int PKOrg = vo.getPKOrganization(); String OrgName = vo.getOrganizationName(); if (logchk.getOrg() == PKOrg) { out.write(_jsp_string20, 0, _jsp_string20.length); out.print((PKOrg)); out.write(_jsp_string21, 0, _jsp_string21.length); out.print((OrgName)); out.write(_jsp_string22, 0, _jsp_string22.length); } else { out.write(_jsp_string20, 0, _jsp_string20.length); out.print((PKOrg)); out.write('>'); out.print((OrgName)); out.write(_jsp_string22, 0, _jsp_string22.length); } } } else { out.write(_jsp_string23, 0, _jsp_string23.length); out.print((logchk.getSelfOrg())); out.write('>'); out.print((UserDetail[10])); out.write(_jsp_string24, 0, _jsp_string24.length); } // End of isConsulting out.write(_jsp_string25, 0, _jsp_string25.length); out.print((trans.tslt("Ethnic Group"))); out.write(_jsp_string26, 0, _jsp_string26.length); /** ****************** Edited by James 17 Oct 2007 ********************** */ Vector v = ethnic.getAllEthnics(logchk.getOrg()); for (int i = 0; i < v.size(); i++) { voEthnic vo = (voEthnic) v.elementAt(i); int ethnic_ID = vo.getPKEthnic(); String ethnic_Desc = vo.getEthnicDesc(); out.write(_jsp_string27, 0, _jsp_string27.length); out.print((ethnic_ID)); out.write(_jsp_string28, 0, _jsp_string28.length); out.print((ethnic_Desc)); out.write(_jsp_string29, 0, _jsp_string29.length); out.print((ethnic_Desc)); out.write(_jsp_string30, 0, _jsp_string30.length); } out.write(_jsp_string31, 0, _jsp_string31.length); out.print((trans.tslt("Ethnic Group"))); out.write(_jsp_string32, 0, _jsp_string32.length); out.print((trans.tslt("Add"))); out.write(_jsp_string33, 0, _jsp_string33.length); out.print((trans.tslt("Edit"))); out.write(_jsp_string34, 0, _jsp_string34.length); out.print((trans.tslt("Delete"))); out.write(_jsp_string35, 0, _jsp_string35.length); } out.write(_jsp_string36, 0, _jsp_string36.length); // by lydia Date 05/09/2008 Fix jsp file to support Thai language out.write(_jsp_string37, 0, _jsp_string37.length); Calendar c = Calendar.getInstance(); int year = c.get(Calendar.YEAR); out.write(_jsp_string38, 0, _jsp_string38.length); // Denise 05/01/2010 update new email address out.write(_jsp_string39, 0, _jsp_string39.length); out.print((year)); out.write(_jsp_string40, 0, _jsp_string40.length); }
/** Business logic to execute. */ public final Response executeCommand( Object inputPar, UserSessionParameters userSessionPars, HttpServletRequest request, HttpServletResponse response, HttpSession userSession, ServletContext context) { Connection conn = null; PreparedStatement pstmt = null; try { conn = ConnectionManager.getConnection(context); // fires the GenericEvent.CONNECTION_CREATED event... EventsManager.getInstance() .processEvent( new GenericEvent( this, getRequestName(), GenericEvent.CONNECTION_CREATED, (JAIOUserSessionParameters) userSessionPars, request, response, userSession, context, conn, inputPar, null)); Response responseVO = bean.insertItem( conn, (JournalHeaderVO) inputPar, userSessionPars, request, response, userSession, context); if (responseVO.isError()) { conn.rollback(); return responseVO; } if (inputPar instanceof JournalHeaderWithVatVO) { JournalHeaderWithVatVO vo = (JournalHeaderWithVatVO) inputPar; // insert vat rows in the specified vat register... Response regRes = vatRegisterAction.insertVatRows( conn, vo.getVats(), userSessionPars, request, response, userSession, context); if (regRes.isError()) { conn.rollback(); return regRes; } // retrieve payment instalments... Response payRes = payAction.executeCommand( new LookupValidationParams(vo.getPaymentCodeREG10(), new HashMap()), userSessionPars, request, response, userSession, context); if (payRes.isError()) { conn.rollback(); return payRes; } PaymentVO payVO = (PaymentVO) ((VOListResponse) payRes).getRows().get(0); GridParams gridParams = new GridParams(); gridParams .getOtherGridParams() .put(ApplicationConsts.PAYMENT_CODE_REG10, vo.getPaymentCodeREG10()); payRes = paysAction.executeCommand( gridParams, userSessionPars, request, response, userSession, context); if (payRes.isError()) { conn.rollback(); return payRes; } java.util.List rows = ((VOListResponse) payRes).getRows(); // create expirations in DOC19 ONLY if: // - there are more than one instalment OR // - there is only one instalment and this instalment has more than 0 instalment days if (rows.size() > 1 || (rows.size() == 1 && ((PaymentInstalmentVO) rows.get(0)).getInstalmentDaysREG17().intValue() > 0)) { // retrieve internationalization settings (Resources object)... ServerResourcesFactory factory = (ServerResourcesFactory) context.getAttribute(Controller.RESOURCES_FACTORY); Resources resources = factory.getResources(userSessionPars.getLanguageId()); PaymentInstalmentVO inVO = null; pstmt = conn.prepareStatement( "insert into DOC19_EXPIRATIONS(COMPANY_CODE_SYS01,DOC_TYPE,DOC_YEAR,DOC_NUMBER,DOC_SEQUENCE,PROGRESSIVE,DOC_DATE,EXPIRATION_DATE,NAME_1,NAME_2,VALUE,PAYED,DESCRIPTION,CUSTOMER_SUPPLIER_CODE,PROGRESSIVE_REG04,CURRENCY_CODE_REG03) values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"); long startTime = vo.getItemDateACC05().getTime(); // item date... if (payVO.getStartDayREG10().equals(ApplicationConsts.START_DAY_END_MONTH)) { Calendar cal = Calendar.getInstance(); if (cal.get(cal.MONTH) == 10 || cal.get(cal.MONTH) == 3 || cal.get(cal.MONTH) == 5 || cal.get(cal.MONTH) == 8) cal.set(cal.DAY_OF_MONTH, 30); else if (cal.get(cal.MONTH) == 1) { if (cal.get(cal.YEAR) % 4 == 0) cal.set(cal.DAY_OF_MONTH, 29); else cal.set(cal.DAY_OF_MONTH, 28); } else cal.set(cal.DAY_OF_MONTH, 31); startTime = cal.getTime().getTime(); } BigDecimal amount = null; for (int i = 0; i < rows.size(); i++) { inVO = (PaymentInstalmentVO) rows.get(i); pstmt.setString(1, vo.getCompanyCodeSys01ACC05()); pstmt.setString(2, vo.getDocTypeDOC19()); pstmt.setBigDecimal(3, vo.getItemYearACC05()); pstmt.setBigDecimal(4, null); pstmt.setBigDecimal(5, vo.getDocSequenceDOC19()); pstmt.setBigDecimal( 6, ProgressiveUtils.getConsecutiveProgressive( "DOC19_EXPIRATIONS", "PROGRESSIVE", conn)); pstmt.setDate(7, vo.getItemDateACC05()); pstmt.setDate( 8, new java.sql.Date( startTime + inVO.getInstalmentDaysREG17().longValue() * 86400 * 1000)); // expiration date pstmt.setString(9, vo.getName_1REG04()); pstmt.setString(10, vo.getName_2REG04()); amount = vo.getTotalValue() .multiply(inVO.getPercentageREG17()) .divide(new BigDecimal(100), BigDecimal.ROUND_HALF_UP) .setScale(vo.getTotalValue().scale(), BigDecimal.ROUND_HALF_UP); // value pstmt.setBigDecimal(11, amount); pstmt.setString(12, "N"); if (vo.getDocTypeDOC19().equals(ApplicationConsts.SALE_GENERIC_INVOICE)) pstmt.setString( 13, resources.getResource("sale generic document") + " " + vo.getDocSequenceDOC19() + "/" + vo.getItemYearACC05() + " - " + resources.getResource("valueREG01") + " " + resources.getResource("rateNumberREG17") + " " + (i + 1) + " - " + inVO.getPaymentTypeDescriptionSYS10()); // description else pstmt.setString( 13, resources.getResource("purchase generic document") + " " + vo.getDocSequenceDOC19() + "/" + vo.getItemYearACC05() + " - " + resources.getResource("valueREG01") + " " + resources.getResource("rateNumberREG17") + " " + (i + 1) + " - " + inVO.getPaymentTypeDescriptionSYS10()); // description pstmt.setString(14, vo.getCustomerCodeSAL07()); pstmt.setBigDecimal(15, vo.getProgressiveREG04()); pstmt.setString(16, vo.getCurrencyCodeREG01()); pstmt.execute(); } pstmt.close(); } // create an item registration for proceeds, according to expiration settings (e.g. retail // selling): // there must be only one instalment and this instalment has 0 instalment days if (rows.size() == 1 && ((PaymentInstalmentVO) rows.get(0)).getInstalmentDaysREG17().intValue() == 0) { // retrieve internationalization settings (Resources object)... ServerResourcesFactory factory = (ServerResourcesFactory) context.getAttribute(Controller.RESOURCES_FACTORY); Resources resources = factory.getResources(userSessionPars.getLanguageId()); HashMap map = new HashMap(); map.put(ApplicationConsts.COMPANY_CODE_SYS01, vo.getCompanyCodeSys01ACC05()); map.put(ApplicationConsts.PARAM_CODE, ApplicationConsts.CASE_ACCOUNT); Response res = userParamAction.executeCommand( map, userSessionPars, request, response, userSession, context); if (res.isError()) { conn.rollback(); return res; } String caseAccountCode = ((VOResponse) res).getVo().toString(); JournalHeaderVO jhVO = new JournalHeaderVO(); jhVO.setCompanyCodeSys01ACC05(vo.getCompanyCodeSys01ACC05()); if (vo.getDocTypeDOC19().equals(ApplicationConsts.SALE_GENERIC_INVOICE)) { jhVO.setDescriptionACC05( resources.getResource("sale generic document") + " " + vo.getDocSequenceDOC19() + "/" + vo.getItemYearACC05() + " - " + resources.getResource("customer") + " " + vo.getName_1REG04() + " " + (vo.getName_2REG04() == null ? "" : vo.getName_2REG04())); jhVO.setAccountingMotiveCodeAcc03ACC05(ApplicationConsts.MOTIVE_INVOICE_PROCEEDS); } else { jhVO.setDescriptionACC05( resources.getResource("purchase generic document") + " " + vo.getDocSequenceDOC19() + "/" + vo.getItemYearACC05() + " - " + resources.getResource("supplier") + " " + vo.getName_1REG04() + " " + (vo.getName_2REG04() == null ? "" : vo.getName_2REG04())); jhVO.setAccountingMotiveCodeAcc03ACC05(ApplicationConsts.MOTIVE_PURCHASE_INVOICE_PAYED); } jhVO.setItemDateACC05(new java.sql.Date(System.currentTimeMillis())); jhVO.setItemYearACC05(new BigDecimal(Calendar.getInstance().get(Calendar.YEAR))); JournalRowVO jrVO = new JournalRowVO(); jrVO.setCompanyCodeSys01ACC06(jhVO.getCompanyCodeSys01ACC05()); if (vo.getDocTypeDOC19().equals(ApplicationConsts.SALE_GENERIC_INVOICE)) { jrVO.setAccountCodeAcc02ACC06(vo.getCreditAccountCodeAcc02SAL07()); jrVO.setAccountCodeACC06(vo.getCustomerCodeSAL07()); jrVO.setAccountCodeTypeACC06(ApplicationConsts.ACCOUNT_TYPE_CUSTOMER); jrVO.setCreditAmountACC06(vo.getTotalValue()); } else { jrVO.setAccountCodeAcc02ACC06(vo.getDebitAccountCodeAcc02PUR01()); jrVO.setAccountCodeACC06(vo.getSupplierCodePUR01()); jrVO.setAccountCodeTypeACC06(ApplicationConsts.ACCOUNT_TYPE_SUPPLIER); jrVO.setDebitAmountACC06(vo.getTotalValue()); } jrVO.setDescriptionACC06(""); jrVO.setItemYearAcc05ACC06(jhVO.getItemYearACC05()); jrVO.setProgressiveAcc05ACC06(jhVO.getProgressiveACC05()); jhVO.addJournalRow(jrVO); jrVO = new JournalRowVO(); jrVO.setCompanyCodeSys01ACC06(jhVO.getCompanyCodeSys01ACC05()); jrVO.setAccountCodeAcc02ACC06(caseAccountCode); jrVO.setAccountCodeACC06(caseAccountCode); jrVO.setAccountCodeTypeACC06(ApplicationConsts.ACCOUNT_TYPE_ACCOUNT); if (vo.getDocTypeDOC19().equals(ApplicationConsts.SALE_GENERIC_INVOICE)) { jrVO.setDebitAmountACC06(vo.getTotalValue()); } else { jrVO.setCreditAmountACC06(vo.getTotalValue()); } jrVO.setDescriptionACC06(""); jrVO.setItemYearAcc05ACC06(jhVO.getItemYearACC05()); jrVO.setProgressiveAcc05ACC06(jhVO.getProgressiveACC05()); jhVO.addJournalRow(jrVO); Response proceedsRes = bean.insertItem(conn, jhVO, userSessionPars, request, response, userSession, context); if (proceedsRes.isError()) { conn.rollback(); return proceedsRes; } } } Response answer = responseVO; // fires the GenericEvent.BEFORE_COMMIT event... EventsManager.getInstance() .processEvent( new GenericEvent( this, getRequestName(), GenericEvent.BEFORE_COMMIT, (JAIOUserSessionParameters) userSessionPars, request, response, userSession, context, conn, inputPar, answer)); conn.commit(); // fires the GenericEvent.AFTER_COMMIT event... EventsManager.getInstance() .processEvent( new GenericEvent( this, getRequestName(), GenericEvent.AFTER_COMMIT, (JAIOUserSessionParameters) userSessionPars, request, response, userSession, context, conn, inputPar, answer)); return answer; } catch (Throwable ex) { Logger.error( userSessionPars.getUsername(), this.getClass().getName(), "executeCommand", "Error while inserting a new item in the journal", ex); try { conn.rollback(); } catch (Exception ex3) { } return new ErrorResponse(ex.getMessage()); } finally { try { pstmt.close(); } catch (Exception ex2) { } try { ConnectionManager.releaseConnection(conn, context); } catch (Exception ex1) { } } }