Browse Source

feat:项目亮点

wrj 1 năm trước cách đây
mục cha
commit
7f96bce680

+ 33 - 10
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/TXiangmuController.java

@@ -2,10 +2,11 @@ package com.ylx.web.controller.massage;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ylx.common.constant.MassageConstants;
 import com.ylx.common.core.domain.R;
-import com.ylx.common.utils.uuid.IdUtils;
+import com.ylx.common.exception.ServiceException;
+import com.ylx.massage.domain.THighlights;
 import com.ylx.massage.domain.TXiangmu;
+import com.ylx.massage.service.THighlightsService;
 import com.ylx.massage.service.TXiangmuService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -17,7 +18,6 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
-import java.time.LocalDateTime;
 import java.util.List;
 
 /**
@@ -34,6 +34,10 @@ public class TXiangmuController {
     @Resource
     private TXiangmuService xiangmuService;
 
+
+    @Resource
+    private THighlightsService highlightsService;
+
     /**
      * 获取所有项目
      *
@@ -59,14 +63,13 @@ public class TXiangmuController {
     @ApiOperation("添加或者更新项目")
     public R saveOrUpdate(@RequestBody TXiangmu xiangmu) {
         try {
-            if (StringUtils.isBlank(xiangmu.getcId())) {
-                xiangmu.setnSaleNumber(MassageConstants.INTEGER_ZERO);
-                xiangmu.setDtCreateTime(LocalDateTime.now());
-            }
-            return R.ok(xiangmuService.saveOrUpdate(xiangmu));
+            return R.ok(xiangmuService.addOrUpdate(xiangmu));
+        } catch (ServiceException s) {
+            log.error(s.toString());
+            return R.fail(s.getMessage());
         } catch (Exception e) {
-            log.error("saveOrUpdate", e);
-            return R.fail();
+            log.error(e.toString());
+            return R.fail("系统异常");
         }
     }
 
@@ -85,6 +88,16 @@ public class TXiangmuController {
         return R.ok(pageSelect);
     }
 
+
+    /**
+     * 分页查询数据
+     */
+    @ApiOperation("根据id查询项目")
+    @RequestMapping(value = "/getByid", method = RequestMethod.POST)
+    public R getById(@RequestBody TXiangmu xiangmu) {
+        return R.ok(xiangmuService.getById(xiangmu.getcId()));
+    }
+
     /**
      * 删除项目
      *
@@ -96,4 +109,14 @@ public class TXiangmuController {
     public R del(@RequestBody TXiangmu xiangmu) {
         return R.ok(xiangmuService.removeById(xiangmu));
     }
+
+    /**
+     * 项目两点
+     */
+    @ApiOperation("项目亮点")
+    @RequestMapping(value = "/highlights", method = RequestMethod.GET)
+    public R<List<THighlights>> getHighlights() {
+        return R.ok(highlightsService.list());
+    }
+
 }

+ 78 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/domain/THighlights.java

