根据订单号获取报名单列表接口

master
liuqingkun 3 years ago
parent 7d54439c74
commit 964b11f179
  1. 1
      src/main/java/org/springblade/common/cache/AddressCache.java
  2. 32
      src/main/java/org/springblade/modules/desk/controller/CustomMadeInfoController.java
  3. 19
      src/main/java/org/springblade/modules/desk/controller/OrderController.java
  4. 10
      src/main/java/org/springblade/modules/desk/entity/CustomMadeInfo.java
  5. 12
      src/main/java/org/springblade/modules/desk/vo/CustomMadeInfoExcelVO.java

@ -42,5 +42,4 @@ public class AddressCache {
public static WeChatAddress getAddress(String phone) { public static WeChatAddress getAddress(String phone) {
return CacheUtil.get(DEFAULT_CACHE, WX_ADDRESS, phone, () -> wechatAddressService.getAddress(phone)); return CacheUtil.get(DEFAULT_CACHE, WX_ADDRESS, phone, () -> wechatAddressService.getAddress(phone));
} }
} }

@ -92,14 +92,27 @@ public class CustomMadeInfoController extends BladeController {
return R.data(info); return R.data(info);
} }
/**
* 获取订单已填写的报名单列表
*/
@GetMapping("/list-by-order-no")
public R<List<CustomMadeInfo>> listByOrderNo(@RequestParam String orderNo) {
LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery();
wrapper.eq(CustomMadeInfo::getOrderNo, orderNo);
List<CustomMadeInfo> pages = iCustomMadeInfoService.list(wrapper);
return R.data(pages);
}
/** /**
* 分页 * 分页
*/ */
@GetMapping("/list") @GetMapping("/list")
public R<IPage<CustomMadeInfo>> list(Query query, String username, String phone, String pillowMaterial, public R<IPage<CustomMadeInfo>> list(Query query, String orderNo, String username, String phone, String pillowMaterial,
String pillowHardness, String ageRange, String startTime, String endTime) { String pillowHardness, String ageRange, String startTime, String endTime) {
LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery(); LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery();
if (Func.isNotEmpty(orderNo)) {
wrapper.like(CustomMadeInfo::getOrderNo, orderNo);
}
if (Func.isNotEmpty(username)) { if (Func.isNotEmpty(username)) {
wrapper.like(CustomMadeInfo::getUsername, username); wrapper.like(CustomMadeInfo::getUsername, username);
} }
@ -130,9 +143,12 @@ public class CustomMadeInfoController extends BladeController {
* 导出 * 导出
*/ */
@GetMapping("/export") @GetMapping("/export")
public void export(HttpServletResponse response, String username, String phone, String pillowMaterial, public void export(HttpServletResponse response, String orderNo, String username, String phone, String pillowMaterial,
String pillowHardness, String ageRange, String startTime, String endTime) { String pillowHardness, String ageRange, String startTime, String endTime) {
LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery(); LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery();
if (Func.isNotEmpty(orderNo)) {
wrapper.like(CustomMadeInfo::getOrderNo, orderNo);
}
if (Func.isNotEmpty(username)) { if (Func.isNotEmpty(username)) {
wrapper.like(CustomMadeInfo::getUsername, username); wrapper.like(CustomMadeInfo::getUsername, username);
} }
@ -176,6 +192,12 @@ public class CustomMadeInfoController extends BladeController {
*/ */
@PostMapping("/save") @PostMapping("/save")
public R save(@RequestBody CustomMadeInfo info) { public R save(@RequestBody CustomMadeInfo info) {
if (Func.isEmpty(info.getOrderNoSort())) {
LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery();
wrapper.eq(CustomMadeInfo::getOrderNo, info.getOrderNo());
int total = Func.toInt(iCustomMadeInfoService.count(wrapper));
info.setOrderNoSort(total + 1);
}
return R.status(iCustomMadeInfoService.save(info)); return R.status(iCustomMadeInfoService.save(info));
} }
@ -192,6 +214,12 @@ public class CustomMadeInfoController extends BladeController {
*/ */
@PostMapping("/submit") @PostMapping("/submit")
public R submit(@RequestBody CustomMadeInfo info) { public R submit(@RequestBody CustomMadeInfo info) {
if (Func.isEmpty(info.getOrderNoSort())) {
LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery();
wrapper.eq(CustomMadeInfo::getOrderNo, info.getOrderNo());
int total = Func.toInt(iCustomMadeInfoService.count(wrapper));
info.setOrderNoSort(total + 1);
}
return R.status(iCustomMadeInfoService.saveOrUpdate(info)); return R.status(iCustomMadeInfoService.saveOrUpdate(info));
} }

@ -131,12 +131,19 @@ public class OrderController {
info.setGoodsNum(goodsNum); info.setGoodsNum(goodsNum);
info.setTotalPrice(Func.toDouble(info.getGoodsPrice() * goodsNum)); info.setTotalPrice(Func.toDouble(info.getGoodsPrice() * goodsNum));
// 设置默认地址 if (Func.isEmpty(info.getAddress())) {
WeChatAddress address = AddressCache.getAddress(info.getBuyerPhone()); // 设置默认地址
if (Func.isNotEmpty(address)) { WeChatAddress address = AddressCache.getAddress(info.getBuyerPhone());
info.setAddress(address.getProvince().concat(address.getCity()).concat(address.getArea()).concat(address.getAddress())); if (Func.isNotEmpty(address)) {
info.setConsignee(address.getConsignee()); String addr = "";
info.setConsigneePhone(address.getPhone()); addr += Func.isNotEmpty(address.getProvince()) ? address.getProvince() : "";
addr += Func.isNotEmpty(address.getCity()) ? address.getCity() : "";
addr += Func.isNotEmpty(address.getArea()) ? address.getArea() : "";
addr += Func.isNotEmpty(address.getAddress()) ? address.getAddress() : "";
info.setAddress(addr);
info.setConsignee(address.getConsignee());
info.setConsigneePhone(address.getPhone());
}
} }
if (orderService.save(info)) { if (orderService.save(info)) {

@ -23,7 +23,6 @@ public class CustomMadeInfo extends BaseEntity {
/** /**
* 购买渠道 * 购买渠道
*/ */
@NotEmpty(message = "purchaseChannel should not be empty.")
private String purchaseChannel; private String purchaseChannel;
/** /**
@ -31,6 +30,11 @@ public class CustomMadeInfo extends BaseEntity {
*/ */
private String orderNo; private String orderNo;
/**
* 报名单排序, 针对一个订单的报名单排序
*/
private Integer orderNoSort;
/** /**
* 备注 * 备注
*/ */
@ -51,25 +55,21 @@ public class CustomMadeInfo extends BaseEntity {
/** /**
* *
*/ */
@NotEmpty(message = "province should not be empty.")
private String province; private String province;
/** /**
* *
*/ */
@NotEmpty(message = "city should not be empty.")
private String city; private String city;
/** /**
* *
*/ */
@NotEmpty(message = "district should not be empty.")
private String district; private String district;
/** /**
* 详细地址 * 详细地址
*/ */
@NotEmpty(message = "detail should not be empty.")
private String detail; private String detail;
/** /**

@ -31,6 +31,18 @@ import java.util.Date;
public class CustomMadeInfoExcelVO { public class CustomMadeInfoExcelVO {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**
* 购买渠道
*/
@ExcelProperty("购买渠道")
private String purchaseChannel;
/**
* 订单编号
*/
@ExcelProperty("订单编号")
private String orderNo;
/** /**
* 姓名 * 姓名
*/ */

Loading…
Cancel
Save