diff --git a/src/main/java/com/ai/da/controller/AccountController.java b/src/main/java/com/ai/da/controller/AccountController.java index 56b2f2f4..7a4f4d84 100644 --- a/src/main/java/com/ai/da/controller/AccountController.java +++ b/src/main/java/com/ai/da/controller/AccountController.java @@ -341,4 +341,11 @@ public class AccountController { public Response unbindGoogle() { return Response.success(accountService.unbindGoogle()); } + + @GetMapping("/updateUserInfo") + @ApiOperation(value = "更新用户国家、职业信息") + public Response updateUserInfo(@RequestParam(value = "country", required = false) String country, @RequestParam(value = "occupation", required = false) String occupation) { + accountService.updateUserInfo(country, occupation); + return Response.success(); + } } diff --git a/src/main/java/com/ai/da/controller/ConvenientInquiryController.java b/src/main/java/com/ai/da/controller/ConvenientInquiryController.java index 42f87ad2..0f8547d5 100644 --- a/src/main/java/com/ai/da/controller/ConvenientInquiryController.java +++ b/src/main/java/com/ai/da/controller/ConvenientInquiryController.java @@ -202,4 +202,10 @@ public class ConvenientInquiryController { public Response> queryTransactionRecords(@Valid @RequestBody QueryPaymentInfoDTO queryPaymentInfoDTO){ return Response.success(convenientInquiryService.queryTransactionRecords(queryPaymentInfoDTO)); } + + @ApiOperation("获取所有国家、城市") + @GetMapping("/getCities") + public Response>> getCities(){ + return Response.success(convenientInquiryService.getCities()); + } } diff --git a/src/main/java/com/ai/da/mapper/primary/PaymentInfoMapper.java b/src/main/java/com/ai/da/mapper/primary/PaymentInfoMapper.java index b0a82f21..1d2cf84d 100644 --- a/src/main/java/com/ai/da/mapper/primary/PaymentInfoMapper.java +++ b/src/main/java/com/ai/da/mapper/primary/PaymentInfoMapper.java @@ -6,6 +6,7 @@ import com.ai.da.model.vo.PaymentInfoVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import java.util.List; +import java.util.Map; public interface PaymentInfoMapper extends BaseMapper { @@ -15,10 +16,14 @@ public interface PaymentInfoMapper extends BaseMapper { List queryPaymentInfo(String paymentType,String payerTotal, String type, String status, String country, String city, String startTime, String endTime, - int limit, int offset + int limit, int offset, String order ); Long queryPaymentInfoCount(String paymentType,String payerTotal, String type, String status, String country, String city, String startTime, String endTime ); + + List> getCities(); + + List> getCountries(); } diff --git a/src/main/java/com/ai/da/model/dto/QueryPaymentInfoDTO.java b/src/main/java/com/ai/da/model/dto/QueryPaymentInfoDTO.java index 28f7ac06..fa61e724 100644 --- a/src/main/java/com/ai/da/model/dto/QueryPaymentInfoDTO.java +++ b/src/main/java/com/ai/da/model/dto/QueryPaymentInfoDTO.java @@ -23,5 +23,6 @@ public class QueryPaymentInfoDTO extends QueryPageByTimeDTO { private String country; @ApiModelProperty("付款人所在城市") private String city; - + @ApiModelProperty("按id排序 DESC || ASC") + private String order = "DESC"; } diff --git a/src/main/java/com/ai/da/service/AccountService.java b/src/main/java/com/ai/da/service/AccountService.java index 2374234e..770143f0 100644 --- a/src/main/java/com/ai/da/service/AccountService.java +++ b/src/main/java/com/ai/da/service/AccountService.java @@ -222,4 +222,6 @@ public interface AccountService extends IService { void updateAccountValidity(Long accountId, Long currentPeriodEnd); void updateUserRoleAndCredits(Long accountId, String type); + + void updateUserInfo(String country, String occupation); } diff --git a/src/main/java/com/ai/da/service/ConvenientInquiryService.java b/src/main/java/com/ai/da/service/ConvenientInquiryService.java index 3e71d645..bb44b6b7 100644 --- a/src/main/java/com/ai/da/service/ConvenientInquiryService.java +++ b/src/main/java/com/ai/da/service/ConvenientInquiryService.java @@ -48,4 +48,6 @@ public interface ConvenientInquiryService extends IService { List> getAllUserIdList(); PageBaseResponse queryTransactionRecords(QueryPaymentInfoDTO queryPaymentInfoDTO); + + Map> getCities(); } diff --git a/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java b/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java index 0bd9a40c..20b97125 100644 --- a/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java @@ -620,11 +620,15 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl queryTransactionRecords(QueryPaymentInfoDTO queryPaymentInfoDTO) { Integer size = queryPaymentInfoDTO.getSize(); int offset = (queryPaymentInfoDTO.getPage() - 1) * size; + String order = "DESC"; + if (!StringUtil.isNullOrEmpty(queryPaymentInfoDTO.getOrder()) && queryPaymentInfoDTO.getOrder().equals("ASC")) { + order = "ASC"; + } List paymentInfoVOS = paymentInfoMapper.queryPaymentInfo(queryPaymentInfoDTO.getPlatform(), queryPaymentInfoDTO.getPayerTotal(), queryPaymentInfoDTO.getType(), queryPaymentInfoDTO.getStatus(), queryPaymentInfoDTO.getCountry(), queryPaymentInfoDTO.getCity(), queryPaymentInfoDTO.getStartTime(), queryPaymentInfoDTO.getEndTime(), - size, offset); + size, offset, order); // 查询数据总量 Long total = paymentInfoMapper.queryPaymentInfoCount(queryPaymentInfoDTO.getPlatform(), queryPaymentInfoDTO.getPayerTotal(), queryPaymentInfoDTO.getType(), queryPaymentInfoDTO.getStatus(), @@ -643,5 +647,20 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl> getCities(){ + List> cities = paymentInfoMapper.getCities(); + List> countries = paymentInfoMapper.getCountries(); + List cityCollect = cities.stream() + .map(cityEntry -> cityEntry.get("city")) + .collect(Collectors.toList()); + List countryCollect = countries.stream() + .map(cityEntry -> cityEntry.get("country")) + .collect(Collectors.toList()); + + return new HashMap>() {{ + put("city", cityCollect); + put("country", countryCollect); + }}; + } } diff --git a/src/main/resources/mapper/primary/PaymentInfoMapper.xml b/src/main/resources/mapper/primary/PaymentInfoMapper.xml index 1d798ac7..0343fd2a 100644 --- a/src/main/resources/mapper/primary/PaymentInfoMapper.xml +++ b/src/main/resources/mapper/primary/PaymentInfoMapper.xml @@ -91,7 +91,7 @@ AND create_time BETWEEN #{startTime} AND #{endTime} ORDER BY - id DESC + id ${order} LIMIT ${limit} OFFSET ${offset} @@ -130,5 +130,18 @@ + + +