diff --git a/apc-controller-mobile/src/test/resources/apc.cfg.xml b/apc-controller-mobile/src/test/resources/apc.cfg.xml
index 1ee5dd4..a6754f2 100644
--- a/apc-controller-mobile/src/test/resources/apc.cfg.xml
+++ b/apc-controller-mobile/src/test/resources/apc.cfg.xml
@@ -73,11 +73,13 @@
+
+
diff --git a/apc-controller/src/main/java/com/arrebol/apc/controller/admin/ClosingDayController.java b/apc-controller/src/main/java/com/arrebol/apc/controller/admin/ClosingDayController.java
index 252da32..f54d8b6 100644
--- a/apc-controller/src/main/java/com/arrebol/apc/controller/admin/ClosingDayController.java
+++ b/apc-controller/src/main/java/com/arrebol/apc/controller/admin/ClosingDayController.java
@@ -1,8 +1,8 @@
/*
* Arrebol Consultancy copyright.
- *
+ *
* This code belongs to Arrebol Consultancy
- * its use, redistribution or modification are prohibited
+ * its use, redistribution or modification are prohibited
* without written authorization from Arrebol Consultancy.
*/
package com.arrebol.apc.controller.admin;
@@ -19,11 +19,14 @@ import com.arrebol.apc.model.core.Office;
import com.arrebol.apc.model.core.User;
import com.arrebol.apc.model.enums.ActiveStatus;
import com.arrebol.apc.model.views.ClosingDailyDetailFromUserByCurdateView;
+import com.arrebol.apc.model.views.ClosingDailyDetailFromUserByLastClosingDayView;
import com.arrebol.apc.model.views.LoanByUserPaymentZeroView;
import com.arrebol.apc.model.views.TotalCashByCurdateDashboardView;
import com.arrebol.apc.model.views.TotalCashByCurdateView;
+import com.arrebol.apc.model.views.TotalCashByLastClosingDayView;
import com.arrebol.apc.model.views.TotalClosingDayByCurdateView;
import com.arrebol.apc.model.views.constance.ClosingDailyDetailFromUserByCurdateCfg;
+import com.arrebol.apc.model.views.constance.ClosingDailyDetailFromUserByLastClosingDayCfg;
import com.arrebol.apc.model.views.constance.LoanByUserPaymentZeroViewCfg;
import com.arrebol.apc.model.views.constance.TotalLoansByOfficeViewCfg;
import com.arrebol.apc.repository.GenericEntityRepository;
@@ -42,398 +45,437 @@ import org.hibernate.Transaction;
*
* @author Oscar Armando Vargas Cardenas
*/
-public class ClosingDayController extends ConnectionManager implements Serializable {
+public class ClosingDayController extends ConnectionManager implements Serializable {
- /**
- *
- * Searching all closing day by office.
- *
- * @param officeId
- * @param startDate
- * @param endDate
- * @return
- */
- public List fillClosingDayDatatable(String officeId, Date startDate, Date endDate) {
- logger.debug("fillClosingDayDatatable");
- List parameters = new ArrayList<>();
-
- Calendar calendar = Calendar.getInstance();
- calendar.setTime(startDate);
- calendar.add(Calendar.DAY_OF_YEAR, 1);
- startDate = calendar.getTime();
+ /**
+ *
+ * Searching all closing day by office.
+ *
+ * @param officeId
+ * @param startDate
+ * @param endDate
+ * @return
+ */
+ public List fillClosingDayDatatable(String officeId, Date startDate, Date endDate) {
+ logger.debug("fillClosingDayDatatable");
+ List parameters = new ArrayList<>();
- Calendar calendarF = Calendar.getInstance();
- calendarF.setTime(endDate);
- calendarF.add(Calendar.DAY_OF_YEAR, 1);
- endDate = calendarF.getTime();
-
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_OFFICE, new Office(officeId)));
- //parameters.add(new ModelParameter(ClosingDayCfg.FIELD_ACTIVE_STATUS, ActiveStatus.ENEBLED));
- parameters.add(new ModelParameter(ClosingDayCfg.PARAM_START_DATE, startDate));
- parameters.add(new ModelParameter(ClosingDayCfg.PARAM_END_DATE, endDate));
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(startDate);
+ calendar.add(Calendar.DAY_OF_YEAR, 1);
+ startDate = calendar.getTime();
- return genericEntityRepository.xmlQueryAPCEntities(ClosingDay.class, ClosingDayCfg.QUERY_FIND_ALL_CLOSING_DAY_BY_OFFICE_BETWEEN_DATES, parameters);
- }
+ Calendar calendarF = Calendar.getInstance();
+ calendarF.setTime(endDate);
+ calendarF.add(Calendar.DAY_OF_YEAR, 1);
+ endDate = calendarF.getTime();
- /**
- *
- * @param status
- * @param closingDayIdToUpdate
- * @param lastUpdatedBy
- * @return
- */
- public boolean updateClosingDayByStatus(ActiveStatus status, String closingDayIdToUpdate, String lastUpdatedBy) {
- logger.debug("updateClosingDayByStatus");
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_OFFICE, new Office(officeId)));
+ //parameters.add(new ModelParameter(ClosingDayCfg.FIELD_ACTIVE_STATUS, ActiveStatus.ENEBLED));
+ parameters.add(new ModelParameter(ClosingDayCfg.PARAM_START_DATE, startDate));
+ parameters.add(new ModelParameter(ClosingDayCfg.PARAM_END_DATE, endDate));
- List parameters = new ArrayList<>();
+ return genericEntityRepository.xmlQueryAPCEntities(ClosingDay.class, ClosingDayCfg.QUERY_FIND_ALL_CLOSING_DAY_BY_OFFICE_BETWEEN_DATES, parameters);
+ }
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_ACTIVE_STATUS, status));
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_LAST_UPDATED_BY, lastUpdatedBy));
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_LAST_UPDATED_ON, new Date()));
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_ID, closingDayIdToUpdate));
+ /**
+ *
+ * @param status
+ * @param closingDayIdToUpdate
+ * @param lastUpdatedBy
+ * @return
+ */
+ public boolean updateClosingDayByStatus(ActiveStatus status, String closingDayIdToUpdate, String lastUpdatedBy) {
+ logger.debug("updateClosingDayByStatus");
- return genericEntityRepository.xmlUpdateOrDeleteAPCEntity(ClosingDayCfg.QUERY_UPDATE_CLOSING_DAY_BY_STATUS, parameters);
- }
+ List parameters = new ArrayList<>();
- /**
- *
- * @param closingDay
- * @return boolean
- */
- public boolean saveClosingDay(ClosingDay closingDay) {
- logger.debug("saveClosingDay");
- boolean success = genericEntityRepository.insertAPCEntity(closingDay);
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_ACTIVE_STATUS, status));
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_LAST_UPDATED_BY, lastUpdatedBy));
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_LAST_UPDATED_ON, new Date()));
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_ID, closingDayIdToUpdate));
- return success;
- }
+ return genericEntityRepository.xmlUpdateOrDeleteAPCEntity(ClosingDayCfg.QUERY_UPDATE_CLOSING_DAY_BY_STATUS, parameters);
+ }
- /**
- *
- * Searching TotalCashByCurdateView by id.
- *
- * @param id
- * @return
- */
- public TotalCashByCurdateView getTotalCashByCurdateViewById(String id) {
- logger.debug("getTotalCashByCurdateViewById");
+ /**
+ *
+ * @param closingDay
+ * @return boolean
+ */
+ public boolean saveClosingDay(ClosingDay closingDay) {
+ logger.debug("saveClosingDay");
+ boolean success = genericEntityRepository.insertAPCEntity(closingDay);
- return (TotalCashByCurdateView) genericEntityRepository.selectAPCEntityById(TotalCashByCurdateView.class, id);
- }
+ return success;
+ }
- /**
- *
- * Searching all total money day by office.
- *
- * @param officeId
- * @return
- */
- public List getAllTotalCashByCurdateView(String officeId) {
- logger.debug("getAllTotalCashByCurdateView");
- List parameters = new ArrayList<>();
+ /**
+ *
+ * Searching TotalCashByCurdateView by id.
+ *
+ * @param id
+ * @return
+ */
+ public TotalCashByCurdateView getTotalCashByCurdateViewById(String id) {
+ logger.debug("getTotalCashByCurdateViewById");
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_VIEW_OFFICE, officeId));
+ return (TotalCashByCurdateView) genericEntityRepository.selectAPCEntityById(TotalCashByCurdateView.class, id);
+ }
- return genericEntityRepository.xmlQueryAPCEntities(TotalCashByCurdateView.class, ClosingDayCfg.QUERY_FIND_TOTAL_BY_OFFICE, parameters);
- }
+ /**
+ *
+ * Searching TotalCashByLastClosingDayView by id.
+ *
+ * @param id
+ * @return
+ */
+ public TotalCashByLastClosingDayView getTotalCashByLastClosingDayViewById(String id) {
+ logger.debug("getTotalCashByLastClosingDayViewById");
+ return (TotalCashByLastClosingDayView) genericEntityRepository.selectAPCEntityById(TotalCashByLastClosingDayView.class, id);
+ }
- public List getAllTotalCashByCurdateDashboardView(String officeId) {
- logger.debug("getAllTotalCashByCurdateDashboardView");
- List parameters = new ArrayList<>();
+ /**
+ *
+ * Searching all total money day by office.
+ *
+ * @param officeId
+ * @return
+ */
+ public List getAllTotalCashByCurdateView(String officeId) {
+ logger.debug("getAllTotalCashByCurdateView");
+ List parameters = new ArrayList<>();
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_VIEW_OFFICE, officeId));
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_VIEW_OFFICE, officeId));
- return genericEntityRepository.xmlQueryAPCEntities(TotalCashByCurdateDashboardView.class, ClosingDayCfg.QUERY_FIND_TOTAL_DASHBOARD_BY_OFFICE, parameters);
- }
+ return genericEntityRepository.xmlQueryAPCEntities(TotalCashByCurdateView.class, ClosingDayCfg.QUERY_FIND_TOTAL_BY_OFFICE, parameters);
+ }
- /**
- *
- * Searching all TotalClosingDayByCurdateView by curdate.
- *
- * @param officeId
- * @return
- */
- public List findAllClosingDayByCurdate(String officeId) {
- logger.debug("findAllClosingDayByCurdate");
- List parameters = new ArrayList<>();
+ public List getAllTotalCashByCurdateDashboardView(String officeId) {
+ logger.debug("getAllTotalCashByCurdateDashboardView");
+ List parameters = new ArrayList<>();
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_VIEW_OFFICE, officeId));
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_VIEW_OFFICE, officeId));
- return genericEntityRepository.xmlQueryAPCEntities(TotalClosingDayByCurdateView.class, ClosingDayCfg.QUERY_FIND_ALL_CLOSING_DAY_BY_CURDATE, parameters);
- }
+ return genericEntityRepository.xmlQueryAPCEntities(TotalCashByCurdateDashboardView.class, ClosingDayCfg.QUERY_FIND_TOTAL_DASHBOARD_BY_OFFICE, parameters);
+ }
- /**
- *
- * Searching all ClosingDailyDetailFromUserByCurdateView by curdate.
- *
- * @param userId
- * @return
- */
- public List findAllClosingDailyDetailFromUserByCurdateView(String userId) {
- logger.debug("findAllClosingDailyDetailFromUserByCurdateView");
- List parameters = new ArrayList<>();
+ /**
+ *
+ * Searching all TotalClosingDayByCurdateView by curdate.
+ *
+ * @param officeId
+ * @return
+ */
+ public List findAllClosingDayByCurdate(String officeId) {
+ logger.debug("findAllClosingDayByCurdate");
+ List parameters = new ArrayList<>();
- parameters.add(new ModelParameter(ClosingDailyDetailFromUserByCurdateCfg.FIELD_VIEW_USER, userId));
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_VIEW_OFFICE, officeId));
- return genericEntityRepository.xmlQueryAPCEntities(ClosingDailyDetailFromUserByCurdateView.class, ClosingDailyDetailFromUserByCurdateCfg.QUERY_FIND_ALL_DETAILS, parameters);
- }
+ return genericEntityRepository.xmlQueryAPCEntities(TotalClosingDayByCurdateView.class, ClosingDayCfg.QUERY_FIND_ALL_CLOSING_DAY_BY_CURDATE, parameters);
+ }
- /**
- *
- * Searching all ClosingDailyDetailFromUserByCurdateView by curdate.
- *
- * @param userId
- * @return
- */
- public List findAllClosingDailyDetailFromUserCertifierByCurdateView(String userId) {
- logger.debug("findAllClosingDailyDetailFromUserCertifierByCurdateView");
- List parameters = new ArrayList<>();
+ /**
+ *
+ * Searching all ClosingDailyDetailFromUserByCurdateView by curdate.
+ *
+ * @param userId
+ * @return
+ */
+ public List findAllClosingDailyDetailFromUserByCurdateView(String userId) {
+ logger.debug("findAllClosingDailyDetailFromUserByCurdateView");
+ List parameters = new ArrayList<>();
- parameters.add(new ModelParameter(ClosingDailyDetailFromUserByCurdateCfg.FIELD_VIEW_USER, userId));
+ parameters.add(new ModelParameter(ClosingDailyDetailFromUserByCurdateCfg.FIELD_VIEW_USER, userId));
- return genericEntityRepository.xmlQueryAPCEntities(ClosingDailyDetailFromUserByCurdateView.class, ClosingDailyDetailFromUserByCurdateCfg.QUERY_FIND_ALL_DETAILS_CERTIFIER, parameters);
- }
+ return genericEntityRepository.xmlQueryAPCEntities(ClosingDailyDetailFromUserByCurdateView.class, ClosingDailyDetailFromUserByCurdateCfg.QUERY_FIND_ALL_DETAILS, parameters);
+ }
- /**
- *
- * Searching the num by closing day
- *
- * @param num for closing day
- * @return
- */
- public Long getClosingDayCurdateByUserId(String userId, String officeid) {
- logger.debug("getClosingDayCurdateByUserId");
- List parameters = new ArrayList<>();
+ /**
+ *
+ * Searching all ClosingDailyDetailFromUserByLastClosingDayView by curdate.
+ *
+ * @param userId
+ * @return
+ */
+ public List findAllClosingDailyDetailFromUserByLastClosingDayView(String userId) {
+ logger.debug("findAllClosingDailyDetailFromUserByLastClosingDayView");
+ List parameters = new ArrayList<>();
+ parameters.add(new ModelParameter(ClosingDailyDetailFromUserByLastClosingDayCfg.FIELD_VIEW_USER, userId));
+ return genericEntityRepository.xmlQueryAPCEntities(ClosingDailyDetailFromUserByLastClosingDayView.class, ClosingDailyDetailFromUserByLastClosingDayCfg.QUERY_FIND_ALL_DETAILS, parameters);
+ }
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_USER, new User(userId)));
- parameters.add(new ModelParameter(ClosingDayCfg.FIELD_OFFICE, new Office(officeid)));
+ /**
+ *
+ * Searching all ClosingDailyDetailFromUserByCurdateView by curdate.
+ *
+ * @param userId
+ * @return
+ */
+ public List findAllClosingDailyDetailFromUserCertifierByCurdateView(String userId) {
+ logger.debug("findAllClosingDailyDetailFromUserCertifierByCurdateView");
+ List parameters = new ArrayList<>();
- return (Long) genericEntityRepository.xmlQueryAPCEntityUniqueResult(Long.class, ClosingDayCfg.QUERY_COUNT_CLOSING_DATE_BY_USER_AND_OFFICE, parameters);
- }
+ parameters.add(new ModelParameter(ClosingDailyDetailFromUserByCurdateCfg.FIELD_VIEW_USER, userId));
- public Long getLoansCountDailyByUser(String userId) {
- logger.debug("getLoansCountDailyByUser");
- List parameters = new ArrayList<>();
+ return genericEntityRepository.xmlQueryAPCEntities(ClosingDailyDetailFromUserByCurdateView.class, ClosingDailyDetailFromUserByCurdateCfg.QUERY_FIND_ALL_DETAILS_CERTIFIER, parameters);
+ }
- parameters.add(new ModelParameter(TotalLoansByOfficeViewCfg.FIELD_VIEW_USER, userId));
+ /**
+ *
+ * Searching all ClosingDailyDetailFromUserByLastClosingDayView by curdate.
+ *
+ * @param userId
+ * @return
+ */
+ public List findAllClosingDailyDetailFromUserCertifierByLastClosingDayView(String userId) {
+ logger.debug("findAllClosingDailyDetailFromUserCertifierByLastClosingDayView");
+ List parameters = new ArrayList<>();
+ parameters.add(new ModelParameter(ClosingDailyDetailFromUserByLastClosingDayCfg.FIELD_VIEW_USER, userId));
+ return genericEntityRepository.xmlQueryAPCEntities(ClosingDailyDetailFromUserByLastClosingDayView.class, ClosingDailyDetailFromUserByLastClosingDayCfg.QUERY_FIND_ALL_DETAILS_CERTIFIER, parameters);
+ }
- return (Long) genericEntityRepository.xmlQueryAPCEntityUniqueResult(Long.class, TotalLoansByOfficeViewCfg.QUERY_COUNT_ALL_LOANS_BY_USER, parameters);
- }
+ /**
+ *
+ * Searching the num by closing day
+ *
+ * @param num for closing day
+ * @return
+ */
+ public Long getClosingDayCurdateByUserId(String userId, String officeid) {
+ logger.debug("getClosingDayCurdateByUserId");
+ List parameters = new ArrayList<>();
- public List getLoansPaymentZeroByUser(String userId) {
- logger.debug("getLoansPaymentZeroByUser");
- List parameters = new ArrayList<>();
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_USER, new User(userId)));
+ parameters.add(new ModelParameter(ClosingDayCfg.FIELD_OFFICE, new Office(officeid)));
- parameters.add(new ModelParameter(LoanByUserPaymentZeroViewCfg.FIELD_VIEW_USER, new User(userId)));
+ return (Long) genericEntityRepository.xmlQueryAPCEntityUniqueResult(Long.class, ClosingDayCfg.QUERY_COUNT_CLOSING_DATE_BY_USER_AND_OFFICE, parameters);
+ }
- return genericEntityRepository.xmlQueryAPCEntities(LoanByUserPaymentZeroView.class, LoanByUserPaymentZeroViewCfg.QUERY_FIND_ALL_LOANS_PAYMENT_ZERO_BY_USER, parameters);
- }
+ public Long getLoansCountDailyByUser(String userId) {
+ logger.debug("getLoansCountDailyByUser");
+ List parameters = new ArrayList<>();
- /**
- *
- * @param details
- * @return boolean
- */
- public boolean saveClosingDayDetail(List details) {
- logger.debug("saveClosingDayDetail");
- boolean success = genericEntityRepository.insertManyAPCEntity(details);
+ parameters.add(new ModelParameter(TotalLoansByOfficeViewCfg.FIELD_VIEW_USER, userId));
- return success;
- }
+ return (Long) genericEntityRepository.xmlQueryAPCEntityUniqueResult(Long.class, TotalLoansByOfficeViewCfg.QUERY_COUNT_ALL_LOANS_BY_USER, parameters);
+ }
- /**
- *
- * Searching closing day by id.
- *
- * @param closingDayId
- * @return
- */
- public ClosingDay getClosingDayById(String closingDayId) {
- logger.debug("getClosingDayById");
+ public List getLoansPaymentZeroByUser(String userId) {
+ logger.debug("getLoansPaymentZeroByUser");
+ List parameters = new ArrayList<>();
- return (ClosingDay) genericEntityRepository.selectAPCEntityById(ClosingDay.class, closingDayId);
- }
+ parameters.add(new ModelParameter(LoanByUserPaymentZeroViewCfg.FIELD_VIEW_USER, new User(userId)));
- public List getClosingDayDetailByIdClosingDay(String closingDay) {
- logger.debug("getClosingDayDetailByIdClosingDay");
- List parameters = new ArrayList<>();
+ return genericEntityRepository.xmlQueryAPCEntities(LoanByUserPaymentZeroView.class, LoanByUserPaymentZeroViewCfg.QUERY_FIND_ALL_LOANS_PAYMENT_ZERO_BY_USER, parameters);
+ }
- parameters.add(new ModelParameter(ClosingDayDetailCfg.FIELD_CLOSING_DAY, new ClosingDay(closingDay)));
+ /**
+ *
+ * @param details
+ * @return boolean
+ */
+ public boolean saveClosingDayDetail(List details) {
+ logger.debug("saveClosingDayDetail");
+ boolean success = genericEntityRepository.insertManyAPCEntity(details);
- return genericEntityRepository.xmlQueryAPCEntities(ClosingDayDetail.class, ClosingDayDetailCfg.QUERY_FIND_ALL_CLOSING_DAY_DETAIL_BY_ID, parameters);
- }
+ return success;
+ }
- public User getUserById(String userId) {
- logger.debug("getUserById");
+ /**
+ *
+ * Searching closing day by id.
+ *
+ * @param closingDayId
+ * @return
+ */
+ public ClosingDay getClosingDayById(String closingDayId) {
+ logger.debug("getClosingDayById");
- return (User) genericEntityRepository.selectAPCEntityById(User.class, userId);
- }
+ return (ClosingDay) genericEntityRepository.selectAPCEntityById(ClosingDay.class, closingDayId);
+ }
- /**
- *
- * @param date
- * @return
- */
- public boolean existNextPaidClosingDayByCreatedOn(Date date) {
- logger.info("existNextPaidClosingDayByCreatedOn");
+ public List getClosingDayDetailByIdClosingDay(String closingDay) {
+ logger.debug("getClosingDayDetailByIdClosingDay");
+ List parameters = new ArrayList<>();
- String query = "SELECT cd.id "
- + "FROM APC_CLOSING_DAY cd "
- + "WHERE DATE(cd.created_on) >= DATE_ADD(DATE(:date), INTERVAL 1 DAY) "
- + "AND cd.active_status = 'ENEBLED'";
+ parameters.add(new ModelParameter(ClosingDayDetailCfg.FIELD_CLOSING_DAY, new ClosingDay(closingDay)));
- return genericEntityRepository.existRecordsUsingSQLQueryFindByCreatedOnField(date, query);
- }
+ return genericEntityRepository.xmlQueryAPCEntities(ClosingDayDetail.class, ClosingDayDetailCfg.QUERY_FIND_ALL_CLOSING_DAY_DETAIL_BY_ID, parameters);
+ }
- /**
- *
- * @param date
- * @return
- */
- public boolean existStableSmallBoxByCreatedOn(Date date) {
- logger.info("existStableSmallBoxByCreatedOn");
+ public User getUserById(String userId) {
+ logger.debug("getUserById");
- String query = "SELECT ssb.id "
- + "FROM APC_STABLE_SMALL_BOX ssb "
- + "WHERE DATE(ssb.created_on) = DATE(:date) "
- + "AND ssb.active_status = 'ENEBLED'";
+ return (User) genericEntityRepository.selectAPCEntityById(User.class, userId);
+ }
- return genericEntityRepository.existRecordsUsingSQLQueryFindByCreatedOnField(date, query);
- }
+ /**
+ *
+ * @param date
+ * @return
+ */
+ public boolean existNextPaidClosingDayByCreatedOn(Date date) {
+ logger.info("existNextPaidClosingDayByCreatedOn");
- /**
- *
- * @param userId
- * @return
- */
- public List