Sfoglia il codice sorgente

校长信息代码

guq 7 anni fa
parent
commit
1f9280cbec

+ 33 - 2
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/business/controller/PrincipalMailController.java

@@ -7,7 +7,7 @@ import com.usoftchina.smartschool.page.PageRequest;
 import com.usoftchina.smartschool.school.business.service.PrincipalMailService;
 import com.usoftchina.smartschool.school.dto.BatchDealBaseDTO;
 import com.usoftchina.smartschool.school.dto.ListReqDTO;
-import com.usoftchina.smartschool.school.po.PrincipalMailboxDO;
+import com.usoftchina.smartschool.school.po.PrincipalMail;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -25,7 +25,7 @@ public class PrincipalMailController {
 
     @GetMapping("/list")
     public Result getList(@PageDefault PageRequest page, ListReqDTO listReqDTO) {
-        PageInfo<PrincipalMailboxDO> data = principalMailService.getListData(page, listReqDTO);
+        PageInfo<PrincipalMail> data = principalMailService.getListData(page, listReqDTO);
         return Result.success(data);
     }
 
@@ -40,4 +40,35 @@ public class PrincipalMailController {
         return Result.success();
     }
 
+
+    /**
+     * @param baseDTOs
+     * @return
+     */
+    @PostMapping("/batchIgnore")
+    public Result batchIgnore(@RequestBody BatchDealBaseDTO baseDTOs) {
+        principalMailService.batchIgnore(baseDTOs);
+        return Result.success();
+    }
+
+    /**
+     * @param baseDTOs
+     * @return
+     */
+    @PostMapping("/batchUnIgnore")
+    public Result batchUnIgnore(@RequestBody BatchDealBaseDTO baseDTOs) {
+        principalMailService.batchUnIgnore(baseDTOs);
+        return Result.success();
+    }
+
+
+    /**
+     * @return
+     */
+    @PostMapping("/reply")
+    public Result reply(String msg, Long id) {
+        principalMailService.reply(msg, id);
+        return Result.success();
+    }
+
 }

+ 8 - 2
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/business/service/PrincipalMailService.java

@@ -4,10 +4,16 @@ import com.github.pagehelper.PageInfo;
 import com.usoftchina.smartschool.page.PageRequest;
 import com.usoftchina.smartschool.school.dto.BatchDealBaseDTO;
 import com.usoftchina.smartschool.school.dto.ListReqDTO;
-import com.usoftchina.smartschool.school.po.PrincipalMailboxDO;
+import com.usoftchina.smartschool.school.po.PrincipalMail;
 
 public interface PrincipalMailService {
-    PageInfo<PrincipalMailboxDO> getListData(PageRequest page, ListReqDTO listReqDTO);
+    PageInfo<PrincipalMail> getListData(PageRequest page, ListReqDTO listReqDTO);
 
     void batchDelete(BatchDealBaseDTO baseDTOs);
+
+    void batchIgnore(BatchDealBaseDTO baseDTOs);
+
+    void batchUnIgnore(BatchDealBaseDTO baseDTOs);
+
+    void reply(String msg, Long id);
 }

+ 46 - 3
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/business/service/impl/PrincipalMailServiceImpl.java

@@ -3,16 +3,22 @@ package com.usoftchina.smartschool.school.business.service.impl;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.usoftchina.smartschool.context.BaseContextHolder;
+import com.usoftchina.smartschool.exception.BizException;
 import com.usoftchina.smartschool.page.PageRequest;
 import com.usoftchina.smartschool.school.business.service.PrincipalMailService;
 import com.usoftchina.smartschool.school.dto.BatchDealBaseDTO;
 import com.usoftchina.smartschool.school.dto.DocBaseDTO;
 import com.usoftchina.smartschool.school.dto.ListReqDTO;
+import com.usoftchina.smartschool.school.exception.BizExceptionCode;
 import com.usoftchina.smartschool.school.mapper.PrincipalMailboxMapper;
+import com.usoftchina.smartschool.school.po.PrincipalMail;
 import com.usoftchina.smartschool.school.po.PrincipalMailboxDO;
