Commit 92f6a5ed authored by unset's avatar unset

订单信息

parent e19946ea
......@@ -13,7 +13,7 @@ public class ItemInfoDto {
Long id;
Integer number;
Integer number = 1;
/**
* 类型: 1、标准数据,2、影像图库,3、行业应用信息, 4、购物车确认订单
......
......@@ -47,6 +47,11 @@ public class OrderInfoDto extends PageParam {
*/
private String invoiceContent;
/**
* 订单ID
*/
Long orderId;
//详情ID
Long detailId;
......
......@@ -33,4 +33,19 @@ public class UserOrderDto extends PageParam {
//用户id
Integer userId;
/**
* 订单号
*/
String orderNo;
/**
* 昵称
*/
String nickname;
/**
* 手机号
*/
String phone;
}
......@@ -212,6 +212,16 @@ public class OrderInfo implements Serializable {
*/
String cancelRemark;
/**
* 定制订单ID
*/
Integer customerId;
/**
* 定制信息json
*/
String customerJson;
@Transient
private List<OrderItem> orderItemList;
......
......@@ -85,8 +85,12 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
@Autowired
DatacenterFeign datacenterFeign;
@Autowired
CustomFormBiz customFormBiz;
/**
* 添加订单
*
* @param orderInfo
* @return
*/
......@@ -106,6 +110,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 下单
*
* @param orderInfo
* @return
*/
......@@ -126,6 +131,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 根据订单号查询订单信息
*
* @param orderNo
* @return
*/
......@@ -137,6 +143,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 查询用户所有订单
*
* @param userOrderDto
* @return
*/
......@@ -161,7 +168,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
orderInfoCriteria.andEqualTo("userId", userOrderDto.getUserId());
}
if (StringUtils.isNotBlank(userOrderDto.getName())) {
orderItemCriteria.andLike("name", "%"+ userOrderDto.getName() +"%");
orderItemCriteria.andLike("name", "%" + userOrderDto.getName() + "%");
}
orderInfoCriteria.andNotEqualTo("status", -1);
example.orderBy("updTime").desc();
......@@ -177,6 +184,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 填充订单发票信息
*
* @param orderInfoList
*/
private void fillOrderEInvoice(List<OrderInfo> orderInfoList) {
......@@ -196,6 +204,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 查询订单详情
*
* @param orderId
* @return
*/
......@@ -221,6 +230,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 填充订单商品
*
* @param orderInfoList
*/
private void fillOrderItem(List<OrderInfo> orderInfoList) {
......@@ -238,6 +248,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 提交订单
*
* @param orderInfoDto
* @return
*/
......@@ -298,7 +309,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
//影像图库
case IMAGE_STORAGE:
ImageInfoRelation imageInfoRelation = imageInfoRelationBiz.selectById(itemInfoDto.getId());
if (imageInfoRelation != null ) {
if (imageInfoRelation != null) {
ImageImgStorage imageImgStorage = imageImgStorageBiz.getDetail(itemInfoDto.getId().intValue()).getData();
if (imageImgStorage != null) {
List<ImageInfoRelation> imageInfoRelationList = new ArrayList<>();
......@@ -415,6 +426,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 确认收货
*
* @return
*/
public ObjectRestResponse confirmReceived(Long orderId) {
......@@ -436,6 +448,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 发货
*
* @return
*/
public ObjectRestResponse orderSend(ConfirmReceivedDto confirmReceivedDto) {
......@@ -459,6 +472,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 开发票
*
* @return
*/
public ObjectRestResponse setInvoice(OrderInvoiceDto orderInvoiceDto) {
......@@ -487,7 +501,8 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
}
/**
* 发票发货
* 发票发货
*
* @param confirmReceivedDto
* @return
*/
......@@ -520,6 +535,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 订单发票确认收货
*
* @param orderId
* @return
*/
......@@ -542,6 +558,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 取消订单
*
* @param param
* @return
*/
......@@ -572,6 +589,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 删除订单
*
* @param orderId
* @return
*/
......@@ -591,6 +609,7 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
/**
* 查询用户所有订单
*
* @param userOrderDto
* @return
*/
......@@ -609,8 +628,18 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
if (userOrderDto.getUserId() != null) {
orderInfoCriteria.andEqualTo("userId", userOrderDto.getUserId());
}
if (StringUtils.isNotBlank(userOrderDto.getOrderNo())) {
orderInfoCriteria.andEqualTo("orderNo", userOrderDto.getOrderNo());
}
if (StringUtils.isNotBlank(userOrderDto.getNickname())) {
orderInfoCriteria.andLike("nickname", "%" + userOrderDto.getNickname() + "%");
}
if (StringUtils.isNotBlank(userOrderDto.getPhone())) {
orderInfoCriteria.andEqualTo("phone", userOrderDto.getPhone());
}
if (StringUtils.isNotBlank(userOrderDto.getName())) {
orderItemCriteria.andLike("name", "%"+ userOrderDto.getName() +"%");
orderItemCriteria.andLike("name", "%" + userOrderDto.getName() + "%");
}
orderInfoCriteria.andNotEqualTo("status", -1);
example.orderBy("updTime").desc();
......@@ -624,4 +653,194 @@ public class OrderInfoBiz extends BaseBiz<OrderInfoMapper, OrderInfo> {
}
/**
* 定制信息转订单
*
* @param customerId
* @return
*/
public ObjectRestResponse customerToOrderInfo(Integer customerId) {
AppUserDTO appUserDTO = userFeign.userDetailByToken(request.getHeader("Authorization")).getData();
if (appUserDTO == null) {
return ObjectRestResponse.createFailedResult(ResultCode.RSTOKEN_EXPIRED_CODE, ResultCode.getMsg(ResultCode.RSTOKEN_EXPIRED_CODE));
}
if (customerId == null) {
return ObjectRestResponse.paramIsEmpty();
}
CustomForm customForm = customFormBiz.selectById(customerId);
if (customForm == null) {
return ObjectRestResponse.createFailedResult(ResultCode.NOTEXIST_CODE, ResultCode.getMsg(ResultCode.NOTEXIST_CODE));
}
OrderInfo orderInfo = new OrderInfo();
orderInfo.setRealName(appUserDTO.getRealname());
orderInfo.setUserId(appUserDTO.getUserid());
orderInfo.setPhone(appUserDTO.getUsername());
orderInfo.setNickname(appUserDTO.getNickname());
orderInfo.setHeadImg(appUserDTO.getHeadimgurl());
orderInfo.setStatus(OrderStatusEnum.ORDER_NO_PRICE.getType());
orderInfo.setCustomerId(customerId);
orderInfo.setCustomerJson(JSONObject.toJSONString(customForm));
orderInfo.setNumber(1);
orderInfo.setType(2);
generateOrder(orderInfo);
customForm.setOrderId(Integer.parseInt(String.valueOf(orderInfo.getOrderId())));
customFormBiz.updateSelectiveByIdRe(customForm);
return ObjectRestResponse.succ();
}
/**
* 设置定制订单价格
*
* @param orderInfo
* @return
*/
public ObjectRestResponse setOrderPrice(OrderInfo orderInfo) {
if (orderInfo == null || orderInfo.getOrderId() == null || orderInfo.getAmount() == null) {
return ObjectRestResponse.paramIsEmpty();
}
OrderInfo old = selectById(orderInfo.getOrderId());
if (old == null) {
return ObjectRestResponse.createFailedResult(ResultCode.ORDER_NOT_EXIST, ResultCode.getMsg(ResultCode.ORDER_NOT_EXIST));
}
old.setAmount(orderInfo.getAmount());
old.setTotalAmount(orderInfo.getTotalAmount());
updateSelectiveByIdRe(old);
return ObjectRestResponse.succ();
}
/**
* 定制订单添加订单商品
*
* @param orderInfoDto
* @return
*/
public ObjectRestResponse setOrderItem(OrderInfoDto orderInfoDto) {
if (orderInfoDto == null || orderInfoDto.getOrderId() == null) {
return ObjectRestResponse.paramIsEmpty();
}
List<ItemInfoDto> itemInfoDtoList = orderInfoDto.getItemInfoDtoList();
if (itemInfoDtoList == null || itemInfoDtoList.size() <= 0) {
return ObjectRestResponse.paramIsEmpty();
}
OrderInfo orderInfo = selectById(orderInfoDto.getOrderId());
if (orderInfo == null) {
return ObjectRestResponse.createFailedResult(ResultCode.ORDER_NOT_EXIST, ResultCode.getMsg(ResultCode.ORDER_NOT_EXIST));
}
List<OrderItem> orderItemList = new ArrayList<>();
itemInfoDtoList.parallelStream().forEach(itemInfoDto -> {
switch (OrderTypeEnum.getByCode(itemInfoDto.getType())) {
//标准数据
case STANDARD_DATA:
List<ImageDataVO> imageDataVOList = datacenterFeign.queryByIds(orderInfoDto.getDetailId() + "").getData();
if (imageDataVOList != null && imageDataVOList.size() > 0) {
ImageDataVO imageDataVO = imageDataVOList.get(0);
OrderItem orderItem = new OrderItem();
orderItem.setType(itemInfoDto.getType());
orderItem.setTotalAmount(imageDataVO.getPrice().multiply(new BigDecimal(itemInfoDto.getNumber())));
orderItem.setPrice(imageDataVO.getPrice());
orderItem.setNumber(itemInfoDto.getNumber());
orderItem.setDetailJson(JSONObject.toJSONString(imageDataVO));
orderItem.setDetailId(Long.valueOf(imageDataVO.getId()));
orderItemList.add(orderItem);
}
break;
//行业应用
case INDUSTRY_INFO:
IndustryApplicationInfo industryApplicationInfo = industryApplicationInfoBiz.getOneById(itemInfoDto.getId().intValue()).getData();
if (industryApplicationInfo != null) {
OrderItem orderItem = new OrderItem();
orderItem.setType(itemInfoDto.getType());
orderItem.setTotalAmount(industryApplicationInfo.getPrice().multiply(new BigDecimal(itemInfoDto.getNumber())));
orderItem.setPrice(industryApplicationInfo.getPrice());
orderItem.setNumber(itemInfoDto.getNumber());
orderItem.setName(industryApplicationInfo.getTitle());
orderItem.setItemPic(industryApplicationInfo.getCoverImg());
orderItem.setDetailJson(JSONObject.toJSONString(industryApplicationInfo));
orderItem.setDetailId(Long.valueOf(industryApplicationInfo.getId()));
orderItemList.add(orderItem);
}
break;
//影像图库
case IMAGE_STORAGE:
ImageInfoRelation imageInfoRelation = imageInfoRelationBiz.selectById(itemInfoDto.getId());
if (imageInfoRelation != null) {
ImageImgStorage imageImgStorage = imageImgStorageBiz.getDetail(itemInfoDto.getId().intValue()).getData();
if (imageImgStorage != null) {
List<ImageInfoRelation> imageInfoRelationList = new ArrayList<>();
imageInfoRelationList.add(imageInfoRelation);
imageImgStorage.setImageInfoRelationList(imageInfoRelationList);
OrderItem orderItem = new OrderItem();
orderItem.setType(itemInfoDto.getType());
orderItem.setTotalAmount(imageInfoRelation.getPrice().multiply(new BigDecimal(itemInfoDto.getNumber())));
orderItem.setPrice(imageInfoRelation.getPrice());
orderItem.setNumber(itemInfoDto.getNumber());
orderItem.setName(imageImgStorage.getName());
orderItem.setItemPic(imageImgStorage.getCoverImg());
orderItem.setDetailJson(JSONObject.toJSONString(imageImgStorage));
orderItem.setDetailId(Long.valueOf(imageImgStorage.getId()));
orderItemList.add(orderItem);
}
}
break;
}
});
orderItemList.parallelStream().forEach(orderItem -> {
if (orderItem != null) {
orderItem.setOrderId(orderInfoDto.getOrderId());
orderItemBiz.insertSelective(orderItem);
}
});
return ObjectRestResponse.succ();
}
/**
* 定制订单 添加发票和地址信息
* @param orderInfoDto
* @return
*/
public ObjectRestResponse setAddressOrInvoice(OrderInfoDto orderInfoDto) {
if (orderInfoDto == null || orderInfoDto.getOrderId() == null) {
return ObjectRestResponse.paramIsEmpty();
}
OrderInfo orderInfo = selectById(orderInfoDto.getOrderId());
if (orderInfo == null) {
return ObjectRestResponse.createFailedResult(ResultCode.ORDER_NOT_EXIST, ResultCode.getMsg(ResultCode.ORDER_NOT_EXIST));
}
if (orderInfoDto.getUserAddressId() != null) {
UserAddress userAddress = userAddressBiz.selectById(orderInfoDto.getUserAddressId());
if (userAddress != null) {
orderInfo.setReceiveName(userAddress.getConsigneeName());
orderInfo.setReceivePhone(userAddress.getConsigneePhone());
orderInfo.setReceiveAddress(userAddress.getProvince() + userAddress.getCity() + userAddress.getTown() + userAddress.getConsigneeAddress());
}
}
//订单发票信息
if (orderInfoDto.getUserInvoiceId() != null) {
UserInvoice userInvoice = userInvoiceBiz.selectById(orderInfoDto.getUserInvoiceId());
if (userInvoice != null) {
OrderEInvoice orderEInvoice = new OrderEInvoice();
orderEInvoice.setAmount(orderInfo.getAmount());
orderEInvoice.setType(1);
orderEInvoice.setOrderIds(orderInfo.getOrderId() + "");
orderEInvoice.setTitleType(userInvoice.getTitleType());
orderEInvoice.setTitleName(userInvoice.getTitleName());
orderEInvoice.setTaxCode(userInvoice.getTaxCode());
orderEInvoice.setContentRemark(orderInfoDto.getRemark());
orderEInvoice.setContentAccount(userInvoice.getOpenBank() + " " + userInvoice.getAccount());
orderEInvoice.setContentContact(orderInfo.getReceiveAddress() + " " + orderInfo.getReceiveName() + " " + orderInfo.getReceivePhone());
//发票内容
if (StringUtils.isNotBlank(orderInfoDto.getInvoiceContent())) {
orderEInvoice.setContentTitle(orderInfoDto.getInvoiceContent());
}
orderEInvoiceBiz.addUpdate(orderEInvoice);
orderInfo.setInvoiceStatus(2);
orderInfo.setInvoiceId(orderEInvoice.getId());
}
}
orderInfo.setSendType(orderInfoDto.getSendType());
updateSelectiveByIdRe(orderInfo);
return ObjectRestResponse.succ();
}
}
\ No newline at end of file
......@@ -3,11 +3,12 @@ package com.upyuns.platform.rs.website.controller;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.upyuns.platform.rs.website.biz.OrderInfoBiz;
import com.upyuns.platform.rs.website.dto.ConfirmReceivedDto;
import com.upyuns.platform.rs.website.dto.OrderInfoDto;
import com.upyuns.platform.rs.website.dto.OrderInvoiceDto;
import com.upyuns.platform.rs.website.dto.UserOrderDto;
import com.upyuns.platform.rs.website.entity.OrderInfo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("orderInfo")
......@@ -22,4 +23,35 @@ public class OrderInfoController extends BaseController<OrderInfoBiz,OrderInfo>
public ObjectRestResponse detail(Long orderId) {
return ObjectRestResponse.succ(baseBiz.getOrderDetail(orderId));
}
@PostMapping(value = "orderSend")
public ObjectRestResponse orderSend(@RequestBody ConfirmReceivedDto confirmReceivedDto) {
return baseBiz.orderSend(confirmReceivedDto);
}
@PostMapping(value = "setInvoice")
public ObjectRestResponse setInvoice(@RequestBody OrderInvoiceDto orderInvoiceDto) {
return baseBiz.setInvoice(orderInvoiceDto);
}
@PostMapping(value = "invoiceSend")
public ObjectRestResponse invoiceSend(@RequestBody ConfirmReceivedDto confirmReceivedDto) {
return baseBiz.invoiceSend(confirmReceivedDto);
}
@GetMapping(value = "customerToOrderInfo")
public ObjectRestResponse customerToOrderInfo(Integer customerId) {
return baseBiz.customerToOrderInfo(customerId);
}
@PostMapping(value = "setOrderPrice")
public ObjectRestResponse setOrderPrice(@RequestBody OrderInfo orderInfo) {
return baseBiz.setOrderPrice(orderInfo);
}
@PostMapping(value = "setOrderItem")
public ObjectRestResponse setOrderItem(@RequestBody OrderInfoDto orderInfoDto) {
return baseBiz.setOrderItem(orderInfoDto);
}
}
\ No newline at end of file
......@@ -41,21 +41,6 @@ public class OrderInfoWebController extends BaseController<OrderInfoBiz,OrderInf
return baseBiz.confirmReceived(orderId);
}
@PostMapping(value = "orderSend")
public ObjectRestResponse orderSend(@RequestBody ConfirmReceivedDto confirmReceivedDto) {
return baseBiz.orderSend(confirmReceivedDto);
}
@PostMapping(value = "setInvoice")
public ObjectRestResponse setInvoice(@RequestBody OrderInvoiceDto orderInvoiceDto) {
return baseBiz.setInvoice(orderInvoiceDto);
}
@PostMapping(value = "invoiceSend")
public ObjectRestResponse invoiceSend(@RequestBody ConfirmReceivedDto confirmReceivedDto) {
return baseBiz.invoiceSend(confirmReceivedDto);
}
@GetMapping(value = "confirmOrderInvoice")
public ObjectRestResponse confirmOrderInvoice(Long orderId) {
return baseBiz.confirmOrderInvoice(orderId);
......@@ -70,4 +55,10 @@ public class OrderInfoWebController extends BaseController<OrderInfoBiz,OrderInf
public ObjectRestResponse deleteOrder(Long orderId) {
return baseBiz.deleteOrder(orderId);
}
@PostMapping(value = "setAddressOrInvoice")
public ObjectRestResponse setAddressOrInvoice(@RequestBody OrderInfoDto orderInfoDto) {
return baseBiz.setAddressOrInvoice(orderInfoDto);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment