diff --git a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/AccountsEntry.java b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/AccountsEntry.java index 7dceada..a07fcb3 100644 --- a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/AccountsEntry.java +++ b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/AccountsEntry.java @@ -18,7 +18,7 @@ import org.apache.commons.lang3.time.DateFormatUtils; import org.json.JSONArray; import org.json.JSONException; -import org.json.JSONObject; +import org.json.JSONObject; import com.inqwise.opinion.common.IOpinionAccount; import com.inqwise.opinion.common.IPostmasterContext; @@ -29,7 +29,9 @@ import com.inqwise.opinion.infrastructure.systemFramework.GeoIpManager; import com.inqwise.opinion.infrastructure.systemFramework.JSONHelper; import com.inqwise.opinion.library.common.IProduct; +import com.inqwise.opinion.library.common.InvoiceModel; import com.inqwise.opinion.library.common.accounts.AccountModel; +import com.inqwise.opinion.library.common.accounts.AccountOperationModel; import com.inqwise.opinion.library.common.accounts.AccountOperationsReferenceType; import com.inqwise.opinion.library.common.accounts.AccountsOperationsType; import com.inqwise.opinion.library.common.accounts.IAccount; @@ -54,9 +56,6 @@ import com.inqwise.opinion.library.managers.ProductsManager; import com.inqwise.opinion.library.managers.ServicePackagesManager; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataRowSet; - public class AccountsEntry extends Entry { static ApplicationLog logger = ApplicationLog.getLogger(AccountsEntry.class); @@ -157,21 +156,16 @@ public JSONObject getTransactions(JSONObject input) throws IOException, JSONExce result = BaseOperationResult.validateWithoutLog(null == groupBy || groupBy.equalsIgnoreCase("month"), ErrorCode.ArgumentWrong, "groupBy"); if (null == result) { - CDataCacheContainer ds = AccountsOperationsManager - .getAccountOperations(top, accountId, - accountOperationTypeIds, referenceId, - referenceTypeId, fromDate, toDate, true); + List accountOperationList = AccountsOperationsManager.getAccountOperations(top, accountId,accountOperationTypeIds, referenceId,referenceTypeId, fromDate, toDate, true); JSONArray ja = new JSONArray(); - CDataRowSet rowSet = ds.getAll(); - CDataRowSet invoicesRowSet = null; TreeMap groupsMap = null; BigDecimal groupDebit = null; BigDecimal groupCredit = null; + List invoiceList = null; if (null != groupBy) { groupDebit = new BigDecimal(0.0); groupCredit = new BigDecimal(0.0); - invoicesRowSet = InvoicesManager.getInvoices(top, accountId, - InvoiceStatus.Open.getValue(), false).getAll(null, true); + invoiceList = InvoicesManager.getInvoices(top, accountId,InvoiceStatus.Open.getValue(), false); groupsMap = new TreeMap<>(); } @@ -179,13 +173,12 @@ public JSONObject getTransactions(JSONObject input) throws IOException, JSONExce BigDecimal totalDebit = BigDecimal.ZERO; BigDecimal totalCredit = BigDecimal.ZERO; - while(rowSet.next()){ + for(var accountOperationModel : accountOperationList){ JSONObject jTransaction = new JSONObject(); - jTransaction.put("transactionId", rowSet.getLong("accop_id")); - Integer accountOperationTypeId = rowSet.getInt("accop_type_id"); - jTransaction.put("typeId", accountOperationTypeId); - jTransaction.put("userId", rowSet.getLong("user_id")); - Double amount = rowSet.getDouble("amount"); + jTransaction.put("transactionId", accountOperationModel.getId()); + jTransaction.put("typeId", accountOperationModel.getType().getValue()); + jTransaction.put("userId", accountOperationModel.getUserId()); + Double amount = accountOperationModel.getAmount(); if(null != amount){ jTransaction.put("amount", amount); if (amount < 0) { @@ -203,16 +196,16 @@ public JSONObject getTransactions(JSONObject input) throws IOException, JSONExce jTransaction.put("credit", 0); } } - Double balance = rowSet.getDouble("balance"); + Double balance = accountOperationModel.getBalance(); jTransaction.put("balance", balance); - Date modifyDate = rowSet.getDate("modify_date"); + Date modifyDate = accountOperationModel.getModifyDate(); jTransaction.put("modifyDate", JSONHelper.getDateFormat(modifyDate, "MMM dd, yyyy")); - Long accountOperationReferenceId = rowSet.getLong("reference_id"); + Long accountOperationReferenceId = accountOperationModel.getReferenceId(); jTransaction.put("referenceId", accountOperationReferenceId); - jTransaction.put("comments", rowSet.getString("comments")); - jTransaction.put("creditCard",rowSet.getString("credit_card_number")); - jTransaction.put("creditCardTypeId",rowSet.getInt("credit_card_type_id")); - jTransaction.put("chargeDescription",rowSet.getString("charge_description")); + jTransaction.put("comments", accountOperationModel.getComments()); + jTransaction.put("creditCard",accountOperationModel.getCreditCardNumber()); + jTransaction.put("creditCardTypeId",accountOperationModel.getCreditCardType()); + jTransaction.put("chargeDescription",accountOperationModel.getChargeDescription()); if (null == groupsMap) { ja.put(jTransaction); @@ -248,19 +241,16 @@ public JSONObject getTransactions(JSONObject input) throws IOException, JSONExce } if (null == lastFundJo - && rowSet.getInt("accop_type_id") == AccountsOperationsType.Fund.getValue()) { + && accountOperationModel.getType() == AccountsOperationsType.Fund) { lastFundJo = jTransaction; } } - - if(null != invoicesRowSet){ - while (invoicesRowSet.next()) { + if(null != invoiceList){ + for(var invoiceModel : invoiceList) { JSONObject jInvoice = new JSONObject(); - jInvoice.put("invoiceId",invoicesRowSet.getString("invoice_id")); + jInvoice.put("invoiceId",invoiceModel.getInvoiceId()); - Date groupDate = DateConverter - .shiftToTheEndOfTheMonth(invoicesRowSet - .getDate("invoice_to_date")); + Date groupDate = DateConverter.shiftToTheEndOfTheMonth(invoiceModel.getInvoiceToDate()); JSONObject jGroup = groupsMap.get(groupDate); if (null == jGroup) { jGroup = createJGroup(groupDate); @@ -965,7 +955,7 @@ public JSONObject changeSessionsBalance(final JSONObject input) throws JSONExcep int servicePackageId = input.getInt("packageId"); if(amount != 0 || null != unlimitedBalance){ - result = com.inqwise.opinion.opinion.managers.AccountsManager.changeSessionsBalance(accountId, servicePackageId, amount, unlimitedBalance); + result = com.inqwise.opinion.managers.AccountsManager.changeSessionsBalance(accountId, servicePackageId, amount, unlimitedBalance); } else { result = new OperationResult(ErrorCode.ArgumentWrong); } diff --git a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/ExportHandler.java b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/ExportHandler.java index 5e1bc69..533e2c1 100644 --- a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/ExportHandler.java +++ b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/ExportHandler.java @@ -49,6 +49,7 @@ import com.inqwise.opinion.common.ExportType; import com.inqwise.opinion.common.IPostmasterContext; +import com.inqwise.opinion.common.ResultModel; import com.inqwise.opinion.common.opinions.IOpinion; import com.inqwise.opinion.infrastructure.common.IOperationResult; import com.inqwise.opinion.infrastructure.systemFramework.GeoIpManager; @@ -58,11 +59,6 @@ import com.inqwise.opinion.managers.OpinionsManager; import com.inqwise.opinion.managers.ResultsManager; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataGridException; -import net.casper.data.model.CDataRowSet; - - public class ExportHandler extends HandlerBase { private static final Format formatter = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss"); @@ -164,10 +160,9 @@ private byte[] exportParticipants(JSONObject input, boolean includePartial = JSONHelper.optBoolean(input, "includePartial", true); TreeMap headerIdsMap = new TreeMap<>(); - CDataCacheContainer ds = ResultsManager.getAllResults(opinionId, null, sessionsArr, includePartial, headerIdsMap); + List reSultList = ResultsManager.getAllResults(opinionId, null, sessionsArr, includePartial, headerIdsMap); String[] dynamicColumnsHeader = new String[headerIdsMap.size()]; - CDataRowSet rows = ds.getAll(); List> list = new ArrayList<>(); Map dict = null; LinkedHashMap headerSet = new LinkedHashMap<>(); @@ -182,8 +177,8 @@ private byte[] exportParticipants(JSONObject input, } String participantGuid = null; - while(rows.next()){ - String currentParticipantGuid = rows.getString("answer_session_id"); + for(var resultModel : reSultList){ + String currentParticipantGuid = resultModel.getAnswerSessionId(); if(null == dict || (!participantGuid.equals(currentParticipantGuid))){ dict = new LinkedHashMap(); participantGuid = currentParticipantGuid; @@ -191,9 +186,9 @@ private byte[] exportParticipants(JSONObject input, // Add required columns: dict.put(PARTICIPANT_COLUMN_NAME, currentParticipantGuid); - dict.put(COLLECTOR_COLUMN_NAME, rows.getString("collector_name") + " #" + rows.getLong("collector_id")); - dict.put(PARTICIPANT_INSERT_DATE_COLUMN_NAME, rows.getDate("participant_insert_date")); - String clientIp = rows.getString("client_ip"); + dict.put(COLLECTOR_COLUMN_NAME, resultModel.getCollectorName() + " #" + resultModel.getCollectorId()); + dict.put(PARTICIPANT_INSERT_DATE_COLUMN_NAME, resultModel.getParticipantInsertDate()); + String clientIp = resultModel.getClientIp(); String countryName = null; try{ countryName = GeoIpManager.getInstance().getCountryName(clientIp); @@ -203,14 +198,14 @@ private byte[] exportParticipants(JSONObject input, dict.put(CLIENT_IP_COLUMN_NAME, clientIp); dict.put(CLIENT_COUNTRY_COLUMN_NAME, countryName); if(includePartial){ - dict.put(COMPLETED_COLUMN_NAME, rows.getBoolean("is_completed")); + dict.put(COMPLETED_COLUMN_NAME, resultModel.getIsCompleted()); } } - String columnPrefix = rows.getString("control_key"); + String columnPrefix = resultModel.getControlKey(); if(null == columnPrefix){ - columnPrefix = rows.getString("control_content"); + columnPrefix = resultModel.getControlContent(); } - Long controlId = rows.getLong("control_id"); + Long controlId = resultModel.getControlId(); String columnName = columnPrefix + " #" + controlId; Integer index = headerIdsMap.get(controlId); @@ -219,10 +214,10 @@ private byte[] exportParticipants(JSONObject input, dynamicColumnsHeader[index] = columnName; } - dict.put(columnName, rows.getString("answer_value")); + dict.put(columnName, resultModel.getAnswerValue()); } - dict.put(columnName, rows.getString("answer_value")); + dict.put(columnName, resultModel.getAnswerValue()); } for (int i = 0; i < dynamicColumnsHeader.length; i++) { diff --git a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/InvoicesEntry.java b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/InvoicesEntry.java index 361991c..b12b864 100644 --- a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/InvoicesEntry.java +++ b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/InvoicesEntry.java @@ -23,9 +23,9 @@ import com.inqwise.opinion.infrastructure.systemFramework.DateConverter; import com.inqwise.opinion.infrastructure.systemFramework.GeoIpManager; import com.inqwise.opinion.infrastructure.systemFramework.JSONHelper; -import com.inqwise.opinion.library.common.AccountOperationModel; import com.inqwise.opinion.library.common.InvoiceItemModel; import com.inqwise.opinion.library.common.InvoiceModel; +import com.inqwise.opinion.library.common.accounts.AccountOperationModel; import com.inqwise.opinion.library.common.accounts.AccountsOperationsType; import com.inqwise.opinion.library.common.accounts.IAccountBusinessDetails; import com.inqwise.opinion.library.common.errorHandle.BaseOperationResult; @@ -97,7 +97,7 @@ public JSONObject getInvoiceDetails(JSONObject input) throws IOException, JSONEx output.put("charges", getCharges(invoice)); output.put("transactions", getTransactions(invoice, fromDate, toDate)); } else { - Map> invoiceItems = InvoicesManager.getInvoiceItems(invoiceId); + Map> invoiceItems = InvoicesManager.getInvoiceItems(invoiceId); output.put("charges", getCharges(invoiceItems)); output.put("transactions", getTransactions(invoiceItems, invoice.getTotalCredit(), invoice.getTotalDebit())); } @@ -120,7 +120,7 @@ private JSONObject getTransactions(IInvoice invoice, Date fromDate, Date toDate) MutableDouble totalCredit = new MutableDouble(); MutableDouble totalDebit = new MutableDouble(); - List list = AccountsOperationsManager.getAccountOperations(DRAFT_MAX_INVOICE_ITEMS, invoice.getForAccountId(),DRAFT_ACCOUNT_OPERATIONS_TYPE_IDS,null, null, fromDate, toDate, true); + List list = AccountsOperationsManager.getAccountOperations(DRAFT_MAX_INVOICE_ITEMS, invoice.getForAccountId(),DRAFT_ACCOUNT_OPERATIONS_TYPE_IDS,null, null, fromDate, toDate, true); JSONArray ja = getTransactionsList(list, totalCredit, totalDebit); JSONObject output = new JSONObject(); @@ -494,8 +494,8 @@ private BaseOperationResult completeInvoiceGeneration(long invoiceId, //AccountOperations List accountOperationsIds = new ArrayList(); for(var accountOperationModel : accountOperationList) { - accountOperationsIds.add(accountOperationsRowSet.getLong("accop_id")); - Double amount = accountOperationsRowSet.getDouble("amount"); + accountOperationsIds.add(accountOperationModel.getId()); + Double amount = accountOperationModel.getAmount(); if(null != amount){ if(amount < 0) { @@ -587,21 +587,21 @@ public double getTotalCredit() { } private JSONObject getCharges( - Map> invoiceItems) throws JSONException { + Map> invoiceItems) throws JSONException { JSONObject output = new JSONObject(); JSONArray ja = new JSONArray(); - List chargeslist = invoiceItems.get(InvoiceItemType.Charge); - if(null != chargeslist){ - for(var invoiceItemModel : chargeslist){ - Long chargeId = invoiceItemModel.getChargeId(); - BigDecimal amount = BigDecimal.valueOf(invoiceItemModel.getAmount()); - int chargeStatusId = invoiceItemModel.getChargeStatusId(); + var list = invoiceItems.get(InvoiceItemType.Charge); + if(null != list){ + for(var invoiceItemModel : list){ + var chargeModel = (ChargeModel)invoiceItemModel; + Long chargeId = chargeModel.getId(); + BigDecimal amount = BigDecimal.valueOf(chargeModel.getAmount()); JSONObject jCharge = new JSONObject(); jCharge.put("chargeId", chargeId); - jCharge.put("statusId", chargeStatusId); - jCharge.put("name", invoiceItemModel.getChargeName()); - jCharge.put("description", invoiceItemModel.getChargeDescription()); - jCharge.put("chargeDate", JSONHelper.getDateFormat(invoiceItemModel.getInsertDate(), "MMM dd, yyyy")); + jCharge.put("statusId", chargeModel.getStatus().getValue()); + jCharge.put("name", chargeModel.getName()); + jCharge.put("description", chargeModel.getDescription()); + jCharge.put("chargeDate", JSONHelper.getDateFormat(chargeModel.getCreateDate(), "MMM dd, yyyy")); jCharge.put("amount", amount); ja.put(jCharge); } @@ -611,10 +611,10 @@ private JSONObject getCharges( } private JSONObject getTransactions( - Map> invoiceItems, Double totalCredit, Double totalDebit) throws JSONException { + Map> invoiceItems, Double totalCredit, Double totalDebit) throws JSONException { JSONArray ja; - List transactionslist = invoiceItems.get(InvoiceItemType.AccountOperation); + var transactionslist = invoiceItems.get(InvoiceItemType.AccountOperation); if(null != transactionslist){ ja = getTransactionsList(transactionslist, null, null); @@ -631,15 +631,16 @@ private JSONObject getTransactions( return output; } - public JSONArray getTransactionsList(List list, MutableDouble totalCredit, MutableDouble totalDebit) + public JSONArray getTransactionsList(List list, MutableDouble totalCredit, MutableDouble totalDebit) throws JSONException { JSONArray ja = new JSONArray(); for(var invoiceItemModel : list){ + var operationModel = (AccountOperationModel)invoiceItemModel; JSONObject jTransaction = new JSONObject(); - jTransaction.put("transactionId", invoiceItemModel.getAccopId()); - jTransaction.put("typeId", invoiceItemModel.getAccopTypeId()); - Double amount = invoiceItemModel.getAmount(); + jTransaction.put("transactionId", operationModel.getId()); + jTransaction.put("typeId", operationModel.getType()); + Double amount = operationModel.getAmount(); if(null != amount){ jTransaction.put("amount", amount); if(amount < 0) @@ -662,12 +663,12 @@ public JSONArray getTransactionsList(List list, MutableDouble jTransaction.put("credit", 0); } } - jTransaction.put("balance", invoiceItemModel.getBalance()); - jTransaction.put("modifyDate", JSONHelper.getDateFormat(invoiceItemModel.getModifyDate(), "MMM dd, yyyy")); - jTransaction.put("referenceId", invoiceItemModel.getReferenceId()); - jTransaction.put("comments", invoiceItemModel.getComments()); - jTransaction.put("creditCard", invoiceItemModel.getCreditCardNumber()); - jTransaction.put("creditCardTypeId", invoiceItemModel.getCreditCardTypeId()); + jTransaction.put("balance", operationModel.getBalance()); + jTransaction.put("modifyDate", JSONHelper.getDateFormat(operationModel.getModifyDate(), "MMM dd, yyyy")); + jTransaction.put("referenceId", operationModel.getReferenceId()); + jTransaction.put("comments", operationModel.getComments()); + jTransaction.put("creditCard", operationModel.getCreditCardNumber()); + jTransaction.put("creditCardTypeId", operationModel.getCreditCardType()); ja.put(jTransaction); diff --git a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/MessagesEntry.java b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/MessagesEntry.java index ae24c91..97bd7cf 100644 --- a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/MessagesEntry.java +++ b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/MessagesEntry.java @@ -4,23 +4,20 @@ import java.text.Format; import java.text.SimpleDateFormat; import java.util.Date; - -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataGridException; -import net.casper.data.model.CDataRowSet; +import java.util.List; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; +import com.inqwise.opinion.common.IPostmasterContext; import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; import com.inqwise.opinion.infrastructure.systemFramework.JSONHelper; +import com.inqwise.opinion.library.common.MessagesModel; import com.inqwise.opinion.library.common.errorHandle.BaseOperationResult; import com.inqwise.opinion.library.common.errorHandle.ErrorCode; import com.inqwise.opinion.library.common.errorHandle.OperationResult; import com.inqwise.opinion.library.managers.MessagesManager; -import com.inqwise.opinion.opinion.common.IPostmasterContext; -import com.inqwise.opinion.opinion.managers.OpinionsManager; public class MessagesEntry extends Entry { static ApplicationLog logger = ApplicationLog.getLogger(MessagesEntry.class); @@ -29,7 +26,7 @@ protected MessagesEntry(IPostmasterContext context) { super(context); } - public JSONObject getList(JSONObject input) throws JSONException, CDataGridException{ + public JSONObject getList(JSONObject input) throws JSONException{ JSONObject output; Long userId = JSONHelper.optLong(input, "userId"); int top = JSONHelper.optInt(input, "top", 100); @@ -38,28 +35,27 @@ public JSONObject getList(JSONObject input) throws JSONException, CDataGridExcep boolean includeClosed = JSONHelper.optBoolean(input, "includeClosed", true); boolean includeNotActive = JSONHelper.optBoolean(input, "includeUnpublished", true); - CDataCacheContainer messagesDataSet = MessagesManager.getMessages(userId, from, to, includeClosed, includeNotActive, top, true); - CDataRowSet rowSet = messagesDataSet.getAll(); + List list = MessagesManager.getMessages(userId, from, to, includeClosed, includeNotActive, top, true); Format formatter = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss"); JSONArray ja = new JSONArray(); - while(rowSet.next()){ + for(var messagesModel : list){ JSONObject item = new JSONObject(); - item.put("id", rowSet.getLong("message_id")); - item.put("name", rowSet.getString("message_name")); - item.put("content", rowSet.getString("message_content")); - item.put("userId", rowSet.getLong("user_id")); - item.put("userName", rowSet.getString("user_name")); - item.put("modifyDate", formatter.format(rowSet.getDate("modify_date"))); - if(null != rowSet.getObject("close_date")){ - item.put("closeDate", formatter.format(rowSet.getDate("close_date"))); + item.put("id", messagesModel.getMessageId()); + item.put("name", messagesModel.getMessageName()); + item.put("content", messagesModel.getMessageContent()); + item.put("userId", messagesModel.getUserId()); + item.put("userName", messagesModel.getUserName()); + item.put("modifyDate", formatter.format(messagesModel.getModifyDate())); + if(null != messagesModel.getCloseDate()){ + item.put("closeDate", formatter.format(messagesModel.getCloseDate())); } - if(null != rowSet.getObject("activate_date")){ - item.put("publishDate", formatter.format(rowSet.getDate("activate_date"))); + if(null != messagesModel.getActivateDate()){ + item.put("publishDate", formatter.format(messagesModel.getActivateDate())); } - if(null != rowSet.getObject("exclude_date")){ - item.put("excludeDate", formatter.format(rowSet.getDate("exclude_date"))); + if(null != messagesModel.getExcludeDate()){ + item.put("excludeDate", formatter.format(messagesModel.getExcludeDate())); } ja.put(item); diff --git a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/OpinionsEntry.java b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/OpinionsEntry.java index 1837633..e837c7e 100644 --- a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/OpinionsEntry.java +++ b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/OpinionsEntry.java @@ -19,6 +19,7 @@ import com.inqwise.opinion.common.opinions.IOpinion; import com.inqwise.opinion.common.opinions.IOpinionTemplate; import com.inqwise.opinion.common.opinions.ISurvey; +import com.inqwise.opinion.common.opinions.OpinionModel; import com.inqwise.opinion.common.opinions.OpinionType; import com.inqwise.opinion.common.opinions.OpinionsOrderBy; import com.inqwise.opinion.http.HttpClientSession; @@ -37,10 +38,6 @@ import com.inqwise.opinion.library.systemFramework.ApplicationConfiguration; import com.inqwise.opinion.managers.OpinionsManager; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataGridException; -import net.casper.data.model.CDataRowSet; - public class OpinionsEntry extends Entry { static ApplicationLog logger = ApplicationLog.getLogger(OpinionsEntry.class); @@ -49,7 +46,7 @@ protected OpinionsEntry(IPostmasterContext context) { super(context); } - public JSONObject getList(JSONObject input) throws JSONException, CDataGridException{ + public JSONObject getList(JSONObject input) throws JSONException{ JSONObject output; Long accountId = JSONHelper.optLong(input, "accountId"); @@ -62,29 +59,28 @@ public JSONObject getList(JSONObject input) throws JSONException, CDataGridExcep surveysByAccountId = new LinkedHashMap<>(); } - CDataCacheContainer opinionsDataSet = OpinionsManager.getOpinions(accountId, top, from, to, opinionTypeId, IOpinion.DEFAULT_TRANSLATION_ID, OpinionsOrderBy.ModifyDate); - CDataRowSet rowSet = opinionsDataSet.getAll(); + List list = OpinionsManager.getOpinions(accountId, top, from, to, opinionTypeId, IOpinion.DEFAULT_TRANSLATION_ID, OpinionsOrderBy.ModifyDate); Format formatter = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss"); JSONArray ja = new JSONArray(); - while(rowSet.next()){ + for(var opinionModel : list){ JSONObject item = new JSONObject(); - item.put(IOpinion.JsonNames.OPINION_ID, rowSet.getLong(IOpinion.ResultSetNames.OPINION_ID)); - item.put(IOpinion.JsonNames.NAME, rowSet.getString(IOpinion.ResultSetNames.NAME)); - item.put(IOpinion.JsonNames.MODIFY_DATE, formatter.format(rowSet.getDate(IOpinion.ResultSetNames.MODIFY_DATE))); - long cntStarted = rowSet.getLong(ResultSetNames.CNT_STARTED_OPINIONS); - long cntCompleted = rowSet.getLong(ResultSetNames.CNT_FINISHED_OPINIONS); + item.put(IOpinion.JsonNames.OPINION_ID, opinionModel.getId()); + item.put(IOpinion.JsonNames.NAME, opinionModel.getName()); + item.put(IOpinion.JsonNames.MODIFY_DATE, formatter.format(opinionModel.getModifyDate())); + long cntStarted = opinionModel.getCntStartedOpinions(); + long cntCompleted = opinionModel.getCntFinishedOpinions(); item.put(IOpinion.JsonNames.CNT_STARTED_OPINIONS, cntStarted); item.put(IOpinion.JsonNames.CNT_FINISHED_OPINIONS, cntCompleted); item.put(IOpinion.JsonNames.CNT_PARTIAL_OPINIONS, cntStarted - cntCompleted); item.put(IOpinion.JsonNames.COMPLETION_RATE, (cntStarted > 0 ? Math.round((cntCompleted * 1d / cntStarted * 1d) * 100.0) : 0)); - Long actualAccountId = rowSet.getLong(IOpinion.ResultSetNames.ACCOUNT_ID); + Long actualAccountId = opinionModel.getAccountId(); item.put(IOpinion.JsonNames.ACCOUNT_ID, actualAccountId); - item.put(IOpinion.JsonNames.PREVIEW_URL, String.format(ISurvey.PREVIEW_URL_FORMAT, ApplicationConfiguration.Opinion.Collector.getUrl(), opinionTypeId, rowSet.getString(IOpinion.ResultSetNames.GUID))); - if(null != rowSet.getDouble(IOpinion.ResultSetNames.AVG_TIME_TAKEN_SEC)){ - item.put(IOpinion.JsonNames.TIME_TAKEN, JSONHelper.getTimeSpanSec(Math.round(rowSet.getDouble(IOpinion.ResultSetNames.AVG_TIME_TAKEN_SEC)))); + item.put(IOpinion.JsonNames.PREVIEW_URL, String.format(ISurvey.PREVIEW_URL_FORMAT, ApplicationConfiguration.Opinion.Collector.getUrl(), opinionTypeId, opinionModel.getGuid())); + if(null != opinionModel.getAvgTimeTakenSec()){ + item.put(IOpinion.JsonNames.TIME_TAKEN, JSONHelper.getTimeSpanSec(Math.round(opinionModel.getAvgTimeTakenSec()))); } - item.put(IOpinion.JsonNames.COUNT_CONTROLS, rowSet.getInt(IOpinion.ResultSetNames.COUNT_CONTROLS)); + item.put(IOpinion.JsonNames.COUNT_CONTROLS, opinionModel.getCountControls()); ja.put(item); // Collect accountIds with referenced JsonObjects for later use diff --git a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/UsersEntry.java b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/UsersEntry.java index c39956a..e05d49d 100644 --- a/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/UsersEntry.java +++ b/opinion-app-admin/src/main/webapp/com/inqwise/opinion/handlers/UsersEntry.java @@ -17,6 +17,7 @@ import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; import com.inqwise.opinion.infrastructure.systemFramework.JSONHelper; import com.inqwise.opinion.library.common.IProduct; +import com.inqwise.opinion.library.common.UserOperationModel; import com.inqwise.opinion.library.common.accounts.IAccountView; import com.inqwise.opinion.library.common.emails.IPasswordChangedEmailData; import com.inqwise.opinion.library.common.errorHandle.BaseOperationResult; @@ -34,10 +35,6 @@ import com.inqwise.opinion.library.managers.UsersOperationsManager; import com.inqwise.opinion.library.systemFramework.ApplicationConfiguration; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataGridException; -import net.casper.data.model.CDataRowSet; - public class UsersEntry extends Entry { private static final int DEFAULT_EXPIRATION_IN_DAYS = 30; @@ -222,7 +219,7 @@ public boolean isSendNewsLetters() { return output; } - public JSONObject getHistory(JSONObject input) throws JSONException, CDataGridException{ + public JSONObject getHistory(JSONObject input) throws JSONException{ JSONObject output; Long userId = JSONHelper.optLong(input, "userId"); int top = JSONHelper.optInt(input, "top", 100); @@ -236,32 +233,31 @@ public JSONObject getHistory(JSONObject input) throws JSONException, CDataGridEx usersOperationsTypeIds = new Integer[] {usersOperationsTypeId}; } - CDataCacheContainer ds = UsersOperationsManager.getUserOperations(top, userId, usersOperationsTypeIds, fromDate, toDate, productId); - CDataRowSet rowSet = ds.getAll(); + List list = UsersOperationsManager.getUserOperations(top, userId, usersOperationsTypeIds, fromDate, toDate, productId); JSONArray ja = new JSONArray(); Format formatter = new SimpleDateFormat( "MMM dd, yyyy HH:mm:ss"); - while(rowSet.next()){ + for(var userOperationModel : list){ JSONObject item = new JSONObject(); - item.put("id", rowSet.getLong("usop_id")); - item.put("typeId", rowSet.getInt("usop_type_id")); - item.put("typeName", rowSet.getString("usop_type_value")); + item.put("id", userOperationModel.getId()); + item.put("typeId", userOperationModel.getType().getId()); + item.put("typeName", userOperationModel.getType().getName()); if(null == userId){ - item.put("userName", rowSet.getString("user_name")); - item.put("userId", rowSet.getLong("user_id")); + item.put("userName", userOperationModel.getUserName()); + item.put("userId", userOperationModel.getUserId()); } - item.put("clientIp", rowSet.getString("client_ip")); + item.put("clientIp", userOperationModel.getClientIp()); //item.put("geoCountryId", rowSet.getString("geo_country_id")); //item.put("sessionId", rowSet.getString("session_id")); if(null == productId){ - item.put("sourceId", rowSet.getInt("product_id")); + item.put("sourceId", userOperationModel.getProductId()); } //item.put("sourceName", rowSet.getString("product_name")); - item.put("insertDate", formatter.format(rowSet.getDate("insert_date"))); + item.put("insertDate", formatter.format(userOperationModel.getInsertDate())); // item.put("comments", rowSet.getDate("comments")); //item.put("referenceId", rowSet.getLong("reference_id")); //item.put("backofficeUserId", rowSet.getLong("backoffice_user_id")); - item.put("countryName", rowSet.getString("country_name")); + item.put("countryName", userOperationModel.getCountryName()); ja.put(item); } diff --git a/opinion-automation-app/src/main/java/com/inqwise/opinion/automation/workflows/ChargeStatusChangedEventWorkflow.java b/opinion-automation-app/src/main/java/com/inqwise/opinion/automation/workflows/ChargeStatusChangedEventWorkflow.java index 446e265..49ab971 100644 --- a/opinion-automation-app/src/main/java/com/inqwise/opinion/automation/workflows/ChargeStatusChangedEventWorkflow.java +++ b/opinion-automation-app/src/main/java/com/inqwise/opinion/automation/workflows/ChargeStatusChangedEventWorkflow.java @@ -82,18 +82,18 @@ public static AutomationOperationResult> identifyActions(Char public static void identifyPaidChargeActions(long chargeId, int sourceId, List list) throws ActionException { List chargeList = ChargesManager.getPostPayActions(chargeId); for(var chargeModel : chargeList){ - IEventAction action = identifyAction(rowSet, sourceId); + IEventAction action = identifyAction(chargeModel, sourceId); list.add(action); } } - private static IEventAction identifyAction(final CDataRowSet rowSet,final int sourceId) throws ActionException { + private static IEventAction identifyAction(final ChargeModel chargeModel,final int sourceId) throws ActionException { - final long chargeId = rowSet.getLong("charge_id"); - String postPayAction = rowSet.getString("post_pay_action"); - final Integer referenceTypeId = rowSet.getInt("reference_type_id"); - final Long referenceId = rowSet.getLong("reference_id"); - String strPostPayActionData = rowSet.getString("post_pay_action_data"); + final long chargeId = chargeModel.getId(); + String postPayAction = chargeModel.getPostPayAction(); + final Integer referenceTypeId = chargeModel.getReferenceType().getValue(); + final Long referenceId = chargeModel.getReferenceId(); + String strPostPayActionData = chargeModel.getPostPayActionData(); JSONObject postPayActionData = null; try { postPayActionData = (null == strPostPayActionData ? null : new JSONObject(strPostPayActionData)); diff --git a/opinion-automation-app/src/main/java/com/inqwise/opinion/automation/workflows/PaymentEventWorkflow.java b/opinion-automation-app/src/main/java/com/inqwise/opinion/automation/workflows/PaymentEventWorkflow.java index 4a27fad..9310f06 100644 --- a/opinion-automation-app/src/main/java/com/inqwise/opinion/automation/workflows/PaymentEventWorkflow.java +++ b/opinion-automation-app/src/main/java/com/inqwise/opinion/automation/workflows/PaymentEventWorkflow.java @@ -21,8 +21,6 @@ import com.inqwise.opinion.library.common.errorHandle.OperationResult; import com.inqwise.opinion.library.managers.ProductsManager; -import net.casper.data.model.CDataGridException; - public class PaymentEventWorkflow extends Workflow { ApplicationLog logger = ApplicationLog.getLogger(PaymentEventWorkflow.class); @@ -41,7 +39,7 @@ public AutomationBaseOperationResult processWorkflow(PaymentEventArgs eventArgs) return AutomationBaseOperationResult.Ok; } - private void processActivateActions(List chargesIds, int sourceId) throws CDataGridException, ActionException { + private void processActivateActions(List chargesIds, int sourceId) throws ActionException { if(null != chargesIds) { List actions = new ArrayList(); for (long chargeId : chargesIds) { diff --git a/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/AccountsEntry.java b/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/AccountsEntry.java index eb4cd57..7de9bd2 100644 --- a/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/AccountsEntry.java +++ b/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/AccountsEntry.java @@ -23,6 +23,8 @@ import com.inqwise.opinion.infrastructure.systemFramework.GeoIpManager; import com.inqwise.opinion.infrastructure.systemFramework.JSONHelper; import com.inqwise.opinion.library.common.IProduct; +import com.inqwise.opinion.library.common.InvoiceModel; +import com.inqwise.opinion.library.common.accounts.AccountOperationModel; import com.inqwise.opinion.library.common.accounts.AccountOperationsReferenceType; import com.inqwise.opinion.library.common.accounts.AccountsOperationsType; import com.inqwise.opinion.library.common.accounts.IAccount; @@ -223,33 +225,29 @@ public JSONObject getTransactions(JSONObject input) throws IOException, JSONExce } if (null == result) { - var rowSetArr = AccountsOperationsManager - .getAccountOperations(top, account.getId(), - accountOperationTypeIds, referenceId, - referenceTypeId, fromDate, toDate, true); + List accountOperationList = AccountsOperationsManager.getAccountOperations(top, account.getId(),accountOperationTypeIds, referenceId,referenceTypeId, fromDate, toDate, true); JSONArray ja = new JSONArray(); - JSONArray invoicesRowSetArr = null; + List invoiceList = null; TreeMap groupsMap = null; BigDecimal groupDebit = null; BigDecimal groupCredit = null; if (null != groupBy) { groupDebit = new BigDecimal(0.0); groupCredit = new BigDecimal(0.0); - invoicesRowSetArr = InvoicesManager.getInvoices(top, account.getId(), - InvoiceStatus.Open.getValue(), false); + invoiceList = InvoicesManager.getInvoices(top, account.getId(),InvoiceStatus.Open.getValue(), false); groupsMap = new TreeMap<>(); } JSONObject lastFundJo = null; BigDecimal totalDebit = new BigDecimal(0.0); BigDecimal totalCredit = new BigDecimal(0.0); - for (int i = 0; i < rowSetArr.length(); i++) { - var json = ja.getJSONObject(i); + for (var operationModel : accountOperationList){ JSONObject jTransaction = new JSONObject(); - jTransaction.put("transactionId", json.getLong("accop_id")); - Integer accountOperationTypeId = json.getInt("accop_type_id"); - jTransaction.put("typeId", accountOperationTypeId); - Double amount = json.getDouble("amount"); + jTransaction.put("transactionId", operationModel.getId()); + if(null != operationModel.getType()) { + jTransaction.put("typeId", operationModel.getType().getValue()); + } + Double amount = operationModel.getAmount(); if (null != amount) { jTransaction.put("amount", amount); if (amount < 0) { @@ -269,16 +267,18 @@ public JSONObject getTransactions(JSONObject input) throws IOException, JSONExce jTransaction.put("debit", (amount < 0 ? -1.0 * amount : 0)); jTransaction.put("credit", (amount > 0 ? amount : 0)); } - Double balance = json.getDouble("balance"); + Double balance = operationModel.getBalance(); jTransaction.put("balance", balance); - Date modifyDate = account.addDateOffset((Date)json.get("modify_date")); + Date modifyDate = account.addDateOffset(operationModel.getModifyDate()); jTransaction.put("modifyDate", JSONHelper.getDateFormat(modifyDate, "MMM dd, yyyy")); - Long accountOperationReferenceId = json.getLong("reference_id"); + Long accountOperationReferenceId = operationModel.getReferenceId(); jTransaction.put("referenceId", accountOperationReferenceId); - jTransaction.put("comments", json.getString("comments")); - jTransaction.put("creditCard",json.getString("credit_card_number")); - jTransaction.put("creditCardTypeId",json.getInt("credit_card_type_id")); - jTransaction.put("chargeDescription",json.getString("charge_description")); + jTransaction.put("comments", operationModel.getComments()); + jTransaction.put("creditCard",operationModel.getCreditCardNumber()); + if (null != operationModel.getCreditCardType()) { + jTransaction.put("creditCardTypeId", operationModel.getCreditCardType().getValue()); + } + jTransaction.put("chargeDescription",operationModel.getChargeDescription()); if (null == groupsMap) { ja.put(jTransaction); @@ -314,20 +314,18 @@ public JSONObject getTransactions(JSONObject input) throws IOException, JSONExce } if (null == lastFundJo - && json.getInt("accop_type_id") == AccountsOperationsType.Fund.getValue()) { + && AccountsOperationsType.Fund == operationModel.getType()) { lastFundJo = jTransaction; } } if(null != groupBy){ - for (int i = 0; i < invoicesRowSetArr.length(); i++) { - var json = invoicesRowSetArr.getJSONObject(i); + for (var invoiceModel : invoiceList) { JSONObject jInvoice = new JSONObject(); - jInvoice.put("invoiceId",json.getString("invoice_id")); + jInvoice.put("invoiceId",invoiceModel.getInvoiceId()); Date groupDate = DateConverter - .shiftToTheEndOfTheMonth(account.addDateOffset((Date)json - .get("invoice_to_date"))); + .shiftToTheEndOfTheMonth(account.addDateOffset((Date)invoiceModel.getInvoiceToDate())); JSONObject jGroup = groupsMap.get(groupDate); if (null == jGroup) { jGroup = createJGroup(groupDate); diff --git a/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/InvoicesEntry.java b/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/InvoicesEntry.java index 8adcb37..c742b52 100644 --- a/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/InvoicesEntry.java +++ b/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/InvoicesEntry.java @@ -15,9 +15,11 @@ import com.inqwise.opinion.infrastructure.systemFramework.JSONHelper; import com.inqwise.opinion.library.common.InvoiceItemModel; import com.inqwise.opinion.library.common.InvoiceModel; +import com.inqwise.opinion.library.common.accounts.AccountOperationModel; import com.inqwise.opinion.library.common.accounts.IAccount; import com.inqwise.opinion.library.common.accounts.IAccountBusinessDetails; import com.inqwise.opinion.library.common.errorHandle.OperationResult; +import com.inqwise.opinion.library.common.pay.ChargeModel; import com.inqwise.opinion.library.common.pay.IInvoice; import com.inqwise.opinion.library.common.pay.InvoiceItemType; import com.inqwise.opinion.library.common.pay.InvoiceStatus; @@ -84,7 +86,7 @@ public JSONObject getInvoiceDetails(JSONObject input) throws IOException, JSONEx output.put("countryName", JSONHelper.getNullable(invoice.getCompanyName())); output.put("stateName", JSONHelper.getNullable(invoice.getStateName())); - Map> invoiceItems = InvoicesManager.getInvoiceItems(invoiceId); + var invoiceItems = InvoicesManager.getInvoiceItems(invoiceId); output.put("charges", getCharges(invoiceItems, account)); output.put("transactions", getTransactions(invoiceItems, invoice.getTotalCredit(), invoice.getTotalDebit(), account)); } else { @@ -95,10 +97,10 @@ public JSONObject getInvoiceDetails(JSONObject input) throws IOException, JSONEx } private JSONObject getTransactions( - Map> invoiceItems, Double totalCredit, Double totalDebit, IAccount account) throws JSONException { + Map> invoiceItems, Double totalCredit, Double totalDebit, IAccount account) throws JSONException { JSONArray ja; - List transactionsDs = invoiceItems.get(InvoiceItemType.AccountOperation); + var transactionsDs = invoiceItems.get(InvoiceItemType.AccountOperation); if(null != transactionsDs){ ja = getTransactionsList(transactionsDs, account); } else { @@ -114,21 +116,22 @@ private JSONObject getTransactions( } private JSONObject getCharges( - Map> invoiceItems, IAccount account) throws JSONException { + Map> invoiceItems, IAccount account) throws JSONException { JSONObject output = new JSONObject(); JSONArray ja = new JSONArray(); - List list = invoiceItems.get(InvoiceItemType.Charge); + var list = invoiceItems.get(InvoiceItemType.Charge); if(null != list){ for(var invoiceItemModel : list){ - Long chargeId = invoiceItemModel.getChargeId(); - BigDecimal amount = BigDecimal.valueOf(invoiceItemModel.getAmount()); - int chargeStatusId = invoiceItemModel.getChargeStatusId(); + var chargeModel = (ChargeModel)invoiceItemModel; + Long chargeId = chargeModel.getId(); + BigDecimal amount = BigDecimal.valueOf(chargeModel.getAmount()); + JSONObject jCharge = new JSONObject(); jCharge.put("chargeId", chargeId); - jCharge.put("statusId", chargeStatusId); - jCharge.put("name", invoiceItemModel.getChargeName()); - jCharge.put("description", invoiceItemModel.getChargeDescription()); - jCharge.put("chargeDate", JSONHelper.getDateFormat(account.addDateOffset(invoiceItemModel.getInsertDate()), "MMM dd, yyyy")); + jCharge.put("statusId", chargeModel.getStatus().getValue()); + jCharge.put("name", chargeModel.getName()); + jCharge.put("description", chargeModel.getDescription()); + jCharge.put("chargeDate", JSONHelper.getDateFormat(account.addDateOffset(chargeModel.getCreateDate()), "MMM dd, yyyy")); jCharge.put("amount", amount); ja.put(jCharge); } @@ -137,15 +140,16 @@ private JSONObject getCharges( return output; } - public JSONArray getTransactionsList(List list, IAccount account) + public JSONArray getTransactionsList(List list, IAccount account) throws JSONException { JSONArray ja = new JSONArray(); for(var invoiceItemModel : list){ + var operationModel = (AccountOperationModel)invoiceItemModel; JSONObject jTransaction = new JSONObject(); - jTransaction.put("transactionId", invoiceItemModel.getAccopId()); - jTransaction.put("typeId", invoiceItemModel.getAccopTypeId()); - Double amount = invoiceItemModel.getAmount(); + jTransaction.put("transactionId", operationModel.getId()); + jTransaction.put("typeId", operationModel.getType().getValue()); + Double amount = operationModel.getAmount(); if(null != amount){ jTransaction.put("amount", amount); if(amount < 0) @@ -163,12 +167,12 @@ public JSONArray getTransactionsList(List list, IAccount accou } } - jTransaction.put("balance", invoiceItemModel.getBalance()); - jTransaction.put("modifyDate", JSONHelper.getDateFormat(account.addDateOffset(invoiceItemModel.getModifyDate()), "MMM dd, yyyy")); - jTransaction.put("referenceId", invoiceItemModel.getReferenceId()); - jTransaction.put("comments", invoiceItemModel.getComments()); - jTransaction.put("creditCard", invoiceItemModel.getCreditCardNumber()); - jTransaction.put("creditCardTypeId", invoiceItemModel.getCreditCardTypeId()); + jTransaction.put("balance", operationModel.getBalance()); + jTransaction.put("modifyDate", JSONHelper.getDateFormat(account.addDateOffset(operationModel.getModifyDate()), "MMM dd, yyyy")); + jTransaction.put("referenceId", operationModel.getReferenceId()); + jTransaction.put("comments", operationModel.getComments()); + jTransaction.put("creditCard", operationModel.getCreditCardNumber()); + jTransaction.put("creditCardTypeId", operationModel.getCreditCardType().getValue()); ja.put(jTransaction); diff --git a/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/OpinionsEntry.java b/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/OpinionsEntry.java index a8af98d..356f9a2 100644 --- a/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/OpinionsEntry.java +++ b/opinion-facade/src/main/java/com/inqwise/opinion/facade/front/OpinionsEntry.java @@ -94,9 +94,9 @@ protected JSONObject getMany(JSONObject input, Integer opinionTypeId) for(var opinionModel : list){ JSONObject item = new JSONObject(); - item.put(IOpinion.JsonNames.OPINION_ID, opinionModel.getOpinionId()); + item.put(IOpinion.JsonNames.OPINION_ID, opinionModel.getId()); if(null == opinionTypeId){ - item.put(IOpinion.JsonNames.OPINION_TYPE_ID, opinionModel.getOpinionTypeId()); + item.put(IOpinion.JsonNames.OPINION_TYPE_ID, opinionModel.getType()); } item.put(IOpinion.JsonNames.NAME, opinionModel.getName()); item.put(IOpinion.JsonNames.MODIFY_DATE, formatter.format(opinionModel.getModifyDate())); @@ -106,7 +106,7 @@ protected JSONObject getMany(JSONObject input, Integer opinionTypeId) item.put(IOpinion.JsonNames.CNT_FINISHED_OPINIONS, cntCompleted); item.put(IOpinion.JsonNames.CNT_PARTIAL_OPINIONS, cntStarted - cntCompleted); item.put(IOpinion.JsonNames.COMPLETION_RATE, (cntStarted > 0 ? Math.round((cntCompleted * 1d / cntStarted * 1d) * 100.0) : 0)); - item.put(IOpinion.JsonNames.PREVIEW_URL, String.format(OpinionEntity.PREVIEW_URL_FORMAT, ApplicationConfiguration.Opinion.Collector.getUrl(), opinionModel.getOpinionTypeId(), opinionModel.getGuid())); + item.put(IOpinion.JsonNames.PREVIEW_URL, String.format(OpinionEntity.PREVIEW_URL_FORMAT, ApplicationConfiguration.Opinion.Collector.getUrl(), opinionModel.getType().getValue(), opinionModel.getGuid())); if(null != opinionModel.getLastStartDate()){ item.put(IOpinion.JsonNames.LAST_RESPONSE_DATE, formatter.format(opinionModel.getLastStartDate())); } diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/AccountOperationModel.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/AccountOperationModel.java deleted file mode 100644 index 4264c26..0000000 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/AccountOperationModel.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.inqwise.opinion.library.common; - -public class AccountOperationModel { - - private AccountOperationModel(Builder builder) { - } - - public static Builder builder() { - return new Builder(); - } - - public static Builder builderFrom(AccountOperationModel accountOperationModel) { - return new Builder(accountOperationModel); - } - - public static final class Builder { - private Builder() { - } - - private Builder(AccountOperationModel accountOperationModel) { - } - - public AccountOperationModel build() { - return new AccountOperationModel(this); - } - } - -} diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/AccountOperationRepositoryParser.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/AccountOperationRepositoryParser.java deleted file mode 100644 index dd7cdd6..0000000 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/AccountOperationRepositoryParser.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.inqwise.opinion.library.common; - -import org.json.JSONObject; - -public class AccountOperationRepositoryParser { - public AccountOperationModel parse(JSONObject json) { - return AccountOperationModel.builder() - .build(); - } -} \ No newline at end of file diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceItemModel.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceItemModel.java index a3b53f7..47fb081 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceItemModel.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceItemModel.java @@ -1,288 +1,7 @@ package com.inqwise.opinion.library.common; -import java.util.Date; - import org.json.JSONObject; -import com.google.common.base.MoreObjects; - -public class InvoiceItemModel { - - private Long chargeId; - private Double amount; - private Integer chargeStatusId; - private String chargeName; - private String chargeDescription; - private Date insertDate; - private Long accopId; - private Integer accopTypeId; - private Double balance; - private Date modifyDate; - private Long referenceId; - private String comments; - private String creditCardNumber; - private Integer creditCardTypeId; - - private InvoiceItemModel(Builder builder) { - this.chargeId = builder.chargeId; - this.amount = builder.amount; - this.chargeStatusId = builder.chargeStatusId; - this.chargeName = builder.chargeName; - this.chargeDescription = builder.chargeDescription; - this.insertDate = builder.insertDate; - this.accopId = builder.accopId; - this.accopTypeId = builder.accopTypeId; - this.balance = builder.balance; - this.modifyDate = builder.modifyDate; - this.referenceId = builder.referenceId; - this.comments = builder.comments; - this.creditCardNumber = builder.creditCardNumber; - this.creditCardTypeId = builder.creditCardTypeId; - } - - public static final class Keys{ - - public static final String CHARGE_ID = "charge_id"; - public static final String AMOUNT = "amount"; - public static final String CHARGE_STATUS_ID = "charge_status_id"; - public static final String CHARGE_NAME = "charge_name"; - public static final String CHARGE_DESCRIPTION = "charge_description"; - public static final String INSERT_DATE = "insert_date"; - public static final String ACCOP_ID = "accop_id"; - public static final String ACCOPP_TYPE_ID = "accop_type_id"; - public static final String BALANCE = "balance"; - public static final String MODIFY_DATE = "modify_date"; - public static final String REFERENCE_ID = "reference_id"; - public static final String COMMENTS = "comments"; - public static final String CREDIT_CARD_NUMBER = "credit_card_number"; - public static final String CREDIT_CARD_TYPE_ID = "credit_card_type_id"; - } - - public InvoiceItemModel(JSONObject json) { - chargeId = json.optLongObject(Keys.CHARGE_ID); - amount = json.optDoubleObject(Keys.AMOUNT); - chargeStatusId = json.optIntegerObject(Keys.CHARGE_STATUS_ID); - chargeName = json.optString(Keys.CHARGE_NAME); - chargeDescription = json.optString(Keys.CHARGE_DESCRIPTION); - insertDate = (Date) json.opt(Keys.INSERT_DATE); - accopId = json.optLongObject(Keys.ACCOP_ID); - accopTypeId = json.optIntegerObject(Keys.ACCOPP_TYPE_ID); - balance = json.optDoubleObject(Keys.BALANCE); - modifyDate = (Date) json.opt(Keys.MODIFY_DATE); - referenceId = json.optLongObject(Keys.REFERENCE_ID); - comments = json.optString(Keys.COMMENTS); - creditCardNumber = json.optString(Keys.CREDIT_CARD_NUMBER); - creditCardTypeId = json.optIntegerObject(Keys.CREDIT_CARD_TYPE_ID); - } - - public Long getChargeId() { - return chargeId; - } - - public Double getAmount() { - return amount; - } - - public Integer getChargeStatusId() { - return chargeStatusId; - } - - public String getChargeName() { - return chargeName; - } - - public String getChargeDescription() { - return chargeDescription; - } - - public Date getInsertDate() { - return insertDate; - } - - public Long getAccopId() { - return accopId; - } - - public Integer getAccopTypeId() { - return accopTypeId; - } - - - public Double getBalance() { - return balance; - } - - - public Date getModifyDate() { - return modifyDate; - } - - - public Long getReferenceId() { - return referenceId; - } - - - public String getComments() { - return comments; - } - - - public String getCreditCardNumber() { - return creditCardNumber; - } - - - public Integer getCreditCardTypeId() { - return creditCardTypeId; - } - - public JSONObject toJson() { - var json = new JSONObject(); - json.put(Keys.CHARGE_ID, chargeId); - json.put(Keys.AMOUNT, amount); - json.put(Keys.CHARGE_STATUS_ID, chargeStatusId); - json.put(Keys.CHARGE_NAME, chargeName); - json.put(Keys.CHARGE_DESCRIPTION, chargeDescription); - json.put(Keys.INSERT_DATE, insertDate); - json.put(Keys.ACCOP_ID, accopId); - json.put(Keys.ACCOPP_TYPE_ID, accopTypeId); - json.put(Keys.BALANCE, balance); - json.put(Keys.MODIFY_DATE, modifyDate); - json.put(Keys.REFERENCE_ID, referenceId); - json.put(Keys.COMMENTS, comments); - json.put(Keys.CREDIT_CARD_NUMBER, creditCardNumber); - json.put(Keys.CREDIT_CARD_TYPE_ID, creditCardTypeId); - return json; - } - - public static Builder builder() { - return new Builder(); - } - - public static Builder builderFrom(InvoiceItemModel invoiceItemModel) { - return new Builder(invoiceItemModel); - } - - public static final class Builder { - private Long chargeId; - private Double amount; - private Integer chargeStatusId; - private String chargeName; - private String chargeDescription; - private Date insertDate; - private Long accopId; - private Integer accopTypeId; - private Double balance; - private Date modifyDate; - private Long referenceId; - private String comments; - private String creditCardNumber; - private Integer creditCardTypeId; - - private Builder() { - } - - private Builder(InvoiceItemModel invoiceItemModel) { - this.chargeId = invoiceItemModel.chargeId; - this.amount = invoiceItemModel.amount; - this.chargeStatusId = invoiceItemModel.chargeStatusId; - this.chargeName = invoiceItemModel.chargeName; - this.chargeDescription = invoiceItemModel.chargeDescription; - this.insertDate = invoiceItemModel.insertDate; - this.accopId = invoiceItemModel.accopId; - this.accopTypeId = invoiceItemModel.accopTypeId; - this.balance = invoiceItemModel.balance; - this.modifyDate = invoiceItemModel.modifyDate; - this.referenceId = invoiceItemModel.referenceId; - this.comments = invoiceItemModel.comments; - this.creditCardNumber = invoiceItemModel.creditCardNumber; - this.creditCardTypeId = invoiceItemModel.creditCardTypeId; - } - - public Builder withChargeId(Long chargeId) { - this.chargeId = chargeId; - return this; - } - - public Builder withAmount(Double amount) { - this.amount = amount; - return this; - } - - public Builder withChargeStatusId(Integer chargeStatusId) { - this.chargeStatusId = chargeStatusId; - return this; - } - - public Builder withChargeName(String chargeName) { - this.chargeName = chargeName; - return this; - } - - public Builder withChargeDescription(String chargeDescription) { - this.chargeDescription = chargeDescription; - return this; - } - - public Builder withInsertDate(Date insertDate) { - this.insertDate = insertDate; - return this; - } - - public Builder withAccopId(Long accopId) { - this.accopId = accopId; - return this; - } - - public Builder withAccopTypeId(Integer accopTypeId) { - this.accopTypeId = accopTypeId; - return this; - } - - public Builder withBalance(Double balance) { - this.balance = balance; - return this; - } - - public Builder withModifyDate(Date modifyDate) { - this.modifyDate = modifyDate; - return this; - } - - public Builder withReferenceId(Long referenceId) { - this.referenceId = referenceId; - return this; - } - - public Builder withComments(String comments) { - this.comments = comments; - return this; - } - - public Builder withCreditCardNumber(String creditCardNumber) { - this.creditCardNumber = creditCardNumber; - return this; - } - - public Builder withCreditCardTypeId(Integer creditCardTypeId) { - this.creditCardTypeId = creditCardTypeId; - return this; - } - - public InvoiceItemModel build() { - return new InvoiceItemModel(this); - } - } - - @Override - public String toString() { - return MoreObjects.toStringHelper(this).add("chargeId", chargeId).add("amount", amount) - .add("chargeStatusId", chargeStatusId).add("chargeName", chargeName) - .add("chargeDescription", chargeDescription).add("insertDate", insertDate).add("accopId", accopId) - .add("accopTypeId", accopTypeId).add("balance", balance).add("modifyDate", modifyDate) - .add("referenceId", referenceId).add("comments", comments).add("creditCardNumber", creditCardNumber) - .add("creditCardTypeId", creditCardTypeId).toString(); - } - +public interface InvoiceItemModel { + JSONObject toJson(); } diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceItemRepositoryParser.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceItemRepositoryParser.java index 990ec60..7df8012 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceItemRepositoryParser.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceItemRepositoryParser.java @@ -4,24 +4,24 @@ import org.json.JSONObject; -public class InvoiceItemRepositoryParser { - public InvoiceItemModel parse(JSONObject json) { - return InvoiceItemModel.builder() - .withChargeId(json.optLongObject("charge_id")) - .withAmount(json.optDoubleObject("amount")) - .withChargeStatusId(json.optIntegerObject("charge_status_id")) - .withChargeName(json.optString("charge_name")) - .withChargeDescription(json.optString("charge_description")) - .withInsertDate((Date) json.opt("insert_date")) - .withAccopId(json.optLongObject("accop_id")) - .withAccopTypeId(json.optIntegerObject("accop_type_id")) - .withBalance(json.optDoubleObject("balance")) - .withModifyDate((Date) json.opt("modify_date")) - .withReferenceId(json.optLongObject("reference_id")) - .withComments(json.optString("comments")) - .withCreditCardNumber(json.optString("credit_card_number")) - .withCreditCardTypeId(json.optIntegerObject("credit_card_type_id")) - .build(); - - } -} \ No newline at end of file +//public class InvoiceItemRepositoryParser { +// public InvoiceItemModel parse(JSONObject json) { +// return InvoiceItemModel.builder() +// .withChargeId(json.optLongObject("charge_id")) +// .withAmount(json.optDoubleObject("amount")) +// .withChargeStatusId(json.optIntegerObject("charge_status_id")) +// .withChargeName(json.optString("charge_name")) +// .withChargeDescription(json.optString("charge_description")) +// .withInsertDate((Date) json.opt("insert_date")) +// .withAccopId(json.optLongObject("accop_id")) +// .withAccopTypeId(json.optIntegerObject("accop_type_id")) +// .withBalance(json.optDoubleObject("balance")) +// .withModifyDate((Date) json.opt("modify_date")) +// .withReferenceId(json.optLongObject("reference_id")) +// .withComments(json.optString("comments")) +// .withCreditCardNumber(json.optString("credit_card_number")) +// .withCreditCardTypeId(json.optIntegerObject("credit_card_type_id")) +// .build(); +// +// } +//} \ No newline at end of file diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceModel.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceModel.java index af1681b..010776f 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceModel.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoiceModel.java @@ -18,6 +18,14 @@ public class InvoiceModel { private Double amount; private Long accountId; private String accountName; + private Long accopId; + private Integer accopTypeId; + private Double balance; + private Long referenceId; + private String comments; + private String creditCardNumber; + private Integer creditCardTypeId; + private String chargeDescription; private InvoiceModel(Builder builder) { this.invoiceId = builder.invoiceId; @@ -30,6 +38,14 @@ private InvoiceModel(Builder builder) { this.amount = builder.amount; this.accountId = builder.accountId; this.accountName = builder.accountName; + this.accopId = builder.accopId; + this.accopTypeId = builder.accopTypeId; + this.balance = builder.balance; + this.referenceId = builder.referenceId; + this.comments = builder.comments; + this.creditCardNumber = builder.creditCardNumber; + this.creditCardTypeId = builder.creditCardTypeId; + this.chargeDescription = builder.chargeDescription; } public static final class Keys{ @@ -44,6 +60,14 @@ public static final class Keys{ public static final String AMOUNT = "amount"; public static final String ACCOUNT_ID = "account_id"; public static final String ACCOUNT_NAME = "account_name"; + public static final String ACCOP_ID = "accop_id"; + public static final String ACCOP_TYPE_ID = "accop_type_id"; + public static final String BALANCE = "balance"; + public static final String REFERENCE_ID = "reference_id"; + public static final String COMMENTS = "comments"; + public static final String CREDIT_CARD_NUMBER = "credit_card_number"; + public static final String CREDIT_CARD_TYPE_ID = "credit_card_type_id"; + public static final String CHARGE_DESCRIPTION = "charge_description"; } public InvoiceModel(JSONObject json) { @@ -57,6 +81,14 @@ public InvoiceModel(JSONObject json) { amount = json.optDoubleObject(Keys.AMOUNT); accountId = json.optLongObject(Keys.ACCOUNT_ID); accountName = json.optString(Keys.ACCOUNT_NAME); + accopId = json.optLongObject(Keys.ACCOP_ID); + accopTypeId = json.optIntegerObject(Keys.ACCOP_TYPE_ID); + balance = json.optDoubleObject(Keys.BALANCE); + referenceId = json.optLongObject(Keys.REFERENCE_ID); + comments = json.optString(Keys.COMMENTS); + creditCardNumber = json.optString(Keys.CREDIT_CARD_NUMBER); + creditCardTypeId = json.optIntegerObject(Keys.CREDIT_CARD_TYPE_ID); + chargeDescription = json.optString(Keys.CHARGE_DESCRIPTION); } public Long getInvoiceId() { @@ -99,6 +131,38 @@ public String getAccountName() { return accountName; } + public Long getAccopId() { + return accopId; + } + + public Integer getAcoopTypeId() { + return accopTypeId; + } + + public Double getBalance() { + return balance; + } + + public Long getReferenceId() { + return referenceId; + } + + public String getComments() { + return comments; + } + + public String getCreditCardNumber() { + return creditCardNumber; + } + + public Integer getCreditCardTypeId() { + return creditCardTypeId; + } + + public String getChargeDescription() { + return chargeDescription; + } + public JSONObject toJson() { var json = new JSONObject(); json.put(Keys.INVOICE_ID, invoiceId); @@ -111,6 +175,14 @@ public JSONObject toJson() { json.put(Keys.AMOUNT, amount); json.put(Keys.ACCOUNT_ID, accountId); json.put(Keys.ACCOUNT_NAME, accountName); + json.put(Keys.ACCOP_ID, accopId); + json.put(Keys.ACCOP_TYPE_ID, accopTypeId); + json.put(Keys.BALANCE, balance); + json.put(Keys.REFERENCE_ID, referenceId); + json.put(Keys.COMMENTS, comments); + json.put(Keys.CREDIT_CARD_NUMBER, creditCardNumber); + json.put(Keys.CREDIT_CARD_TYPE_ID, creditCardTypeId); + json.put(Keys.CHARGE_DESCRIPTION, chargeDescription); return json; } @@ -133,6 +205,14 @@ public static final class Builder { private Double amount; private Long accountId; private String accountName; + private Long accopId; + private Integer accopTypeId; + private Double balance; + private Long referenceId; + private String comments; + private String creditCardNumber; + private Integer creditCardTypeId; + private String chargeDescription; private Builder() { } @@ -148,6 +228,14 @@ private Builder(InvoiceModel invoiceModel) { this.amount = invoiceModel.amount; this.accountId = invoiceModel.accountId; this.accountName = invoiceModel.accountName; + this.accopId = invoiceModel.accopId; + this.accopTypeId = invoiceModel.accopTypeId; + this.balance = invoiceModel.balance; + this.referenceId = invoiceModel.referenceId; + this.comments = invoiceModel.comments; + this.creditCardNumber = invoiceModel.creditCardNumber; + this.creditCardTypeId = invoiceModel.creditCardTypeId; + this.chargeDescription = invoiceModel.chargeDescription; } public Builder withInvoiceId(Long invoiceId) { @@ -200,6 +288,46 @@ public Builder withAccountName(String accountName) { return this; } + public Builder withAccopId(Long accopId) { + this.accopId = accopId; + return this; + } + + public Builder withAccopTypeId(Integer accopTypeId) { + this.accopTypeId = accopTypeId; + return this; + } + + public Builder withBalance(Double balance) { + this.balance = balance; + return this; + } + + public Builder withReferenceId(Long referenceId) { + this.referenceId = referenceId; + return this; + } + + public Builder withComments(String comments) { + this.comments = comments; + return this; + } + + public Builder withCreditCardNumber(String creditCardNumber) { + this.creditCardNumber = creditCardNumber; + return this; + } + + public Builder withCreditCardTypeId(Integer creditCardTypeId) { + this.creditCardTypeId = creditCardTypeId; + return this; + } + + public Builder withChargeDescription(String chargeDescription) { + this.chargeDescription = chargeDescription; + return this; + } + public InvoiceModel build() { return new InvoiceModel(this); } @@ -210,7 +338,10 @@ public String toString() { return MoreObjects.toStringHelper(this).add("invoiceId", invoiceId).add("modifyDate", modifyDate) .add("invoiceStatusId", invoiceStatusId).add("invoiceDate", invoiceDate).add("insertDate", insertDate) .add("invoiceFromDate", invoiceFromDate).add("invoiceToDate", invoiceToDate).add("amount", amount) - .add("accountId", accountId).add("accountName", accountName).toString(); + .add("accountId", accountId).add("accountName", accountName).add("accopId", accopId) + .add("accopTypeId", accopTypeId).add("balance", balance).add("referenceId", referenceId) + .add("comments", comments).add("creditCardNumber", creditCardNumber) + .add("creditCardTypeId", creditCardTypeId).add("chargeDescription", chargeDescription).toString(); } } diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoicesRepositoryParser.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoicesRepositoryParser.java index d9e0905..720a30e 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoicesRepositoryParser.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/InvoicesRepositoryParser.java @@ -18,6 +18,14 @@ public InvoiceModel parse(JSONObject json) { .withAmount(json.optDoubleObject("amount")) .withAccountId(json.optLongObject("for_account_id")) .withAccountName(json.optString("account_name")) + .withAccopId(json.optLongObject("accop_id")) + .withAccopTypeId(json.optIntegerObject("accop_type_id")) + .withBalance(json.optDoubleObject("balance")) + .withReferenceId(json.optLongObject("reference_id")) + .withComments(json.optString("comments")) + .withCreditCardNumber(json.optString("credit_card_number")) + .withCreditCardTypeId(json.optIntegerObject("credit_card_type_id")) + .withChargeDescription(json.optString("charge_description")) .build(); } } \ No newline at end of file diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/MessagesModel.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/MessagesModel.java index 5c4987e..7cf45fe 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/MessagesModel.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/MessagesModel.java @@ -12,20 +12,35 @@ public class MessagesModel { private String messageName; private String messageContent; private Date activateDate; + private Long userId; + private String userName; + private Date modifyDate; + private Date closeDate; + private Date excludeDate; private MessagesModel(Builder builder) { this.messageId = builder.messageId; this.messageName = builder.messageName; this.messageContent = builder.messageContent; this.activateDate = builder.activateDate; + this.userId = builder.userId; + this.userName = builder.userName; + this.modifyDate = builder.modifyDate; + this.closeDate = builder.closeDate; + this.excludeDate = builder.excludeDate; } - + public static final class Keys{ public static final String MESSAGE_ID = "message_id"; public static final String MESSAGE_NAME = "message_name"; public static final String MESSAGE_CONTENT = "message_content"; public static final String ACTIVATE_DATE = "activate_date"; + public static final String USER_ID = "user_id"; + public static final String USER_NAME = "user_name"; + public static final String MODIFY_DATE = "modify_date"; + public static final String CLOSE_DATE = "close_date"; + public static final String EXCLUDE_DATE = "exclude_date"; } @@ -33,7 +48,30 @@ public MessagesModel(JSONObject json) { messageId = json.optLongObject(Keys.MESSAGE_ID); messageName = json.optString(Keys.MESSAGE_NAME); messageContent = json.optString(Keys.MESSAGE_CONTENT); - activateDate = (Date) json.opt(Keys.ACTIVATE_DATE); + + var activateDateInMs = json.optLongObject(Keys.ACTIVATE_DATE); + if(null != activateDateInMs) { + activateDate = new Date(activateDateInMs); + } + + userId = json.optLongObject(Keys.USER_ID); + userName = json.optString(Keys.USER_NAME); + + var modifyDateInMs = json.optLongObject(Keys.MODIFY_DATE); + if(null != modifyDateInMs) { + modifyDate = new Date(modifyDateInMs); + } + + var closeDateInMs = json.optLongObject(Keys.CLOSE_DATE); + if(null != closeDateInMs) { + closeDate = new Date(closeDateInMs); + } + + var excludeDateInMs = json.optLongObject(Keys.EXCLUDE_DATE); + if(null != excludeDateInMs) { + excludeDate = new Date(excludeDateInMs); + } + } public Long getMessageId() { @@ -52,12 +90,37 @@ public Date getActivateDate() { return activateDate; } + public Long getUserId() { + return userId; + } + + public String getUserName() { + return userName; + } + + public Date getModifyDate() { + return modifyDate; + } + + public Date getCloseDate() { + return closeDate; + } + + public Date getExcludeDate() { + return excludeDate; + } + public JSONObject toJson() { var json = new JSONObject(); json.put(Keys.MESSAGE_ID, messageId); json.put(Keys.MESSAGE_NAME, messageName); json.put(Keys.MESSAGE_CONTENT, messageContent); json.put(Keys.ACTIVATE_DATE, activateDate); + json.put(Keys.USER_ID, userId); + json.put(Keys.USER_NAME, userName); + json.put(Keys.MODIFY_DATE, modifyDate); + json.put(Keys.CLOSE_DATE, closeDate); + json.put(Keys.EXCLUDE_DATE, excludeDate); return json; } @@ -74,6 +137,11 @@ public static final class Builder { private String messageName; private String messageContent; private Date activateDate; + private Long userId; + private String userName; + private Date modifyDate; + private Date closeDate; + private Date excludeDate; private Builder() { } @@ -83,6 +151,11 @@ private Builder(MessagesModel messagesModel) { this.messageName = messagesModel.messageName; this.messageContent = messagesModel.messageContent; this.activateDate = messagesModel.activateDate; + this.userId = messagesModel.userId; + this.userName = messagesModel.userName; + this.modifyDate = messagesModel.modifyDate; + this.closeDate = messagesModel.closeDate; + this.excludeDate = messagesModel.excludeDate; } public Builder withMessageId(Long messageId) { @@ -105,6 +178,31 @@ public Builder withActivateDate(Date activateDate) { return this; } + public Builder withUserId(Long userId) { + this.userId = userId; + return this; + } + + public Builder withUserName(String userName) { + this.userName = userName; + return this; + } + + public Builder withModifyDate(Date modifyDate) { + this.modifyDate = modifyDate; + return this; + } + + public Builder withCloseDate(Date closeDate) { + this.closeDate = closeDate; + return this; + } + + public Builder withExcludeDate(Date excludeDate) { + this.excludeDate = excludeDate; + return this; + } + public MessagesModel build() { return new MessagesModel(this); } @@ -113,7 +211,9 @@ public MessagesModel build() { @Override public String toString() { return MoreObjects.toStringHelper(this).add("messageId", messageId).add("messageName", messageName) - .add("messageContent", messageContent).add("activateDate", activateDate).toString(); + .add("messageContent", messageContent).add("activateDate", activateDate).add("userId", userId) + .add("userName", userName).add("modifyDate", modifyDate).add("closeDate", closeDate) + .add("excludeDate", excludeDate).toString(); } } diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/MessagesRepositoryParser.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/MessagesRepositoryParser.java index d5ce648..8d447bc 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/MessagesRepositoryParser.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/MessagesRepositoryParser.java @@ -12,6 +12,11 @@ public MessagesModel parse(JSONObject json) { .withMessageName(json.optString("message_name")) .withMessageContent(json.optString("message_content")) .withActivateDate((Date) json.opt("activate_date")) + .withUserId(json.optLongObject("user_id")) + .withUserName(json.optString("user_name")) + .withModifyDate((Date) json.opt("modify_date")) + .withCloseDate((Date) json.opt("close_date")) + .withExcludeDate((Date) json.opt("exclude_date")) .build(); } } \ No newline at end of file diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/UserOperationModel.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/UserOperationModel.java index 2fa1a3e..5a96fde 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/UserOperationModel.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/UserOperationModel.java @@ -8,63 +8,60 @@ public class UserOperationModel { - private Long usopId; - private Integer usopTypeId; - private String usopTypeValue; - private String userName; + private Long id; + private UserOperationType type; private Long userId; private String clientIp; private Integer productId; private Date insertDate; private String countryName; + private String userName; private UserOperationModel(Builder builder) { - this.usopId = builder.usopId; - this.usopTypeId = builder.usopTypeId; - this.usopTypeValue = builder.usopTypeValue; - this.userName = builder.userName; + this.id = builder.id; + this.type = builder.type; this.userId = builder.userId; this.clientIp = builder.clientIp; this.productId = builder.productId; this.insertDate = builder.insertDate; this.countryName = builder.countryName; + this.userName = builder.userName; } - + public static final class Keys{ - public static final String USOP_ID = "usop_id"; - public static final String USOP_TYPE_ID = "usop_type_id"; - public static final String USOP_TYPE_VALUE = "usop_type_value"; + public static final String ID = "usop_id"; public static final String USER_NAME = "user_name"; public static final String USER_ID = "user_id"; public static final String CLIENT_IP = "client_ip"; public static final String PRODUCT_ID = "product_id"; public static final String INSERT_DATE = "insert_date"; public static final String COUNTRY_NAME = "country_name"; + public static final String TYPE = "type"; } public UserOperationModel(JSONObject json) { - usopId = json.optLongObject(Keys.USOP_ID); - usopTypeId = json.optIntegerObject(Keys.USOP_TYPE_ID); - usopTypeValue = json.optString(Keys.USOP_TYPE_VALUE); + id = json.optLongObject(Keys.ID); + type = new UserOperationType(json.getJSONObject(Keys.TYPE)); userName = json.optString(Keys.USER_NAME); userId = json.optLongObject(Keys.USER_ID); clientIp = json.optString(Keys.CLIENT_IP); productId = json.optIntegerObject(Keys.PRODUCT_ID); - insertDate = (Date) json.opt(Keys.INSERT_DATE); + + var insertDateInMs = json.optLongObject(Keys.INSERT_DATE); + if(null != insertDateInMs) { + insertDate = new Date(insertDateInMs); + } + countryName = json.optString(Keys.COUNTRY_NAME); } - public Long getUsopId() { - return usopId; + public Long getId() { + return id; } - public Integer getUsopTypeId() { - return usopTypeId; - } - - public String getUsopTypeValue() { - return usopTypeValue; + public UserOperationType getType() { + return type; } public String getUserName() { @@ -93,9 +90,7 @@ public String getCountryName() { public JSONObject toJson() { var json = new JSONObject(); - json.put(Keys.USOP_ID, usopId); - json.put(Keys.USOP_TYPE_ID, usopTypeId); - json.put(Keys.USOP_TYPE_VALUE, usopTypeValue); + json.put(Keys.ID, id); json.put(Keys.USER_NAME, userName); json.put(Keys.USER_ID, userId); json.put(Keys.CLIENT_IP, clientIp); @@ -114,48 +109,36 @@ public static Builder builderFrom(UserOperationModel userOperationModel) { } public static final class Builder { - private Long usopId; - private Integer usopTypeId; - private String usopTypeValue; - private String userName; + private Long id; + private UserOperationType type; private Long userId; private String clientIp; private Integer productId; private Date insertDate; private String countryName; + private String userName; private Builder() { } private Builder(UserOperationModel userOperationModel) { - this.usopId = userOperationModel.usopId; - this.usopTypeId = userOperationModel.usopTypeId; - this.usopTypeValue = userOperationModel.usopTypeValue; - this.userName = userOperationModel.userName; + this.id = userOperationModel.id; + this.type = userOperationModel.type; this.userId = userOperationModel.userId; this.clientIp = userOperationModel.clientIp; this.productId = userOperationModel.productId; this.insertDate = userOperationModel.insertDate; this.countryName = userOperationModel.countryName; + this.userName = userOperationModel.userName; } - public Builder withUsopId(Long usopId) { - this.usopId = usopId; - return this; - } - - public Builder withUsopTypeId(Integer usopTypeId) { - this.usopTypeId = usopTypeId; - return this; - } - - public Builder withUsopTypeValue(String usopTypeValue) { - this.usopTypeValue = usopTypeValue; + public Builder withId(Long id) { + this.id = id; return this; } - public Builder withUserName(String userName) { - this.userName = userName; + public Builder withType(UserOperationType type) { + this.type = type; return this; } @@ -184,6 +167,11 @@ public Builder withCountryName(String countryName) { return this; } + public Builder withUserName(String userName) { + this.userName = userName; + return this; + } + public UserOperationModel build() { return new UserOperationModel(this); } @@ -191,10 +179,9 @@ public UserOperationModel build() { @Override public String toString() { - return MoreObjects.toStringHelper(this).add("usopId", usopId).add("usopTypeId", usopTypeId) - .add("usopTypeValue", usopTypeValue).add("userName", userName).add("userId", userId) + return MoreObjects.toStringHelper(this).add("id", id).add("type", type).add("userId", userId) .add("clientIp", clientIp).add("productId", productId).add("insertDate", insertDate) - .add("countryName", countryName).toString(); + .add("countryName", countryName).add("userName", userName).toString(); } - + } diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/UserOperationRepositoryParser.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/UserOperationRepositoryParser.java index d80ba1b..d0f74fc 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/UserOperationRepositoryParser.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/UserOperationRepositoryParser.java @@ -6,16 +6,20 @@ public class UserOperationRepositoryParser { public UserOperationModel parse(JSONObject json) { - return UserOperationModel.builder() - .withUsopId(json.optLongObject("usop_id")) - .withUsopTypeId(json.optIntegerObject("usop_type_id")) - .withUsopTypeValue(json.optString("usop_type_value")) + var builder = UserOperationModel.builder() + .withId(json.optLongObject("usop_id")) .withUserName(json.getString("user_name")) .withUserId(json.optLongObject("user_id")) .withClientIp(json.getString("client_ip")) .withProductId(json.optIntegerObject("product_id")) .withInsertDate((Date) json.opt("insert_date")) - .withCountryName(json.getString("country_name")) - .build(); + .withCountryName(json.getString("country_name")); + + builder.withType(UserOperationType.builder() + .withId(json.optIntegerObject("usop_type_id")) + .withName(json.optString("usop_type_value")) + .build()); + + return builder.build(); } } \ No newline at end of file diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/accounts/AccountOperationModel.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/accounts/AccountOperationModel.java new file mode 100644 index 0000000..9f577da --- /dev/null +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/accounts/AccountOperationModel.java @@ -0,0 +1,252 @@ +package com.inqwise.opinion.library.common.accounts; + +import java.util.Date; + +import org.json.JSONObject; + +import com.google.common.base.MoreObjects; +import com.inqwise.opinion.library.common.InvoiceItemModel; +import com.inqwise.opinion.payments.common.CreditCardTypes; + +public class AccountOperationModel implements InvoiceItemModel { + + private static final String KeysCHARGE_DESCRIPTION = null; + private Long id; + private AccountsOperationsType type; + private Long userId; + private Double amount; + private Double balance; + private Date modifyDate; + private Long referenceId; + private String comments; + private String creditCardNumber; + private CreditCardTypes creditCardType; + private String chargeDescription; + + private AccountOperationModel(Builder builder) { + this.id = builder.id; + this.type = builder.type; + this.userId = builder.userId; + this.amount = builder.amount; + this.balance = builder.balance; + this.modifyDate = builder.modifyDate; + this.referenceId = builder.referenceId; + this.comments = builder.comments; + this.creditCardNumber = builder.creditCardNumber; + this.creditCardType = builder.creditCardType; + this.chargeDescription = builder.chargeDescription; + } + + public static final class Keys{ + public static final String ID = "id"; + public static final String TYPE_ID = "type_id"; + public static final String USER_ID = "user_id"; + public static final String AMOUNT = "amount"; + public static final String BALANCE = "balance"; + public static final String MODIFY_DATE = "modify_date"; + public static final String REFERENCE_ID = "reference_id"; + public static final String COMMENTS = "comments"; + public static final String CREDIT_CARD_NUMBER = "credit_card_number"; + public static final String CREDIT_CARD_TYPE_ID = "credit_card_type_id"; + public static final String CHARGE_DESCRIPTION = "charge_description"; + } + + public AccountOperationModel(JSONObject json) { + id = json.optLongObject(Keys.ID); + + var typeId = json.optIntegerObject(Keys.TYPE_ID); + if(null != typeId) { + type = AccountsOperationsType.fromInt(typeId); + } + userId = json.optLongObject(Keys.USER_ID); + amount = json.optDoubleObject(Keys.AMOUNT); + balance = json.optDoubleObject(Keys.BALANCE); + var modifyDateInMs = json.optLongObject(Keys.MODIFY_DATE); + if(null != modifyDateInMs) { + modifyDate = new Date(modifyDateInMs); + } + referenceId = json.optLongObject(Keys.REFERENCE_ID); + comments = json.optString(Keys.COMMENTS); + creditCardNumber = json.optString(Keys.CREDIT_CARD_NUMBER); + var creditCardTypeId = json.optIntegerObject(Keys.CREDIT_CARD_TYPE_ID); + if(null != creditCardTypeId) { + creditCardType = CreditCardTypes.fromInt(creditCardTypeId); + } + chargeDescription = json.optString(Keys.CHARGE_DESCRIPTION); + } + + public Long getId() { + return id; + } + + public AccountsOperationsType getType() { + return type; + } + + public Long getUserId() { + return userId; + } + + public Double getAmount() { + return amount; + } + + public Double getBalance() { + return balance; + } + + public Date getModifyDate() { + return modifyDate; + } + + public Long getReferenceId() { + return referenceId; + } + + public String getComments() { + return comments; + } + + public String getCreditCardNumber() { + return creditCardNumber; + } + + public CreditCardTypes getCreditCardType() { + return creditCardType; + } + + public String getChargeDescription() { + return chargeDescription; + } + + public JSONObject toJson() { + var json = new JSONObject(); + json.put(Keys.ID, id); + if(null != type) { + json.put(Keys.TYPE_ID, type.getValue()); + } + json.put(Keys.USER_ID, userId); + json.put(Keys.AMOUNT, amount); + json.put(Keys.BALANCE, balance); + + if (null != modifyDate) { + json.put(Keys.MODIFY_DATE, modifyDate.getTime()); + } + json.put(Keys.REFERENCE_ID, referenceId); + json.put(Keys.COMMENTS, comments); + json.put(Keys.CREDIT_CARD_NUMBER, creditCardNumber); + if(null != creditCardType) { + json.put(Keys.CREDIT_CARD_TYPE_ID, creditCardType.getValue()); + } + json.put(Keys.CHARGE_DESCRIPTION, chargeDescription); + return json; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builderFrom(AccountOperationModel accountOperationModel) { + return new Builder(accountOperationModel); + } + + public static final class Builder { + private Long id; + private AccountsOperationsType type; + private Long userId; + private Double amount; + private Double balance; + private Date modifyDate; + private Long referenceId; + private String comments; + private String creditCardNumber; + private CreditCardTypes creditCardType; + private String chargeDescription; + + private Builder() { + } + + private Builder(AccountOperationModel accountOperationModel) { + this.id = accountOperationModel.id; + this.type = accountOperationModel.type; + this.userId = accountOperationModel.userId; + this.amount = accountOperationModel.amount; + this.balance = accountOperationModel.balance; + this.modifyDate = accountOperationModel.modifyDate; + this.referenceId = accountOperationModel.referenceId; + this.comments = accountOperationModel.comments; + this.creditCardNumber = accountOperationModel.creditCardNumber; + this.creditCardType = accountOperationModel.creditCardType; + this.chargeDescription = accountOperationModel.chargeDescription; + } + + public Builder withId(Long id) { + this.id = id; + return this; + } + + public Builder withType(AccountsOperationsType type) { + this.type = type; + return this; + } + + public Builder withUserId(Long userId) { + this.userId = userId; + return this; + } + + public Builder withAmount(Double amount) { + this.amount = amount; + return this; + } + + public Builder withBalance(Double balance) { + this.balance = balance; + return this; + } + + public Builder withModifyDate(Date modifyDate) { + this.modifyDate = modifyDate; + return this; + } + + public Builder withReferenceId(Long referenceId) { + this.referenceId = referenceId; + return this; + } + + public Builder withComments(String comments) { + this.comments = comments; + return this; + } + + public Builder withCreditCardNumber(String creditCardNumber) { + this.creditCardNumber = creditCardNumber; + return this; + } + + public Builder withCreditCardType(CreditCardTypes creditCardType) { + this.creditCardType = creditCardType; + return this; + } + + public Builder withChargeDescription(String chargeDescription) { + this.chargeDescription = chargeDescription; + return this; + } + + public AccountOperationModel build() { + return new AccountOperationModel(this); + } + } + + @Override + public String toString() { + return MoreObjects.toStringHelper(this).add("KeysCHARGE_DESCRIPTION", KeysCHARGE_DESCRIPTION).add("id", id) + .add("type", type).add("userId", userId).add("amount", amount).add("balance", balance) + .add("modifyDate", modifyDate).add("referenceId", referenceId).add("comments", comments) + .add("creditCardNumber", creditCardNumber).add("creditCardType", creditCardType) + .add("chargeDescription", chargeDescription).toString(); + } + +} diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/accounts/AccountOperationRepositoryParser.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/accounts/AccountOperationRepositoryParser.java new file mode 100644 index 0000000..e39e1ff --- /dev/null +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/accounts/AccountOperationRepositoryParser.java @@ -0,0 +1,37 @@ +package com.inqwise.opinion.library.common.accounts; + +import java.util.Date; + +import org.json.JSONObject; + +import com.inqwise.opinion.payments.common.CreditCardTypes; + +public class AccountOperationRepositoryParser { + public AccountOperationModel parse(JSONObject json) { + var builder = AccountOperationModel.builder() + .withId(json.optLongObject("accop_id")) + + .withUserId(json.optLongObject("user_id")) + .withAmount(json.optDoubleObject("amount")) + .withBalance(json.optDoubleObject("balance")) + .withModifyDate((Date) json.opt("modify_date")) + .withReferenceId(json.optLongObject("reference_id")) + .withComments(json.optString("comments")) + .withCreditCardNumber(json.optString("credit_card_number")) + + .withChargeDescription(json.optString("charge_description")); + + + Integer typeId = json.optIntegerObject("accop_type_id"); + if(null != typeId) { + builder.withType(AccountsOperationsType.fromInt(typeId)); + } + + Integer creditCardTypeId = json.optIntegerObject("credit_card_type_id"); + if(null != creditCardTypeId) { + builder.withCreditCardType(CreditCardTypes.fromInt(creditCardTypeId)); + } + + return builder.build(); + } +} \ No newline at end of file diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/pay/ChargeModel.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/pay/ChargeModel.java index 422cc67..3adc276 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/pay/ChargeModel.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/pay/ChargeModel.java @@ -5,8 +5,9 @@ import org.json.JSONObject; import com.google.common.base.MoreObjects; +import com.inqwise.opinion.library.common.InvoiceItemModel; -public class ChargeModel { +public class ChargeModel implements InvoiceItemModel { private Long id; private ChargeStatus status; @@ -16,6 +17,10 @@ public class ChargeModel { private Date createDate; private Long accountId; private String accountName; + private String postPayAction; + private Long referenceId; + private String postPayActionData; + private ChargeReferenceType reference; private ChargeModel(Builder builder) { this.id = builder.id; @@ -26,6 +31,10 @@ private ChargeModel(Builder builder) { this.createDate = builder.createDate; this.accountId = builder.accountId; this.accountName = builder.accountName; + this.postPayAction = builder.postPayAction; + this.referenceId = builder.referenceId; + this.postPayActionData = builder.postPayActionData; + this.reference = builder.reference; } public static final class Keys { @@ -37,10 +46,15 @@ public static final class Keys { public static final String CREATE_DATE = "create_date"; public static final String ACCOUNT_ID = "account_id"; public static final String ACCOUNT_NAME = "account_name"; + public static final String POST_PAY_ACTION = "post_pay_action"; + public static final String REFERENCE_TYPE = "reference_type"; + public static final String REFERENCE_ID = "reference_id"; + public static final String POST_PAY_ACTION_DATA = "post_pay_action_data"; } public ChargeModel(JSONObject json) { id = json.optLong(Keys.ID); + var statusId = json.optIntegerObject(Keys.STATUS_ID); if(null != statusId) { status = ChargeStatus.fromInt(statusId); @@ -51,6 +65,14 @@ public ChargeModel(JSONObject json) { createDate = new Date(json.getLong(Keys.CREATE_DATE)); accountId = json.optLongObject(Keys.ACCOUNT_ID); accountName = json.optString(Keys.ACCOUNT_NAME); + postPayAction = json.optString(Keys.POST_PAY_ACTION); + + var referenceType = json.optIntegerObject(Keys.REFERENCE_TYPE); + if(null != referenceType) { + reference = ChargeReferenceType.fromInt(referenceType); + } + referenceId = json.optLongObject(Keys.REFERENCE_ID); + postPayActionData = json.optString(Keys.POST_PAY_ACTION_DATA); } public Long getId() { @@ -85,9 +107,26 @@ public String getAccountName() { return accountName; } + public String getPostPayAction() { + return postPayAction; + } + + public ChargeReferenceType getReferenceType() { + return reference; + } + + public Long getReferenceId() { + return referenceId; + } + + public String getPostPayActionData() { + return postPayActionData; + } + public JSONObject toJson() { var json = new JSONObject(); json.put(Keys.ID, id); + if(null != status) { json.put(Keys.STATUS_ID, status.getValue()); } @@ -95,6 +134,14 @@ public JSONObject toJson() { json.put(Keys.AMOUNT, amount); json.put(Keys.ACCOUNT_ID, accountId); json.put(Keys.ACCOUNT_NAME, accountName); + json.put(Keys.POST_PAY_ACTION, postPayAction); + + if(null != reference) { + json.put(Keys.REFERENCE_TYPE, reference.getValue()); + } + + json.put(Keys.REFERENCE_ID, referenceId); + json.put(Keys.POST_PAY_ACTION_DATA, postPayActionData); return json; } @@ -116,6 +163,10 @@ public static final class Builder { private Date createDate; private Long accountId; private String accountName; + private String postPayAction; + private Long referenceId; + private String postPayActionData; + private ChargeReferenceType reference; private Builder() { } @@ -129,6 +180,10 @@ private Builder(ChargeModel chargeModel) { this.createDate = chargeModel.createDate; this.accountId = chargeModel.accountId; this.accountName = chargeModel.accountName; + this.postPayAction = chargeModel.postPayAction; + this.referenceId = chargeModel.referenceId; + this.postPayActionData = chargeModel.postPayActionData; + this.reference = chargeModel.reference; } public Builder withId(Long id) { @@ -171,6 +226,26 @@ public Builder withAccountName(String accountName) { return this; } + public Builder withPostPayAction(String postPayAction) { + this.postPayAction = postPayAction; + return this; + } + + public Builder withReferenceId(Long referenceId) { + this.referenceId = referenceId; + return this; + } + + public Builder withPostPayActionData(String postPayActionData) { + this.postPayActionData = postPayActionData; + return this; + } + + public Builder withReference(ChargeReferenceType reference) { + this.reference = reference; + return this; + } + public ChargeModel build() { return new ChargeModel(this); } @@ -180,7 +255,9 @@ public ChargeModel build() { public String toString() { return MoreObjects.toStringHelper(this).add("id", id).add("status", status).add("amount", amount) .add("name", name).add("description", description).add("createDate", createDate) - .add("accountId", accountId).add("accountName", accountName).toString(); + .add("accountId", accountId).add("accountName", accountName).add("postPayAction", postPayAction) + .add("referenceId", referenceId).add("postPayActionData", postPayActionData).add("reference", reference) + .toString(); } } diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/pay/ChargeRepositoryParser.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/pay/ChargeRepositoryParser.java index 1363bd6..c1ea736 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/pay/ChargeRepositoryParser.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/common/pay/ChargeRepositoryParser.java @@ -5,8 +5,6 @@ import org.json.JSONObject; -import com.inqwise.opinion.library.common.pay.ChargeModel.Builder; - public class ChargeRepositoryParser { public ChargeModel parse(JSONObject json) { var builder = ChargeModel.builder() @@ -14,12 +12,19 @@ public ChargeModel parse(JSONObject json) { .withAmount(json.optDoubleObject("amount")) .withName(json.optString("charge_name")) .withDescription(json.optString("charge_description")) + .withPostPayAction(json.optString("post_pay_action")) + .withReferenceId(json.optLongObject("reference_id")) + .withPostPayActionData(json.optString("post_pay_action_data")) .withCreateDate(Date.from(((java.sql.Date)json.opt("insert_date")).toInstant())); Optional.ofNullable(json.optIntegerObject("charge_status_id")) .map(ChargeStatus::fromInt) .ifPresent(builder::withStatus); + Optional.ofNullable(json.optIntegerObject("reference_type_id")) + .map(ChargeReferenceType::fromInt) + .ifPresent(builder::withReference); + return builder.build(); } } diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/AccountsOperationsDataAccess.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/AccountsOperationsDataAccess.java index 4ee00a4..de8136c 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/AccountsOperationsDataAccess.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/AccountsOperationsDataAccess.java @@ -7,9 +7,7 @@ import java.util.List; import org.apache.commons.lang3.StringUtils; -import org.jooq.impl.DSL; import org.json.JSONArray; -import org.json.JSONObject; import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.infrastructure.dao.DAOUtil; diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/managers/AccountsOperationsManager.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/managers/AccountsOperationsManager.java index e114fa1..4483464 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/managers/AccountsOperationsManager.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/managers/AccountsOperationsManager.java @@ -9,8 +9,8 @@ import com.inqwise.opinion.infrastructure.dao.IResultSetCallback; import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; import com.inqwise.opinion.infrastructure.systemFramework.JSONHelper; -import com.inqwise.opinion.library.common.AccountOperationModel; -import com.inqwise.opinion.library.common.AccountOperationRepositoryParser; +import com.inqwise.opinion.library.common.accounts.AccountOperationModel; +import com.inqwise.opinion.library.common.accounts.AccountOperationRepositoryParser; import com.inqwise.opinion.library.common.accounts.IAccountOperation; import com.inqwise.opinion.library.common.errorHandle.ErrorCode; import com.inqwise.opinion.library.common.errorHandle.OperationResult; diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/managers/InvoicesManager.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/managers/InvoicesManager.java index a02afa1..d87f90f 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/managers/InvoicesManager.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/managers/InvoicesManager.java @@ -11,13 +11,14 @@ import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; import com.inqwise.opinion.infrastructure.systemFramework.JSONHelper; import com.inqwise.opinion.library.common.InvoiceItemModel; -import com.inqwise.opinion.library.common.InvoiceItemRepositoryParser; import com.inqwise.opinion.library.common.InvoiceModel; import com.inqwise.opinion.library.common.InvoicesRepositoryParser; +import com.inqwise.opinion.library.common.accounts.AccountOperationRepositoryParser; import com.inqwise.opinion.library.common.errorHandle.BaseOperationResult; import com.inqwise.opinion.library.common.errorHandle.ErrorCode; import com.inqwise.opinion.library.common.errorHandle.OperationResult; import com.inqwise.opinion.library.common.pay.BillType; +import com.inqwise.opinion.library.common.pay.ChargeRepositoryParser; import com.inqwise.opinion.library.common.pay.IInvoice; import com.inqwise.opinion.library.common.pay.IInvoiceCreateRequest; import com.inqwise.opinion.library.common.pay.IOpenInvoiceRequest; @@ -145,13 +146,24 @@ public static BaseOperationResult openInvoice( return result; } - public static Map> getInvoiceItems(long invoiceId){ + public static Map> getInvoiceItems(long invoiceId){ try { - Map> resultMap = Maps.newHashMap(); + Map> resultMap = Maps.newHashMap(); var map = InvoicesDataAccess.getInvoiceItems(invoiceId, BillType.Invoice.getValue()); for (var mapItem : map.entrySet()) { - var toList = JSONHelper.toListOfModel(mapItem.getValue(), new InvoiceItemRepositoryParser()::parse); + List toList; + switch (mapItem.getKey()) { + case AccountOperation: + toList = JSONHelper.toListOfModel(mapItem.getValue(), new AccountOperationRepositoryParser()::parse); + break; + case Charge: + toList = JSONHelper.toListOfModel(mapItem.getValue(), new ChargeRepositoryParser()::parse); + break; + default: + throw new IllegalArgumentException("Unexpected value: " + mapItem.getKey()); + } + resultMap.put(mapItem.getKey(), toList); } diff --git a/opinion-library/src/main/java/com/inqwise/opinion/common/AnswererSessionModel.java b/opinion-library/src/main/java/com/inqwise/opinion/common/AnswererSessionModel.java index 3d4d311..0f9303e 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/common/AnswererSessionModel.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/common/AnswererSessionModel.java @@ -63,8 +63,17 @@ public AnswererSessionModel(JSONObject json) { countryName = json.optString(Keys.COUNTRY_NAME); clientIp = json.optString(Keys.CLIENT_IP); targetUrl = json.optString(Keys.TARGET_URL); - finishDate = (Date) json.opt(Keys.FINISH_DATE); - insertDate = (Date) json.opt(Keys.INSERT_DATE); + + var finishDateInMs = json.optLongObject(Keys.FINISH_DATE); + if(null != finishDateInMs) { + finishDate = new Date(finishDateInMs); + } + + var insertDateInMs = json.optLongObject(Keys.INSERT_DATE); + if(null != insertDateInMs) { + insertDate = new Date(insertDateInMs); + } + timeTakenSec = json.optLongObject(Keys.TIME_TAKEN_SEC); collectorId = json.optLongObject(Keys.COLLECTOR_ID); id = json.optLongObject(Keys.ID); diff --git a/opinion-library/src/main/java/com/inqwise/opinion/common/ResultModel.java b/opinion-library/src/main/java/com/inqwise/opinion/common/ResultModel.java new file mode 100644 index 0000000..fe73e39 --- /dev/null +++ b/opinion-library/src/main/java/com/inqwise/opinion/common/ResultModel.java @@ -0,0 +1,222 @@ +package com.inqwise.opinion.common; + +import java.util.Date; + +import org.json.JSONObject; +import com.google.common.base.MoreObjects; + +public class ResultModel { + + private String answerSessionId; + private String collectorName; + private Long collectorId; + private Date participantInsertDate; + private String clientIp; + private Boolean isCompleted; + private String controlKey; + private String controlContent; + private Long controlId; + private String answerValue; + + private ResultModel(Builder builder) { + this.answerSessionId = builder.answerSessionId; + this.collectorName = builder.collectorName; + this.collectorId = builder.collectorId; + this.participantInsertDate = builder.participantInsertDate; + this.clientIp = builder.clientIp; + this.isCompleted = builder.isCompleted; + this.controlKey = builder.controlKey; + this.controlContent = builder.controlContent; + this.controlId = builder.controlId; + this.answerValue = builder.answerValue; + } + + public static final class Keys{ + + public static final String ANSWER_SESSION = "answer_session"; + public static final String COLLECTOR_NAME = "collector_name"; + public static final String COLLECTOR_ID = "collector_id"; + public static final String PARTICIPANT_INSERT_DATE = "participant_insert_date"; + public static final String CLIENT_IP = "client_ip"; + public static final String IS_COMPLETED = "is_completed"; + public static final String CONTROL_KEY = "control_key"; + public static final String CONTROL_CONTENT = "control_content"; + public static final String CONTROL_ID = "control_id"; + public static final String ANSWER_VALUE = "answer_value"; + + } + + public ResultModel(JSONObject json) { + answerSessionId = json.optString(Keys.ANSWER_SESSION); + collectorName = json.optString(Keys.COLLECTOR_NAME); + collectorId = json.optLongObject(Keys.COLLECTOR_ID); + + var participantInsertDateInMs = json.optLongObject(Keys.PARTICIPANT_INSERT_DATE); + if(null != participantInsertDateInMs) { + participantInsertDate = new Date(participantInsertDateInMs); + } + + clientIp = json.optString(Keys.CLIENT_IP); + isCompleted = json.optBooleanObject(Keys.IS_COMPLETED); + controlKey = json.optString(Keys.CONTROL_KEY); + controlContent = json.optString(Keys.CONTROL_CONTENT); + controlId = json.optLongObject(Keys.CONTROL_ID); + answerValue = json.optString(Keys.ANSWER_VALUE); + } + + public String getAnswerSessionId() { + return answerSessionId; + } + + public String getCollectorName() { + return collectorName; + } + + public Long getCollectorId() { + return collectorId; + } + + public Date getParticipantInsertDate() { + return participantInsertDate; + } + + public String getClientIp() { + return clientIp; + } + + public Boolean getIsCompleted() { + return isCompleted; + } + + public String getControlKey() { + return controlKey; + } + + public String getControlContent() { + return controlContent; + } + + public Long getControlId() { + return controlId; + } + + public String getAnswerValue() { + return answerValue; + } + + public JSONObject toJson() { + var json = new JSONObject(); + json.put(Keys.ANSWER_SESSION, answerSessionId); + json.put(Keys.COLLECTOR_NAME, collectorName); + json.put(Keys.COLLECTOR_ID, collectorId); + json.put(Keys.PARTICIPANT_INSERT_DATE, participantInsertDate); + json.put(Keys.CLIENT_IP, clientIp); + json.put(Keys.IS_COMPLETED, isCompleted); + json.put(Keys.CONTROL_KEY, controlKey); + json.put(Keys.CONTROL_CONTENT, controlContent); + json.put(Keys.CONTROL_ID, controlId); + json.put(Keys.ANSWER_VALUE, answerValue); + return json; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builderFrom(ResultModel resultModel) { + return new Builder(resultModel); + } + + public static final class Builder { + private String answerSessionId; + private String collectorName; + private Long collectorId; + private Date participantInsertDate; + private String clientIp; + private Boolean isCompleted; + private String controlKey; + private String controlContent; + private Long controlId; + private String answerValue; + + private Builder() { + } + + private Builder(ResultModel resultModel) { + this.answerSessionId = resultModel.answerSessionId; + this.collectorName = resultModel.collectorName; + this.collectorId = resultModel.collectorId; + this.participantInsertDate = resultModel.participantInsertDate; + this.clientIp = resultModel.clientIp; + this.isCompleted = resultModel.isCompleted; + this.controlKey = resultModel.controlKey; + this.controlContent = resultModel.controlContent; + this.controlId = resultModel.controlId; + this.answerValue = resultModel.answerValue; + } + + public Builder withAnswerSessionId(String answerSessionId) { + this.answerSessionId = answerSessionId; + return this; + } + + public Builder withCollectorName(String collectorName) { + this.collectorName = collectorName; + return this; + } + + public Builder withCollectorId(Long collectorId) { + this.collectorId = collectorId; + return this; + } + + public Builder withParticipantInsertDate(Date participantInsertDate) { + this.participantInsertDate = participantInsertDate; + return this; + } + + public Builder withClientIp(String clientIp) { + this.clientIp = clientIp; + return this; + } + + public Builder withIsCompleted(Boolean isCompleted) { + this.isCompleted = isCompleted; + return this; + } + + public Builder withControlKey(String controlKey) { + this.controlKey = controlKey; + return this; + } + + public Builder withControlContent(String controlContent) { + this.controlContent = controlContent; + return this; + } + + public Builder withControlId(Long controlId) { + this.controlId = controlId; + return this; + } + + public Builder withAnswerValue(String answerValue) { + this.answerValue = answerValue; + return this; + } + + public ResultModel build() { + return new ResultModel(this); + } + } + + @Override + public String toString() { + return MoreObjects.toStringHelper(this).add("answerSessionId", answerSessionId) + .add("collectorName", collectorName).add("collectorId", collectorId) + .add("participantInsertDate", participantInsertDate).add("clientIp", clientIp) + .add("isCompleted", isCompleted).add("controlKey", controlKey).add("controlContent", controlContent) + .add("controlId", controlId).add("answerValue", answerValue).toString(); + } + +} diff --git a/opinion-library/src/main/java/com/inqwise/opinion/common/ResultRepositoryParser.java b/opinion-library/src/main/java/com/inqwise/opinion/common/ResultRepositoryParser.java new file mode 100644 index 0000000..b72304e --- /dev/null +++ b/opinion-library/src/main/java/com/inqwise/opinion/common/ResultRepositoryParser.java @@ -0,0 +1,22 @@ +package com.inqwise.opinion.common; + +import java.util.Date; + +import org.json.JSONObject; + +public class ResultRepositoryParser { + public ResultModel parse(JSONObject json) { + return ResultModel.builder() + .withAnswerSessionId(json.optString("answer_session_is")) + .withCollectorName(json.optString("collector_name")) + .withCollectorId(json.optLongObject("collector_id")) + .withParticipantInsertDate((Date) json.opt("participant_insert_date")) + .withClientIp(json.optString("client_ip")) + .withIsCompleted(json.optBooleanObject("is_completed")) + .withControlKey(json.optString("control_key")) + .withControlContent(json.optString("control_content")) + .withControlId(json.optLongObject("control_id")) + .withAnswerValue(json.optString("answer_value")) + .build(); + } +} \ No newline at end of file diff --git a/opinion-library/src/main/java/com/inqwise/opinion/common/ThemesModel.java b/opinion-library/src/main/java/com/inqwise/opinion/common/ThemesModel.java index 990d5b9..28736c7 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/common/ThemesModel.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/common/ThemesModel.java @@ -17,7 +17,6 @@ private ThemesModel(Builder builder) { } public static final class Keys{ - public static final String THEME_ID = "theme_id"; public static final String NAME = "name"; public static final String IS_TEMPLATE = "is_template"; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/common/opinions/OpinionModel.java b/opinion-library/src/main/java/com/inqwise/opinion/common/opinions/OpinionModel.java index eeb3d05..661defb 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/common/opinions/OpinionModel.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/common/opinions/OpinionModel.java @@ -8,8 +8,8 @@ public class OpinionModel { - private Long opinionId; - private Integer opinionTypeId; + private Long id; + private OpinionType type; private String name; private Date modifyDate; private Long cntStartedOpinions; @@ -17,10 +17,12 @@ public class OpinionModel { private String guid; private Date lastStartDate; private Double avgTimeTakenSec; + private Long accountId; + private Integer countControls; private OpinionModel(Builder builder) { - this.opinionId = builder.opinionId; - this.opinionTypeId = builder.opinionTypeId; + this.id = builder.opinionId; + this.type = builder.type; this.name = builder.name; this.modifyDate = builder.modifyDate; this.cntStartedOpinions = builder.cntStartedOpinions; @@ -28,12 +30,14 @@ private OpinionModel(Builder builder) { this.guid = builder.guid; this.lastStartDate = builder.lastStartDate; this.avgTimeTakenSec = builder.avgTimeTakenSec; + this.accountId = builder.accountId; + this.countControls = builder.countControls; } public static final class Keys{ - public static final String OPINION_ID = "opinion_id"; - public static final String OPINION_TYPE_ID = "opinion_type_id"; + public static final String OPINION_ID = "id"; + public static final String TYPE_ID = "type_id"; public static final String NAME = "name"; public static final String MODIFY_DATE = "modify_date"; public static final String CNT_STARTED_OPINIONS = "cnt_started_opinions"; @@ -41,27 +45,43 @@ public static final class Keys{ public static final String GUID = "guid"; public static final String LAST_START_DATE = "last_start_date"; public static final String AVG_TIME_TAKEN_SEC = "avg_time_taken_sec"; + public static final String ACCOUNT_ID = "account_id"; + public static final String COUNT_CONTROLS = "count_controls"; } public OpinionModel(JSONObject json) { - opinionId = json.optLongObject(Keys.OPINION_ID); - opinionTypeId = json.optIntegerObject(Keys.OPINION_TYPE_ID); + id = json.optLongObject(Keys.OPINION_ID); + + var typeId = json.optIntegerObject(Keys.TYPE_ID); + if(null != typeId) { + type = OpinionType.fromInt(typeId); + } name = json.optString(Keys.NAME); - modifyDate = (Date) json.opt(Keys.MODIFY_DATE); + + var modifyDateInMs = json.optLongObject(Keys.MODIFY_DATE); + if(null != modifyDateInMs) { + modifyDate = new Date(modifyDateInMs); + } cntStartedOpinions = json.optLongObject(Keys.CNT_STARTED_OPINIONS); cntFinishedOpinions = json.optLongObject(Keys.CNT_FINISHED_OPINIONS); guid = json.optString(Keys.GUID); - lastStartDate = (Date) json.opt(Keys.LAST_START_DATE); + + var lastStartDateInMs = json.optLongObject(Keys.LAST_START_DATE); + if(null != lastStartDateInMs) { + lastStartDate = new Date(lastStartDateInMs); + } avgTimeTakenSec = json.optDoubleObject(Keys.AVG_TIME_TAKEN_SEC); + accountId = json.optLongObject(Keys.ACCOUNT_ID); + countControls = json.optIntegerObject(Keys.COUNT_CONTROLS); } - public Long getOpinionId() { - return opinionId; + public Long getId() { + return id; } - public Integer getOpinionTypeId() { - return opinionTypeId; + public OpinionType getType() { + return type; } public String getName() { @@ -92,10 +112,18 @@ public Double getAvgTimeTakenSec() { return avgTimeTakenSec; } + public Long getAccountId() { + return accountId; + } + + public Integer getCountControls() { + return countControls; + } + public JSONObject toJson() { var json = new JSONObject(); - json.put(Keys.OPINION_ID, opinionId); - json.put(Keys.OPINION_TYPE_ID, opinionTypeId); + json.put(Keys.OPINION_ID, id); + json.put(Keys.TYPE_ID, type); json.put(Keys.NAME, name); json.put(Keys.MODIFY_DATE, modifyDate); json.put(Keys.CNT_STARTED_OPINIONS, cntStartedOpinions); @@ -103,6 +131,8 @@ public JSONObject toJson() { json.put(Keys.GUID, guid); json.put(Keys.LAST_START_DATE, lastStartDate); json.put(Keys.AVG_TIME_TAKEN_SEC, avgTimeTakenSec); + json.put(Keys.ACCOUNT_ID, accountId); + json.put(Keys.COUNT_CONTROLS, countControls); return json; } @@ -116,7 +146,7 @@ public static Builder builderFrom(OpinionModel opinionModel) { public static final class Builder { private Long opinionId; - private Integer opinionTypeId; + private OpinionType type; private String name; private Date modifyDate; private Long cntStartedOpinions; @@ -124,13 +154,15 @@ public static final class Builder { private String guid; private Date lastStartDate; private Double avgTimeTakenSec; + private Long accountId; + private Integer countControls; private Builder() { } private Builder(OpinionModel opinionModel) { - this.opinionId = opinionModel.opinionId; - this.opinionTypeId = opinionModel.opinionTypeId; + this.opinionId = opinionModel.id; + this.type = opinionModel.type; this.name = opinionModel.name; this.modifyDate = opinionModel.modifyDate; this.cntStartedOpinions = opinionModel.cntStartedOpinions; @@ -138,6 +170,8 @@ private Builder(OpinionModel opinionModel) { this.guid = opinionModel.guid; this.lastStartDate = opinionModel.lastStartDate; this.avgTimeTakenSec = opinionModel.avgTimeTakenSec; + this.accountId = opinionModel.accountId; + this.countControls = opinionModel.countControls; } public Builder withOpinionId(Long opinionId) { @@ -145,8 +179,8 @@ public Builder withOpinionId(Long opinionId) { return this; } - public Builder withOpinionTypeId(Integer opinionTypeId) { - this.opinionTypeId = opinionTypeId; + public Builder withType(OpinionType type) { + this.type = type; return this; } @@ -185,6 +219,16 @@ public Builder withAvgTimeTakenSec(Double avgTimeTakenSec) { return this; } + public Builder withAccountId(Long accountId) { + this.accountId = accountId; + return this; + } + + public Builder withCountControls(Integer countControls) { + this.countControls = countControls; + return this; + } + public OpinionModel build() { return new OpinionModel(this); } @@ -192,10 +236,11 @@ public OpinionModel build() { @Override public String toString() { - return MoreObjects.toStringHelper(this).add("opinionId", opinionId).add("opinionTypeId", opinionTypeId) - .add("name", name).add("modifyDate", modifyDate).add("cntStartedOpinions", cntStartedOpinions) + return MoreObjects.toStringHelper(this).add("opinionId", id).add("type", type).add("name", name) + .add("modifyDate", modifyDate).add("cntStartedOpinions", cntStartedOpinions) .add("cntFinishedOpinions", cntFinishedOpinions).add("guid", guid).add("lastStartDate", lastStartDate) - .add("avgTimeTakenSec", avgTimeTakenSec).toString(); + .add("avgTimeTakenSec", avgTimeTakenSec).add("accountId", accountId).add("countControls", countControls) + .toString(); } } diff --git a/opinion-library/src/main/java/com/inqwise/opinion/common/opinions/OpinionRepositoryParser.java b/opinion-library/src/main/java/com/inqwise/opinion/common/opinions/OpinionRepositoryParser.java index 5bfb043..0a1f42b 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/common/opinions/OpinionRepositoryParser.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/common/opinions/OpinionRepositoryParser.java @@ -6,9 +6,9 @@ public class OpinionRepositoryParser { public OpinionModel parse(JSONObject json) { - return OpinionModel.builder() + var builder = OpinionModel.builder() .withOpinionId(json.optLongObject(IOpinion.ResultSetNames.OPINION_ID)) - .withOpinionTypeId(json.optIntegerObject(IOpinion.ResultSetNames.OPINION_TYPE_ID)) + .withName(json.optString(IOpinion.ResultSetNames.NAME)) .withModifyDate((Date) json.opt(IOpinion.ResultSetNames.MODIFY_DATE)) .withCntStartedOpinions(json.optLongObject(IOpinion.ResultSetNames.CNT_STARTED_OPINIONS)) @@ -16,6 +16,14 @@ public OpinionModel parse(JSONObject json) { .withGuid(json.optString(IOpinion.ResultSetNames.GUID)) .withLastStartDate((Date) json.opt(IOpinion.ResultSetNames.LAST_START_DATE)) .withAvgTimeTakenSec(json.optDoubleObject(IOpinion.ResultSetNames.AVG_TIME_TAKEN_SEC)) - .build(); + .withAccountId(json.optLongObject(IOpinion.ResultSetNames.ACCOUNT_ID)) + .withCountControls(json.optIntegerObject(IOpinion.ResultSetNames.COUNT_CONTROLS)); + + Integer typeId = json.optIntegerObject(IOpinion.ResultSetNames.OPINION_TYPE_ID); + if(null != typeId) { + builder.withType(OpinionType.fromInt(typeId)); + } + + return builder.build(); } } diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/Results.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/Results.java index 64a375b..31132c9 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/Results.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/Results.java @@ -13,9 +13,7 @@ import java.util.TreeMap; import org.apache.commons.lang3.StringUtils; -import org.jooq.impl.DSL; import org.json.JSONArray; -import org.json.JSONObject; import com.inqwise.opinion.common.ParentType; import com.inqwise.opinion.common.analizeResults.IAnalizeControl; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/managers/ResultsManager.java b/opinion-library/src/main/java/com/inqwise/opinion/managers/ResultsManager.java index f44cd56..482da0c 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/managers/ResultsManager.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/managers/ResultsManager.java @@ -6,10 +6,10 @@ import java.util.TreeMap; import java.util.UUID; -import org.json.JSONArray; - import com.inqwise.opinion.common.CountriesStatisticsModel; import com.inqwise.opinion.common.CountriesStatisticsRepositoryParser; +import com.inqwise.opinion.common.ResultModel; +import com.inqwise.opinion.common.ResultRepositoryParser; import com.inqwise.opinion.common.analizeResults.IAnalizeControl; import com.inqwise.opinion.dao.Results; import com.inqwise.opinion.entities.analizeResults.AnalizeControlEntity; @@ -68,9 +68,11 @@ private static OperationResult> getAnalizeControlsInternal return AnalizeControlEntity.getAnalizeControls(opinionId, accountId, null, answererSessionId, collectorId, includePartialAnswers, includePartialStatistics, includeAttributeControl); } - public static JSONArray getAllResults(long opinionId, Long accountId, Long[] sessionIds, boolean includePartial, TreeMap headerIdsMap) { + public static List getAllResults(long opinionId, Long accountId, Long[] sessionIds, boolean includePartial, TreeMap headerIdsMap) { try{ - return Results.getAllResults(opinionId, accountId, sessionIds, includePartial, headerIdsMap); + var arr = Results.getAllResults(opinionId, accountId, sessionIds, includePartial, headerIdsMap); + var toList = JSONHelper.toListOfModel(arr, new ResultRepositoryParser()::parse); + return toList; } catch (DAOException ex){ throw new Error(ex); }