Pārlūkot izejas kodu

APP:添加个人详情接口

Alex 4 gadi atpakaļ
vecāks
revīzija
475003449f

+ 0 - 12
ruoyi-app/src/main/java/com/ruoyi/app/controller/AppLoginController.java

@@ -157,16 +157,4 @@ public class AppLoginController {
         }
         return AjaxResult.success("验证成功");
     }
-
-    public static void main(String[] args) {
-//        System.out.println(DateUtils.getCurrentTimeRandom());
-
-        String code = "1111111";
-        String params = "{\"code1\":\""+code+"\"}";
-        JSONObject jsonObject = JSON.parseObject(params);
-        jsonObject.getString("code");
-        System.out.println(jsonObject.getString("code"));
-    }
-
-
 }

+ 90 - 0
ruoyi-app/src/main/java/com/ruoyi/app/controller/MyProfileController.java

@@ -0,0 +1,90 @@
+package com.ruoyi.app.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ruoyi.app.controller.base.AppBaseController;
+import com.ruoyi.app.domain.TbAppUser;
+import com.ruoyi.app.domain.TbMyProfile;
+import com.ruoyi.app.service.ITbMyProfileService;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.utils.StringUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 个人详情
+ *
+ * @author Alex
+ * @date 2020-10-11
+ */
+@Api(value = "个人详情",tags = "个人详情")
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/app/profile" )
+public class MyProfileController extends AppBaseController {
+
+    private final ITbMyProfileService profileService;
+
+    @ApiOperation("个人详情列表")
+    @ApiImplicitParam(name = "userId", value = "会员ID",paramType="Long")
+    @GetMapping("/list")
+    public AjaxResult list(Long userId) {
+        if (userId == null){
+            return AjaxResult.error("参数为空");
+        }
+        List<TbMyProfile> profileList = profileService.list(new LambdaQueryWrapper<TbMyProfile>()
+            .eq(TbMyProfile::getAppUserId, userId)
+        );
+        return AjaxResult.success(profileList);
+    }
+
+    @ApiOperation("添加/修改个人详情")
+    @PostMapping("/saveOrUpdate")
+    public AjaxResult saveOrUpdate(@RequestBody TbMyProfile profile) {
+        if (StringUtils.isBlank(profile.getTitle()) || StringUtils.isBlank(profile.getCotents())) {
+            return AjaxResult.error("标题或内容不能为空");
+        }
+        if (profile.getAppUserId() == null) {
+            return AjaxResult.error("参数异常");
+        }
+        TbAppUser user = getLoginUser().getUser();
+        Date date = new Date();
+        //新增
+        if (profile.getId() == null) {
+            profile.setCreateBy(user.getId());
+            profile.setCreateTime(date);
+            return toAjax(profileService.save(profile) ? 1 : 0);
+        } else {
+            // 修改
+            profile.setUpdateBy(user.getId());
+            profile.setUpdateTime(date);
+            return toAjax(profileService.updateById(profile) ? 1 : 0);
+        }
+    }
+
+    @ApiOperation("获取个人详情")
+    @ApiImplicitParam(name = "id", value = "主键id",paramType="Long")
+    @GetMapping("/get")
+    public AjaxResult get(Long id){
+        if (id == null){
+            return AjaxResult.error("id不能为空");
+        }
+        return AjaxResult.success(profileService.getById(id));
+    }
+
+    @ApiOperation("删除个人详情")
+    @ApiImplicitParam(name = "id", value = "主键id",paramType="Long")
+    @GetMapping("/del")
+    public AjaxResult del(Long id) {
+        if (id == null){
+            return AjaxResult.error("id不能为空");
+        }
+        return toAjax(profileService.removeById(id) ? 1 : 0);
+    }
+}

+ 51 - 2
ruoyi-app/src/main/java/com/ruoyi/app/controller/MyPublishController.java

@@ -5,22 +5,28 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.app.controller.base.AppBaseController;
 import com.ruoyi.app.domain.TbAppUser;
 import com.ruoyi.app.domain.TbMyPublish;
+import com.ruoyi.app.domain.TbPublishImg;
 import com.ruoyi.app.service.ITbAppUserService;
 import com.ruoyi.app.service.ITbMyPublishService;
+import com.ruoyi.app.service.ITbPublishImgService;
 import com.ruoyi.common.config.RuoYiConfig;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.file.FileUploadUtils;
 import com.ruoyi.framework.config.ServerConfig;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
