Commit 28fe1080 by wanglei

订单发布,取消,修改,查询

parent 0424e141
...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.FieldFill; ...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
...@@ -38,6 +39,7 @@ public class BaseEntity implements Serializable { ...@@ -38,6 +39,7 @@ public class BaseEntity implements Serializable {
/** /**
* 创建时间 * 创建时间
*/ */
@Schema(name = "创建时间")
@TableField(fill = FieldFill.INSERT) @TableField(fill = FieldFill.INSERT)
private Date createTime; private Date createTime;
...@@ -50,6 +52,7 @@ public class BaseEntity implements Serializable { ...@@ -50,6 +52,7 @@ public class BaseEntity implements Serializable {
/** /**
* 更新时间 * 更新时间
*/ */
@Schema(name = "更新时间")
@TableField(fill = FieldFill.INSERT_UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime; private Date updateTime;
......
...@@ -2,12 +2,18 @@ package com.yongqi.xinrenli.admin.controller; ...@@ -2,12 +2,18 @@ package com.yongqi.xinrenli.admin.controller;
import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.domain.R;
import com.yongqi.xinrenli.domain.Order; import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.yongqi.xinrenli.domain.bo.OrderBo;
import com.yongqi.xinrenli.domain.vo.OrderVo;
import com.yongqi.xinrenli.service.IOrderService; import com.yongqi.xinrenli.service.IOrderService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
/** /**
* <p> * <p>
* 订单表 前端控制器 * 订单表 前端控制器
...@@ -16,6 +22,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -16,6 +22,7 @@ import org.springframework.web.bind.annotation.*;
* @author wanglei * @author wanglei
* @since 2023-03-02 * @since 2023-03-02
*/ */
@Slf4j
@RestController @RestController
@RequestMapping("/order") @RequestMapping("/order")
public class OrderController { public class OrderController {
...@@ -25,22 +32,84 @@ public class OrderController { ...@@ -25,22 +32,84 @@ public class OrderController {
/** /**
* 用户发布需求订单 * 用户发布需求订单
* @param order * @param orderBo
* @return * @return
*/ */
@ResponseBody @ResponseBody
@PostMapping("/{order}") @PostMapping("/publishOrder")
public R publishOrder(@PathVariable Order order){ public R publishOrder(@RequestBody @Validated(AddGroup.class) OrderBo orderBo){
if(iOrderService.isParamEmpty(order)){ log.info("wanglei-orderBo:{}",orderBo);
return R.fail("信息未填完整"); if(iOrderService.isAllEmpty(orderBo)){
}
if(iOrderService.isAllEmpty(order)){
return R.fail("图片,视频,语音必传一项"); return R.fail("图片,视频,语音必传一项");
} }
boolean flag = iOrderService.save(order); boolean flag = iOrderService.addOrder(orderBo);
if (!flag) { if (!flag) {
return R.fail("发布失败,请稍后重试"); return R.fail("发布失败,请稍后重试");
} }
return R.ok("发布成功"); return R.ok("发布成功");
} }
/**
* 查看订单详情 根据id查询
* @param id
* @return
*/
@ResponseBody
@GetMapping("/getOrderDetailById/{id}")
public R<OrderVo> getOrderDetailById(@PathVariable Long id){
if(id==null){
return R.ok("查询失败,id为空");
}
OrderVo orderVo = iOrderService.getOrderById(id);
if(orderVo==null){
return R.ok("查询失败,请稍后重试");
}
return R.ok("查询成功",orderVo);
}
/**
* 修改订单
* @param orderBo
* @return
*/
@ResponseBody
@PutMapping("/updateOrder")
public R updateOrder(@RequestBody @Validated(EditGroup.class) OrderBo orderBo){
if(iOrderService.isAllEmpty(orderBo)){
return R.fail("图片,视频,语音必传一项");
}
boolean flag = iOrderService.updateOrder(orderBo);
if (!flag) {
return R.fail("修改失败,请稍后重试");
}
return R.ok("修改成功");
}
/**
* 取消订单
* @param id
* @return
*/
@ResponseBody
@DeleteMapping("/cancelOrderById/{id}")
public R cancelOrderById(@PathVariable Long id){
if(id==null){
return R.ok("取消失败,id为空");
}
boolean flag = iOrderService.cancelOrderById(id);
if(!flag){
return R.ok("取消订单失败,请稍后重试");
}
return R.ok("取消订单成功");
}
/**
* 测试连通用
* @return
*/
@ResponseBody
@GetMapping("/test")
public String test(){
return "test_success";
}
} }
...@@ -2,13 +2,15 @@ package com.yongqi.xinrenli.domain; ...@@ -2,13 +2,15 @@ package com.yongqi.xinrenli.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime; import java.util.Date;
/** /**
* <p> * <p>
...@@ -53,7 +55,7 @@ public class Article implements Serializable { ...@@ -53,7 +55,7 @@ public class Article implements Serializable {
@Schema(name = "创建时间") @Schema(name = "创建时间")
@TableField("create_time") @TableField("create_time")
private LocalDateTime createTime; private Date createTime;
@Schema(name = "修改人") @Schema(name = "修改人")
@TableField("update_user") @TableField("update_user")
...@@ -61,7 +63,7 @@ public class Article implements Serializable { ...@@ -61,7 +63,7 @@ public class Article implements Serializable {
@Schema(name = "修改时间") @Schema(name = "修改时间")
@TableField("update_time") @TableField("update_time")
private LocalDateTime updateTime; private Date updateTime;
@Schema(name = "删除状态") @Schema(name = "删除状态")
@TableField("delete_status") @TableField("delete_status")
......
...@@ -2,13 +2,14 @@ package com.yongqi.xinrenli.domain; ...@@ -2,13 +2,14 @@ package com.yongqi.xinrenli.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime; import java.util.Date;
/** /**
* <p> * <p>
...@@ -32,6 +33,7 @@ public class Coupon implements Serializable { ...@@ -32,6 +33,7 @@ public class Coupon implements Serializable {
private Long id; private Long id;
@TableField("user_id") @TableField("user_id")
@Schema(name = "用户id")
private Integer userId; private Integer userId;
@Schema(name = "券类型") @Schema(name = "券类型")
...@@ -48,11 +50,11 @@ public class Coupon implements Serializable { ...@@ -48,11 +50,11 @@ public class Coupon implements Serializable {
@Schema(name = "生效时间") @Schema(name = "生效时间")
@TableField("effective_time") @TableField("effective_time")
private LocalDateTime effectiveTime; private Date effectiveTime;
@Schema(name = "失效时间") @Schema(name = "失效时间")
@TableField("failure_time") @TableField("failure_time")
private LocalDateTime failureTime; private Date failureTime;
@Schema(name = "创建人") @Schema(name = "创建人")
@TableField("create_user") @TableField("create_user")
...@@ -60,7 +62,7 @@ public class Coupon implements Serializable { ...@@ -60,7 +62,7 @@ public class Coupon implements Serializable {
@Schema(name = "创建时间") @Schema(name = "创建时间")
@TableField("create_time") @TableField("create_time")
private LocalDateTime createTime; private Date createTime;
@Schema(name = "修改人") @Schema(name = "修改人")
@TableField("update_user") @TableField("update_user")
...@@ -68,7 +70,7 @@ public class Coupon implements Serializable { ...@@ -68,7 +70,7 @@ public class Coupon implements Serializable {
@Schema(name = "修改时间") @Schema(name = "修改时间")
@TableField("update_time") @TableField("update_time")
private LocalDateTime updateTime; private Date updateTime;
@Schema(name = "删除状态") @Schema(name = "删除状态")
@TableField("delete_status") @TableField("delete_status")
......
...@@ -2,14 +2,17 @@ package com.yongqi.xinrenli.domain; ...@@ -2,14 +2,17 @@ package com.yongqi.xinrenli.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import org.apache.ibatis.annotations.Delete;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime; import java.util.Date;
import java.util.List;
/** /**
* <p> * <p>
...@@ -50,7 +53,8 @@ public class Order implements Serializable { ...@@ -50,7 +53,8 @@ public class Order implements Serializable {
@Schema(name = "维修时间") @Schema(name = "维修时间")
@TableField("repair_time") @TableField("repair_time")
private LocalDateTime repairTime; @JsonFormat(pattern = "yyyy/MM/dd")
private Date repairTime;
@Schema(name = "维修地址") @Schema(name = "维修地址")
@TableField("repair_address") @TableField("repair_address")
...@@ -86,7 +90,7 @@ public class Order implements Serializable { ...@@ -86,7 +90,7 @@ public class Order implements Serializable {
@Schema(name = "创建时间") @Schema(name = "创建时间")
@TableField("create_time") @TableField("create_time")
private LocalDateTime createTime; private Date createTime;
@Schema(name = "修改人") @Schema(name = "修改人")
@TableField("update_user") @TableField("update_user")
...@@ -94,7 +98,7 @@ public class Order implements Serializable { ...@@ -94,7 +98,7 @@ public class Order implements Serializable {
@Schema(name = "修改时间") @Schema(name = "修改时间")
@TableField("update_time") @TableField("update_time")
private LocalDateTime updateTime; private Date updateTime;
@Schema(name = "删除状态") @Schema(name = "删除状态")
@TableField("delete_status") @TableField("delete_status")
......
...@@ -2,13 +2,15 @@ package com.yongqi.xinrenli.domain; ...@@ -2,13 +2,15 @@ package com.yongqi.xinrenli.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime; import java.util.Date;
/** /**
* <p> * <p>
...@@ -49,7 +51,7 @@ public class UserComment implements Serializable { ...@@ -49,7 +51,7 @@ public class UserComment implements Serializable {
@Schema(name = "创建时间") @Schema(name = "创建时间")
@TableField("create_time") @TableField("create_time")
private LocalDateTime createTime; private Date createTime;
@Schema(name = "修改人") @Schema(name = "修改人")
@TableField("update_user") @TableField("update_user")
...@@ -57,7 +59,7 @@ public class UserComment implements Serializable { ...@@ -57,7 +59,7 @@ public class UserComment implements Serializable {
@Schema(name = "修改时间") @Schema(name = "修改时间")
@TableField("update_time") @TableField("update_time")
private LocalDateTime updateTime; private Date updateTime;
@Schema(name = "删除状态") @Schema(name = "删除状态")
@TableField("delete_status") @TableField("delete_status")
......
...@@ -2,13 +2,15 @@ package com.yongqi.xinrenli.domain; ...@@ -2,13 +2,15 @@ package com.yongqi.xinrenli.domain;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime; import java.util.Date;
/** /**
* <p> * <p>
...@@ -49,7 +51,7 @@ public class UserFeedback implements Serializable { ...@@ -49,7 +51,7 @@ public class UserFeedback implements Serializable {
@Schema(name = "创建时间") @Schema(name = "创建时间")
@TableField("create_time") @TableField("create_time")
private LocalDateTime createTime; private Date createTime;
@Schema(name = "修改人") @Schema(name = "修改人")
@TableField("update_user") @TableField("update_user")
...@@ -57,7 +59,7 @@ public class UserFeedback implements Serializable { ...@@ -57,7 +59,7 @@ public class UserFeedback implements Serializable {
@Schema(name = "修改时间") @Schema(name = "修改时间")
@TableField("update_time") @TableField("update_time")
private LocalDateTime updateTime; private Date updateTime;
@Schema(name = "删除状态") @Schema(name = "删除状态")
@TableField("delete_status") @TableField("delete_status")
......
...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.IdType; ...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
...@@ -12,7 +13,8 @@ import lombok.experimental.Accessors; ...@@ -12,7 +13,8 @@ import lombok.experimental.Accessors;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.util.Date;
/** /**
* <p> * <p>
...@@ -112,11 +114,11 @@ public class WxUser implements Serializable { ...@@ -112,11 +114,11 @@ public class WxUser implements Serializable {
@Schema(name = "最近消费时间") @Schema(name = "最近消费时间")
@TableField("last_consumption_time") @TableField("last_consumption_time")
private LocalDateTime lastConsumptionTime; private Date lastConsumptionTime;
@Schema(name = "创建时间") @Schema(name = "创建时间")
@TableField("create_time") @TableField("create_time")
private LocalDateTime createTime; private Date createTime;
@Schema(name = "创建者") @Schema(name = "创建者")
@TableField("create_by") @TableField("create_by")
...@@ -128,7 +130,7 @@ public class WxUser implements Serializable { ...@@ -128,7 +130,7 @@ public class WxUser implements Serializable {
@Schema(name = "更新时间") @Schema(name = "更新时间")
@TableField("modify_time") @TableField("modify_time")
private LocalDateTime modifyTime; private Date modifyTime;
@Schema(name = "更新者") @Schema(name = "更新者")
@TableField("modify_by") @TableField("modify_by")
......
package com.yongqi.xinrenli.domain.bo;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* <p>
* 文章表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Schema(name="Article对象", description="文章表")
public class ArticleBo extends BaseEntity {
private static final long serialVersionUID = 1L;
@Schema(name = "自增id")
private Long id;
@Schema(name = "用户id")
private String userId;
@Schema(name = "动态标题")
@NotNull(message = "动态标题不能为空")
@NotBlank(message = "动态标题不能为空")
private String title;
@Schema(name = "动态内容")
@NotNull(message = "动态内容不能为空")
@NotBlank(message = "动态内容不能为空")
private String content;
@Schema(name = "添加图片地址")
private String imageSrc;
@Schema(name = "创建人")
private String createUser;
@Schema(name = "修改人")
private String updateUser;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.bo;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* <p>
* 优惠卷表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Schema(name="Coupon对象", description="优惠卷表")
public class CouponBo extends BaseEntity {
private static final long serialVersionUID = 1L;
@Schema(name = "自增id")
private Long id;
@Schema(name = "用户id")
private Integer userId;
@Schema(name = "券类型")
@NotNull(message = "券类型不能为空")
private Integer couponType;
@Schema(name = "优惠内容:满减")
@NotNull(message = "优惠内容不能为空")
private Integer fullSubtraction;
@Schema(name = "使用门槛: 最低消费")
@NotNull(message = "使用门槛不能为空")
private Integer minUsed;
@Schema(name = "生效时间")
@NotNull(message = "生效时间不能为空")
private Date effectiveTime;
@Schema(name = "失效时间")
private Date failureTime;
@Schema(name = "创建人")
private String createUser;
@Schema(name = "修改人")
private String updateUser;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.bo;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.yongqi.xinrenli.admin.controller.OrderController;
import io.swagger.v3.oas.annotations.media.Schema;
import javafx.beans.binding.MapExpression;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;
/**
* <p>
* 订单表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Schema(name="Order对象", description="订单表")
public class OrderBo extends BaseEntity {
private static final long serialVersionUID = 1L;
@Schema(name = "自增id")
private Long id;
@Schema(name = "用户id")
@NotNull(message = "用户id不能为空")
private Long userId;
@Schema(name = "标题")
@NotNull(message = "标题不能为空")
@NotBlank(message = "标题不能为空", groups = {AddGroup.class, EditGroup.class})
private String title;
@Schema(name = "联系人")
@NotNull(message = "联系人不能为空")
@NotBlank(message = "联系人不能为空")
private String linkman;
@Schema(name = "联系电话")
@NotNull(message = "联系电话不能为空")
@NotBlank(message = "联系电话不能为空")
private String phone;
@Schema(name = "维修时间")
@NotNull(message = "维修时间不能为空")
@JsonFormat(pattern = "yyyy/MM/dd")
private Date repairTime;
@Schema(name = "维修地址")
@NotNull(message = "维修地址不能为空")
@NotBlank(message = "维修地址不能为空")
private String repairAddress;
@Schema(name = "预算金额")
@NotNull(message = "预算金额不能为空")
private Double budget;
@Schema(name = "图片地址")
private List<String> imageSrc;
@Schema(name = "视频地址")
private String videoSrc;
@Schema(name = "语音地址")
private String audioSrc;
@Schema(name = "备注说明")
private String remark;
@Schema(name = "订单状态:0 已发布;1 已驳回;2 待支付;3 已接单;4 已完成;5 退款中;6 已退款")
private Integer status;
@Schema(name = "创建人")
private String createUser;
@Schema(name = "修改人")
private String updateUser;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.bo;
import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* <p>
* 用户评论表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Schema(name="UserComment对象", description="用户评论表")
public class UserCommentBo extends BaseEntity {
private static final long serialVersionUID = 1L;
@Schema(name = "id自增")
private Long id;
@Schema(name = "文章id")
private Integer articleId;
@Schema(name = "用户id")
@NotNull(message = "用户id不能为空")
private Long userId;
@Schema(name = "用户评论内容")
@NotNull(message = "评论内容不能为空")
@NotBlank(message = "评论内容不能为空")
private String content;
@Schema(name = "创建人")
private String createUser;
@Schema(name = "修改人")
private String updateUser;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.bo;
import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* <p>
* 用户反馈表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Schema(name="UserFeedback对象", description="用户反馈表")
public class UserFeedbackBo extends BaseEntity {
private static final long serialVersionUID = 1L;
@Schema(name = "自增id")
private Long id;
@Schema(name = "用户id")
@NotNull(message = "用户id不能为空")
private Long userId;
@Schema(name = "反馈标题")
@NotNull(message = "反馈标题不能为空")
@NotBlank(message = "反馈标题不能为空")
private String title;
@Schema(name = "反馈内容")
@NotNull(message = "反馈标题不能为空")
@NotBlank(message = "反馈标题不能为空")
private String content;
@Schema(name = "创建人")
private String createUser;
@Schema(name = "修改人")
private String updateUser;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.bo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.util.Date;
/**
* <p>
* 微信用户
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Schema(name="WxUser对象", description="微信用户")
public class WxUserBo extends BaseEntity {
private static final long serialVersionUID = 1L;
@Schema(name = "主键标识")
private Long id;
@Schema(name = "微信用户的唯一标识")
private String openId;
@Schema(name = "是否是团长:1:是,2:否")
private Boolean headOrNot;
@Schema(name = "用户昵称")
private String nickname;
@Schema(name = "用户的性别,值为1时是男性,值为2时是女性,值为0时是未知")
private Integer sex;
@Schema(name = "用户个人资料填写的省份")
private String province;
@Schema(name = "普通用户个人资料填写的城市")
private String city;
@Schema(name = "国家,如中国为CN")
private String country;
@Schema(name = "用户头像")
private String headImgUrl;
@Schema(name = "只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段。")
private String unionId;
@Schema(name = "手机号")
private String mobile;
@Schema(name = "授权手机号")
private String authMobile;
@Schema(name = "商场编码")
private String mallCode;
@Schema(name = "会员卡号")
private String userCode;
@Schema(name = "session_key")
private String sessionKey;
@Schema(name = "是否关注微信(1:关注,0:取消关注)")
private Integer wechatSubscribe;
@Schema(name = "是否取消关注(关注后又取消,和oauth取得的会员区别)(1:取消,0:未取消)")
private Integer cancelSubscribe;
@Schema(name = "微信原始ID")
private String wechatOriginalId;
@Schema(name = "下单次数")
private Integer orderNum;
@Schema(name = "累计消费")
private BigDecimal cumulativeConsumption;
@Schema(name = "最近消费时间")
private Date lastConsumptionTime;
@Schema(name = "创建人Code")
private String createCode;
@Schema(name = "更新时间")
private Date modifyTime;
@Schema(name = "更新者")
private String modifyBy;
@Schema(name = "更新者code")
private String modifyCode;
@Schema(name = "删除状态 0:未删除 1:删除")
private Boolean deleteFlag;
}
package com.yongqi.xinrenli.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 文章表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@ExcelIgnoreUnannotated
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Schema(name="Article对象", description="文章表")
public class ArticleVo implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty("主键")
@Schema(name = "自增id")
private Long id;
@ExcelProperty("用户id")
@Schema(name = "用户id")
private String userId;
@ExcelProperty("动态标题")
@Schema(name = "动态标题")
private String title;
@ExcelProperty("动态内容")
@Schema(name = "动态内容")
private String content;
@ExcelProperty("添加图片地址")
@Schema(name = "添加图片地址")
private String imageSrc;
@ExcelProperty("创建人")
@Schema(name = "创建人")
private String createUser;
@ExcelProperty("创建时间")
@Schema(name = "创建时间")
private Date createTime;
@ExcelProperty("修改人")
@Schema(name = "修改人")
private String updateUser;
@ExcelProperty("修改时间")
@Schema(name = "修改时间")
private Date updateTime;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 优惠卷表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@ExcelIgnoreUnannotated
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Schema(name="Coupon对象", description="优惠卷表")
public class CouponVo implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty("主键")
@Schema(name = "自增id")
private Long id;
@ExcelProperty("用户id")
@Schema(name = "用户id")
private Integer userId;
@ExcelProperty("券类型")
@Schema(name = "券类型")
private Integer couponType;
@ExcelProperty("优惠内容(满减)")
@Schema(name = "优惠内容:满减")
private Integer fullSubtraction;
@ExcelProperty("使用门槛(最低消费)")
@Schema(name = "使用门槛: 最低消费")
private Integer minUsed;
@ExcelProperty("生效时间")
@Schema(name = "生效时间")
private Date effectiveTime;
@ExcelProperty("失效时间")
@Schema(name = "失效时间")
private Date failureTime;
@ExcelProperty("创建人")
@Schema(name = "创建人")
private String createUser;
@ExcelProperty("创建时间")
@Schema(name = "创建时间")
private Date createTime;
@ExcelProperty("修改人")
@Schema(name = "修改人")
private String updateUser;
@ExcelProperty("修改时间")
@Schema(name = "修改时间")
private Date updateTime;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* <p>
* 订单表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@ExcelIgnoreUnannotated
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Schema(name="Order对象", description="订单表")
public class OrderVo implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty("主键")
@Schema(name = "自增id")
private Long id;
@ExcelProperty("用户id")
@Schema(name = "用户id")
private Long userId;
@ExcelProperty("标题")
@Schema(name = "标题")
private String title;
@ExcelProperty("联系人")
@Schema(name = "联系人")
private String linkman;
@ExcelProperty("联系电话")
@Schema(name = "联系电话")
private String phone;
@ExcelProperty("维修时间")
@Schema(name = "维修时间")
@JsonFormat(pattern = "yyyy/MM/dd")
private Date repairTime;
@ExcelProperty("维修地址")
@Schema(name = "维修地址")
private String repairAddress;
@ExcelProperty("预算金额")
@Schema(name = "预算金额")
private Double budget;
@ExcelProperty("图片地址")
@Schema(name = "图片地址")
private List<String> imageSrc;
@ExcelProperty("视频地址")
@Schema(name = "视频地址")
private String videoSrc;
@ExcelProperty("语音地址")
@Schema(name = "语音地址")
private String audioSrc;
@ExcelProperty("备注说明")
@Schema(name = "备注说明")
private String remark;
@ExcelProperty("订单状态:0 已发布;1 已驳回;2 待支付;3 已接单;4 已完成;5 退款中;6 已退款")
@Schema(name = "订单状态:0 已发布;1 已驳回;2 待支付;3 已接单;4 已完成;5 退款中;6 已退款")
private Integer status;
@ExcelProperty("创建人")
@Schema(name = "创建人")
private String createUser;
@ExcelProperty("创建时间")
@Schema(name = "创建时间")
private Date createTime;
@ExcelProperty("修改人")
@Schema(name = "修改人")
private String updateUser;
@ExcelProperty("修改时间")
@Schema(name = "修改时间")
private Date updateTime;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 用户评论表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@ExcelIgnoreUnannotated
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Schema(name="UserComment对象", description="用户评论表")
public class UserCommentVo implements Serializable {
private static final long serialVersionUID = 1L;
@ExcelProperty("id自增")
@Schema(name = "id自增")
private Long id;
@Schema(name = "文章id")
@ExcelProperty("文章id")
private Integer articleId;
@Schema(name = "用户id")
@ExcelProperty("用户id")
private Long userId;
@Schema(name = "用户评论内容")
@ExcelProperty("用户评论内容")
private String content;
@ExcelProperty("创建人")
@Schema(name = "创建人")
private String createUser;
@ExcelProperty("创建时间")
@Schema(name = "创建时间")
private Date createTime;
@ExcelProperty("修改人")
@Schema(name = "修改人")
private String updateUser;
@ExcelProperty("修改时间")
@Schema(name = "修改时间")
private Date updateTime;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 用户反馈表
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@ExcelIgnoreUnannotated
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Schema(name="UserFeedback对象", description="用户反馈表")
public class UserFeedbackVo implements Serializable {
private static final long serialVersionUID = 1L;
@Schema(name = "自增id")
@ExcelProperty("自增id")
private Long id;
@Schema(name = "用户id")
@ExcelProperty("用户id")
private Long userId;
@Schema(name = "反馈标题")
@ExcelProperty("反馈标题")
private String title;
@Schema(name = "反馈内容")
@ExcelProperty("反馈内容")
private String content;
@ExcelProperty("创建人")
@Schema(name = "创建人")
private String createUser;
@ExcelProperty("创建时间")
@Schema(name = "创建时间")
private Date createTime;
@ExcelProperty("修改人")
@Schema(name = "修改人")
private String updateUser;
@ExcelProperty("修改时间")
@Schema(name = "修改时间")
private Date updateTime;
@Schema(name = "删除状态")
private Integer delStatus;
}
package com.yongqi.xinrenli.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* <p>
* 微信用户
* </p>
*
* @author wanglei
* @since 2023-03-02
*/
@Data
@ExcelIgnoreUnannotated
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Schema(name="WxUser对象", description="微信用户")
public class WxUserVo implements Serializable {
private static final long serialVersionUID = 1L;
@Schema(name = "主键标识")
@ExcelProperty("主键标识")
private Long id;
@Schema(name = "微信用户的唯一标识")
@ExcelProperty("微信用户的唯一标识")
private String openId;
@Schema(name = "是否是团长:1:是,2:否")
@ExcelProperty("是否是团长:1:是,2:否")
private Boolean headOrNot;
@Schema(name = "用户昵称")
@ExcelProperty("用户昵称")
private String nickname;
@Schema(name = "用户的性别,值为1时是男性,值为2时是女性,值为0时是未知")
@ExcelProperty("用户的性别,值为1时是男性,值为2时是女性,值为0时是未知")
private Integer sex;
@Schema(name = "用户个人资料填写的省份")
@ExcelProperty("用户个人资料填写的省份")
private String province;
@Schema(name = "普通用户个人资料填写的城市")
@ExcelProperty("普通用户个人资料填写的城市")
private String city;
@Schema(name = "国家,如中国为CN")
@ExcelProperty("国家,如中国为CN")
private String country;
@Schema(name = "用户头像")
@ExcelProperty("用户头像")
private String headImgUrl;
@Schema(name = "只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段。")
@ExcelProperty("只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段。")
private String unionId;
@Schema(name = "手机号")
@ExcelProperty("手机号")
private String mobile;
@Schema(name = "授权手机号")
@ExcelProperty("授权手机号")
private String authMobile;
@Schema(name = "商场编码")
@ExcelProperty("商场编码")
private String mallCode;
@Schema(name = "会员卡号")
@ExcelProperty("会员卡号")
private String userCode;
@ExcelProperty("session_key")
private String sessionKey;
@Schema(name = "是否关注微信(1:关注,0:取消关注)")
@ExcelProperty("是否关注微信(1:关注,0:取消关注)")
private Integer wechatSubscribe;
@Schema(name = "是否取消关注(关注后又取消,和oauth取得的会员区别)(1:取消,0:未取消)")
@ExcelProperty("是否取消关注(关注后又取消,和oauth取得的会员区别)(1:取消,0:未取消)")
private Integer cancelSubscribe;
@Schema(name = "微信原始ID")
@ExcelProperty("微信原始ID")
private String wechatOriginalId;
@Schema(name = "下单次数")
@ExcelProperty("下单次数")
private Integer orderNum;
@Schema(name = "累计消费")
@ExcelProperty("累计消费")
private BigDecimal cumulativeConsumption;
@Schema(name = "最近消费时间")
@ExcelProperty("最近消费时间")
private Date lastConsumptionTime;
@Schema(name = "创建时间")
@ExcelProperty("创建时间")
private Date createTime;
@Schema(name = "创建者")
@ExcelProperty("创建者")
private String createBy;
@Schema(name = "创建人Code")
@ExcelProperty("创建人Code")
private String createCode;
@Schema(name = "更新时间")
@ExcelProperty("更新时间")
private Date modifyTime;
@Schema(name = "更新者")
@ExcelProperty("更新者")
private String modifyBy;
@Schema(name = "更新者code")
@ExcelProperty("更新者code")
private String modifyCode;
@Schema(name = "删除状态 0:未删除 1:删除")
@ExcelProperty("删除状态 0:未删除 1:删除")
private Boolean deleteFlag;
}
...@@ -2,6 +2,8 @@ package com.yongqi.xinrenli.service; ...@@ -2,6 +2,8 @@ package com.yongqi.xinrenli.service;
import com.yongqi.xinrenli.domain.Order; import com.yongqi.xinrenli.domain.Order;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yongqi.xinrenli.domain.bo.OrderBo;
import com.yongqi.xinrenli.domain.vo.OrderVo;
/** /**
* <p> * <p>
...@@ -15,23 +17,38 @@ public interface IOrderService extends IService<Order> { ...@@ -15,23 +17,38 @@ public interface IOrderService extends IService<Order> {
/** /**
* 新增用户需求订单 * 新增用户需求订单
* @param order * @param orderBo
* @return * @return
*/ */
boolean addOrder(Order order); boolean addOrder(OrderBo orderBo);
/** /**
* 判断返回参是否为空 * 取消订单通过id
* @param order * @param id
* @return
*/
boolean cancelOrderById(Long id);
/**
* 修改订单信息
* @param orderBo
* @return * @return
*/ */
boolean isAllEmpty(Order order); boolean updateOrder(OrderBo orderBo);
/**
* 通过id查询订单详情
* @param id
* @return
*/
OrderVo getOrderById(Long id);
/** /**
* 判断上传图片 视频 语音是否都为空 * 判断上传图片 视频 语音是否都为空
* @param order * @param order
* @return * @return
*/ */
boolean isParamEmpty(Order order); boolean isAllEmpty(OrderBo order);
} }
package com.yongqi.xinrenli.service.impl; package com.yongqi.xinrenli.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSON;
import cn.hutool.json.JSONUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yongqi.xinrenli.domain.Order; import com.yongqi.xinrenli.domain.Order;
import com.yongqi.xinrenli.domain.bo.OrderBo;
import com.yongqi.xinrenli.domain.vo.OrderVo;
import com.yongqi.xinrenli.mapper.OrderMapper; import com.yongqi.xinrenli.mapper.OrderMapper;
import com.yongqi.xinrenli.service.IOrderService; import com.yongqi.xinrenli.service.IOrderService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* <p> * <p>
* 订单表 服务实现类 * 订单表 服务实现类
...@@ -15,32 +25,56 @@ import org.springframework.stereotype.Service; ...@@ -15,32 +25,56 @@ import org.springframework.stereotype.Service;
* @since 2023-03-02 * @since 2023-03-02
*/ */
@Service @Service
@Slf4j
public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements IOrderService { public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements IOrderService {
@Override @Override
public boolean addOrder(Order order) { public boolean addOrder(OrderBo orderBo) {
this.save(order); Order order = BeanUtil.toBean(orderBo,Order.class);
return false; //图片地址转为json数据存储
order.setImageSrc(JSONUtil.toJsonStr(orderBo.getImageSrc()));
return this.save(order);
} }
@Override @Override
public boolean isParamEmpty(Order order) { public boolean cancelOrderById(Long id) {
if (order.getTitle() != null || order.getLinkman() != null || order.getPhone() != null || order.getRepairTime() != null || order.getRepairAddress() != null || order.getBudget() != null) { return this.removeById(id);
return false; }
@Override
public boolean updateOrder(OrderBo orderBo) {
Order order = BeanUtil.toBean(orderBo,Order.class);
//图片地址转为json数据存储
order.setImageSrc(JSONUtil.toJsonStr(orderBo.getImageSrc()));
//测试
log.info("wanglei-order:{}",order);
return this.updateById(order);
}
@Override
public OrderVo getOrderById(Long id) {
Order order = this.getById(id);
//若不存在则返回null
if (order==null){
return null;
} }
return true; //将order转为vo
OrderVo orderVo = BeanUtil.toBean(order,OrderVo.class);
//vo中将Json转为列表
orderVo.setImageSrc(JSONUtil.toList(order.getImageSrc(), String.class));
return orderVo;
} }
@Override @Override
public boolean isAllEmpty(Order order) { public boolean isAllEmpty(OrderBo order) {
int flag = 0; int flag = 0;
if (order.getImageSrc() != null) { if (order.getImageSrc() != null && !"".equals(order.getImageSrc()) && order.getImageSrc().size()!=0) {
flag++; flag++;
} }
if (order.getVideoSrc() != null) { if (order.getVideoSrc() != null && !"".equals(order.getVideoSrc())) {
flag++; flag++;
} }
if (order.getAudioSrc() != null) { if (order.getAudioSrc() != null && !"".equals(order.getAudioSrc())) {
flag++; flag++;
} }
if (flag > 0) { if (flag > 0) {
......
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