新增aftersale表

pull/1/head
zhaochencheng 3 years ago
parent f17d9e2544
commit ed4dea3373

@ -34,11 +34,11 @@ public class ApplicationTest {
// "ums_member_wechat",
// "ums_member_cart"
"oms_order",
"oms_order_delivery_history",
"oms_order_item",
"oms_order_operate_history",
"oms_refund",
"oms_refund_item"
// "oms_order_delivery_history",
// "oms_order_item",
// "oms_order_operate_history",
"oms_aftersale",
"oms_aftersale_item"
);
// 查询表信息
List<GenTable> tableList = genTableService.selectGenTableByName(tableNames);

@ -0,0 +1,93 @@
package com.cyl.oms.controller;
import java.util.List;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Page;
import org.springframework.http.ResponseEntity;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.enums.BusinessType;
import com.cyl.oms.convert.AftersaleConvert;
import com.cyl.oms.domain.Aftersale;
import com.cyl.oms.pojo.query.AftersaleQuery;
import com.cyl.oms.service.AftersaleService;
import com.cyl.oms.pojo.vo.AftersaleVO;
import com.ruoyi.common.utils.poi.ExcelUtil;
/**
* Controller
*
* @author zcc
* @date 2022-12-29
*/
@Api(description ="订单售后接口列表")
@RestController
@RequestMapping("/oms/aftersale")
public class AftersaleController extends BaseController {
@Autowired
private AftersaleService service;
@Autowired
private AftersaleConvert convert;
@ApiOperation("查询订单售后列表")
@PreAuthorize("@ss.hasPermi('oms:aftersale:list')")
@PostMapping("/list")
public ResponseEntity<Page<Aftersale>> list(@RequestBody AftersaleQuery query, Pageable page) {
List<Aftersale> list = service.selectList(query, page);
return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal()));
}
@ApiOperation("导出订单售后列表")
@PreAuthorize("@ss.hasPermi('oms:aftersale:export')")
@Log(title = "订单售后", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public ResponseEntity<String> export(AftersaleQuery query) {
List<Aftersale> list = service.selectList(query, null);
ExcelUtil<AftersaleVO> util = new ExcelUtil<>(AftersaleVO.class);
return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "订单售后数据"));
}
@ApiOperation("获取订单售后详细信息")
@PreAuthorize("@ss.hasPermi('oms:aftersale:query')")
@GetMapping(value = "/{id}")
public ResponseEntity<Aftersale> getInfo(@PathVariable("id") Long id) {
return ResponseEntity.ok(service.selectById(id));
}
@ApiOperation("新增订单售后")
@PreAuthorize("@ss.hasPermi('oms:aftersale:add')")
@Log(title = "订单售后", businessType = BusinessType.INSERT)
@PostMapping
public ResponseEntity<Integer> add(@RequestBody Aftersale aftersale) {
return ResponseEntity.ok(service.insert(aftersale));
}
@ApiOperation("修改订单售后")
@PreAuthorize("@ss.hasPermi('oms:aftersale:edit')")
@Log(title = "订单售后", businessType = BusinessType.UPDATE)
@PutMapping
public ResponseEntity<Integer> edit(@RequestBody Aftersale aftersale) {
return ResponseEntity.ok(service.update(aftersale));
}
@ApiOperation("删除订单售后")
@PreAuthorize("@ss.hasPermi('oms:aftersale:remove')")
@Log(title = "订单售后", businessType = BusinessType.DELETE)
@DeleteMapping("/{id}")
public ResponseEntity<Integer> remove(@PathVariable Long id) {
return ResponseEntity.ok(service.deleteById(id));
}
}

