提交 10868fb2 编写于 作者: 郝先瑞

refactor: 代码优化

上级 e845ed5b
......@@ -19,16 +19,14 @@ import java.util.ArrayList;
import java.util.List;
/**
* @Author haoxr
* @Date 2021-02-25 15:36
* @Version 1.0.0
* @author haoxr
* @date 2021/02/25 15:36
*/
@Configuration
@EnableSwagger2WebMvc
@Import(BeanValidatorPluginsConfiguration.class)
public class SwaggerConfiguration {
@Bean
public Docket restApi() {
//schema
......
......@@ -3,6 +3,7 @@ package com.youlai.mall.ums.controller.admin;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.youlai.common.constant.GlobalConstants;
import com.youlai.common.result.Result;
import com.youlai.mall.ums.pojo.entity.UmsMember;
import com.youlai.mall.ums.service.IUmsMemberService;
......@@ -12,11 +13,9 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
import static com.youlai.common.constant.GlobalConstants.STATUS_YES;
@Api(tags = "系统管理_会员中心")
@RestController
......@@ -73,10 +72,11 @@ public class MemberController {
@ApiOperation(value = "删除会员")
@DeleteMapping("/{ids}")
public <T> Result<T> delete(
@ApiParam("会员ID,多个以英文逗号(,)拼接") @PathVariable String ids) {
@ApiParam("会员ID,多个以英文逗号(,)拼接") @PathVariable String ids
) {
boolean status = iUmsMemberService.update(new LambdaUpdateWrapper<UmsMember>()
.in(UmsMember::getId, Arrays.asList(ids.split(",")))
.set(UmsMember::getDeleted, STATUS_YES));
.set(UmsMember::getDeleted, GlobalConstants.STATUS_YES));
return Result.judge(status);
}
}
package com.youlai.mall.ums.controller.admin;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.youlai.common.result.Result;
import com.youlai.mall.ums.pojo.entity.UmsMember;
import com.youlai.mall.ums.pojo.dto.RechargeDTO;
import com.youlai.mall.ums.pojo.dto.ResultPayDTO;
import com.youlai.mall.ums.service.IUmsMemberService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.http.HttpStatus;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.client.RestTemplate;
import java.util.HashMap;
import java.util.Map;
@Api(tags = "系统管理端-会员充值")
@RestController("AdminRechargeController")
@RequestMapping("/api/v1/recharge-orders")
@Slf4j
public class RechargeController {
@Autowired
private RestTemplate restTemplate;
@Value("${zzf.CreateOrderURL}")
private String createOrderURL;
@Value("${zzf.FindOrderURL}")
private String findOrderURL;
@Value("${zzf.AppKey}")
private String appKey;
@Value("${zzf.AppSecret}")
private String appSecret;
@ApiOperation(value = "账户余额充值订单")
@PostMapping
public Result recharge(@RequestBody RechargeDTO rechargeDTO) {
HttpHeaders headers = new HttpHeaders();
headers.set(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED_VALUE);
headers.set("Payment-Key", appKey);
headers.set("Payment-Secret", appSecret);
HttpEntity<Map> httpEntity = new HttpEntity<>(null, headers);
String url = createOrderURL + "?price=" + rechargeDTO.getPrice() + "&name=" + rechargeDTO.getName() + "&thirduid=" + rechargeDTO.getThirduid();
ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, httpEntity, String.class);
int statusCode = responseEntity.getStatusCode().value();
if (statusCode == HttpStatus.SC_OK) {
String responseBody = responseEntity.getBody();
JSONObject jsonObject = JSONUtil.parseObj(responseBody);
if (jsonObject.getStr("code").equals("10001")) {
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("name", jsonObject.getStr("name"));
resultMap.put("price", jsonObject.getStr("price"));
resultMap.put("orderId", jsonObject.getStr("orderId"));
return Result.success(resultMap);
} else {
return Result.failed(jsonObject.getStr("msg"));
}
}
return Result.failed();
}
/**
* 订单支付状态查询
*/
@ResponseBody
@GetMapping("/{id}")
public Object findOrderState(@PathVariable String id) {
HttpHeaders headers = new HttpHeaders();
headers.set(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED_VALUE);
headers.set("Payment-Key", appKey);
headers.set("Payment-Secret", appSecret);
String url = findOrderURL + "?orderId=" + id;
ResponseEntity<String> responseEntity = restTemplate.getForEntity(url, String.class);
int statusCode = responseEntity.getStatusCode().value();
if (statusCode == HttpStatus.SC_OK) {
String responseBody = responseEntity.getBody();
JSONObject jsonObject = JSONUtil.parseObj(responseBody);
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("code", jsonObject.getStr("code"));
resultMap.put("msg", jsonObject.getStr("msg"));
return Result.success(resultMap);
}
return Result.failed();
}
private IUmsMemberService iUmsMemberService;
@PostMapping(value = "/callback")
public void receiveCallBack(@RequestBody ResultPayDTO resultPay) {
log.info("recharge callback:{}", resultPay.toString());
//处理自己的业务逻辑
//例如开通会员、用户充值等等。。。
String thirduid = resultPay.getThirduid();
UmsMember user = iUmsMemberService.getById(thirduid);
if (user != null) {
user.setBalance((long) (user.getBalance() + Float.valueOf(resultPay.getPrice()) * 100 * 10000));
}
iUmsMemberService.updateById(user);
}
}
......@@ -15,7 +15,6 @@ import java.util.List;
@Mapper
public interface UmsUserMapper extends BaseMapper<UmsMember> {
@Select("<script>" +
" SELECT * from ums_member " +
" <if test ='nickname !=null and nickname.trim() neq \"\" ' >" +
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册