From 42068fb2a783686e74959b8f492d57a26f4b4a12 Mon Sep 17 00:00:00 2001 From: terra Date: Thu, 4 Jan 2024 17:08:14 +0200 Subject: [PATCH 1/6] CDataCachecontainer replace with JSONArray --- .../dao/AccountsOperationsDataAccess.java | 25 ++++++--- .../library/dao/ChargesDataAccess.java | 56 ++++++++++++++----- .../library/dao/InvitesDataAccess.java | 24 ++++++-- .../library/dao/InvoicesDataAccess.java | 56 ++++++++++++------- 4 files changed, 113 insertions(+), 48 deletions(-) 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 8f11353..1cb1d1d 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 @@ -4,15 +4,12 @@ import java.sql.Connection; import java.sql.ResultSet; import java.util.Date; -import java.util.HashMap; -import java.util.Hashtable; -import java.util.LinkedHashMap; import java.util.List; import org.apache.commons.lang3.StringUtils; - -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; +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; @@ -31,7 +28,7 @@ public class AccountsOperationsDataAccess { private static final String MONETARY_TRANSACTION_PARAM = "$is_monetary"; private static final String ACCOUNT_OPERATION_ID_PARAM = "$accop_id"; - public static CDataCacheContainer getAccountOperations(int top, long accountId, List accountsOperationsTypeIds, Long referenceId, Integer referenceTypeId, Date fromDate, Date toDate, Boolean monetary) throws DAOException{ + public static JSONArray getAccountOperations(int top, long accountId, List accountsOperationsTypeIds, Long referenceId, Integer referenceTypeId, Date fromDate, Date toDate, Boolean monetary) throws DAOException{ Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -52,8 +49,18 @@ public static CDataCacheContainer getAccountOperations(int top, long accountId, call = factory.GetProcedureCall("getAccountOperations", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = new String[]{"accop_id"}; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/ChargesDataAccess.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/ChargesDataAccess.java index 4cd48cc..36312c1 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/ChargesDataAccess.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/ChargesDataAccess.java @@ -4,15 +4,13 @@ import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.Hashtable; -import java.util.LinkedHashMap; import java.util.List; import java.util.UUID; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; - 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; @@ -60,7 +58,7 @@ public class ChargesDataAccess { private static final String POST_PAY_ACTION_DATA_PARAM = "$post_pay_action_data"; - public static CDataCacheContainer getCharges(int top, Long billId, Integer billTypeId, Long accountId, Integer statusId, boolean includeExpired, Boolean billed) throws DAOException{ + public static JSONArray getCharges(int top, Long billId, Integer billTypeId, Long accountId, Integer statusId, boolean includeExpired, Boolean billed) throws DAOException{ Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -80,8 +78,18 @@ public static CDataCacheContainer getCharges(int top, Long billId, Integer billT call = factory.GetProcedureCall("pay_getCharges", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = new String[]{"charge_id"}; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new Hashtable()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); @@ -218,7 +226,7 @@ public static void insertCharge(IChargeCreateRequest request, } } - public static CDataCacheContainer getPostPayActions(Long chargeId, Long billId, Integer billTypeId) throws DAOException{ + public static JSONArray getPostPayActions(Long chargeId, Long billId, Integer billTypeId) throws DAOException{ Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -234,8 +242,18 @@ public static CDataCacheContainer getPostPayActions(Long chargeId, Long billId, call = factory.GetProcedureCall("pay_getBillPostPayActions", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = new String[] {"charge_id"}; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); @@ -296,7 +314,7 @@ public static OperationResult pay(IChargePayRequest request) throw } } - public static CDataCacheContainer getChargesByReferenceId(Long accountId, + public static JSONArray getChargesByReferenceId(Long accountId, long referenceId, int referenceTypeId) throws DAOException { Connection connection = null; CallableStatement call = null; @@ -313,8 +331,18 @@ public static CDataCacheContainer getChargesByReferenceId(Long accountId, call = factory.GetProcedureCall("pay_getChargeByReferenceId", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/InvitesDataAccess.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/InvitesDataAccess.java index 0aed14b..334b481 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/InvitesDataAccess.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/InvitesDataAccess.java @@ -3,10 +3,11 @@ import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.LinkedHashMap; +import java.util.List; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; +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; @@ -137,7 +138,7 @@ public static void getInviteResultSet(Long inviteId, Long accountId, } } - public static CDataCacheContainer getInvites(long accountId) throws DAOException { + public static JSONArray getInvites(long accountId) throws DAOException { Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -151,8 +152,19 @@ public static CDataCacheContainer getInvites(long accountId) throws DAOException call = factory.GetProcedureCall("invites_getInvites", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); + } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); } finally { diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/InvoicesDataAccess.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/InvoicesDataAccess.java index b660a1a..fb892ad 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/InvoicesDataAccess.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/InvoicesDataAccess.java @@ -4,18 +4,15 @@ import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.Date; import java.util.HashMap; -import java.util.HashSet; -import java.util.Hashtable; -import java.util.LinkedHashMap; +import java.util.List; import java.util.Map; import java.util.UUID; import org.apache.commons.lang3.StringUtils; - -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; +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; @@ -26,13 +23,11 @@ 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.ChargeStatus; import com.inqwise.opinion.library.common.pay.IInvoiceCreateRequest; import com.inqwise.opinion.library.common.pay.IOpenInvoiceRequest; import com.inqwise.opinion.library.common.pay.IUpdateInvoiceRequest; import com.inqwise.opinion.library.common.pay.InvoiceItemType; -import com.inqwise.opinion.library.common.pay.InvoiceStatus; public class InvoicesDataAccess { @@ -162,7 +157,7 @@ public static boolean deleteInvoice(long invoiceId, long userId) throws DAOExcep } } - public static CDataCacheContainer getInvoices(int top, Long accountId, + public static JSONArray getInvoices(int top, Long accountId, Integer invoiceStatusId) throws DAOException { Connection connection = null; CallableStatement call = null; @@ -179,8 +174,18 @@ public static CDataCacheContainer getInvoices(int top, Long accountId, call = factory.GetProcedureCall("pay_getInvoices", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = new String[]{"invoice_id"}; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); @@ -285,7 +290,7 @@ public static BaseOperationResult openInvoice(IOpenInvoiceRequest request) throw } } - public static Map getInvoiceItems(long billId, int billTypeId) throws DAOException { + public static Map getInvoiceItems(long billId, int billTypeId) throws DAOException { Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -300,16 +305,15 @@ public static Map getInvoiceItems(long bil call = factory.GetProcedureCall("pay_getBillItems", params); connection = call.getConnection(); - Map result = new HashMap(); + Map result = new HashMap(); - resultSet = call.executeQuery(); - String[] primaryKeys = null; - result.put(InvoiceItemType.Charge, CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap())); + resultSet = call.executeQuery(); + result.put(InvoiceItemType.Charge, resultsetToJson(connection, resultSet)); if(call.getMoreResults()){ resultSet.close(); - resultSet = call.getResultSet(); - result.put(InvoiceItemType.AccountOperation, CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap())); + resultSet = call.getResultSet(); + result.put(InvoiceItemType.AccountOperation, resultsetToJson(connection, resultSet)); } return result; @@ -321,4 +325,18 @@ public static Map getInvoiceItems(long bil DAOUtil.close(connection); } } + + private static JSONArray resultsetToJson(Connection connection, ResultSet resultSet) { + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); + } } From ec683da3daeb70d7273423cb485dfd6d6237a2b8 Mon Sep 17 00:00:00 2001 From: terra Date: Thu, 4 Jan 2024 22:48:11 +0200 Subject: [PATCH 2/6] CDataCacheContainer replace with JSONArray --- .../library/dao/MessagesDataAccess.java | 24 ++++++++++++------ .../dao/UsersOperationsDataAccess.java | 25 ++++++++++++------- 2 files changed, 33 insertions(+), 16 deletions(-) diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/MessagesDataAccess.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/MessagesDataAccess.java index 4e87d47..8428e06 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/MessagesDataAccess.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/MessagesDataAccess.java @@ -4,11 +4,11 @@ import java.sql.Connection; import java.sql.ResultSet; import java.util.Date; -import java.util.Hashtable; -import java.util.LinkedHashMap; +import java.util.List; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; +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; @@ -167,7 +167,7 @@ public static void updateMessage(long messageId, String messageName, } } - public static CDataCacheContainer getMessages(Long userId, + public static JSONArray getMessages(Long userId, Date fromModifyDate, Date toModifyDate, boolean includeClosed, boolean includeNotActivated, int top, boolean includeExcluded) throws DAOException { Connection connection = null; @@ -189,8 +189,18 @@ public static CDataCacheContainer getMessages(Long userId, call = factory.GetProcedureCall("msg_getMessages", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/UsersOperationsDataAccess.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/UsersOperationsDataAccess.java index 2a05bf2..1589228 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/UsersOperationsDataAccess.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/UsersOperationsDataAccess.java @@ -4,14 +4,12 @@ import java.sql.Connection; import java.sql.ResultSet; import java.util.Date; -import java.util.HashMap; -import java.util.LinkedHashMap; -import java.util.UUID; +import java.util.List; import org.apache.commons.lang3.StringUtils; - -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; +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; @@ -29,7 +27,7 @@ public class UsersOperationsDataAccess { private static final String FROM_DATE_PARAM = "$from_date"; private static final String TO_DATE_PARAM = "$to_date"; - public static CDataCacheContainer getUserOperations(int top, Long userId, Integer[] usersOperationsTypeIds, Date fromDate, Date toDate, Integer sourceId) throws DAOException{ + public static JSONArray getUserOperations(int top, Long userId, Integer[] usersOperationsTypeIds, Date fromDate, Date toDate, Integer sourceId) throws DAOException{ Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -48,8 +46,17 @@ public static CDataCacheContainer getUserOperations(int top, Long userId, Intege call = factory.GetProcedureCall("getUserOperations", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); From 6ce4dae8dbe6dd09d3f8860dd4e2fdec1f70f429 Mon Sep 17 00:00:00 2001 From: alex misyuk Date: Sat, 6 Jan 2024 14:37:57 +0200 Subject: [PATCH 3/6] remove obsolete dependencies --- pom.xml | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/pom.xml b/pom.xml index a352176..129b751 100644 --- a/pom.xml +++ b/pom.xml @@ -39,7 +39,7 @@ 1.6.6 3.0.2 4.1.1 - 8.5.11.3 + 8.5.11.3 5.10.1 @@ -169,21 +169,6 @@ quartz 2.3.2 - - net.casper - casperdatasets - 2.1.0 - - - net.casper - casperdatasets-io - 2.2.0 - - - net.casper - casperdatasets-ext - 2.2.0 - org.msgpack msgpack @@ -248,7 +233,7 @@ com.github.jsimone webapp-runner - ${webapp.version} + ${githubwebapp.version} provided From eb8c89a1a6fdb141c1d82904fcc0aca060962535 Mon Sep 17 00:00:00 2001 From: terra Date: Sat, 6 Jan 2024 18:14:45 +0200 Subject: [PATCH 4/6] replace CDataCacheContainer to JSONArray. change package name come.inqwise.opinion.opinion.dao; to package com.inqwise.opinion.dao; --- .../dao/UsersOperationsDataAccess.java | 1 + .../opinion/dao/AccountsDataAccess.java | 16 ++-- .../dao/AnswerersSessionsDataAccess.java | 84 +++++-------------- .../java/com/inqwise/opinion/dao/Audits.java | 12 +-- .../java/com/inqwise/opinion/dao/Charts.java | 7 +- .../dao/CollectorSourcesDataAccess.java | 2 +- .../opinion/dao/CollectorsDataAccess.java | 29 ++++--- .../com/inqwise/opinion/dao/ControlTypes.java | 2 +- .../opinion/dao/ControlsDataAccess.java | 18 ++-- .../inqwise/opinion/dao/GeneralSettings.java | 13 ++- .../opinion/dao/IInsertCollectorParams.java | 2 +- .../opinion/dao/IInsertOpinionParams.java | 2 +- .../opinion/dao/IUpdateCollectorParams.java | 2 +- .../opinion/dao/IUpdateOpinionParams.java | 2 +- .../opinion/dao/OpinionAccountDataAccess.java | 16 ++-- .../opinion/dao/OpinionsDataAccess.java | 41 ++++++--- .../java/com/inqwise/opinion/dao/Options.java | 17 ++-- .../inqwise/opinion/dao/PollsDataAccess.java | 2 +- .../com/inqwise/opinion/dao/Responses.java | 4 +- .../java/com/inqwise/opinion/dao/Results.java | 38 ++++++--- .../opinion/dao/ServicePackageSettings.java | 7 +- .../java/com/inqwise/opinion/dao/Sheets.java | 10 +-- .../opinion/dao/SkipLogicRulesDataAccess.java | 2 +- .../java/com/inqwise/opinion/dao/Surveys.java | 23 ++--- .../inqwise/opinion/dao/ThemesDataAccess.java | 27 ++++-- 25 files changed, 177 insertions(+), 202 deletions(-) diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/UsersOperationsDataAccess.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/UsersOperationsDataAccess.java index 1589228..76e283b 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/UsersOperationsDataAccess.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/dao/UsersOperationsDataAccess.java @@ -46,6 +46,7 @@ public static JSONArray getUserOperations(int top, Long userId, Integer[] usersO call = factory.GetProcedureCall("getUserOperations", params); connection = call.getConnection(); resultSet = call.executeQuery(); + List list = DSL.using(connection).fetch(resultSet) .map(r -> { JSONObject obj = new JSONObject(); diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/AccountsDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/AccountsDataAccess.java index 2794f45..b02800c 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/AccountsDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/AccountsDataAccess.java @@ -1,22 +1,20 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; import java.util.Date; -import com.inqwise.opinion.library.common.errorHandle.ErrorCode; -import com.inqwise.opinion.library.common.errorHandle.OperationResult; -import com.inqwise.opinion.library.dao.DAOBase; +import com.inqwise.opinion.common.AccountOpinionInfo; import com.inqwise.opinion.infrastructure.dao.DAOException; -import com.inqwise.opinion.infrastructure.dao.Database; -import com.inqwise.opinion.library.dao.DAOFactory; import com.inqwise.opinion.infrastructure.dao.DAOUtil; -import com.inqwise.opinion.library.dao.Databases; +import com.inqwise.opinion.infrastructure.dao.Database; import com.inqwise.opinion.infrastructure.dao.SqlParam; import com.inqwise.opinion.infrastructure.systemFramework.ResultSetHelper; -import com.inqwise.opinion.opinion.common.AccountOpinionInfo; -import com.inqwise.opinion.opinion.common.collectors.ICollector; +import com.inqwise.opinion.library.common.errorHandle.OperationResult; +import com.inqwise.opinion.library.dao.DAOBase; +import com.inqwise.opinion.library.dao.DAOFactory; +import com.inqwise.opinion.library.dao.Databases; public class AccountsDataAccess extends DAOBase { diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/AnswerersSessionsDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/AnswerersSessionsDataAccess.java index 8fccf39..73b06ba 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/AnswerersSessionsDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/AnswerersSessionsDataAccess.java @@ -1,31 +1,28 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.ArrayList; -import java.util.LinkedHashMap; import java.util.List; -import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; import javax.naming.OperationNotSupportedException; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; +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; import com.inqwise.opinion.infrastructure.dao.Database; -import com.inqwise.opinion.infrastructure.dao.IDataFillable; import com.inqwise.opinion.infrastructure.dao.IResultSetCallback; +import com.inqwise.opinion.infrastructure.dao.SqlParam; 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.dao.DAOBase; -import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.library.dao.DAOFactory; -import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.infrastructure.dao.SqlParam; public class AnswerersSessionsDataAccess extends DAOBase { @@ -44,7 +41,7 @@ public class AnswerersSessionsDataAccess extends DAOBase { private static final String FROM_INDEX_PARAM = "$from_index"; private static final String TOP_PARAM = "$top"; - public static CDataCacheContainer getAnswerersSessions(Long opinionId, + public static JSONArray getAnswerersSessions(Long opinionId, Long accountId, Long collectorId, String respondentId, boolean includeUnplanned, Long fromIndex, Integer top, AtomicLong total) throws DAOException { CallableStatement call = null; ResultSet resultSet = null; @@ -66,9 +63,17 @@ public static CDataCacheContainer getAnswerersSessions(Long opinionId, call = factory.GetProcedureCall("getAnswerersSessions", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - CDataCacheContainer ds = CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + if(call.getMoreResults()){ resultSet = call.getResultSet(); if(resultSet.next()){ @@ -76,7 +81,7 @@ public static CDataCacheContainer getAnswerersSessions(Long opinionId, } } - return ds; + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); @@ -147,57 +152,6 @@ public static void getLastAnswererSessionResultSet(IResultSetCallback callback, } } - private static OperationResult fillAnswerersSessions(Long id, String answerSessionId, Long opinionId, Long accountId, IDataFillable data, List answerersSessions, Long collectorId, String respondentId, boolean includeUnplanned) throws DAOException{ - CallableStatement call = null; - ResultSet resultSet = null; - OperationResult result = null; - Connection connection = null; - T answererSession = null; - - SqlParam[] params = { - new SqlParam(ANSWER_SESSION_ID_PARAM, answerSessionId), - new SqlParam(OPINION_ID_PARAM, opinionId), - new SqlParam(ACCOUNT_ID_PARAM, accountId), - new SqlParam(ID_PARAM, id), - new SqlParam(RESPONDENT_ID_PARAM, respondentId), - new SqlParam(COLLECTOR_ID_PARAM, collectorId), - new SqlParam(INCLUDE_UNPLANNED_PARAM, includeUnplanned), - new SqlParam(TOP_PARAM, null), - new SqlParam(FROM_INDEX_PARAM, 0), - }; - - try { - - Database factory = DAOFactory.getInstance(Databases.Opinion); - call = factory.GetProcedureCall("getAnswerersSessions", params); - connection = call.getConnection(); - resultSet = call.executeQuery(); - while (resultSet.next()) { - answererSession = data.fill(resultSet); - - if(null != answerersSessions){ - answerersSessions.add(answererSession); - } - } - - if(null == answererSession) { - result = new OperationResult(ErrorCode.NoResults); - } else - { - result = new OperationResult(answererSession); - } - - return result; - - } catch (Exception e) { - throw null == call ? new DAOException(e) : new DAOException(call, e); - } finally { - DAOUtil.close(resultSet); - DAOUtil.close(call); - DAOUtil.close(connection); - } - } - public static BaseOperationResult updateGrade(Long id, Long accountId, Integer grade, String comment, Long userId) throws DAOException { Connection connection = null; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/Audits.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/Audits.java index b6d6a86..82d1132 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/Audits.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/Audits.java @@ -1,18 +1,18 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.util.UUID; -import com.inqwise.opinion.library.common.errorHandle.BaseOperationResult; -import com.inqwise.opinion.library.dao.DAOBase; +import com.inqwise.opinion.common.audit.IAuditRequest; import com.inqwise.opinion.infrastructure.dao.DAOException; +import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.infrastructure.dao.Database; +import com.inqwise.opinion.infrastructure.dao.SqlParam; +import com.inqwise.opinion.library.common.errorHandle.BaseOperationResult; +import com.inqwise.opinion.library.dao.DAOBase; import com.inqwise.opinion.library.dao.DAOFactory; -import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.infrastructure.dao.SqlParam; -import com.inqwise.opinion.opinion.common.audit.IAuditRequest; public class Audits extends DAOBase { diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/Charts.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/Charts.java index e7ff37b..5dbfce8 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/Charts.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/Charts.java @@ -1,23 +1,20 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.ArrayList; import java.util.Date; -import java.util.List; +import com.inqwise.opinion.common.charts.TimePointRange; import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.infrastructure.dao.Database; -import com.inqwise.opinion.infrastructure.dao.IDataFillable; import com.inqwise.opinion.infrastructure.dao.IResultSetCallback; import com.inqwise.opinion.infrastructure.dao.SqlParam; import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; import com.inqwise.opinion.library.dao.DAOBase; import com.inqwise.opinion.library.dao.DAOFactory; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.opinion.common.charts.TimePointRange; public class Charts extends DAOBase { diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/CollectorSourcesDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/CollectorSourcesDataAccess.java index 486ba7b..7e08f1b 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/CollectorSourcesDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/CollectorSourcesDataAccess.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/CollectorsDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/CollectorsDataAccess.java index 6b86cd8..3392f29 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/CollectorsDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/CollectorsDataAccess.java @@ -1,19 +1,21 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; import java.util.Date; -import java.util.LinkedHashMap; +import java.util.List; import java.util.UUID; import javax.naming.OperationNotSupportedException; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; - import org.apache.commons.lang3.StringUtils; +import org.jooq.impl.DSL; +import org.json.JSONArray; +import org.json.JSONObject; +import com.inqwise.opinion.common.collectors.CollectorStatus; +import com.inqwise.opinion.common.collectors.IDeletedCollectorDetails; import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.infrastructure.dao.Database; @@ -26,8 +28,6 @@ import com.inqwise.opinion.library.dao.DAOBase; import com.inqwise.opinion.library.dao.DAOFactory; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.opinion.common.collectors.CollectorStatus; -import com.inqwise.opinion.opinion.common.collectors.IDeletedCollectorDetails; public class CollectorsDataAccess extends DAOBase { @@ -370,7 +370,7 @@ public static BaseOperationResult setCollectorExternalId(long collectorId, return result; } - public static CDataCacheContainer getCollectors(Long opinionId, Long accountId, boolean includeExpired, int top, + public static JSONArray getCollectors(Long opinionId, Long accountId, boolean includeExpired, int top, Date from, Date to, Integer[] collectorsStatusIds, String orderBy) throws DAOException{ Connection connection = null; CallableStatement call = null; @@ -392,8 +392,17 @@ public static CDataCacheContainer getCollectors(Long opinionId, Long accountId, call = factory.GetProcedureCall("getCollectors", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/ControlTypes.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/ControlTypes.java index ac972b4..eb0e722 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/ControlTypes.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/ControlTypes.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/ControlsDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/ControlsDataAccess.java index 908b17c..a095f9f 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/ControlsDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/ControlsDataAccess.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; @@ -21,14 +21,14 @@ import com.inqwise.opinion.library.dao.DAOBase; import com.inqwise.opinion.library.dao.DAOFactory; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.opinion.common.IControl; -import com.inqwise.opinion.opinion.common.IControlRequest; -import com.inqwise.opinion.opinion.common.ICreateResult; -import com.inqwise.opinion.opinion.common.IModifyControlDetailsRequest; -import com.inqwise.opinion.opinion.common.IOption; -import com.inqwise.opinion.opinion.common.ParentType; -import com.inqwise.opinion.opinion.common.analizeResults.IControlsContainer; -import com.inqwise.opinion.opinion.common.analizeResults.IOptionsContainer; +import com.inqwise.opinion.common.IControl; +import com.inqwise.opinion.common.IControlRequest; +import com.inqwise.opinion.common.ICreateResult; +import com.inqwise.opinion.common.IModifyControlDetailsRequest; +import com.inqwise.opinion.common.IOption; +import com.inqwise.opinion.common.ParentType; +import com.inqwise.opinion.common.analizeResults.IControlsContainer; +import com.inqwise.opinion.common.analizeResults.IOptionsContainer; public final class ControlsDataAccess extends DAOBase { private static final String CONTROL_ID_PARAM = "$control_id"; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/GeneralSettings.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/GeneralSettings.java index 93672c2..b77efb1 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/GeneralSettings.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/GeneralSettings.java @@ -1,23 +1,20 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.ArrayList; -import java.util.List; import java.util.UUID; +import com.inqwise.opinion.infrastructure.dao.DAOException; +import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.infrastructure.dao.Database; -import com.inqwise.opinion.infrastructure.dao.IDataFillable; +import com.inqwise.opinion.infrastructure.dao.SqlParam; +import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; import com.inqwise.opinion.library.common.errorHandle.ErrorCode; import com.inqwise.opinion.library.common.errorHandle.OperationResult; import com.inqwise.opinion.library.dao.DAOBase; -import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.library.dao.DAOFactory; -import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.infrastructure.dao.SqlParam; -import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; public final class GeneralSettings extends DAOBase { diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/IInsertCollectorParams.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/IInsertCollectorParams.java index f6de3ac..e2ac87e 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/IInsertCollectorParams.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/IInsertCollectorParams.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.ResultSet; import java.sql.SQLException; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/IInsertOpinionParams.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/IInsertOpinionParams.java index 8cea83d..a413cc5 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/IInsertOpinionParams.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/IInsertOpinionParams.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.ResultSet; import java.sql.SQLException; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/IUpdateCollectorParams.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/IUpdateCollectorParams.java index 56208c9..beadaa3 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/IUpdateCollectorParams.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/IUpdateCollectorParams.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.ResultSet; import java.sql.SQLException; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/IUpdateOpinionParams.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/IUpdateOpinionParams.java index 2736f90..9b5c66f 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/IUpdateOpinionParams.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/IUpdateOpinionParams.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.ResultSet; import java.sql.SQLException; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/OpinionAccountDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/OpinionAccountDataAccess.java index ebe5833..1e277ed 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/OpinionAccountDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/OpinionAccountDataAccess.java @@ -1,27 +1,23 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; import java.util.ArrayList; -import java.util.Date; import java.util.List; -import org.apache.commons.lang3.time.DateUtils; - +import com.inqwise.opinion.common.SessionCreditInfo; +import com.inqwise.opinion.infrastructure.dao.DAOException; +import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.infrastructure.dao.Database; import com.inqwise.opinion.infrastructure.dao.IResultSetCallback; +import com.inqwise.opinion.infrastructure.dao.SqlParam; +import com.inqwise.opinion.infrastructure.systemFramework.ResultSetHelper; import com.inqwise.opinion.library.common.errorHandle.ErrorCode; import com.inqwise.opinion.library.common.errorHandle.OperationResult; import com.inqwise.opinion.library.dao.DAOBase; -import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.library.dao.DAOFactory; -import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.infrastructure.dao.SqlParam; -import com.inqwise.opinion.infrastructure.systemFramework.ResultSetHelper; -import com.inqwise.opinion.opinion.common.IOpinionAccount; -import com.inqwise.opinion.opinion.common.SessionCreditInfo; public class OpinionAccountDataAccess extends DAOBase { diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/OpinionsDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/OpinionsDataAccess.java index ddf93dd..c733c51 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/OpinionsDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/OpinionsDataAccess.java @@ -1,18 +1,19 @@ /** * */ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; import java.util.Date; -import java.util.LinkedHashMap; +import java.util.List; import javax.naming.OperationNotSupportedException; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; +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; @@ -222,7 +223,7 @@ public static BaseOperationResult setThemeId(Long opinionId, } } - public static CDataCacheContainer getOpinions(Long accountId, + public static JSONArray getOpinions(Long accountId, int top, Date from, Date to, Integer opinionTypeId, long translationId, String orderBy) throws DAOException { Connection connection = null; @@ -244,8 +245,18 @@ public static CDataCacheContainer getOpinions(Long accountId, call = factory.GetProcedureCall("getOpinions", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); @@ -365,7 +376,7 @@ public static void updateOpinion(IUpdateOpinionParams params) throws DAOExceptio } - public static CDataCacheContainer getTemplatesDataSet() throws DAOException { + public static JSONArray getTemplatesDataSet() throws DAOException { Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -379,8 +390,18 @@ public static CDataCacheContainer getTemplatesDataSet() throws DAOException { call = factory.GetProcedureCall("getOpinionTemplates", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/Options.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/Options.java index 7b4cd46..5a4c9df 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/Options.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/Options.java @@ -1,27 +1,23 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.ArrayList; -import java.util.List; import javax.naming.OperationNotSupportedException; +import com.inqwise.opinion.common.ICreateResult; +import com.inqwise.opinion.common.IOptionRequest; +import com.inqwise.opinion.infrastructure.dao.DAOException; +import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.infrastructure.dao.Database; -import com.inqwise.opinion.infrastructure.dao.IDataFillable; +import com.inqwise.opinion.infrastructure.dao.SqlParam; 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.dao.DAOBase; -import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.library.dao.DAOFactory; -import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.infrastructure.dao.SqlParam; -import com.inqwise.opinion.opinion.common.ICreateResult; -import com.inqwise.opinion.opinion.common.IOption; -import com.inqwise.opinion.opinion.common.IOptionRequest; public class Options extends DAOBase{ @@ -35,7 +31,6 @@ public class Options extends DAOBase{ public final static String JOINED_IDS_PARAM = "$ids"; public final static String IS_ENABLE_ADDITIONAL_DETAILS_PARAM = "$is_enable_additional_info"; public final static String ADDITIONAL_DETAILS_TITLE_PARAM = "$additional_details_title"; - private static final String ANSWER_SESSION_ID_PARAM = "$answer_session_id"; public static final String OPTION_KIND_ID_PARAM = "$option_kind_id"; private static final String OPINION_ID_PARAM = "$opinion_id"; private static final String USER_ID_PARAM = "$user_id"; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/PollsDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/PollsDataAccess.java index e4a65c3..23cca6d 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/PollsDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/PollsDataAccess.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; public class PollsDataAccess extends OpinionsDataAccess { diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/Responses.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/Responses.java index ec6ce69..2511483 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/Responses.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/Responses.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; @@ -14,7 +14,7 @@ import com.inqwise.opinion.library.dao.Databases; import com.inqwise.opinion.infrastructure.dao.SqlParam; import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; -import com.inqwise.opinion.opinion.common.IResponseRequest; +import com.inqwise.opinion.common.IResponseRequest; public class Responses extends DAOBase { static ApplicationLog logger = ApplicationLog.getLogger(Responses.class); 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 da75047..39974e7 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 @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; @@ -13,11 +13,16 @@ import java.util.Map; import java.util.TreeMap; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; - import org.apache.commons.lang3.StringUtils; +import org.jooq.impl.DSL; +import org.jooq.tools.json.JSONArray; +import org.json.JSONObject; +import com.inqwise.opinion.common.ParentType; +import com.inqwise.opinion.common.analizeResults.IAnalizeControl; +import com.inqwise.opinion.common.analizeResults.IAnalizeOption; +import com.inqwise.opinion.common.analizeResults.IControlsContainer; +import com.inqwise.opinion.common.analizeResults.IOptionsContainer; import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.infrastructure.dao.Database; @@ -28,11 +33,9 @@ import com.inqwise.opinion.library.dao.DAOBase; import com.inqwise.opinion.library.dao.DAOFactory; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.opinion.common.ParentType; -import com.inqwise.opinion.opinion.common.analizeResults.IAnalizeControl; -import com.inqwise.opinion.opinion.common.analizeResults.IAnalizeOption; -import com.inqwise.opinion.opinion.common.analizeResults.IControlsContainer; -import com.inqwise.opinion.opinion.common.analizeResults.IOptionsContainer; + +import net.casper.data.model.CDataCacheContainer; +import net.casper.data.model.CDataCacheDBAdapter; public class Results extends DAOBase { private static final String ACCOUNT_ID_PARAM = "$account_id"; @@ -190,7 +193,7 @@ public static Map getResultsFreeText(long opinionId, Long contro } } - public static CDataCacheContainer getCountriesStatistics(long opinionId, Long accountId, Date from, Date to, Long collectorId, boolean includePartial) throws DAOException{ + public static JSONArray getCountriesStatistics(long opinionId, Long accountId, Date from, Date to, Long collectorId, boolean includePartial) throws DAOException{ Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -209,9 +212,18 @@ public static CDataCacheContainer getCountriesStatistics(long opinionId, Long ac call = factory.GetProcedureCall("getResultsCountriesStatistics", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); - + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); } finally { diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/ServicePackageSettings.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/ServicePackageSettings.java index beabc89..1af6da6 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/ServicePackageSettings.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/ServicePackageSettings.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; @@ -16,9 +16,8 @@ import com.inqwise.opinion.library.dao.Databases; import com.inqwise.opinion.infrastructure.dao.SqlParam; import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; -import com.inqwise.opinion.opinion.common.servicePackage.IOpinionServicePackageSettingsUpdateRequest; -import com.inqwise.opinion.opinion.common.servicePackage.IServicePackageSettings; -import com.inqwise.opinion.opinion.common.sheet.ISheet; +import com.inqwise.opinion.common.servicePackage.IOpinionServicePackageSettingsUpdateRequest; +import com.inqwise.opinion.common.servicePackage.IServicePackageSettings; public class ServicePackageSettings extends DAOBase{ private static final String SERVICE_PACKAGE_SUPPLY_DAYS_INTERVAL_PARAM = "$sps_supply_days_interval"; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/Sheets.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/Sheets.java index 69daf9d..1b5161e 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/Sheets.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/Sheets.java @@ -1,12 +1,10 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; -import java.util.UUID; - import javax.naming.OperationNotSupportedException; import com.inqwise.opinion.infrastructure.dao.Database; @@ -22,9 +20,9 @@ import com.inqwise.opinion.infrastructure.dao.SqlParam; import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; import com.inqwise.opinion.infrastructure.systemFramework.ResultSetHelper; -import com.inqwise.opinion.opinion.common.sheet.ISheet; -import com.inqwise.opinion.opinion.common.sheet.ISheetRequest; -import com.inqwise.opinion.opinion.common.sheet.StartSheetIndexData; +import com.inqwise.opinion.common.sheet.ISheet; +import com.inqwise.opinion.common.sheet.ISheetRequest; +import com.inqwise.opinion.common.sheet.StartSheetIndexData; public final class Sheets extends DAOBase{ static ApplicationLog logger = ApplicationLog.getLogger(Sheets.class); diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/SkipLogicRulesDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/SkipLogicRulesDataAccess.java index 3d86e1d..dc5e8bc 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/SkipLogicRulesDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/SkipLogicRulesDataAccess.java @@ -1,4 +1,4 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import com.inqwise.opinion.infrastructure.dao.IResultSetCallback; import com.inqwise.opinion.library.dao.DAOBase; diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/Surveys.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/Surveys.java index 35aa456..41e96fa 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/Surveys.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/Surveys.java @@ -1,29 +1,18 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.ArrayList; -import java.util.List; -import javax.naming.OperationNotSupportedException; -import com.inqwise.opinion.infrastructure.dao.Database; -import com.inqwise.opinion.infrastructure.dao.IDataFillable; -import com.inqwise.opinion.infrastructure.dao.IResultSetCallback; -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.dao.DAOBase; +import com.inqwise.opinion.common.SurveyStatistics; import com.inqwise.opinion.infrastructure.dao.DAOException; -import com.inqwise.opinion.library.dao.DAOFactory; import com.inqwise.opinion.infrastructure.dao.DAOUtil; -import com.inqwise.opinion.library.dao.Databases; +import com.inqwise.opinion.infrastructure.dao.Database; import com.inqwise.opinion.infrastructure.dao.SqlParam; import com.inqwise.opinion.infrastructure.systemFramework.ResultSetHelper; -import com.inqwise.opinion.opinion.actions.opinions.ICreatePollRequest; -import com.inqwise.opinion.opinion.actions.opinions.ICreateSurveyRequest; -import com.inqwise.opinion.opinion.actions.opinions.IModifySurveyRequest; -import com.inqwise.opinion.opinion.common.SurveyStatistics; +import com.inqwise.opinion.library.common.errorHandle.OperationResult; +import com.inqwise.opinion.library.dao.DAOFactory; +import com.inqwise.opinion.library.dao.Databases; public class Surveys extends OpinionsDataAccess { diff --git a/opinion-library/src/main/java/com/inqwise/opinion/dao/ThemesDataAccess.java b/opinion-library/src/main/java/com/inqwise/opinion/dao/ThemesDataAccess.java index 6f1f2a1..b016bcb 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/dao/ThemesDataAccess.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/dao/ThemesDataAccess.java @@ -1,23 +1,22 @@ -package com.inqwise.opinion.opinion.dao; +package com.inqwise.opinion.dao; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; -import java.util.LinkedHashMap; +import java.util.List; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; +import org.jooq.impl.DSL; +import org.jooq.tools.json.JSONArray; +import org.json.JSONObject; import com.inqwise.opinion.infrastructure.dao.DAOException; import com.inqwise.opinion.infrastructure.dao.DAOUtil; import com.inqwise.opinion.infrastructure.dao.Database; import com.inqwise.opinion.infrastructure.dao.IResultSetCallback; import com.inqwise.opinion.infrastructure.dao.SqlParam; -import com.inqwise.opinion.library.common.errorHandle.OperationResult; import com.inqwise.opinion.library.dao.DAOBase; import com.inqwise.opinion.library.dao.DAOFactory; import com.inqwise.opinion.library.dao.Databases; -import com.inqwise.opinion.opinion.common.ITheme; public class ThemesDataAccess extends DAOBase { @@ -33,7 +32,7 @@ public class ThemesDataAccess extends DAOBase { private static final String TRANSLATION_ID_PARAM = "$translation_id"; - public static CDataCacheContainer getThemes(Long accountId, Integer top, int opinionTypeId) throws DAOException { + public static JSONArray getThemes(Long accountId, Integer top, int opinionTypeId) throws DAOException { Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -49,8 +48,18 @@ public static CDataCacheContainer getThemes(Long accountId, Integer top, int opi call = factory.GetProcedureCall("getThemes", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - return CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + return new JSONArray(list); } catch (Exception e) { throw null == call ? new DAOException(e) : new DAOException(call, e); From 93b84e34415eefc4f341fe8b2bf242310acaf20f Mon Sep 17 00:00:00 2001 From: terra Date: Sat, 6 Jan 2024 19:46:15 +0200 Subject: [PATCH 5/6] replace CDataCacheDBAdapter to JSONArray --- .../analizeResults/IAnalizeControl.java | 4 ++-- .../java/com/inqwise/opinion/dao/Results.java | 22 ++++++++++++------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/opinion-library/src/main/java/com/inqwise/opinion/common/analizeResults/IAnalizeControl.java b/opinion-library/src/main/java/com/inqwise/opinion/common/analizeResults/IAnalizeControl.java index 5f6736f..040cb17 100644 --- a/opinion-library/src/main/java/com/inqwise/opinion/common/analizeResults/IAnalizeControl.java +++ b/opinion-library/src/main/java/com/inqwise/opinion/common/analizeResults/IAnalizeControl.java @@ -1,9 +1,9 @@ -package com.inqwise.opinion.opinion.common.analizeResults; +package com.inqwise.opinion.common.analizeResults; import org.json.JSONException; import org.json.JSONObject; -import com.inqwise.opinion.opinion.common.ParentType; +import com.inqwise.opinion.common.ParentType; public interface IAnalizeControl { 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 39974e7..9221cfc 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 @@ -8,7 +8,6 @@ import java.util.Dictionary; import java.util.HashMap; import java.util.Hashtable; -import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.TreeMap; @@ -34,9 +33,6 @@ import com.inqwise.opinion.library.dao.DAOFactory; import com.inqwise.opinion.library.dao.Databases; -import net.casper.data.model.CDataCacheContainer; -import net.casper.data.model.CDataCacheDBAdapter; - public class Results extends DAOBase { private static final String ACCOUNT_ID_PARAM = "$account_id"; private static final String OPINION_ID_PARAM = "$opinion_id"; @@ -118,8 +114,8 @@ public static List getControlsResults( } } - public static CDataCacheContainer getAllResults(long opinionId, Long accountId, Long[] sessionIds, boolean includePartial, TreeMap headerIdsMap) throws DAOException{ - CDataCacheContainer result; + public static JSONArray getAllResults(long opinionId, Long accountId, Long[] sessionIds, boolean includePartial, TreeMap headerIdsMap) throws DAOException{ + JSONArray result; Connection connection = null; CallableStatement call = null; ResultSet resultSet = null; @@ -136,8 +132,18 @@ public static CDataCacheContainer getAllResults(long opinionId, Long accountId, call = factory.GetProcedureCall("getAllResults", params); connection = call.getConnection(); resultSet = call.executeQuery(); - String[] primaryKeys = null; - result = CDataCacheDBAdapter.loadData(resultSet, null, primaryKeys, new LinkedHashMap()); + + List list = DSL.using(connection).fetch(resultSet) + .map(r -> { + JSONObject obj = new JSONObject(); + + for(var field : r.fields()) { + obj.put(field.getName(), r.getValue(field)); + } + return obj; + }); + + result = new JSONArray(list); if(call.getMoreResults()){ resultSet = call.getResultSet(); From 86617724f0aa9f271c4a4f752643e4cf69649a91 Mon Sep 17 00:00:00 2001 From: alex misyuk Date: Sun, 7 Jan 2024 09:04:21 +0200 Subject: [PATCH 6/6] fix import path --- .../inqwise/opinion/library/actions/ExternalLoginAction.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opinion-library-core/src/main/java/com/inqwise/opinion/library/actions/ExternalLoginAction.java b/opinion-library-core/src/main/java/com/inqwise/opinion/library/actions/ExternalLoginAction.java index d27c71a..98c41e3 100644 --- a/opinion-library-core/src/main/java/com/inqwise/opinion/library/actions/ExternalLoginAction.java +++ b/opinion-library-core/src/main/java/com/inqwise/opinion/library/actions/ExternalLoginAction.java @@ -27,6 +27,7 @@ import com.inqwise.opinion.infrastructure.dao.IResultSetCallback; import com.inqwise.opinion.infrastructure.systemFramework.ApplicationLog; import com.inqwise.opinion.infrastructure.systemFramework.Convert; +import com.inqwise.opinion.infrastructure.systemFramework.GeoIpManager; import com.inqwise.opinion.library.common.IProduct; import com.inqwise.opinion.library.common.ISession; import com.inqwise.opinion.library.common.accounts.IAccount; @@ -47,7 +48,6 @@ import com.inqwise.opinion.library.managers.ServicePackagesManager; import com.inqwise.opinion.library.managers.UsersManager; import com.inqwise.opinion.library.systemFramework.ApplicationConfiguration; -import com.inqwise.opinion.library.systemFramework.GeoIpManager; public class ExternalLoginAction {