@ -0,0 +1,93 @@
package com.cyl.oms.controller;
import java.util.List;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Page;
import org.springframework.http.ResponseEntity;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.enums.BusinessType;
import com.cyl.oms.convert.AftersaleItemConvert;
import com.cyl.oms.domain.AftersaleItem;
import com.cyl.oms.pojo.query.AftersaleItemQuery;
import com.cyl.oms.service.AftersaleItemService;
import com.cyl.oms.pojo.vo.AftersaleItemVO;
import com.ruoyi.common.utils.poi.ExcelUtil;
/**
* Controller
*
* @author zcc
* @date 2022-12-29
*/
@Api(description ="订单售后接口列表")
@RestController
@RequestMapping("/oms/aftersaleItem")
public class AftersaleItemController extends BaseController {
@Autowired
private AftersaleItemService service;
@Autowired
private AftersaleItemConvert convert;
@ApiOperation("查询订单售后列表")
@PreAuthorize("@ss.hasPermi('oms:aftersaleItem:list')")
@PostMapping("/list")
public ResponseEntity<Page<AftersaleItem>> list(@RequestBody AftersaleItemQuery query, Pageable page) {
List<AftersaleItem> list = service.selectList(query, page);
return ResponseEntity.ok(new PageImpl<>(list, page, ((com.github.pagehelper.Page)list).getTotal()));
}
@ApiOperation("导出订单售后列表")
@PreAuthorize("@ss.hasPermi('oms:aftersaleItem:export')")
@Log(title = "订单售后", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public ResponseEntity<String> export(AftersaleItemQuery query) {
List<AftersaleItem> list = service.selectList(query, null);
ExcelUtil<AftersaleItemVO> util = new ExcelUtil<>(AftersaleItemVO.class);
return ResponseEntity.ok(util.writeExcel(convert.dos2vos(list), "订单售后数据"));
}
@ApiOperation("获取订单售后详细信息")
@PreAuthorize("@ss.hasPermi('oms:aftersaleItem:query')")
@GetMapping(value = "/{id}")
public ResponseEntity<AftersaleItem> getInfo(@PathVariable("id") Long id) {
return ResponseEntity.ok(service.selectById(id));
}
@ApiOperation("新增订单售后")
@PreAuthorize("@ss.hasPermi('oms:aftersaleItem:add')")
@Log(title = "订单售后", businessType = BusinessType.INSERT)
@PostMapping
public ResponseEntity<Integer> add(@RequestBody AftersaleItem aftersaleItem) {
return ResponseEntity.ok(service.insert(aftersaleItem));
}
@ApiOperation("修改订单售后")
@PreAuthorize("@ss.hasPermi('oms:aftersaleItem:edit')")
@Log(title = "订单售后", businessType = BusinessType.UPDATE)
@PutMapping
public ResponseEntity<Integer> edit(@RequestBody AftersaleItem aftersaleItem) {
return ResponseEntity.ok(service.update(aftersaleItem));
}
@ApiOperation("删除订单售后")
@PreAuthorize("@ss.hasPermi('oms:aftersaleItem:remove')")
@Log(title = "订单售后", businessType = BusinessType.DELETE)
@DeleteMapping("/{id}")
public ResponseEntity<Integer> remove(@PathVariable Long id) {
return ResponseEntity.ok(service.deleteById(id));
}
}

@ -0,0 +1,16 @@
package com.cyl.oms.convert;
import org.mapstruct.Mapper;
import com.cyl.oms.domain.Aftersale;
import com.cyl.oms.pojo.vo.AftersaleVO;
import java.util.List;
/**
* DO <=> DTO <=> VO / BO / Query
*
* @author zcc
*/
@Mapper(componentModel = "spring")
public interface AftersaleConvert {
List<AftersaleVO> dos2vos(List<Aftersale> list);
}

@ -0,0 +1,16 @@
package com.cyl.oms.convert;
import org.mapstruct.Mapper;
import com.cyl.oms.domain.AftersaleItem;
import com.cyl.oms.pojo.vo.AftersaleItemVO;
import java.util.List;
/**
* DO <=> DTO <=> VO / BO / Query
*
* @author zcc
*/
@Mapper(componentModel = "spring")
public interface AftersaleItemConvert {
List<AftersaleItemVO> dos2vos(List<AftersaleItem> list);
}

@ -0,0 +1,73 @@
package com.cyl.oms.domain;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.ruoyi.common.core.domain.BaseAudit;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName;
/**
* oms_aftersale
*
* @author zcc
*/
@ApiModel(description="订单售后对象")
@Data
@TableName("oms_aftersale")
public class Aftersale extends BaseAudit {
private static final long serialVersionUID = 1L;
@ApiModelProperty("ID")
private Long id;
@ApiModelProperty("MEMBER_ID")
@Excel(name = "MEMBER_ID")
private Long memberId;
@ApiModelProperty("订单id")
@Excel(name = "订单id")
private Long orderId;
@ApiModelProperty("退款金额")
@Excel(name = "退款金额")
private BigDecimal returnAmount;
@ApiModelProperty("售后类型1退款2退货退款")
@Excel(name = "售后类型1退款2退货退款")
private Integer type;
@ApiModelProperty("申请状态0->待处理1->退货中2->已完成3->已拒绝")
@Excel(name = "申请状态0->待处理1->退货中2->已完成3->已拒绝")
private Integer status;
@ApiModelProperty("处理时间")
@Excel(name = "处理时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime handleTime;
@ApiModelProperty("退货数量")
@Excel(name = "退货数量")
private Integer quantity;
@ApiModelProperty("原因")
@Excel(name = "原因")
private String reason;
@ApiModelProperty("描述")
@Excel(name = "描述")
private String description;
@ApiModelProperty("凭证图片,以逗号隔开")
@Excel(name = "凭证图片,以逗号隔开")
private String proofPics;
@ApiModelProperty("处理备注")
@Excel(name = "处理备注")
private String handleNote;
@ApiModelProperty("处理人员")
@Excel(name = "处理人员")
private String handleMan;
}

@ -0,0 +1,44 @@
package com.cyl.oms.domain;
import java.math.BigDecimal;
import com.ruoyi.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.ruoyi.common.core.domain.BaseAudit;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName;
/**
* oms_aftersale_item
*
* @author zcc
*/
@ApiModel(description="订单售后对象")
@Data
@TableName("oms_aftersale_item")
public class AftersaleItem extends BaseAudit {
private static final long serialVersionUID = 1L;
@ApiModelProperty("ID")
private Long id;
@ApiModelProperty("MEMBER_ID")
@Excel(name = "MEMBER_ID")
private Long memberId;
@ApiModelProperty("订单id")
@Excel(name = "订单id")
private Long orderId;
@ApiModelProperty("子订单id")
@Excel(name = "子订单id")
private Long orderItemId;
@ApiModelProperty("退款金额")
@Excel(name = "退款金额")
private BigDecimal returnAmount;
@ApiModelProperty("退货数量")
@Excel(name = "退货数量")
private Integer quantity;
}

@ -56,7 +56,7 @@ public class Order extends BaseAudit {
@ApiModelProperty("退款状态枚举值1无售后或售后关闭2售后处理中3退款中4 退款成功")
@Excel(name = "退款状态枚举值1无售后或售后关闭2售后处理中3退款中4 退款成功")
private Integer refundStatus;
private Integer aftersaleStatus;
@ApiModelProperty("物流公司(配送方式)")
@Excel(name = "物流公司(配送方式)")

@ -0,0 +1,21 @@
package com.cyl.oms.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import com.cyl.oms.domain.AftersaleItem;
/**
* Mapper
*
* @author zcc
*/
public interface AftersaleItemMapper extends BaseMapper<AftersaleItem> {
/**
*
*
* @param aftersaleItem
* @return
*/
List<AftersaleItem> selectByEntity(AftersaleItem aftersaleItem);
}

@ -0,0 +1,21 @@
package com.cyl.oms.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import com.cyl.oms.domain.Aftersale;
/**
* Mapper
*
* @author zcc
*/
public interface AftersaleMapper extends BaseMapper<Aftersale> {
/**
*
*
* @param aftersale
* @return
*/
List<Aftersale> selectByEntity(Aftersale aftersale);
}

@ -0,0 +1,31 @@
package com.cyl.oms.pojo.query;
import java.math.BigDecimal;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
*
*
* @author zcc
*/
@ApiModel(description="订单售后 查询 对象")
@Data
public class AftersaleItemQuery {
@ApiModelProperty("MEMBER_ID 精确匹配")
private Long memberId;
@ApiModelProperty("订单id 精确匹配")
private Long orderId;
@ApiModelProperty("子订单id 精确匹配")
private Long orderItemId;
@ApiModelProperty("退款金额 精确匹配")
private BigDecimal returnAmount;
@ApiModelProperty("退货数量 精确匹配")
private Integer quantity;
}

@ -0,0 +1,53 @@
package com.cyl.oms.pojo.query;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
*
*
* @author zcc
*/
@ApiModel(description="订单售后 查询 对象")
@Data
public class AftersaleQuery {
@ApiModelProperty("MEMBER_ID 精确匹配")
private Long memberId;
@ApiModelProperty("订单id 精确匹配")
private Long orderId;
@ApiModelProperty("退款金额 精确匹配")
private BigDecimal returnAmount;
@ApiModelProperty("售后类型1退款2退货退款 精确匹配")
private Integer type;
@ApiModelProperty("申请状态0->待处理1->退货中2->已完成3->已拒绝 精确匹配")
private Integer status;
@ApiModelProperty("处理时间 精确匹配")
private LocalDateTime handleTime;
@ApiModelProperty("退货数量 精确匹配")
private Integer quantity;
@ApiModelProperty("原因 精确匹配")
private String reason;
@ApiModelProperty("描述 精确匹配")
private String description;
@ApiModelProperty("凭证图片,以逗号隔开 精确匹配")
private String proofPics;
@ApiModelProperty("处理备注 精确匹配")
private String handleNote;
@ApiModelProperty("处理人员 精确匹配")
private String handleMan;
}

@ -39,7 +39,7 @@ public class OrderQuery {
private Integer status;
@ApiModelProperty("退款状态枚举值1无售后或售后关闭2售后处理中3退款中4 退款成功 精确匹配")
private Integer refundStatus;
private Integer aftersaleStatus;
@ApiModelProperty("物流公司 精确匹配")
private String deliveryCompany;

@ -0,0 +1,32 @@
package com.cyl.oms.pojo.vo;
import java.math.BigDecimal;
import com.ruoyi.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseAudit;
import lombok.Data;
/**
*
*
* @author zcc
*/
@Data
public class AftersaleItemVO extends BaseAudit {
/** ID */
private Long id;
/** MEMBER_ID */
@Excel(name = "MEMBER_ID")
private Long memberId;
/** 订单id */
@Excel(name = "订单id")
private Long orderId;
/** 子订单id */
@Excel(name = "子订单id")
private Long orderItemId;
/** 退款金额 */
@Excel(name = "退款金额")
private BigDecimal returnAmount;
/** 退货数量 */
@Excel(name = "退货数量")
private Integer quantity;
}

@ -0,0 +1,55 @@
package com.cyl.oms.pojo.vo;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.ruoyi.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseAudit;
import lombok.Data;
/**
*
*
* @author zcc
*/
@Data
public class AftersaleVO extends BaseAudit {
/** ID */
private Long id;
/** MEMBER_ID */
@Excel(name = "MEMBER_ID")
private Long memberId;
/** 订单id */
@Excel(name = "订单id")
private Long orderId;
/** 退款金额 */
@Excel(name = "退款金额")
private BigDecimal returnAmount;
/** 售后类型1退款2退货退款 */
@Excel(name = "售后类型1退款2退货退款")
private Integer type;
/** 申请状态0->待处理1->退货中2->已完成3->已拒绝 */
@Excel(name = "申请状态0->待处理1->退货中2->已完成3->已拒绝")
private Integer status;
/** 处理时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "处理时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime handleTime;
/** 退货数量 */
@Excel(name = "退货数量")
private Integer quantity;
/** 原因 */
@Excel(name = "原因")
private String reason;
/** 描述 */
@Excel(name = "描述")
private String description;
/** 凭证图片,以逗号隔开 */
@Excel(name = "凭证图片,以逗号隔开")
private String proofPics;
/** 处理备注 */
@Excel(name = "处理备注")
private String handleNote;
/** 处理人员 */
@Excel(name = "处理人员")
private String handleMan;
}

@ -41,7 +41,7 @@ public class OrderVO extends BaseAudit {
private Integer status;
/** 退款状态枚举值1无售后或售后关闭2售后处理中3退款中4 退款成功 */
@Excel(name = "退款状态枚举值1无售后或售后关闭2售后处理中3退款中4 退款成功")
private Integer refundStatus;
private Integer aftersaleStatus;
/** 物流公司(配送方式) */
@Excel(name = "物流公司(配送方式)")
private String deliveryCompany;

@ -0,0 +1,103 @@
package com.cyl.oms.service;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.List;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import com.cyl.oms.mapper.AftersaleItemMapper;
import com.cyl.oms.domain.AftersaleItem;
import com.cyl.oms.pojo.query.AftersaleItemQuery;
/**
* Service
*
*
* @author zcc
*/
@Service
public class AftersaleItemService {
@Autowired
private AftersaleItemMapper aftersaleItemMapper;
/**
*
*
* @param id
* @return
*/
public AftersaleItem selectById(Long id) {
return aftersaleItemMapper.selectById(id);
}
/**
*
*
* @param query
* @param page
* @return
*/
public List<AftersaleItem> selectList(AftersaleItemQuery query, Pageable page) {
if (page != null) {
PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize());
}
QueryWrapper<AftersaleItem> qw = new QueryWrapper<>();
Long memberId = query.getMemberId();
if (memberId != null) {
qw.eq("member_id", memberId);
}
Long orderId = query.getOrderId();
if (orderId != null) {
qw.eq("order_id", orderId);
}
Long orderItemId = query.getOrderItemId();
if (orderItemId != null) {
qw.eq("order_item_id", orderItemId);
}
BigDecimal returnAmount = query.getReturnAmount();
if (returnAmount != null) {
qw.eq("return_amount", returnAmount);
}
Integer quantity = query.getQuantity();
if (quantity != null) {
qw.eq("quantity", quantity);
}
return aftersaleItemMapper.selectList(qw);
}
/**
*
*
* @param aftersaleItem
* @return
*/
public int insert(AftersaleItem aftersaleItem) {
aftersaleItem.setCreateTime(LocalDateTime.now());
return aftersaleItemMapper.insert(aftersaleItem);
}
/**
*
*
* @param aftersaleItem
* @return
*/
public int update(AftersaleItem aftersaleItem) {
return aftersaleItemMapper.updateById(aftersaleItem);
}
/**
*
*
* @param id
* @return
*/
public int deleteById(Long id) {
return aftersaleItemMapper.deleteById(id);
}
}

@ -0,0 +1,132 @@
package com.cyl.oms.service;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import com.cyl.oms.mapper.AftersaleMapper;
import com.cyl.oms.domain.Aftersale;
import com.cyl.oms.pojo.query.AftersaleQuery;
/**
* Service
*
*
* @author zcc
*/
@Service
public class AftersaleService {
@Autowired
private AftersaleMapper aftersaleMapper;
/**
*
*
* @param id
* @return
*/
public Aftersale selectById(Long id) {
return aftersaleMapper.selectById(id);
}
/**
*
*
* @param query
* @param page
* @return
*/
public List<Aftersale> selectList(AftersaleQuery query, Pageable page) {
if (page != null) {
PageHelper.startPage(page.getPageNumber() + 1, page.getPageSize());
}
QueryWrapper<Aftersale> qw = new QueryWrapper<>();
Long memberId = query.getMemberId();
if (memberId != null) {
qw.eq("member_id", memberId);
}
Long orderId = query.getOrderId();
if (orderId != null) {
qw.eq("order_id", orderId);
}
BigDecimal returnAmount = query.getReturnAmount();
if (returnAmount != null) {
qw.eq("return_amount", returnAmount);
}
Integer type = query.getType();
if (type != null) {
qw.eq("type", type);
}
Integer status = query.getStatus();
if (status != null) {
qw.eq("status", status);
}
LocalDateTime handleTime = query.getHandleTime();
if (handleTime != null) {
qw.eq("handle_time", handleTime);
}
Integer quantity = query.getQuantity();
if (quantity != null) {
qw.eq("quantity", quantity);
}
String reason = query.getReason();
if (!StringUtils.isEmpty(reason)) {
qw.eq("reason", reason);
}
String description = query.getDescription();
if (!StringUtils.isEmpty(description)) {
qw.eq("description", description);
}
String proofPics = query.getProofPics();
if (!StringUtils.isEmpty(proofPics)) {
qw.eq("proof_pics", proofPics);
}
String handleNote = query.getHandleNote();
if (!StringUtils.isEmpty(handleNote)) {
qw.eq("handle_note", handleNote);
}
String handleMan = query.getHandleMan();
if (!StringUtils.isEmpty(handleMan)) {
qw.eq("handle_man", handleMan);
}
return aftersaleMapper.selectList(qw);
}
/**
*
*
* @param aftersale
* @return
*/
public int insert(Aftersale aftersale) {
aftersale.setCreateTime(LocalDateTime.now());
return aftersaleMapper.insert(aftersale);
}
/**
*
*
* @param aftersale
* @return
*/
public int update(Aftersale aftersale) {
return aftersaleMapper.updateById(aftersale);
}
/**
*
*
* @param id
* @return
*/
public int deleteById(Long id) {
return aftersaleMapper.deleteById(id);
}
}

@ -80,9 +80,9 @@ public class OrderService {
if (status != null) {
qw.eq("status", status);
}
Integer refundStatus = query.getRefundStatus();
if (refundStatus != null) {
qw.eq("refund_status", refundStatus);
Integer aftersaleStatus = query.getAftersaleStatus();
if (aftersaleStatus != null) {
qw.eq("aftersale_status", aftersaleStatus);
}
String deliveryCompany = query.getDeliveryCompany();
if (!StringUtils.isEmpty(deliveryCompany)) {

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cyl.oms.mapper.AftersaleItemMapper">
<resultMap type="AftersaleItem" id="AftersaleItemResult">
<result property="id" column="id"/>
<result property="memberId" column="member_id"/>
<result property="orderId" column="order_id"/>
<result property="orderItemId" column="order_item_id"/>
<result property="returnAmount" column="return_amount"/>
<result property="quantity" column="quantity"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectAftersaleItemVo">
select id, member_id, order_id, order_item_id, return_amount, quantity, create_by, create_time, update_by, update_time from oms_aftersale_item
</sql>
<select id="selectByEntity" parameterType="AftersaleItem" resultMap="AftersaleItemResult">
<include refid="selectAftersaleItemVo"/>
<where>
<if test="memberId != null "> and member_id = #{memberId}</if>
<if test="orderId != null "> and order_id = #{orderId}</if>
<if test="orderItemId != null "> and order_item_id = #{orderItemId}</if>
<if test="returnAmount != null "> and return_amount = #{returnAmount}</if>
<if test="quantity != null "> and quantity = #{quantity}</if>
</where>
</select>
</mapper>

@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cyl.oms.mapper.AftersaleMapper">
<resultMap type="Aftersale" id="AftersaleResult">
<result property="id" column="id"/>
<result property="memberId" column="member_id"/>
<result property="orderId" column="order_id"/>
<result property="returnAmount" column="return_amount"/>
<result property="type" column="type"/>
<result property="status" column="status"/>
<result property="handleTime" column="handle_time"/>
<result property="quantity" column="quantity"/>
<result property="reason" column="reason"/>
<result property="description" column="description"/>
<result property="proofPics" column="proof_pics"/>
<result property="handleNote" column="handle_note"/>
<result property="handleMan" column="handle_man"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectAftersaleVo">
select id, member_id, order_id, return_amount, type, status, handle_time, quantity, reason, description, proof_pics, handle_note, handle_man, create_by, create_time, update_by, update_time from oms_aftersale
</sql>
<select id="selectByEntity" parameterType="Aftersale" resultMap="AftersaleResult">
<include refid="selectAftersaleVo"/>
<where>
<if test="memberId != null "> and member_id = #{memberId}</if>
<if test="orderId != null "> and order_id = #{orderId}</if>
<if test="returnAmount != null "> and return_amount = #{returnAmount}</if>
<if test="type != null "> and type = #{type}</if>
<if test="status != null "> and status = #{status}</if>
<if test="handleTime != null "> and handle_time = #{handleTime}</if>
<if test="quantity != null "> and quantity = #{quantity}</if>
<if test="reason != null and reason != ''"> and reason = #{reason}</if>
<if test="description != null and description != ''"> and description = #{description}</if>
<if test="proofPics != null and proofPics != ''"> and proof_pics = #{proofPics}</if>
<if test="handleNote != null and handleNote != ''"> and handle_note = #{handleNote}</if>
<if test="handleMan != null and handleMan != ''"> and handle_man = #{handleMan}</if>
</where>
</select>
</mapper>

@ -14,7 +14,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="freightAmount" column="freight_amount"/>
<result property="payType" column="pay_type"/>
<result property="status" column="status"/>
<result property="refundStatus" column="refund_status"/>
<result property="aftersaleStatus" column="aftersale_status"/>
<result property="deliveryCompany" column="delivery_company"/>
<result property="deliverySn" column="delivery_sn"/>
<result property="autoConfirmDay" column="auto_confirm_day"/>
@ -45,7 +45,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectOrderVo">
select id, member_id, member_username, total_amount, purchase_price, pay_amount, freight_amount, pay_type, status, refund_status, delivery_company, delivery_sn, auto_confirm_day, receiver_name, receiver_phone, receiver_post_code, receiver_province, receiver_city, receiver_district, receiver_province_id, receiver_city_id, receiver_district_id, receiver_detail_address, note, confirm_status, delete_status, payment_time, delivery_time, receive_time, create_by, create_time, update_by, update_time from oms_order
select id, member_id, member_username, total_amount, purchase_price, pay_amount, freight_amount, pay_type, status, aftersale_status, delivery_company, delivery_sn, auto_confirm_day, receiver_name, receiver_phone, receiver_post_code, receiver_province, receiver_city, receiver_district, receiver_province_id, receiver_city_id, receiver_district_id, receiver_detail_address, note, confirm_status, delete_status, payment_time, delivery_time, receive_time, create_by, create_time, update_by, update_time from oms_order
</sql>
<select id="selectByEntity" parameterType="Order" resultMap="OrderResult">
@ -59,7 +59,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="freightAmount != null "> and freight_amount = #{freightAmount}</if>
<if test="payType != null "> and pay_type = #{payType}</if>
<if test="status != null "> and status = #{status}</if>
<if test="refundStatus != null "> and refund_status = #{refundStatus}</if>
<if test="aftersaleStatus != null "> and aftersale_status = #{aftersaleStatus}</if>
<if test="deliveryCompany != null and deliveryCompany != ''"> and delivery_company = #{deliveryCompany}</if>
<if test="deliverySn != null and deliverySn != ''"> and delivery_sn = #{deliverySn}</if>
<if test="autoConfirmDay != null "> and auto_confirm_day = #{autoConfirmDay}</if>

@ -12,7 +12,7 @@ CREATE TABLE `oms_order` (
`freight_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '运费金额',
`pay_type` int(1) NULL DEFAULT NULL COMMENT '支付方式0->未支付1->支付宝2->微信',
`status` int(1) NULL DEFAULT NULL COMMENT '订单状态0->待付款1->待发货2->已发货3->已完成4->已关闭5->无效订单',
`refund_status` int(1) NULL DEFAULT NULL COMMENT '退款状态枚举值1无售后或售后关闭2售后处理中3退款中4 退款成功',
`aftersale_status` int(1) NULL DEFAULT NULL COMMENT '退款状态枚举值1无售后或售后关闭2售后处理中3退款中4 退款成功',
`delivery_company` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '物流公司(配送方式)',
`delivery_sn` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '物流单号',
`auto_confirm_day` int(11) NULL DEFAULT NULL COMMENT '自动确认时间(天)',
@ -100,10 +100,10 @@ CREATE TABLE `oms_order_operate_history` (
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单操作历史记录' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for oms_refund
-- Table structure for oms_aftersale
-- ----------------------------
DROP TABLE IF EXISTS `oms_refund`;
CREATE TABLE `oms_refund` (
DROP TABLE IF EXISTS `oms_aftersale`;
CREATE TABLE `oms_aftersale` (
`id` bigint(20) NOT NULL,
`member_id` bigint(20) NOT NULL,
`order_id` bigint(20) NULL DEFAULT NULL COMMENT '订单id',
@ -124,8 +124,8 @@ CREATE TABLE `oms_refund` (
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '订单售后' ROW_FORMAT = Dynamic;
DROP TABLE IF EXISTS `oms_refund_item`;
CREATE TABLE `oms_refund_item` (
DROP TABLE IF EXISTS `oms_aftersale_item`;
CREATE TABLE `oms_aftersale_item` (
`id` bigint(20) NOT NULL,
`member_id` bigint(20) NOT NULL,
`order_id` bigint(20) NULL DEFAULT NULL COMMENT '订单id',

@ -0,0 +1,22 @@
-- 菜单 SQL
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后', '3', '1', 'aftersale', 'oms/aftersale/index', 1, 0, 'C', '0', '0', 'oms:aftersale:list', '#', 1, sysdate(), '', null, '订单售后菜单');
-- 按钮父菜单ID
SELECT @parentId := LAST_INSERT_ID();
-- 按钮 SQL
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后查询', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersale:query', '#', 1, sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后新增', @parentId, '2', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersale:add', '#', 1, sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后修改', @parentId, '3', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersale:edit', '#', 1, sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后删除', @parentId, '4', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersale:remove', '#', 1, sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后导出', @parentId, '5', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersale:export', '#', 1, sysdate(), '', null, '');

@ -0,0 +1,22 @@
-- 菜单 SQL
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后', '3', '1', 'aftersaleItem', 'oms/aftersaleItem/index', 1, 0, 'C', '0', '0', 'oms:aftersaleItem:list', '#', 1, sysdate(), '', null, '订单售后菜单');
-- 按钮父菜单ID
SELECT @parentId := LAST_INSERT_ID();
-- 按钮 SQL
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后查询', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersaleItem:query', '#', 1, sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后新增', @parentId, '2', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersaleItem:add', '#', 1, sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后修改', @parentId, '3', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersaleItem:edit', '#', 1, sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后删除', @parentId, '4', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersaleItem:remove', '#', 1, sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values('订单售后导出', @parentId, '5', '#', '', 1, 0, 'F', '0', '0', 'oms:aftersaleItem:export', '#', 1, sysdate(), '', null, '');
Loading…
Cancel
Save