+import com.usoftchina.smartschool.school.po.PrincipalReplyDO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -26,7 +32,7 @@ public class PrincipalMailServiceImpl implements PrincipalMailService {
     private PrincipalMailboxMapper principalMailboxMapper;
 
     @Override
-    public PageInfo<PrincipalMailboxDO> getListData(PageRequest page, ListReqDTO listReqDTO) {
+    public PageInfo<PrincipalMail> getListData(PageRequest page, ListReqDTO listReqDTO) {
         PageHelper.startPage(page.getNumber(), page.getSize());
         Long schoolId = BaseContextHolder.getSchoolId();
         schoolId = 1l;
@@ -35,8 +41,8 @@ public class PrincipalMailServiceImpl implements PrincipalMailService {
         if(condition == null){
             condition = "1=1";
         }
-        List<PrincipalMailboxDO> data = principalMailboxMapper.selectByConditon(condition, schoolId);
-        PageInfo<PrincipalMailboxDO> list = new PageInfo<>(data);
+        List<PrincipalMail> data = principalMailboxMapper.selectByConditon(condition, schoolId);
+        PageInfo<PrincipalMail> list = new PageInfo<>(data);
         return list;
     }
 
@@ -52,7 +58,44 @@ public class PrincipalMailServiceImpl implements PrincipalMailService {
         }
     }
 
+    @Override
+    public void batchIgnore(BatchDealBaseDTO baseDTOs) {
+        if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
+                baseDTOs.getBaseDTOs().size() == 0) {
+            return;
+        }
+        List<DocBaseDTO> base = baseDTOs.getBaseDTOs();
+        principalMailboxMapper.batchIgnore(base);
+    }
+
+    @Override
+    public void batchUnIgnore(BatchDealBaseDTO baseDTOs) {
+        if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
+                baseDTOs.getBaseDTOs().size() == 0) {
+            return;
+        }
+        List<DocBaseDTO> base = baseDTOs.getBaseDTOs();
+        principalMailboxMapper.batchUnIgnore(base);
+    }
+
+    @Override
+    public void reply(String msg, Long id) {
+        if (StringUtils.isEmpty(msg) || StringUtils.isEmpty(id)) {
+            throw new BizException(BizExceptionCode.USELESS_DATA);
+        }
+        //更新主表
+        principalMailboxMapper.updateReply(msg, id);
+
+        PrincipalReplyDO replyDO = new PrincipalReplyDO();
+        replyDO.setMailboxId(id);
+        replyDO.setReplyContent(msg);
+        replyDO.setReplyDate(new Date());
+        //插入从表
+        principalMailboxMapper.insertDetail(replyDO);
+    }
+
     private void singleDelete(Long id) {
         principalMailboxMapper.deleteByPrimaryKey(id);
     }
+
 }

+ 14 - 2
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/mapper/PrincipalMailboxMapper.java

@@ -1,6 +1,8 @@
 package com.usoftchina.smartschool.school.mapper;
 
-import com.usoftchina.smartschool.school.po.PrincipalMailboxDO;
+import com.usoftchina.smartschool.school.dto.DocBaseDTO;
+import com.usoftchina.smartschool.school.po.PrincipalMail;
+import com.usoftchina.smartschool.school.po.PrincipalReplyDO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -15,5 +17,15 @@ public interface PrincipalMailboxMapper {
 
     PrincipalMailboxDO selectByPrimaryKey(Long mailbox_id);*/
 
-    List<PrincipalMailboxDO> selectByConditon(@Param("con") String condition, @Param("school_id") Long schoolId);
+    List<PrincipalMail> selectByConditon(@Param("con") String condition, @Param("school_id") Long schoolId);
+
+    //void ignore(Long id);
+
+  void batchIgnore(List<DocBaseDTO> baseDTOs);
+
+  void batchUnIgnore(List<DocBaseDTO> base);
+
+  void updateReply(@Param("msg") String msg, @Param("id") Long id);
+
+  void insertDetail(PrincipalReplyDO replyDO);
 }

+ 49 - 0
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/po/PrincipalMail.java

@@ -0,0 +1,49 @@
+package com.usoftchina.smartschool.school.po;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @author: guq
+ * @create: 2019-03-01 09:41
+ **/
+@Data
+public class PrincipalMail implements Serializable{
+    private Long mailbox_id;
+
+    private String mailbox_title;
+
+    private Integer is_anonymity;
+
+    private Date create_date;
+
+    private Long mailbox_creator;
+
+    private Date read_date;
+
+    private Integer mailbox_status;
+
+    private Long notifier;
+
+    private Long school_id;
+
+    private Long mb_stuid;
+
+    private String mb_student;
+
+    private String mb_grade;
+
+    private String mb_class;
+
+    private Integer mb_ignore;
+
+    private String mailbox_context;
+
+    private String mailbox_files;
+
+    private String mb_reply;
+
+    private String mb_creatorname;
+}

+ 40 - 11
applications/school/school-server/src/main/resources/mapper/PrincipalMailboxMapper.xml

@@ -1,18 +1,25 @@
 <?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.usoftchina.smartschool.school.mapper.PrincipalMailboxMapper" >
-  <resultMap id="BaseResultMap" type="com.usoftchina.smartschool.school.po.PrincipalMailboxDO" >
-    <id column="mailbox_id" property="mailboxId" jdbcType="BIGINT" />
-    <result column="mailbox_title" property="mailboxTitle" jdbcType="VARCHAR" />
-    <result column="is_anonymity" property="isAnonymity" jdbcType="INTEGER" />
-    <result column="create_date" property="createDate" jdbcType="TIMESTAMP" />
-    <result column="mailbox_creator" property="mailboxCreator" jdbcType="BIGINT" />
-    <result column="read_date" property="readDate" jdbcType="TIMESTAMP" />
-    <result column="mailbox_status" property="mailboxStatus" jdbcType="INTEGER" />
+  <resultMap id="BaseResultMap" type="com.usoftchina.smartschool.school.po.PrincipalMail" >
+    <id column="mailbox_id" property="mailbox_id" jdbcType="BIGINT" />
+    <result column="mailbox_title" property="mailbox_title" jdbcType="VARCHAR" />
+    <result column="is_anonymity" property="is_anonymity" jdbcType="INTEGER" />
+    <result column="create_date" property="create_date" jdbcType="TIMESTAMP" />
+    <result column="mailbox_creator" property="mailbox_creator" jdbcType="BIGINT" />
+    <result column="read_date" property="read_date" jdbcType="TIMESTAMP" />
+    <result column="mailbox_status" property="mailbox_status" jdbcType="INTEGER" />
     <result column="notifier" property="notifier" jdbcType="BIGINT" />
-    <result column="school_id" property="schoolId" jdbcType="BIGINT" />
-    <result column="mailbox_context" property="mailboxContext" jdbcType="LONGVARCHAR" />
-    <result column="mailbox_files" property="mailboxFiles" jdbcType="LONGVARCHAR" />
+    <result column="school_id" property="school_id" jdbcType="BIGINT" />
+    <result column="mb_stuid" property="mb_stuid" jdbcType="BIGINT" />
+    <result column="mb_student" property="mb_student" jdbcType="VARCHAR" />
+    <result column="mb_grade" property="mb_grade" jdbcType="VARCHAR" />
+    <result column="mb_class" property="mb_class" jdbcType="VARCHAR" />
+    <result column="mb_ignore" property="mb_ignore" jdbcType="INTEGER" />
+    <result column="mailbox_context" property="mailbox_context" jdbcType="LONGVARCHAR" />
+    <result column="mailbox_files" property="mailbox_files" jdbcType="LONGVARCHAR" />
+    <result column="mb_reply" property="mb_reply" jdbcType="LONGVARCHAR" />
+    <result column="mb_creatorname" property="mb_creatorname" jdbcType="VARCHAR"/>
   </resultMap>
 
   <select id="selectByConditon" resultMap="BaseResultMap">
@@ -33,4 +40,26 @@
     where mailbox_id = #{mailbox_id,jdbcType=BIGINT}
   </delete>
 
+  <update id="batchIgnore" parameterType="com.usoftchina.smartschool.school.dto.DocBaseDTO">
+    <foreach collection="list" item="item" index="index" open="" close="" separator=";">
+      update principal_mailbox set mb_ignore = 1 where mailbox_id = #{item.id}
+    </foreach>
+  </update>
+
+
+  <update id="batchUnIgnore" parameterType="com.usoftchina.smartschool.school.dto.DocBaseDTO">
+    <foreach collection="list" item="item" index="index" open="" close="" separator=";">
+      update principal_mailbox set mb_ignore = 0 where mailbox_id = #{item.id}
+    </foreach>
+  </update>
+  
+  <update id="updateReply">
+    update principal_mailbox set mailbox_status=3,mb_reply=#{msg} where mailbox_id=#{id}
+  </update>
+
+  <insert id="insertDetail" parameterType="com.usoftchina.smartschool.school.po.PrincipalReplyDO">
+    insert into principal_reply (mailbox_id,reply_content,reply_date)
+    values (#{mailboxId,jdbcType=BIGINT}, #{replyContent,jdbcType=VARCHAR}, #{replyDate,jdbcType=TIMESTAMP})
+  </insert>
+
 </mapper>