diff --git a/pom.xml b/pom.xml index c8b6882fa..ef51f8c0f 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 manage - 1.3.1 + 1.3.2 UTF-8 1.4.0 diff --git a/src/main/java/au/com/royalpay/payment/manage/mappers/system/ClientDeviceMapper.java b/src/main/java/au/com/royalpay/payment/manage/mappers/system/ClientDeviceMapper.java index cc87aaed2..62563ac3d 100644 --- a/src/main/java/au/com/royalpay/payment/manage/mappers/system/ClientDeviceMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/mappers/system/ClientDeviceMapper.java @@ -9,6 +9,8 @@ import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import com.github.miemiedev.mybatis.paginator.domain.PageList; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * Created by yixian on 2016-09-12. */ @@ -45,4 +47,6 @@ public interface ClientDeviceMapper { PageList listDevices(JSONObject params, PageBounds pagination); void deviceOffline(@Param("account_id") String accountId); + + List listClientDeviceIds(JSONObject params); } diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/core/ClientManager.java b/src/main/java/au/com/royalpay/payment/manage/merchants/core/ClientManager.java index fb979ebcb..3cbdf6454 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/core/ClientManager.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/core/ClientManager.java @@ -203,6 +203,15 @@ public interface ClientManager { JSONObject listClientDevices(JSONObject manager, String clientMoniker, String remark, int page, int limit, String client_type, String[] client_ids); + /** + * 获取所有设备Id分类 + * @param clientMoniker + * @param client_type + * @param client_ids + * @return + */ + JSONObject listClientDeviceIds(String clientMoniker, String client_type, String[] client_ids); + void updateDevie(JSONObject manager, String clientMoniker, String devId, String remark); void toggleDeviceAvailable(JSONObject manager, String clientMoniker, String devId, boolean enable); diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java index 0f7844be0..26a4f6dd8 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java @@ -2573,6 +2573,27 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid return PageListUtils.buildPageListResult(devices); } + @Override + public JSONObject listClientDeviceIds(String clientMoniker, String client_type, String[] client_ids) { + JSONObject client = getClientInfoByMoniker(clientMoniker); + if (client == null) { + throw new InvalidShortIdException(); + } + checkOrgPermission(null, client); + JSONObject params = new JSONObject(); + SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); + sdf.setTimeZone(TimeZone.getTimeZone(client.getString("timezone") != null ? client.getString("timezone") : "Australia/Melbourne")); + params.put("client_id", client.getIntValue("client_id")); + if (client_ids != null) { + params.put("client_ids", Arrays.asList(client_ids)); + params.remove("client_id"); + } + List deviceIds = clientDeviceMapper.listClientDeviceIds(params); + return new JSONObject(){{ + put("data",deviceIds); + }}; + } + @Override @Transactional public void addDevice(JSONObject manager, String clientMoniker, JSONObject newDevice) { diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerViewController.java b/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerViewController.java index 263f41335..4d8441971 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerViewController.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/web/PartnerViewController.java @@ -364,6 +364,13 @@ public class PartnerViewController { return clientManager.listClientDevices(null, account.getString("client_moniker"), remark, page, limit, client_type, client_ids); } + @PartnerMapping(value = "/device_ids", method = RequestMethod.GET, roles = PartnerRole.ADMIN) + @ResponseBody + public JSONObject listClientDeviceIds(@ModelAttribute(CommonConsts.PARTNER_STATUS) JSONObject account, + @RequestParam(required = false) String client_type, @RequestParam(required = false) String[] client_ids) { + return clientManager.listClientDeviceIds(account.getString("client_moniker"), client_type, client_ids); + } + @PartnerMapping(value = "/devices/{devId}", method = RequestMethod.PUT, roles = PartnerRole.ADMIN) @ResponseBody public void modifyDevice(@ModelAttribute(CommonConsts.PARTNER_STATUS) JSONObject account, @PathVariable String devId, @RequestBody JSONObject remark) { diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml index a3d0af434..22564bdb5 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/OrderMapper.xml @@ -510,7 +510,7 @@ and o.client_order_id = #{search_text} - and dev_id=#{dev_id} + and binary dev_id=#{dev_id} and o.gateway in #{gateway} @@ -664,7 +664,7 @@ and o.create_time >= #{from} and o.create_time < #{to} and date(o.create_time)=date(#{date}) - and o.dev_id=#{dev_id} + and binary o.dev_id=#{dev_id} and o.status=#{std} diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/TransactionMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/TransactionMapper.xml index 7a54bdbc5..4783e302a 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/TransactionMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/payment/TransactionMapper.xml @@ -170,7 +170,7 @@ and t.refund_id is NOT NULL and t.transaction_type='Debit' and t.refund_id is NULL - and o.dev_id = #{dev_id} + and binary o.dev_id = #{dev_id} and @@ -241,7 +241,7 @@ and t.refund_id is NOT NULL and t.transaction_type='Debit' and t.refund_id is NULL - and o.dev_id = #{dev_id} + and binary o.dev_id = #{dev_id} and diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/system/ClientDeviceMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/system/ClientDeviceMapper.xml index af5953388..7e18c8768 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/system/ClientDeviceMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/system/ClientDeviceMapper.xml @@ -22,6 +22,23 @@ +