jz.kai 1 year ago
parent
commit
cf7efba814

+ 8 - 1
common/src/main/resources/mapper/base/MessageBoard.xml

@@ -111,13 +111,20 @@
 	</select>
 	<select id="search" parameterType="hashmap" resultMap="MessageBoardMap">
 		<![CDATA[
-			select * from base_message_board a inner join base_reg_user b on a.reg_user_id = b.id_
+			select * from base_message_board a
+			inner join base_reg_user b on a.reg_user_id = b.id_
 		]]>
 		<where>
 			a.del_flag = false
 			<if test="searchParams.name != null">
 				and b.real_name like #{searchParams.name}
 			</if>
+			<if test="searchParams.status != null">
+				and a.status_ = #{searchParams.status}
+			</if>
+			<if test="searchParams.regUserId != null">
+				or a.reg_user_id = #{searchParams.regUserId}
+			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">
 	        ${sort.name} ${sort.order}

+ 2 - 0
web/src/main/java/com/jpsoft/employment/config/WebMvcConfig.java

@@ -86,6 +86,8 @@ public class WebMvcConfig implements WebMvcConfigurer {
 				.excludePathPatterns("/base/api/love/edit")
 				//爱心墙
 				.excludePathPatterns("/base/api/wall/list")
+				//留言板
+				.excludePathPatterns("/base/api/board/pubList")
 		;
 	}
 }

+ 107 - 0
web/src/main/java/com/jpsoft/employment/modules/base/api/BoardApi.java

@@ -0,0 +1,107 @@
+package com.jpsoft.employment.modules.base.api;
+
+import com.github.pagehelper.Page;
+import com.jpsoft.employment.modules.base.entity.ImageWall;
+import com.jpsoft.employment.modules.base.entity.MessageBoard;
+import com.jpsoft.employment.modules.base.entity.RegUser;
+import com.jpsoft.employment.modules.base.service.ImageWallService;
+import com.jpsoft.employment.modules.base.service.MessageBoardService;
+import com.jpsoft.employment.modules.base.service.RegUserService;
+import com.jpsoft.employment.modules.common.dto.MessageResult;
+import com.jpsoft.employment.modules.common.dto.Sort;
+import com.jpsoft.employment.modules.common.utils.PojoUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.*;
+
+@RestController
+@RequestMapping("/base/api/board")
+@Api(description = "留言板")
+public class BoardApi {
+    private Logger logger = LoggerFactory.getLogger(getClass());
+
+    @Autowired
+    private MessageBoardService messageBoardService;
+    @Autowired
+    private RegUserService regUserService;
+
+    @ApiOperation(value="列表-公开")
+    @RequestMapping(value = "pubList",method = RequestMethod.POST)
+    public MessageResult pubList(
+            @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
+            @RequestParam(value="pageSize",defaultValue="20") int pageSize) {
+        MessageResult msgResult = new MessageResult<>();
+
+        Map<String,Object> searchParams = new HashMap<>();
+        searchParams.put("status","2");
+
+        List<Sort> sortList = new ArrayList<>();
+        sortList.add(new Sort("a.create_time","desc"));
+
+        Page<MessageBoard> page = messageBoardService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+
+        msgResult.setResult(true);
+        msgResult.setData(PojoUtils.pageWrapper(page));
+
+        return msgResult;
+    }
+
+    @ApiOperation(value="列表-私有")
+    @RequestMapping(value = "priList",method = RequestMethod.POST)
+    public MessageResult priList(
+            @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
+            @RequestParam(value="pageSize",defaultValue="20") int pageSize,
+            HttpServletRequest request) {
+        MessageResult msgResult = new MessageResult<>();
+        String subject = (String)request.getAttribute("subject");
+
+        Map<String,Object> searchParams = new HashMap<>();
+        searchParams.put("status","2");
+        searchParams.put("regUserId",subject);
+
+        List<Sort> sortList = new ArrayList<>();
+        sortList.add(new Sort("a.status_","desc"));
+        sortList.add(new Sort("a.create_time","desc"));
+
+        Page<MessageBoard> page = messageBoardService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+
+        msgResult.setResult(true);
+        msgResult.setData(PojoUtils.pageWrapper(page));
+
+        return msgResult;
+    }
+
+    @ApiOperation(value="保存")
+    @RequestMapping(value = "save",method = RequestMethod.POST)
+    public MessageResult save(String content, HttpServletRequest request) {
+        MessageResult msgResult = new MessageResult<>();
+        String subject = (String)request.getAttribute("subject");
+        RegUser regUser = regUserService.get(subject);
+
+        MessageBoard messageBoard = new MessageBoard();
+        messageBoard.setId(UUID.randomUUID().toString());
+        messageBoard.setTitle(regUser.getNickName() + "留言");
+        messageBoard.setContent(content);
+        messageBoard.setRegUserId(subject);
+        messageBoard.setStatus("1");
+        messageBoard.setDelFlag(false);
+        messageBoard.setCreateBy(subject);
+        messageBoard.setCreateTime(new Date());
+        messageBoardService.insert(messageBoard);
+
+        msgResult.setResult(true);
+        msgResult.setData(messageBoard);
+
+        return msgResult;
+    }
+}

+ 3 - 1
web/src/main/java/com/jpsoft/employment/modules/base/api/RegUserApi.java

@@ -151,9 +151,10 @@ public class RegUserApi {
     @ApiImplicitParams({
             @ApiImplicitParam(name="nickName", value="昵称", required=false, paramType="query"),
             @ApiImplicitParam(name="headImg", value="头像", required=false, paramType="query"),
+            @ApiImplicitParam(name="companyName", value="合作单位", required=false, paramType="query"),
             @ApiImplicitParam(name="openId", value="openId", required=true, paramType="query"),
     })
-    public MessageResult updateDetails(String nickName, String headImg, String openId) {
+    public MessageResult updateDetails(String nickName, String headImg, String companyName, String openId) {
         MessageResult messageResult = new MessageResult<>();
 
         try {
@@ -167,6 +168,7 @@ public class RegUserApi {
                 if (regUser != null) {
                     regUser.setNickName(nickName);
                     regUser.setHeadImg(headImg);
+                    regUser.setCompanyName(companyName);
                     regUser.setUpdateBy(regUser.getId());
                     regUser.setUpdateTime(new Date());
                     regUserService.update(regUser);