+import org.aspectj.weaver.loadtime.Aj;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -39,6 +45,8 @@ public class MyPublishController extends AppBaseController {
 
     private final ITbMyPublishService publishService;
     private final ServerConfig serverConfig;
+    private final ITbPublishImgService imgService;
+
 
     /**
      * 查询家族朋友圈
@@ -73,10 +81,20 @@ public class MyPublishController extends AppBaseController {
         return publishService.pageList(tbMyPublish);
     }
 
-    @ApiOperation("我的近况 上传图片")
+    @ApiOperation("获取我的近况")
+    @ApiImplicitParam(name = "id", value = "主键id",paramType="Long")
+    @GetMapping("/get")
+    public AjaxResult get(Long id) {
+        if (id == null) {
+            return AjaxResult.error("id不能为空");
+        }
+        return AjaxResult.success(publishService.getPublish(id));
+    }
+
+    @ApiOperation("上传图片")
     @ResponseBody
     @PostMapping("/upload")
-    public AjaxResult add(@RequestParam(value = "file") MultipartFile files[]) throws Exception {
+    public AjaxResult upload(@RequestParam(value = "file") MultipartFile files[]) throws Exception {
 
         // 上传文件路径
         String filePath = RuoYiConfig.getUploadPath()+"/publish";
@@ -99,4 +117,35 @@ public class MyPublishController extends AppBaseController {
         }
         return AjaxResult.success("上传成功");
     }
+
+    @ApiOperation("新增我的近况")
+    @PostMapping("/add")
+    @Transactional(rollbackFor = Exception.class)
+    public AjaxResult add(@RequestBody TbMyPublish publish) {
+        if (publish.getAppUserId() == null || StringUtils.isBlank(publish.getContents())) {
+            return AjaxResult.error("数据为空");
+        }
+        if (publish.getContents().length() > 500) {
+            return AjaxResult.error("发表内容不能超过500字");
+        }
+        TbAppUser user = getLoginUser().getUser();
+        publish.setCreateBy(user.getId().toString());
+        publish.setCreateTime(new Date());
+        if (!publishService.save(publish)){
+            return AjaxResult.error("发表失败");
+        }
+
+        // 插入图片列表
+        List<TbPublishImg> imgList = publish.getImgList();
+        if (imgList.size() <= 0) {
+            return AjaxResult.success();
+        }
+        imgList.forEach(item -> {
+            item.setPublishId(publish.getId());
+        });
+        if(imgService.saveBatch(imgList)){
+            return AjaxResult.success();
+        }
+        return AjaxResult.error("发表失败");
+    }
 }

+ 1 - 1
ruoyi-app/src/main/resources/application.yml

@@ -47,7 +47,7 @@ spring:
     # 国际化资源文件路径
     basename: i18n/messages
   profiles: 
-    active: dev
+    active: prop
   # 文件上传
   servlet:
      multipart:

+ 73 - 0
ruoyi-system/src/main/java/com/ruoyi/app/domain/TbMyProfile.java

@@ -0,0 +1,73 @@
+package com.ruoyi.app.domain;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+import lombok.experimental.Accessors;
+import com.ruoyi.common.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.io.Serializable;
+import java.util.Date;
+import java.math.BigDecimal;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 个人详情
+ * 
+ * @author Administrator
+ * @date 2020-10-11
+ */
+@Data
+@ApiModel(value = "个人详情")
+@ToString
+@EqualsAndHashCode
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("tb_my_profile")
+public class TbMyProfile implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    @ApiModelProperty(value="主键id")
+    @TableId(value = "id")
+    private Long id;
+
+    @ApiModelProperty(value="会员id")
+    @Excel(name = "会员id")
+    private Long appUserId;
+
+    @ApiModelProperty(value="标题")
+    @Excel(name = "标题")
+    private String title;
+
+    @ApiModelProperty(value="内容")
+    @Excel(name = "内容")
+    private String cotents;
+
+    /** 创建者 */
+    @ApiModelProperty(value="创建者")
+    private Long createBy;
+
+    /** 创建时间 */
+    @ApiModelProperty(value="创建时间")
+    private Date createTime;
+
+    /** 更新者 */
+    @ApiModelProperty(value="更新者")
+    private Long updateBy;
+
+    /** 更新时间 */
+    @ApiModelProperty(value="更新时间")
+    private Date updateTime;
+
+    /** 备注 */
+    @ApiModelProperty(value="备注")
+    @Excel(name = "备注")
+    private String remark;
+}

+ 14 - 0
ruoyi-system/src/main/java/com/ruoyi/app/mapper/TbMyProfileMapper.java

@@ -0,0 +1,14 @@
+package com.ruoyi.app.mapper;
+
+import com.ruoyi.app.domain.TbMyProfile;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * 个人详情
+ *
+ * @author Administrator
+ * @date 2020-10-11
+ */
+public interface TbMyProfileMapper extends BaseMapper<TbMyProfile> {
+
+}

+ 14 - 0
ruoyi-system/src/main/java/com/ruoyi/app/service/ITbMyProfileService.java

@@ -0,0 +1,14 @@
+package com.ruoyi.app.service;
+
+import com.ruoyi.app.domain.TbMyProfile;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * 个人详情
+ *
+ * @author Administrator
+ * @date 2020-10-11
+ */
+public interface ITbMyProfileService extends IService<TbMyProfile> {
+
+}

+ 18 - 0
ruoyi-system/src/main/java/com/ruoyi/app/service/impl/TbMyProfileServiceImpl.java

@@ -0,0 +1,18 @@
+package com.ruoyi.app.service.impl;
+
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.app.mapper.TbMyProfileMapper;
+import com.ruoyi.app.domain.TbMyProfile;
+import com.ruoyi.app.service.ITbMyProfileService;
+
+/**
+ * 个人详情
+ *
+ * @author Administrator
+ * @date 2020-10-11
+ */
+@Service
+public class TbMyProfileServiceImpl extends ServiceImpl<TbMyProfileMapper, TbMyProfile> implements ITbMyProfileService {
+
+}

+ 20 - 0
ruoyi-system/src/main/resources/mapper/app/TbMyProfileMapper.xml

@@ -0,0 +1,20 @@
+<?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.ruoyi.app.mapper.TbMyProfileMapper">
+    
+    <resultMap type="TbMyProfile" id="TbMyProfileResult">
+        <result property="id"    column="id"    />
+        <result property="appUserId"    column="app_user_id"    />
+        <result property="title"    column="title"    />
+        <result property="cotents"    column="cotents"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="remark"    column="remark"    />
+    </resultMap>
+
+
+</mapper>