diff --git a/src/main/java/au/com/royalpay/payment/manage/appclient/core/ManageAppService.java b/src/main/java/au/com/royalpay/payment/manage/appclient/core/ManageAppService.java index acdbe48d8..bcb07f1d4 100644 --- a/src/main/java/au/com/royalpay/payment/manage/appclient/core/ManageAppService.java +++ b/src/main/java/au/com/royalpay/payment/manage/appclient/core/ManageAppService.java @@ -33,4 +33,10 @@ public interface ManageAppService { JSONObject getCommons(JSONObject device); + List getOrgPrizeList(JSONObject device); + + List getBdConfigRates(JSONObject device); + + JSONObject getBdConfigKpi(JSONObject device); + } diff --git a/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/ManageAppServiceImp.java b/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/ManageAppServiceImp.java index f4f21a3cd..4fc8f2730 100644 --- a/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/ManageAppServiceImp.java +++ b/src/main/java/au/com/royalpay/payment/manage/appclient/core/impls/ManageAppServiceImp.java @@ -1,6 +1,8 @@ package au.com.royalpay.payment.manage.appclient.core.impls; import au.com.royalpay.payment.manage.appclient.core.ManageAppService; +import au.com.royalpay.payment.manage.bdprize.core.BDPrizeService; +import au.com.royalpay.payment.manage.mappers.financial.FinancialBDConfigMapper; import au.com.royalpay.payment.manage.mappers.financial.FinancialBDPrizeLogMapper; import au.com.royalpay.payment.manage.mappers.financial.FinancialBDPrizeRecordMapper; import au.com.royalpay.payment.manage.mappers.financial.FinancialPartnerCommissionMapper; @@ -22,6 +24,7 @@ import au.com.royalpay.payment.tools.exceptions.ForbiddenException; import com.alibaba.fastjson.JSONObject; import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import org.apache.commons.lang3.time.DateFormatUtils; +import org.apache.ibatis.annotations.Param; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; @@ -54,6 +57,10 @@ public class ManageAppServiceImp implements ManageAppService { private FinancialBDPrizeLogMapper financialBDPrizeLogMapper; @Resource private FinancialPartnerCommissionMapper financialPartnerCommissionMapper; + @Resource + private BDPrizeService bdPrizeService; + @Resource + private FinancialBDConfigMapper financialBDConfigMapper; @Override @@ -225,4 +232,28 @@ public class ManageAppServiceImp implements ManageAppService { total.put("date", DateFormatUtils.format(monthCal.getTime(), "yyyy-MM")); return total; } + + @Override + public List getOrgPrizeList(JSONObject device) { + String clientType = device.getString("client_type"); + manageDeviceSupport.findRegister(clientType); + JSONObject manager = managerMapper.findById(device.getString("manager_id")); + List getOrgPrizeList = financialPartnerCommissionMapper.getOrgPrizeList(manager.getString("org_id")); + return getOrgPrizeList; + } + + @Override + public List getBdConfigRates(JSONObject device) { + String clientType = device.getString("client_type"); + manageDeviceSupport.findRegister(clientType); + return bdPrizeService.getRateConfig(); + } + + @Override + public JSONObject getBdConfigKpi(JSONObject device) { + String clientType = device.getString("client_type"); + manageDeviceSupport.findRegister(clientType); + JSONObject manager = managerMapper.findById(device.getString("manager_id")); + return financialBDConfigMapper.getBDConfigById(manager.getString("manager_id")); + } } diff --git a/src/main/java/au/com/royalpay/payment/manage/appclient/web/ManageAppController.java b/src/main/java/au/com/royalpay/payment/manage/appclient/web/ManageAppController.java index 28daa8408..433d4098b 100644 --- a/src/main/java/au/com/royalpay/payment/manage/appclient/web/ManageAppController.java +++ b/src/main/java/au/com/royalpay/payment/manage/appclient/web/ManageAppController.java @@ -7,6 +7,7 @@ import au.com.royalpay.payment.manage.permission.manager.ManagerMapping; import au.com.royalpay.payment.manage.signin.beans.ChangePwdBean; import au.com.royalpay.payment.tools.CommonConsts; import au.com.royalpay.payment.tools.connections.attachment.core.AttachmentClient; +import au.com.royalpay.payment.tools.device.manageadvise.AppClientController; import au.com.royalpay.payment.tools.http.HttpUtils; import au.com.royalpay.payment.tools.permission.enums.ManagerRole; import com.alibaba.fastjson.JSONObject; @@ -21,7 +22,7 @@ import javax.validation.Valid; import java.util.List; -@RestController +@AppClientController @RequestMapping("/api/v1.0/manage/app") public class ManageAppController { Logger logger = LoggerFactory.getLogger(getClass()); @@ -49,7 +50,7 @@ public class ManageAppController { } @RequestMapping(value = "/referrer", method = RequestMethod.GET) - public List getReferrerList(@ModelAttribute(CommonConsts.MANAGER_DEVICE) JSONObject device, @RequestBody JSONObject token) { + public List getReferrerList(@ModelAttribute(CommonConsts.MANAGER_DEVICE) JSONObject device) { return manageAppService.getReferrerList(device); } @@ -60,7 +61,7 @@ public class ManageAppController { @RequestMapping(value = "/merchant/register", method = RequestMethod.POST) public JSONObject registerPartner(@ModelAttribute(CommonConsts.MANAGER_DEVICE) JSONObject device, @RequestBody @Valid ClientRegisterInfo registery, - Errors errors){ + Errors errors) { HttpUtils.handleValidErrors(errors); return manageAppService.registerClient(device, registery); } @@ -91,6 +92,18 @@ public class ManageAppController { return manageAppService.getCommons(device); } + @RequestMapping(value = "/org_prize/list", method = RequestMethod.GET) + public List getOrgPrizeList(@ModelAttribute(CommonConsts.MANAGER_DEVICE) JSONObject device) { + return manageAppService.getOrgPrizeList(device); + } + @RequestMapping(value = "/bd/rates", method = RequestMethod.GET) + public List getBdConfigRates(@ModelAttribute(CommonConsts.MANAGER_DEVICE) JSONObject device) { + return manageAppService.getBdConfigRates(device); + } + @RequestMapping(value = "/bd/kpi", method = RequestMethod.GET) + public JSONObject getBdConfigKpi(@ModelAttribute(CommonConsts.MANAGER_DEVICE) JSONObject device) { + return manageAppService.getBdConfigKpi(device); + } } diff --git a/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialBDConfigMapper.java b/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialBDConfigMapper.java index ff541b62a..8b4c76832 100644 --- a/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialBDConfigMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialBDConfigMapper.java @@ -26,6 +26,8 @@ public interface FinancialBDConfigMapper { List listBDConfig(); + JSONObject getBDConfigById(@Param("manager_id") String manager_id); + List listGroupBds(@Param("bd_group") String bd_group); BigDecimal getGroupAmount(@Param("bd_group") String bd_group, @Param("record_id") String record_id, @Param("channel") String channel); diff --git a/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionMapper.java b/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionMapper.java index 350e37486..a912023a3 100644 --- a/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/mappers/financial/FinancialPartnerCommissionMapper.java @@ -24,6 +24,8 @@ public interface FinancialPartnerCommissionMapper { @AutoSql(type = SqlType.UPDATE) void update(JSONObject commission); + List getOrgPrizeList(@Param("org_id") String orgId); + List listAvailableMonths(@Param("year") int year); List listWithOrgInfo(@Param("year") int year, @Param("month") int month); diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/financial/FinancialBDConfigMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/financial/FinancialBDConfigMapper.xml index 563654312..f403c4064 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/financial/FinancialBDConfigMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/financial/FinancialBDConfigMapper.xml @@ -18,6 +18,24 @@ ]]> + + + SELECT * + FROM financial_partner_commission + WHERE org_id = #{org_id} + ORDER BY `year` DESC,`month` DESC +