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

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) {
return CacheUtil.get(DEFAULT_CACHE, WX_ADDRESS, phone, () -> wechatAddressService.getAddress(phone));
}
}

@ -92,14 +92,27 @@ public class CustomMadeInfoController extends BladeController {
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")
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) {
LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery();
if (Func.isNotEmpty(orderNo)) {
wrapper.like(CustomMadeInfo::getOrderNo, orderNo);
}
if (Func.isNotEmpty(username)) {
wrapper.like(CustomMadeInfo::getUsername, username);
}
@ -130,9 +143,12 @@ public class CustomMadeInfoController extends BladeController {
* 导出
*/
@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) {
LambdaQueryWrapper<CustomMadeInfo> wrapper = Wrappers.lambdaQuery();
if (Func.isNotEmpty(orderNo)) {
wrapper.like(CustomMadeInfo::getOrderNo, orderNo);
}
if (Func.isNotEmpty(username)) {
wrapper.like(CustomMadeInfo::getUsername, username);
}
@ -176,6 +192,12 @@ public class CustomMadeInfoController extends BladeController {
*/
@PostMapping("/save")
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));
}
@ -192,6 +214,12 @@ public class CustomMadeInfoController extends BladeController {
*/
@PostMapping("/submit")
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));
}

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

@ -23,7 +23,6 @@ public class CustomMadeInfo extends BaseEntity {
/**
* 购买渠道
*/
@NotEmpty(message = "purchaseChannel should not be empty.")
private String purchaseChannel;
/**
@ -31,6 +30,11 @@ public class CustomMadeInfo extends BaseEntity {
*/
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;
/**
*
*/
@NotEmpty(message = "city should not be empty.")
private String city;
/**
*
*/
@NotEmpty(message = "district should not be empty.")
private String district;
/**
* 详细地址
*/
@NotEmpty(message = "detail should not be empty.")
private String detail;
/**

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

Loading…
Cancel
Save