Browse Source

更改退货逻辑

cangku
Houpn 3 years ago
parent
commit
bc9dc2c83f
  1. 84
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ReturnSaleController.java
  2. 2
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/entity/ReturnSale.java
  3. 25
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/vo/SaleComVO.java
  4. 3
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/SalesAndDetailsServiceImpl.java
  5. 4
      hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/ReturnDetailServiceImpl.java

84
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/ReturnSaleController.java

@ -5,8 +5,10 @@ import cc.hiver.core.common.utils.ResultUtil;
import cc.hiver.core.common.utils.SecurityUtil;
import cc.hiver.core.common.utils.StringUtils;
import cc.hiver.core.common.vo.Result;
import cc.hiver.core.common.vo.SearchDateVo;
import cc.hiver.mall.entity.*;
import cc.hiver.mall.pojo.dto.*;
import cc.hiver.mall.pojo.vo.SaleComVO;
import cc.hiver.mall.pojo.vo.SaleQueryVO;
import cc.hiver.mall.pojo.vo.SaleReturnVO;
import cc.hiver.mall.pojo.vo.SaleVO;
@ -17,6 +19,7 @@ import cc.hiver.mall.service.mybatis.SaleDetailService;
import cc.hiver.mall.service.mybatis.SaleService;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -27,6 +30,7 @@ import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Slf4j
@ -85,7 +89,7 @@ public class ReturnSaleController {
SaleReturnVO saleReturnVO = new SaleReturnVO();
ReturnSale returnSale = returnSaleService.getById(id);
saleReturnVO.setReturnSale(returnSale);
QueryWrapper<SaleDetail> queryWrapper = new QueryWrapper<>();
QueryWrapper<ReturnDetail> queryWrapper = new QueryWrapper<>();
queryWrapper.select("product_id")
.eq("sale_id",id)
.groupBy("product_id");
@ -182,12 +186,88 @@ public class ReturnSaleController {
//扣减库存
stockAndLogService.handleRetIncStockLog(returnSaleDetailDTO);
//更新原订单及明细
ReturnSale returnSale = returnSaleService.getById(id);
returnSale.setStatus("5");
returnSale.setUpdateTime(new Date());
returnSaleService.saveOrUpdate(returnSale);
return ResultUtil.success("确认收货成功!");
}
}
@RequestMapping(value = "/listPages", method = RequestMethod.POST)
@ApiOperation(value = "退货--根据条件获得分页")
public Result<Page<ReturnSale>> queryPage(@RequestBody SaleComVO saleComVO) {
Page<ReturnSale> page = null;
QueryWrapper<ReturnSale> queryWrapper = new QueryWrapper<>();
if (!ObjectUtils.isEmpty(saleComVO)){
if (!StringUtils.isEmpty(saleComVO.getShopId())) queryWrapper.eq("shop_id",saleComVO.getShopId());
queryWrapper.ne("status","5");
SearchDateVo searchDateVo = saleComVO.getSearchDateVo();
if (!ObjectUtils.isEmpty(searchDateVo) && !searchDateVo.isAnyFieldEmpty()){
Date endDate = searchDateVo.getEndDate();
Date startDate = searchDateVo.getStartDate();
if(!ObjectUtils.isEmpty(startDate) && !ObjectUtils.isEmpty(endDate)){
queryWrapper.between("create_time",startDate,endDate);
}else if(!ObjectUtils.isEmpty(startDate)){
queryWrapper.ge("create_time",startDate);
}else if(!ObjectUtils.isEmpty(endDate)){
queryWrapper.le("create_time",endDate);
}
}
if (!ObjectUtils.isEmpty(saleComVO.getPageVo())){
page = new Page<>(saleComVO.getPageVo().getPageNumber(),saleComVO.getPageVo().getPageSize());
}
//默认加一个时间排序
queryWrapper.orderByDesc("create_time");
} else {
return new ResultUtil().setErrorMsg("请输入查询条件后再查询!");
}
Page<ReturnSale> saleList = returnSaleService.page(page,queryWrapper);
return new ResultUtil<Page<ReturnSale>>().setData(saleList);
}
@RequestMapping(value = "/list", method = RequestMethod.POST)
@ApiOperation(value = "退货-根据条件获得列表")
public Result<List<ReturnSale>> queryAll(@RequestBody SaleComVO saleComVO) {
QueryWrapper<ReturnSale> queryWrapper = new QueryWrapper<>();
if (!ObjectUtils.isEmpty(saleComVO)){
if (!StringUtils.isEmpty(saleComVO.getShopId())) queryWrapper.eq("shop_id",saleComVO.getShopId());
queryWrapper.ne("status","5");
SearchDateVo searchDateVo = saleComVO.getSearchDateVo();
if (!ObjectUtils.isEmpty(searchDateVo) && !searchDateVo.isAnyFieldEmpty()){
Date endDate = searchDateVo.getEndDate();
Date startDate = searchDateVo.getStartDate();
if(!ObjectUtils.isEmpty(startDate) && !ObjectUtils.isEmpty(endDate)){
queryWrapper.between("create_time",startDate,endDate);
}else if(!ObjectUtils.isEmpty(startDate)){
queryWrapper.ge("create_time",startDate);
}else if(!ObjectUtils.isEmpty(endDate)){
queryWrapper.le("create_time",endDate);
}
}
//默认加一个时间排序
queryWrapper.orderByDesc("create_time");
}
List<ReturnSale> saleList = returnSaleService.list(queryWrapper);
return new ResultUtil<List<ReturnSale>>().setData(saleList);
}
return ResultUtil.error("确认收货成功!");
@RequestMapping(value = "/edit", method = RequestMethod.POST)
@ApiOperation(value = "根据id修改货品属性")
public Result edit(@RequestBody SaleQueryVO saleQueryVO) {
Sale sale = saleQueryVO.getSale();
List<SaleDetail> saleDetailList = saleQueryVO.getSaleDetailList();
boolean result = saleService.updateById(sale);
if(result) {
QueryWrapper<SaleDetail> deleteWrapper = new QueryWrapper<>();
deleteWrapper.eq("sale_id",sale.getId());
boolean removeBatchByIds = saleDetailService.remove(deleteWrapper);
if (removeBatchByIds){
return saleDetailService.saveBatch(saleDetailList)?ResultUtil.success("修改成功"):ResultUtil.error("修改失败");
}
}
return ResultUtil.error("修改失败");
}
}