@@ -0,0 +1,78 @@
+package com.ylx.massage.domain;
+
+
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiOperation;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 项目亮点(THighlights)表实体类
+ *
+ * @author makejava
+ * @since 2024-04-02 11:10:35
+ */
+@SuppressWarnings("serial")
+@Data
+@ApiModel(value = "THighlights", description = "项目亮点")
+public class THighlights extends Model<THighlights> {
+    //主键
+
+    @ApiModelProperty("主键")
+    private String cId;
+    //描述
+    @ApiModelProperty("描述")
+    private String cDescribe;
+    //创建时间
+    private Date createTime;
+    //修改时间
+    private Date updateTime;
+
+
+    public String getCId() {
+        return cId;
+    }
+
+    public void setCId(String cId) {
+        this.cId = cId;
+    }
+
+    public String getCDescribe() {
+        return cDescribe;
+    }
+
+    public void setCDescribe(String cDescribe) {
+        this.cDescribe = cDescribe;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    /**
+     * 获取主键值
+     *
+     * @return 主键值
+     */
+    @Override
+    public Serializable pkVal() {
+        return this.cId;
+    }
+}
+

+ 36 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/mapper/THighlightsMapper.java

@@ -0,0 +1,36 @@
+package com.ylx.massage.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ylx.massage.domain.THighlights;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * 项目亮点(THighlights)表数据库访问层
+ *
+ * @author makejava
+ * @since 2024-04-02 11:10:35
+ */
+public interface THighlightsMapper extends BaseMapper<THighlights> {
+
+    /**
+     * 批量新增数据(MyBatis原生foreach方法)
+     *
+     * @param entities List<THighlights> 实例对象列表
+     * @return 影响行数
+     */
+    int insertBatch(@Param("entities") List<THighlights> entities);
+
+    /**
+     * 批量新增或按主键更新数据(MyBatis原生foreach方法)
+     *
+     * @param entities List<THighlights> 实例对象列表
+     * @return 影响行数
+     * @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
+     */
+    int insertOrUpdateBatch(@Param("entities") List<THighlights> entities);
+
+}
+

+ 16 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/THighlightsService.java

@@ -0,0 +1,16 @@
+package com.ylx.massage.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ylx.massage.domain.THighlights;
+
+
+/**
+ * 项目亮点(THighlights)表服务接口
+ *
+ * @author makejava
+ * @since 2024-04-02 11:10:35
+ */
+public interface THighlightsService extends IService<THighlights> {
+
+}
+

+ 1 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/TXiangmuService.java

@@ -12,4 +12,5 @@ import com.ylx.massage.domain.TXiangmu;
  */
 public interface TXiangmuService extends IService<TXiangmu> {
 
+    Boolean addOrUpdate(TXiangmu xiangmu);
 }

+ 19 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/THighlightsServiceImpl.java

@@ -0,0 +1,19 @@
+package com.ylx.massage.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ylx.massage.domain.THighlights;
+import com.ylx.massage.mapper.THighlightsMapper;
+import com.ylx.massage.service.THighlightsService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 项目亮点(THighlights)表服务实现类
+ *
+ * @author makejava
+ * @since 2024-04-02 11:10:35
+ */
+@Service("tHighlightsService")
+public class THighlightsServiceImpl extends ServiceImpl<THighlightsMapper, THighlights> implements THighlightsService {
+
+}
+

+ 32 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/TXiangmuServiceImpl.java

@@ -2,10 +2,18 @@ package com.ylx.massage.service.impl;
 
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ylx.common.constant.MassageConstants;
+import com.ylx.common.core.domain.R;
+import com.ylx.common.exception.ServiceException;
 import com.ylx.massage.domain.TXiangmu;
 import com.ylx.massage.mapper.TXiangmuMapper;
 import com.ylx.massage.service.TXiangmuService;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.rmi.ServerException;
+import java.time.LocalDateTime;
 
 /**
  * 项目Service接口
@@ -16,4 +24,28 @@ import org.springframework.stereotype.Service;
 @Service
 public class TXiangmuServiceImpl extends ServiceImpl<TXiangmuMapper, TXiangmu> implements TXiangmuService {
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean addOrUpdate(TXiangmu xiangmu) {
+        if (StringUtils.isBlank(xiangmu.getcId())) {
+            if(StringUtils.isBlank(xiangmu.getcCover())){
+                throw new ServiceException("封面图不能为空");
+            }
+            if(StringUtils.isBlank(xiangmu.getcTitle())){
+                throw new ServiceException("标题不能为空");
+            }
+            if(null == xiangmu.getdPrice()){
+                throw new ServiceException("标注价格(现价)不能为空");
+            }
+            if(null == xiangmu.getdYuanPrice()){
+                throw new ServiceException("原价不能为空");
+            }
+            if(null == xiangmu.getnMinute()){
+                throw new ServiceException("时长不能为空");
+            }
+            xiangmu.setnSaleNumber(MassageConstants.INTEGER_ZERO);
+            xiangmu.setDtCreateTime(LocalDateTime.now());
+        }
+        return this.saveOrUpdate(xiangmu);
+    }
 }

+ 32 - 0
nightFragrance-massage/src/main/resources/mapper/massage/THighlightsMapper.xml

@@ -0,0 +1,32 @@
+<?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.ylx.massage.mapper.THighlightsMapper">
+
+    <resultMap type="com.ylx.massage.domain.THighlights" id="THighlightsMap">
+        <result property="cId" column="c_id" jdbcType="VARCHAR"/>
+        <result property="cDescribe" column="c_describe" jdbcType="VARCHAR"/>
+        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+        <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <!-- 批量插入 -->
+    <insert id="insertBatch" keyProperty="cId" useGeneratedKeys="true">
+        insert into ry-vue.t_highlights(c_describecreate_timeupdate_time)
+        values
+        <foreach collection="entities" item="entity" separator=",">
+            (#{entity.cDescribe}#{entity.createTime}#{entity.updateTime})
+        </foreach>
+    </insert>
+    <!-- 批量插入或按主键更新 -->
+    <insert id="insertOrUpdateBatch" keyProperty="cId" useGeneratedKeys="true">
+        insert into ry-vue.t_highlights(c_describecreate_timeupdate_time)
+        values
+        <foreach collection="entities" item="entity" separator=",">
+            (#{entity.cDescribe}#{entity.createTime}#{entity.updateTime})
+        </foreach>
+        on duplicate key update
+        c_describe = values(c_describe) create_time = values(create_time) update_time = values(update_time)
+    </insert>
+
+</mapper>
+