From 1e31b64f416a8f6574b21ff1f6a3cb1c4bc0904f Mon Sep 17 00:00:00 2001 From: zenghuihuang <1730961511@163.com> Date: Thu, 16 Jan 2025 18:26:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=95=E8=AF=89=E5=BB=BA=E8=AE=AE=20=20?= =?UTF-8?q?=E8=AF=84=E4=BB=B7=20=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../canteen/common/utils/StringUtil.java | 25 ++ .../BasicsCanteenEvaluateController.java | 103 ++++++ .../controller/BasicsComplaintController.java | 103 ++++++ .../consumer/dto/BasicsComplaintDTO.java | 163 +++++++++ .../mapper/BasicsCanteenEvaluateMapper.java | 85 +++++ .../mapper/BasicsComplaintMapper.java | 86 +++++ .../consumer/model/BasicsCanteenEvaluate.java | 317 +++++++++++++++++ .../consumer/model/BasicsComplaint.java | 163 +++++++++ .../service/BasicsCanteenEvaluateService.java | 56 +++ .../service/BasicsComplaintService.java | 58 +++ .../BasicsCanteenEvaluateServiceImpl.java | 104 ++++++ .../impl/BasicsComplaintServiceImpl.java | 93 +++++ .../order/BasicsCanteenEvaluateMapper.xml | 331 ++++++++++++++++++ .../mapper/order/BasicsComplaintMapper.xml | 233 ++++++++++++ 14 files changed, 1920 insertions(+) create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/controller/BasicsCanteenEvaluateController.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/controller/BasicsComplaintController.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/dto/BasicsComplaintDTO.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/mapper/BasicsCanteenEvaluateMapper.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/mapper/BasicsComplaintMapper.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/model/BasicsCanteenEvaluate.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/model/BasicsComplaint.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/BasicsCanteenEvaluateService.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/BasicsComplaintService.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/impl/BasicsCanteenEvaluateServiceImpl.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/impl/BasicsComplaintServiceImpl.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/resources/mapper/order/BasicsCanteenEvaluateMapper.xml create mode 100644 bonus-modules/bonus-smart-canteen/src/main/resources/mapper/order/BasicsComplaintMapper.xml diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/common/utils/StringUtil.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/common/utils/StringUtil.java index 1c264bb..c3be3a6 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/common/utils/StringUtil.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/common/utils/StringUtil.java @@ -1,5 +1,8 @@ package com.bonus.canteen.common.utils; +import java.math.BigInteger; +import java.util.Random; + public class StringUtil { /** @@ -14,4 +17,26 @@ public class StringUtil { // 组合时间戳和随机数 return timestamp + String.format("%04d", randomPart); } + + /** + * 升成 18位的随机数 + * @param numDigits + * @return + */ + public static long generateRandomLong(int numDigits) { + Random random = new Random(); + long number = 0; + + // 确保生成的数字是 18 位 + for (int i = 0; i < numDigits; i++) { + number = number * 10 + random.nextInt(10); + } + + // 确保生成的数字不会超过 long 的最大值 + if (number > Long.MAX_VALUE) { + number = Long.MAX_VALUE; + } + + return number; + } } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/controller/BasicsCanteenEvaluateController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/controller/BasicsCanteenEvaluateController.java new file mode 100644 index 0000000..f5bf4db --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/controller/BasicsCanteenEvaluateController.java @@ -0,0 +1,103 @@ +package com.bonus.canteen.consumer.controller; + +import com.bonus.canteen.consumer.model.BasicsCanteenEvaluate; +import com.bonus.canteen.consumer.service.BasicsCanteenEvaluateService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.Sort; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +/** + * 食堂评价表(BasicsCanteenEvaluate)表控制层 + * + * @author makejava + * @since 2025-01-16 14:06:57 + */ +@RestController +@RequestMapping("basicsCanteenEvaluate") +public class BasicsCanteenEvaluateController { + + /** + * 服务对象 + */ + @Resource + private BasicsCanteenEvaluateService basicsCanteenEvaluateService; + + /** + * 分页查询 + * + * @param basicsCanteenEvaluate 筛选条件 + * @param + * @return 查询结果 + */ + @GetMapping + public ResponseEntity> queryByPage( + BasicsCanteenEvaluate basicsCanteenEvaluate, + @RequestParam(defaultValue = "0") int page, + @RequestParam(defaultValue = "10") int size, + @RequestParam(required = false) String sortField, + @RequestParam(required = false) String sortDirection) { + + Sort sort; + if (sortField != null && sortDirection != null) { + Sort.Direction direction = "desc".equalsIgnoreCase(sortDirection) ? Sort.Direction.DESC : Sort.Direction.ASC; + sort = Sort.by(direction, sortField); + } else { + sort = Sort.unsorted(); // 创建一个空的 Sort 对象 + } + + PageRequest pageRequest = PageRequest.of(page, size, sort); + return ResponseEntity.ok(this.basicsCanteenEvaluateService.queryByPage(basicsCanteenEvaluate, pageRequest)); + } + + /** + * 通过主键查询单条数据 + * + * @param id 主键 + * @return 单条数据 + */ + @GetMapping("{id}") + public ResponseEntity queryById(@PathVariable("id") Long id) { + return ResponseEntity.ok(this.basicsCanteenEvaluateService.queryById(id)); + } + + /** + * 新增数据 + * + * @param basicsCanteenEvaluate 实体 + * @return 新增结果 + */ + @PostMapping + public ResponseEntity add(@Valid @RequestBody BasicsCanteenEvaluate basicsCanteenEvaluate) { + return ResponseEntity.ok(this.basicsCanteenEvaluateService.insert(basicsCanteenEvaluate)); + } + + /** + * 编辑数据 + * + * @param basicsCanteenEvaluate 实体 + * @return 编辑结果 + */ + @PutMapping + public ResponseEntity edit(BasicsCanteenEvaluate basicsCanteenEvaluate) { + return ResponseEntity.ok(this.basicsCanteenEvaluateService.update(basicsCanteenEvaluate)); + } + + /** + * 删除数据 + * + * @param id 主键 + * @return 删除是否成功 + */ + @DeleteMapping + public ResponseEntity deleteById(Long id) { + return ResponseEntity.ok(this.basicsCanteenEvaluateService.deleteById(id)); + } + +} + diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/controller/BasicsComplaintController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/controller/BasicsComplaintController.java new file mode 100644 index 0000000..629343f --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/controller/BasicsComplaintController.java @@ -0,0 +1,103 @@ +package com.bonus.canteen.consumer.controller; + +import com.bonus.canteen.common.utils.StringUtils; +import com.bonus.canteen.consumer.model.BasicsCanteenEvaluate; +import com.bonus.canteen.consumer.model.BasicsComplaint; +import com.bonus.canteen.consumer.service.BasicsComplaintService; +import com.bonus.common.core.web.controller.BaseController; +import com.bonus.common.core.web.domain.AjaxResult; +import com.bonus.common.core.web.page.TableDataInfo; +import com.bonus.system.api.domain.SysUser; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.Sort; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; +import java.util.List; + +import static com.bonus.common.core.utils.PageUtils.startPage; + +/** + * 投诉建议 (BasicsComplaint)表控制层 + * + * @author makejava + * @since 2025-01-16 16:34:53 + */ +@RestController +@RequestMapping("basicsComplaint") +public class BasicsComplaintController extends BaseController { + /** + * 服务对象 + */ + @Resource + private BasicsComplaintService basicsComplaintService; + + /** + * 分页查询 + * + * @param + * @param + * @return 查询结果 + */ + @GetMapping + public TableDataInfo queryByPage(BasicsComplaint basicsCanteenEvaluate){ + startPage(); + List basicsComplaints = basicsComplaintService.queryByPage(basicsCanteenEvaluate); + return getDataTable(basicsComplaints); + } + + + + /** + * 通过主键查询单条数据 + * + * @param id 主键 + * @return 单条数据 + */ + @GetMapping("{id}") + public ResponseEntity queryById(@PathVariable("id") Long id) { + return ResponseEntity.ok(this.basicsComplaintService.queryById(id)); + } + + /** + * 新增数据 + * + * @param basicsComplaint 实体 + * @return 新增结果 + */ + @PostMapping + public AjaxResult add(@Valid @RequestBody BasicsComplaint basicsComplaint) { + BasicsComplaint insert = this.basicsComplaintService.insert(basicsComplaint); + if (StringUtils.isNull(insert)){ + return AjaxResult.error("未登录,请先登录"); + } + return AjaxResult.success(insert); + } + + /** + * 编辑数据 + * + * @param basicsComplaint 实体 + * @return 编辑结果 + */ + @PutMapping + public ResponseEntity edit(BasicsComplaint basicsComplaint) { + return ResponseEntity.ok(this.basicsComplaintService.update(basicsComplaint)); + } + + /** + * 删除数据 + * + * @param id 主键 + * @return 删除是否成功 + */ + @DeleteMapping + public ResponseEntity deleteById(Long id) { + return ResponseEntity.ok(this.basicsComplaintService.deleteById(id)); + } + +} + diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/dto/BasicsComplaintDTO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/dto/BasicsComplaintDTO.java new file mode 100644 index 0000000..0d6247c --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/dto/BasicsComplaintDTO.java @@ -0,0 +1,163 @@ +package com.bonus.canteen.consumer.dto; + +import cn.hutool.db.Page; +import com.bonus.common.core.web.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +@ApiModel("投诉建议实体类") +@Data +public class BasicsComplaintDTO extends Page { + private static final long serialVersionUID = 992652020559243518L; + @ApiModelProperty("主键自增") + private Long id; + @ApiModelProperty("投诉建议id") + private Long complaintId; + @ApiModelProperty("人员id ") + private Long custId; + @ApiModelProperty("餐厅id") + private Long canteenId; + @ApiModelProperty("投诉内容") + private String content; + @ApiModelProperty("投诉图片") + private String complaintPicture; + @ApiModelProperty("来源") + private Integer sourceType; + @ApiModelProperty("联系方式") + private String mobile; + @ApiModelProperty("回复内容") + private String replyContent; + @ApiModelProperty("乐观锁") + private Integer revision; + @ApiModelProperty("创建人") + private String crby; + @ApiModelProperty("创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date crtime; + @ApiModelProperty("更新人") + private String upby; + @ApiModelProperty("修改时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date uptime; + @ApiModelProperty("回复状态") + private Integer replyState; + + public Long getId() { + return this.id; + } + + public Long getComplaintId() { + return this.complaintId; + } + + public Long getCustId() { + return this.custId; + } + + public Long getCanteenId() { + return this.canteenId; + } + + public String getContent() { + return this.content; + } + + public String getComplaintPicture() { + return this.complaintPicture; + } + + public Integer getSourceType() { + return this.sourceType; + } + + public String getMobile() { + return this.mobile; + } + + public String getReplyContent() { + return this.replyContent; + } + + public Integer getRevision() { + return this.revision; + } + + public String getCrby() { + return this.crby; + } + + + public String getUpby() { + return this.upby; + } + + + public Integer getReplyState() { + return this.replyState; + } + + public void setId(final Long id) { + this.id = id; + } + + public void setComplaintId(final Long complaintId) { + this.complaintId = complaintId; + } + + public void setCustId(final Long custId) { + this.custId = custId; + } + + public void setCanteenId(final Long canteenId) { + this.canteenId = canteenId; + } + + public void setContent(final String content) { + this.content = content; + } + + public void setComplaintPicture(final String complaintPicture) { + this.complaintPicture = complaintPicture; + } + + public void setSourceType(final Integer sourceType) { + this.sourceType = sourceType; + } + + public void setMobile(final String mobile) { + this.mobile = mobile; + } + + public void setReplyContent(final String replyContent) { + this.replyContent = replyContent; + } + + public void setRevision(final Integer revision) { + this.revision = revision; + } + + public void setCrby(final String crby) { + this.crby = crby; + } + + public void setCrtime(final Date crtime) { + this.crtime = crtime; + } + + public void setUpby(final String upby) { + this.upby = upby; + } + + public void setUptime(final Date uptime) { + this.uptime = uptime; + } + + public void setReplyState(final Integer replyState) { + this.replyState = replyState; + } + +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/mapper/BasicsCanteenEvaluateMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/mapper/BasicsCanteenEvaluateMapper.java new file mode 100644 index 0000000..b2bd471 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/mapper/BasicsCanteenEvaluateMapper.java @@ -0,0 +1,85 @@ +package com.bonus.canteen.consumer.mapper; + +import com.bonus.canteen.consumer.model.BasicsCanteenEvaluate; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.springframework.data.domain.Pageable; + +import java.util.List; + +/** + * 食堂评价表(BasicsCanteenEvaluate)表数据库访问层 + * + * @author makejava + * @since 2025-01-16 14:02:52 + */ +@Mapper +public interface BasicsCanteenEvaluateMapper { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + BasicsCanteenEvaluate queryById(Long id); + + /** + * 查询指定行数据 + * + * @param basicsCanteenEvaluate 查询条件 + * @param pageable 分页对象 + * @return 对象列表 + */ + List queryAllByLimit(BasicsCanteenEvaluate basicsCanteenEvaluate, @Param("pageable") Pageable pageable); + + /** + * 统计总行数 + * + * @param basicsCanteenEvaluate 查询条件 + * @return 总行数 + */ + long count(BasicsCanteenEvaluate basicsCanteenEvaluate); + + /** + * 新增数据 + * + * @param basicsCanteenEvaluate 实例对象 + * @return 影响行数 + */ + int insert(BasicsCanteenEvaluate basicsCanteenEvaluate); + + /** + * 批量新增数据(MyBatis原生foreach方法) + * + * @param entities List 实例对象列表 + * @return 影响行数 + */ + int insertBatch(@Param("entities") List entities); + + /** + * 批量新增或按主键更新数据(MyBatis原生foreach方法) + * + * @param entities List 实例对象列表 + * @return 影响行数 + * @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参 + */ + int insertOrUpdateBatch(@Param("entities") List entities); + + /** + * 修改数据 + * + * @param basicsCanteenEvaluate 实例对象 + * @return 影响行数 + */ + int update(BasicsCanteenEvaluate basicsCanteenEvaluate); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 影响行数 + */ + int deleteById(Long id); +} + diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/mapper/BasicsComplaintMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/mapper/BasicsComplaintMapper.java new file mode 100644 index 0000000..7728117 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/mapper/BasicsComplaintMapper.java @@ -0,0 +1,86 @@ +package com.bonus.canteen.consumer.mapper; + +import com.bonus.canteen.consumer.model.BasicsComplaint; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.springframework.data.domain.Pageable; +import java.util.List; + +/** + * 投诉建议 (BasicsComplaint)表数据库访问层 + * + * @author makejava + * @since 2025-01-16 16:34:53 + */ +@Mapper +public interface BasicsComplaintMapper { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + BasicsComplaint queryById(Long id); + + /** + * 查询指定行数据 + * + * @param basicsComplaint 查询条件 + * @param + * @return 对象列表 + */ + List queryAllByLimit(BasicsComplaint basicsComplaint + ); + + /** + * 统计总行数 + * + * @param basicsComplaint 查询条件 + * @return 总行数 + */ + long count(BasicsComplaint basicsComplaint); + + /** + * 新增数据 + * + * @param basicsComplaint 实例对象 + * @return 影响行数 + */ + int insert(BasicsComplaint basicsComplaint); + + /** + * 批量新增数据(MyBatis原生foreach方法) + * + * @param entities List 实例对象列表 + * @return 影响行数 + */ + int insertBatch(@Param("entities") List entities); + + /** + * 批量新增或按主键更新数据(MyBatis原生foreach方法) + * + * @param entities List 实例对象列表 + * @return 影响行数 + * @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参 + */ + int insertOrUpdateBatch(@Param("entities") List entities); + + /** + * 修改数据 + * + * @param basicsComplaint 实例对象 + * @return 影响行数 + */ + int update(BasicsComplaint basicsComplaint); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 影响行数 + */ + int deleteById(Long id); + +} + diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/model/BasicsCanteenEvaluate.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/model/BasicsCanteenEvaluate.java new file mode 100644 index 0000000..20b812f --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/model/BasicsCanteenEvaluate.java @@ -0,0 +1,317 @@ +package com.bonus.canteen.consumer.model; + +import com.bonus.common.core.web.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; +import java.io.Serializable; + +/** + * 食堂评价表(BasicsCanteenEvaluate)实体类 + * + * @author makejava + * @since 2025-01-16 14:02:54 + */ +@Data +public class BasicsCanteenEvaluate extends BaseEntity { + private static final long serialVersionUID = 992652020559243518L; + /** + * 主键ID + */ + private Long id; + /** + * 评价ID + */ + private Long evaluateId; + /** + * 人员ID + */ + private Long custId; + /** + * 食堂ID + */ + private Long canteenId; + /** + * 档口ID + */ + private Long shopstallId; + /** + * 评价日期 + */ + @ApiModelProperty(value = "评价日期 yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date evaluateDate; + /** + * 仪容仪表评分 + */ + private Double appearance; + /** + * 员工服务态度评分 + */ + private Double attitude; + /** + * 菜品口味评分 + */ + private Double taste; + /** + * 菜肴花色品种评分 + */ + private Double varieties; + /** + * 菜肴食品卫生评分 + */ + private Double hygiene; + /** + * 饭菜价格评分 + */ + private Double price; + /** + * 饭菜份量评分 + */ + private Double weight; + /** + * 自定义评分1 + */ + private Double customize1; + /** + * 自定义评分2 + */ + private Double customize2; + /** + * 自定义评分3 + */ + private Double customize3; + /** + * 自定义文本1 + */ + private String customizeText1; + /** + * 自定义文本2 + */ + private String customizeText2; + /** + * 意见和建议 + */ + private String proposal; + /** + * 乐观锁 + */ + private Integer revision; + /** + * 创建人 + */ + private String crby; + /** + * 创建时间 + */ + @ApiModelProperty(value = "创建时间 yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date crtime; + /** + * 更新人 + */ + private String upby; + /** + * 更新时间 + */ + @ApiModelProperty(value = "更新时间 yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date uptime; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getEvaluateId() { + return evaluateId; + } + + public void setEvaluateId(Long evaluateId) { + this.evaluateId = evaluateId; + } + + public Long getCustId() { + return custId; + } + + public void setCustId(Long custId) { + this.custId = custId; + } + + public Long getCanteenId() { + return canteenId; + } + + public void setCanteenId(Long canteenId) { + this.canteenId = canteenId; + } + + public Long getShopstallId() { + return shopstallId; + } + + public void setShopstallId(Long shopstallId) { + this.shopstallId = shopstallId; + } + + public Date getEvaluateDate() { + return evaluateDate; + } + + public void setEvaluateDate(Date evaluateDate) { + this.evaluateDate = evaluateDate; + } + + public Double getAppearance() { + return appearance; + } + + public void setAppearance(Double appearance) { + this.appearance = appearance; + } + + public Double getAttitude() { + return attitude; + } + + public void setAttitude(Double attitude) { + this.attitude = attitude; + } + + public Double getTaste() { + return taste; + } + + public void setTaste(Double taste) { + this.taste = taste; + } + + public Double getVarieties() { + return varieties; + } + + public void setVarieties(Double varieties) { + this.varieties = varieties; + } + + public Double getHygiene() { + return hygiene; + } + + public void setHygiene(Double hygiene) { + this.hygiene = hygiene; + } + + public Double getPrice() { + return price; + } + + public void setPrice(Double price) { + this.price = price; + } + + public Double getWeight() { + return weight; + } + + public void setWeight(Double weight) { + this.weight = weight; + } + + public Double getCustomize1() { + return customize1; + } + + public void setCustomize1(Double customize1) { + this.customize1 = customize1; + } + + public Double getCustomize2() { + return customize2; + } + + public void setCustomize2(Double customize2) { + this.customize2 = customize2; + } + + public Double getCustomize3() { + return customize3; + } + + public void setCustomize3(Double customize3) { + this.customize3 = customize3; + } + + public String getCustomizeText1() { + return customizeText1; + } + + public void setCustomizeText1(String customizeText1) { + this.customizeText1 = customizeText1; + } + + public String getCustomizeText2() { + return customizeText2; + } + + public void setCustomizeText2(String customizeText2) { + this.customizeText2 = customizeText2; + } + + public String getProposal() { + return proposal; + } + + public void setProposal(String proposal) { + this.proposal = proposal; + } + + public Integer getRevision() { + return revision; + } + + public void setRevision(Integer revision) { + this.revision = revision; + } + + public String getCrby() { + return crby; + } + + public void setCrby(String crby) { + this.crby = crby; + } + + public Date getCrtime() { + return crtime; + } + + public void setCrtime(Date crtime) { + this.crtime = crtime; + } + + public String getUpby() { + return upby; + } + + public void setUpby(String upby) { + this.upby = upby; + } + + public Date getUptime() { + return uptime; + } + + public void setUptime(Date uptime) { + this.uptime = uptime; + } + +} + diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/model/BasicsComplaint.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/model/BasicsComplaint.java new file mode 100644 index 0000000..5ecb584 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/model/BasicsComplaint.java @@ -0,0 +1,163 @@ +package com.bonus.canteen.consumer.model; + +import com.bonus.common.core.web.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; +import java.util.Date; + +@ApiModel("投诉建议实体类") +@Data +public class BasicsComplaint extends BaseEntity { + private static final long serialVersionUID = 992652020559243518L; + @ApiModelProperty("主键自增") + private Long id; + @ApiModelProperty("投诉建议id") + private Long complaintId; + @ApiModelProperty("人员id ") + private Long custId; + @ApiModelProperty("餐厅id") + private Long canteenId; + @ApiModelProperty("投诉内容") + private String content; + @ApiModelProperty("投诉图片") + private String complaintPicture; + @ApiModelProperty("来源") + private Integer sourceType; + @ApiModelProperty("联系方式") + private String mobile; + @ApiModelProperty("回复内容") + private String replyContent; + @ApiModelProperty("乐观锁") + private Integer revision; + @ApiModelProperty("创建人") + private String crby; + @ApiModelProperty("创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date crtime; + @ApiModelProperty("更新人") + private String upby; + @ApiModelProperty("修改时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date uptime; + @ApiModelProperty("回复状态") + private Integer replyState; + + public Long getId() { + return this.id; + } + + public Long getComplaintId() { + return this.complaintId; + } + + public Long getCustId() { + return this.custId; + } + + public Long getCanteenId() { + return this.canteenId; + } + + public String getContent() { + return this.content; + } + + public String getComplaintPicture() { + return this.complaintPicture; + } + + public Integer getSourceType() { + return this.sourceType; + } + + public String getMobile() { + return this.mobile; + } + + public String getReplyContent() { + return this.replyContent; + } + + public Integer getRevision() { + return this.revision; + } + + public String getCrby() { + return this.crby; + } + + + public String getUpby() { + return this.upby; + } + + + public Integer getReplyState() { + return this.replyState; + } + + public void setId(final Long id) { + this.id = id; + } + + public void setComplaintId(final Long complaintId) { + this.complaintId = complaintId; + } + + public void setCustId(final Long custId) { + this.custId = custId; + } + + public void setCanteenId(final Long canteenId) { + this.canteenId = canteenId; + } + + public void setContent(final String content) { + this.content = content; + } + + public void setComplaintPicture(final String complaintPicture) { + this.complaintPicture = complaintPicture; + } + + public void setSourceType(final Integer sourceType) { + this.sourceType = sourceType; + } + + public void setMobile(final String mobile) { + this.mobile = mobile; + } + + public void setReplyContent(final String replyContent) { + this.replyContent = replyContent; + } + + public void setRevision(final Integer revision) { + this.revision = revision; + } + + public void setCrby(final String crby) { + this.crby = crby; + } + + public void setCrtime(final Date crtime) { + this.crtime = crtime; + } + + public void setUpby(final String upby) { + this.upby = upby; + } + + public void setUptime(final Date uptime) { + this.uptime = uptime; + } + + public void setReplyState(final Integer replyState) { + this.replyState = replyState; + } + +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/BasicsCanteenEvaluateService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/BasicsCanteenEvaluateService.java new file mode 100644 index 0000000..f986d05 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/BasicsCanteenEvaluateService.java @@ -0,0 +1,56 @@ +package com.bonus.canteen.consumer.service; + +import com.bonus.canteen.consumer.model.BasicsCanteenEvaluate; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; + +/** + * 食堂评价表(BasicsCanteenEvaluate)表服务接口 + * + * @author makejava + * @since 2025-01-16 14:03:00 + */ +public interface BasicsCanteenEvaluateService { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + BasicsCanteenEvaluate queryById(Long id); + + /** + * 分页查询 + * + * @param basicsCanteenEvaluate 筛选条件 + * @param pageRequest 分页对象 + * @return 查询结果 + */ + Page queryByPage(BasicsCanteenEvaluate basicsCanteenEvaluate, PageRequest pageRequest); + + /** + * 新增数据 + * + * @param basicsCanteenEvaluate 实例对象 + * @return 实例对象 + */ + BasicsCanteenEvaluate insert(BasicsCanteenEvaluate basicsCanteenEvaluate); + + /** + * 修改数据 + * + * @param basicsCanteenEvaluate 实例对象 + * @return 实例对象 + */ + BasicsCanteenEvaluate update(BasicsCanteenEvaluate basicsCanteenEvaluate); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + boolean deleteById(Long id); + +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/BasicsComplaintService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/BasicsComplaintService.java new file mode 100644 index 0000000..a3b2eb6 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/BasicsComplaintService.java @@ -0,0 +1,58 @@ +package com.bonus.canteen.consumer.service; + +import com.bonus.canteen.consumer.model.BasicsComplaint; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; + +import java.util.List; + +/** + * 投诉建议 (BasicsComplaint)表服务接口 + * + * @author makejava + * @since 2025-01-16 16:34:57 + */ +public interface BasicsComplaintService { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + BasicsComplaint queryById(Long id); + + /** + * 分页查询 + * + * @param basicsComplaint 筛选条件 + * @param + * @return 查询结果 + */ + List queryByPage(BasicsComplaint basicsComplaint); + + /** + * 新增数据 + * + * @param basicsComplaint 实例对象 + * @return 实例对象 + */ + BasicsComplaint insert(BasicsComplaint basicsComplaint); + + /** + * 修改数据 + * + * @param basicsComplaint 实例对象 + * @return 实例对象 + */ + BasicsComplaint update(BasicsComplaint basicsComplaint); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + boolean deleteById(Long id); + +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/impl/BasicsCanteenEvaluateServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/impl/BasicsCanteenEvaluateServiceImpl.java new file mode 100644 index 0000000..eebf67d --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/impl/BasicsCanteenEvaluateServiceImpl.java @@ -0,0 +1,104 @@ +package com.bonus.canteen.consumer.service.impl; + + +import com.bonus.canteen.common.utils.StringUtil; +import com.bonus.canteen.common.utils.StringUtils; +import com.bonus.canteen.consumer.mapper.BasicsCanteenEvaluateMapper; +import com.bonus.canteen.consumer.model.BasicsCanteenEvaluate; +import com.bonus.canteen.consumer.service.BasicsCanteenEvaluateService; +import com.bonus.common.security.utils.SecurityUtils; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageImpl; +import org.springframework.data.domain.PageRequest; +import org.springframework.stereotype.Service; +import java.security.Security; +import java.time.LocalDate; +import java.util.Date; + +/** + * 食堂评价表(BasicsCanteenEvaluate)表服务实现类 + * + * @author makejava + * @since 2025-01-16 14:03:02 + */ +@Service("basicsCanteenEvaluateService") +@Slf4j +public class BasicsCanteenEvaluateServiceImpl implements BasicsCanteenEvaluateService { + + + @Autowired + private BasicsCanteenEvaluateMapper basicsCanteenEvaluateDao; + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + @Override + public BasicsCanteenEvaluate queryById(Long id) { + return this.basicsCanteenEvaluateDao.queryById(id); + } + + /** + * 分页查询 + * + * @param basicsCanteenEvaluate 筛选条件 + * @param pageRequest 分页对象 + * @return 查询结果 + */ + @Override + public Page queryByPage(BasicsCanteenEvaluate basicsCanteenEvaluate, PageRequest pageRequest) { + long total = this.basicsCanteenEvaluateDao.count(basicsCanteenEvaluate); + return new PageImpl<>(this.basicsCanteenEvaluateDao.queryAllByLimit(basicsCanteenEvaluate, pageRequest), pageRequest, total); + } + + /** + * 新增数据 + * + * @param basicsCanteenEvaluate 实例对象 + * @return 实例对象 + */ + @Override + public BasicsCanteenEvaluate insert(BasicsCanteenEvaluate basicsCanteenEvaluate) { + basicsCanteenEvaluate.setCrtime(new Date()); + basicsCanteenEvaluate.setUptime(new Date()); + //创建人 + Long userid = SecurityUtils.getLoginUser().getUserid(); + if (StringUtils.isNull(userid)){ + return null; + } + + basicsCanteenEvaluate.setCrby(userid.toString()); + basicsCanteenEvaluate.setUpby(userid.toString()); + basicsCanteenEvaluate.setEvaluateId(StringUtil.generateRandomLong(18)); + basicsCanteenEvaluate.setEvaluateDate(new Date()); + this.basicsCanteenEvaluateDao.insert(basicsCanteenEvaluate); + return basicsCanteenEvaluate; + } + + /** + * 修改数据 + * + * @param basicsCanteenEvaluate 实例对象 + * @return 实例对象 + */ + @Override + public BasicsCanteenEvaluate update(BasicsCanteenEvaluate basicsCanteenEvaluate) { + this.basicsCanteenEvaluateDao.update(basicsCanteenEvaluate); + return this.queryById(basicsCanteenEvaluate.getId()); + } + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + @Override + public boolean deleteById(Long id) { + return this.basicsCanteenEvaluateDao.deleteById(id) > 0; + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/impl/BasicsComplaintServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/impl/BasicsComplaintServiceImpl.java new file mode 100644 index 0000000..db52779 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/consumer/service/impl/BasicsComplaintServiceImpl.java @@ -0,0 +1,93 @@ +package com.bonus.canteen.consumer.service.impl; + +import com.bonus.canteen.common.utils.StringUtil; +import com.bonus.canteen.common.utils.StringUtils; +import com.bonus.canteen.consumer.model.BasicsComplaint; +import com.bonus.canteen.consumer.mapper.BasicsComplaintMapper; +import com.bonus.canteen.consumer.service.BasicsComplaintService; +import com.bonus.common.security.utils.SecurityUtils; +import org.springframework.stereotype.Service; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageImpl; +import org.springframework.data.domain.PageRequest; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * 投诉建议 (BasicsComplaint)表服务实现类 + * + * @author makejava + * @since 2025-01-16 16:34:57 + */ +@Service("basicsComplaintService") +public class BasicsComplaintServiceImpl implements BasicsComplaintService { + @Resource + private BasicsComplaintMapper basicsComplaintDao; + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + @Override + public BasicsComplaint queryById(Long id) { + return this.basicsComplaintDao.queryById(id); + } + + /** + * 分页查询 + * + * @param basicsComplaint 筛选条件 + * @param + * @return 查询结果queryByPage + */ + @Override + public List queryByPage(BasicsComplaint basicsComplaint) { + return this.basicsComplaintDao.queryAllByLimit(basicsComplaint); + } + + /** + * 新增数据 + * + * @param basicsComplaint 实例对象 + * @return 实例对象 + */ + @Override + public BasicsComplaint insert(BasicsComplaint basicsComplaint) { + basicsComplaint.setComplaintId(StringUtil.generateRandomLong(18)); + Long userid = SecurityUtils.getLoginUser().getUserid(); + if (StringUtils.isNull(userid)){ + return null; + } + basicsComplaint.setUptime(new Date()); + basicsComplaint.setCrtime(new Date()); + this.basicsComplaintDao.insert(basicsComplaint); + return basicsComplaint; + } + + /** + * 修改数据 + * + * @param basicsComplaint 实例对象 + * @return 实例对象 + */ + @Override + public BasicsComplaint update(BasicsComplaint basicsComplaint) { + this.basicsComplaintDao.update(basicsComplaint); + return this.queryById(basicsComplaint.getId()); + } + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + @Override + public boolean deleteById(Long id) { + return this.basicsComplaintDao.deleteById(id) > 0; + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/order/BasicsCanteenEvaluateMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/order/BasicsCanteenEvaluateMapper.xml new file mode 100644 index 0000000..60f5ad6 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/order/BasicsCanteenEvaluateMapper.xml @@ -0,0 +1,331 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + insert into basics_canteen_evaluate(evaluate_id, cust_id, canteen_id, shopstall_id, evaluate_date, appearance, attitude, taste, varieties, hygiene, price, weight, customize1, customize2, customize3, customize_text1, customize_text2, proposal, revision, crby, crtime, upby, uptime) + values (#{evaluateId}, #{custId}, #{canteenId}, #{shopstallId}, #{evaluateDate}, #{appearance}, #{attitude}, #{taste}, #{varieties}, #{hygiene}, #{price}, #{weight}, #{customize1}, #{customize2}, #{customize3}, #{customizeText1}, #{customizeText2}, #{proposal}, #{revision}, #{crby}, #{crtime}, #{upby}, #{uptime}) + + + + insert into basics_canteen_evaluate(evaluate_id, cust_id, canteen_id, shopstall_id, evaluate_date, appearance, attitude, taste, varieties, hygiene, price, weight, customize1, customize2, customize3, customize_text1, customize_text2, proposal, revision, crby, crtime, upby, uptime) + values + + (#{entity.evaluateId}, #{entity.custId}, #{entity.canteenId}, #{entity.shopstallId}, #{entity.evaluateDate}, #{entity.appearance}, #{entity.attitude}, #{entity.taste}, #{entity.varieties}, #{entity.hygiene}, #{entity.price}, #{entity.weight}, #{entity.customize1}, #{entity.customize2}, #{entity.customize3}, #{entity.customizeText1}, #{entity.customizeText2}, #{entity.proposal}, #{entity.revision}, #{entity.crby}, #{entity.crtime}, #{entity.upby}, #{entity.uptime}) + + + + + insert into basics_canteen_evaluate(evaluate_id, cust_id, canteen_id, shopstall_id, evaluate_date, appearance, attitude, taste, varieties, hygiene, price, weight, customize1, customize2, customize3, customize_text1, customize_text2, proposal, revision, crby, crtime, upby, uptime) + values + + (#{entity.evaluateId}, #{entity.custId}, #{entity.canteenId}, #{entity.shopstallId}, #{entity.evaluateDate}, #{entity.appearance}, #{entity.attitude}, #{entity.taste}, #{entity.varieties}, #{entity.hygiene}, #{entity.price}, #{entity.weight}, #{entity.customize1}, #{entity.customize2}, #{entity.customize3}, #{entity.customizeText1}, #{entity.customizeText2}, #{entity.proposal}, #{entity.revision}, #{entity.crby}, #{entity.crtime}, #{entity.upby}, #{entity.uptime}) + + on duplicate key update + evaluate_id = values(evaluate_id), + cust_id = values(cust_id), + canteen_id = values(canteen_id), + shopstall_id = values(shopstall_id), + evaluate_date = values(evaluate_date), + appearance = values(appearance), + attitude = values(attitude), + taste = values(taste), + varieties = values(varieties), + hygiene = values(hygiene), + price = values(price), + weight = values(weight), + customize1 = values(customize1), + customize2 = values(customize2), + customize3 = values(customize3), + customize_text1 = values(customize_text1), + customize_text2 = values(customize_text2), + proposal = values(proposal), + revision = values(revision), + crby = values(crby), + crtime = values(crtime), + upby = values(upby), + uptime = values(uptime) + + + + + update basics_canteen_evaluate + + + evaluate_id = #{evaluateId}, + + + cust_id = #{custId}, + + + canteen_id = #{canteenId}, + + + shopstall_id = #{shopstallId}, + + + evaluate_date = #{evaluateDate}, + + + appearance = #{appearance}, + + + attitude = #{attitude}, + + + taste = #{taste}, + + + varieties = #{varieties}, + + + hygiene = #{hygiene}, + + + price = #{price}, + + + weight = #{weight}, + + + customize1 = #{customize1}, + + + customize2 = #{customize2}, + + + customize3 = #{customize3}, + + + customize_text1 = #{customizeText1}, + + + customize_text2 = #{customizeText2}, + + + proposal = #{proposal}, + + + revision = #{revision}, + + + crby = #{crby}, + + + crtime = #{crtime}, + + + upby = #{upby}, + + + uptime = #{uptime}, + + + where id = #{id} + + + + + delete from basics_canteen_evaluate where id = #{id} + + + + diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/order/BasicsComplaintMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/order/BasicsComplaintMapper.xml new file mode 100644 index 0000000..bc11c2f --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/order/BasicsComplaintMapper.xml @@ -0,0 +1,233 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + insert into basics_complaint(complaint_id, cust_id, content, canteen_id, complaint_picture, source_type, mobile, reply_content, revision, crby, crtime, upby, uptime, reply_state) + values (#{complaintId}, #{custId}, #{content}, #{canteenId}, #{complaintPicture}, #{sourceType}, #{mobile}, #{replyContent}, #{revision}, #{crby}, #{crtime}, #{upby}, #{uptime}, #{replyState}) + + + + insert into basics_complaint(complaint_id, cust_id, content, canteen_id, complaint_picture, source_type, mobile, reply_content, revision, crby, crtime, upby, uptime, reply_state) + values + + (#{entity.complaintId}, #{entity.custId}, #{entity.content}, #{entity.canteenId}, #{entity.complaintPicture}, #{entity.sourceType}, #{entity.mobile}, #{entity.replyContent}, #{entity.revision}, #{entity.crby}, #{entity.crtime}, #{entity.upby}, #{entity.uptime}, #{entity.replyState}) + + + + + insert into basics_complaint(complaint_id, cust_id, content, canteen_id, complaint_picture, source_type, mobile, reply_content, revision, crby, crtime, upby, uptime, reply_state) + values + + (#{entity.complaintId}, #{entity.custId}, #{entity.content}, #{entity.canteenId}, #{entity.complaintPicture}, #{entity.sourceType}, #{entity.mobile}, #{entity.replyContent}, #{entity.revision}, #{entity.crby}, #{entity.crtime}, #{entity.upby}, #{entity.uptime}, #{entity.replyState}) + + on duplicate key update + complaint_id = values(complaint_id), + cust_id = values(cust_id), + content = values(content), + canteen_id = values(canteen_id), + complaint_picture = values(complaint_picture), + source_type = values(source_type), + mobile = values(mobile), + reply_content = values(reply_content), + revision = values(revision), + crby = values(crby), + crtime = values(crtime), + upby = values(upby), + uptime = values(uptime), + reply_state = values(reply_state) + + + + + update basics_complaint + + + complaint_id = #{complaintId}, + + + cust_id = #{custId}, + + + content = #{content}, + + + canteen_id = #{canteenId}, + + + complaint_picture = #{complaintPicture}, + + + source_type = #{sourceType}, + + + mobile = #{mobile}, + + + reply_content = #{replyContent}, + + + revision = #{revision}, + + + crby = #{crby}, + + + crtime = #{crtime}, + + + upby = #{upby}, + + + uptime = #{uptime}, + + + reply_state = #{replyState}, + + + where id = #{id} + + + + + delete from basics_complaint where id = #{id} + + + +