2
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/entity/ReturnSale.java

@ -60,7 +60,7 @@ public class ReturnSale implements Serializable {
@ApiModelProperty(value = "收款状态 0-未收款 1-已收款")
private String payStatus;
@ApiModelProperty(value = "订单状态 0-拣货中 1-已提交抢单 2-已取货 3-已送达")
@ApiModelProperty(value = "订单状态 1-拣货中 2-已预定 3-已作废 4-已取货 5-已送达")
private String status;
@ApiModelProperty(value = "物流类别 0-物流 1-快递 2-自提 3-拼单")

25
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/pojo/vo/SaleComVO.java

@ -0,0 +1,25 @@
package cc.hiver.mall.pojo.vo;
import cc.hiver.core.common.vo.PageVo;
import cc.hiver.core.common.vo.SearchDateVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@Data
@ApiModel(value = "销售单主表")
public class SaleComVO implements Serializable {
@ApiModelProperty(value = "店铺ID")
private String shopId;
@ApiModelProperty(value = "日期查询参数")
private SearchDateVo searchDateVo;
@ApiModelProperty(value = "分页参数")
private PageVo pageVo;
}

3
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/SalesAndDetailsServiceImpl.java

@ -210,6 +210,9 @@ public class SalesAndDetailsServiceImpl implements SalesAndDetailsService {
ReturnSale returnSale = new ReturnSale();
returnSale.setCreateTime(new Date());
BeanUtils.copyBeanProp(returnSale,sale);
//重置退单状态和运送公司
returnSale.setStatus("1");
returnSale.setTransCompany(null);
returnSale.setSaleId(id);
returnSaleService.save(returnSale);

4
hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/serviceimpl/mybatis/ReturnDetailServiceImpl.java

@ -19,11 +19,11 @@ public class ReturnDetailServiceImpl extends ServiceImpl<ReturnDetailMapper, Ret
@Autowired
ReturnSaleMapper returnSaleMapper;
ReturnDetailMapper returnDetailMapper;
@Override
public List<String> selectByCondition1(QueryWrapper queryWrapper) {
List<String> list = returnSaleMapper.selectObjs(queryWrapper);
List<String> list = returnDetailMapper.selectObjs(queryWrapper);
return list;
}
}

Loading…
Cancel
Save