Commit ed0efeed authored by 赵啸非's avatar 赵啸非

添加通知

parent 11dce179
...@@ -50,7 +50,7 @@ const router = new Router({ ...@@ -50,7 +50,7 @@ const router = new Router({
...restBuilder('basic/set', 'basic/set'),//基础设置 ...restBuilder('basic/set', 'basic/set'),//基础设置
...restBuilder('notice', 'notice'),//通知公告 ...restBuilder('notice', 'notice'),//通知公告
...restBuilder('room/notice', 'room/notice'),//房间所属公告 // ...restBuilder('room/notice', 'room/notice'),//房间所属公告
//以下为基础路由配置 //以下为基础路由配置
builder('', 'Home'), builder('', 'Home'),
......
...@@ -8,7 +8,7 @@ import java.util.List; ...@@ -8,7 +8,7 @@ import java.util.List;
* 通知公告 DAO接口 * 通知公告 DAO接口
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
public interface NoticeDao extends ICRUDDao<NoticeEntity,Long>{ public interface NoticeDao extends ICRUDDao<NoticeEntity,Long>{
......
...@@ -8,7 +8,7 @@ import java.util.List; ...@@ -8,7 +8,7 @@ import java.util.List;
* 房间公告 DAO接口 * 房间公告 DAO接口
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
public interface NoticeRoomDao extends ICRUDDao<NoticeRoomEntity,Long>{ public interface NoticeRoomDao extends ICRUDDao<NoticeRoomEntity,Long>{
......
...@@ -11,7 +11,7 @@ import java.util.List; ...@@ -11,7 +11,7 @@ import java.util.List;
* 通知公告DaoImpl DAO接口 * 通知公告DaoImpl DAO接口
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@Repository("noticeDao") @Repository("noticeDao")
public class NoticeDaoImpl extends BaseCRUDDaoMybatis<NoticeEntity,Long> implements NoticeDao { public class NoticeDaoImpl extends BaseCRUDDaoMybatis<NoticeEntity,Long> implements NoticeDao {
......
...@@ -11,7 +11,7 @@ import java.util.List; ...@@ -11,7 +11,7 @@ import java.util.List;
* 房间公告DaoImpl DAO接口 * 房间公告DaoImpl DAO接口
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@Repository("noticeRoomDao") @Repository("noticeRoomDao")
public class NoticeRoomDaoImpl extends BaseCRUDDaoMybatis<NoticeRoomEntity,Long> implements NoticeRoomDao { public class NoticeRoomDaoImpl extends BaseCRUDDaoMybatis<NoticeRoomEntity,Long> implements NoticeRoomDao {
......
package com.mortals.xhx.module.notice.model; package com.mortals.xhx.module.notice.model;
import java.util.List; import java.util.List;
import java.util.List;
import java.util.ArrayList; import java.util.ArrayList;
import java.math.BigDecimal; import java.math.BigDecimal;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
...@@ -9,13 +8,12 @@ import com.fasterxml.jackson.annotation.JsonFormat; ...@@ -9,13 +8,12 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel; import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.notice.model.vo.NoticeVo; import com.mortals.xhx.module.notice.model.vo.NoticeVo;
import com.mortals.xhx.module.notice.model.NoticeRoomEntity;
import lombok.Data; import lombok.Data;
/** /**
* 通知公告实体对象 * 通知公告实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@Data @Data
public class NoticeEntity extends NoticeVo { public class NoticeEntity extends NoticeVo {
...@@ -42,17 +40,6 @@ public class NoticeEntity extends NoticeVo { ...@@ -42,17 +40,6 @@ public class NoticeEntity extends NoticeVo {
* 备注 * 备注
*/ */
private String remark; private String remark;
/**
* 房间公告信息
*/
private List<NoticeRoomEntity> noticeRoomList=new ArrayList<>();;
public List<NoticeRoomEntity> getNoticeRoomList(){
return noticeRoomList;
}
public void setNoticeRoomList(List<NoticeRoomEntity> noticeRoomList){
this.noticeRoomList = noticeRoomList;
}
@Override @Override
public int hashCode() { public int hashCode() {
return this.getId().hashCode(); return this.getId().hashCode();
......
package com.mortals.xhx.module.notice.model; package com.mortals.xhx.module.notice.model;
import java.util.List;
import java.util.List; import java.util.List;
import com.mortals.xhx.module.notice.model.NoticeEntity; import com.mortals.xhx.module.notice.model.NoticeEntity;
/** /**
* 通知公告查询对象 * 通知公告查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
public class NoticeQuery extends NoticeEntity { public class NoticeQuery extends NoticeEntity {
/** 开始 主键ID,主键,自增长 */ /** 开始 主键ID,主键,自增长 */
......
...@@ -13,7 +13,7 @@ import lombok.Data; ...@@ -13,7 +13,7 @@ import lombok.Data;
* 房间公告实体对象 * 房间公告实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@Data @Data
public class NoticeRoomEntity extends NoticeRoomVo { public class NoticeRoomEntity extends NoticeRoomVo {
......
...@@ -6,7 +6,7 @@ import com.mortals.xhx.module.notice.model.NoticeRoomEntity; ...@@ -6,7 +6,7 @@ import com.mortals.xhx.module.notice.model.NoticeRoomEntity;
* 房间公告查询对象 * 房间公告查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
public class NoticeRoomQuery extends NoticeRoomEntity { public class NoticeRoomQuery extends NoticeRoomEntity {
/** 开始 主键ID,主键,自增长 */ /** 开始 主键ID,主键,自增长 */
......
...@@ -11,7 +11,7 @@ import java.util.Date; ...@@ -11,7 +11,7 @@ import java.util.Date;
* 房间公告视图对象 * 房间公告视图对象
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@Data @Data
public class NoticeRoomVo extends BaseEntityLong { public class NoticeRoomVo extends BaseEntityLong {
......
...@@ -11,7 +11,7 @@ import java.util.Date; ...@@ -11,7 +11,7 @@ import java.util.Date;
* 通知公告视图对象 * 通知公告视图对象
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@Data @Data
public class NoticeVo extends BaseEntityLong { public class NoticeVo extends BaseEntityLong {
......
...@@ -8,7 +8,7 @@ import com.mortals.xhx.module.notice.dao.NoticeRoomDao; ...@@ -8,7 +8,7 @@ import com.mortals.xhx.module.notice.dao.NoticeRoomDao;
* 房间公告 service接口 * 房间公告 service接口
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
public interface NoticeRoomService extends ICRUDService<NoticeRoomEntity,Long>{ public interface NoticeRoomService extends ICRUDService<NoticeRoomEntity,Long>{
......
...@@ -8,7 +8,7 @@ import com.mortals.xhx.module.notice.dao.NoticeDao; ...@@ -8,7 +8,7 @@ import com.mortals.xhx.module.notice.dao.NoticeDao;
* 通知公告 service接口 * 通知公告 service接口
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
public interface NoticeService extends ICRUDService<NoticeEntity,Long>{ public interface NoticeService extends ICRUDService<NoticeEntity,Long>{
......
...@@ -12,13 +12,10 @@ import lombok.extern.slf4j.Slf4j; ...@@ -12,13 +12,10 @@ import lombok.extern.slf4j.Slf4j;
* 房间公告 service实现 * 房间公告 service实现
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@Service("noticeRoomService") @Service("noticeRoomService")
@Slf4j @Slf4j
public class NoticeRoomServiceImpl extends AbstractCRUDServiceImpl<NoticeRoomDao, NoticeRoomEntity, Long> implements NoticeRoomService { public class NoticeRoomServiceImpl extends AbstractCRUDServiceImpl<NoticeRoomDao, NoticeRoomEntity, Long> implements NoticeRoomService {
} }
\ No newline at end of file
...@@ -6,62 +6,16 @@ import com.mortals.framework.model.Context; ...@@ -6,62 +6,16 @@ import com.mortals.framework.model.Context;
import com.mortals.xhx.module.notice.dao.NoticeDao; import com.mortals.xhx.module.notice.dao.NoticeDao;
import com.mortals.xhx.module.notice.model.NoticeEntity; import com.mortals.xhx.module.notice.model.NoticeEntity;
import com.mortals.xhx.module.notice.service.NoticeService; import com.mortals.xhx.module.notice.service.NoticeService;
import org.springframework.beans.factory.annotation.Autowired;
import com.mortals.xhx.module.notice.model.NoticeRoomEntity;
import com.mortals.xhx.module.notice.model.NoticeRoomQuery;
import com.mortals.xhx.module.notice.service.NoticeRoomService;
import org.springframework.util.ObjectUtils;
import java.util.Date;
import java.util.Arrays;
import java.util.List;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
/** /**
* NoticeService * NoticeService
* 通知公告 service实现 * 通知公告 service实现
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@Service("noticeService") @Service("noticeService")
@Slf4j @Slf4j
public class NoticeServiceImpl extends AbstractCRUDServiceImpl<NoticeDao, NoticeEntity, Long> implements NoticeService { public class NoticeServiceImpl extends AbstractCRUDServiceImpl<NoticeDao, NoticeEntity, Long> implements NoticeService {
@Autowired
private NoticeRoomService noticeRoomService;
@Override
protected void saveAfter(NoticeEntity entity, Context context) throws AppException {
if(!ObjectUtils.isEmpty(entity.getNoticeRoomList())){
entity.getNoticeRoomList().stream().peek(item->{
item.setNoticeId(entity.getId());
item.setCreateUserId(this.getContextUserId(context));
item.setCreateTime(new Date());
}).count();
noticeRoomService.save(entity.getNoticeRoomList());
}
super.saveAfter(entity, context);
}
@Override
protected void updateAfter(NoticeEntity entity, Context context) throws AppException {
if(!ObjectUtils.isEmpty(entity.getNoticeRoomList())){
Long[] noticeRoomIds = noticeRoomService.find(new NoticeRoomQuery().noticeId(entity.getId())).stream().map(NoticeRoomEntity::getId).toArray(Long[]::new);
noticeRoomService.remove(noticeRoomIds,context);
entity.getNoticeRoomList().stream().peek(item ->{
item.setNoticeId(entity.getId());
item.setCreateUserId(this.getContextUserId(context));
item.setCreateTime(new Date());
item.setUpdateUserId(this.getContextUserId(context));
item.setUpdateTime(new Date());
}).count();
noticeRoomService.save(entity.getNoticeRoomList());
}
super.updateAfter(entity, context);
}
@Override
protected void removeAfter(Long[] ids, Context context, int result) throws AppException {
List<NoticeRoomEntity> noticeRoomlist = noticeRoomService.find(new NoticeRoomQuery().noticeIdList(Arrays.asList(ids)));
noticeRoomService.removeList(noticeRoomlist,context);
super.removeAfter(ids, context, result);
}
} }
\ No newline at end of file
...@@ -27,7 +27,7 @@ import static com.mortals.framework.ap.SysConstains.*; ...@@ -27,7 +27,7 @@ import static com.mortals.framework.ap.SysConstains.*;
* 通知公告 * 通知公告
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@RestController @RestController
@RequestMapping("notice") @RequestMapping("notice")
......
package com.mortals.xhx.module.notice.web; package com.mortals.xhx.module.notice.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -28,7 +27,7 @@ import static com.mortals.framework.ap.SysConstains.*; ...@@ -28,7 +27,7 @@ import static com.mortals.framework.ap.SysConstains.*;
* 房间公告 * 房间公告
* *
* @author zxfei * @author zxfei
* @date 2023-09-04 * @date 2023-09-05
*/ */
@RestController @RestController
@RequestMapping("notice/room") @RequestMapping("notice/room")
...@@ -47,9 +46,4 @@ public class NoticeRoomController extends BaseCRUDJsonBodyMappingController<Noti ...@@ -47,9 +46,4 @@ public class NoticeRoomController extends BaseCRUDJsonBodyMappingController<Noti
} }
@Override
protected void saveBefore(NoticeRoomEntity entity, Map<String, Object> model, Context context) throws AppException {
//公告配置
}
} }
\ No newline at end of file
...@@ -15,19 +15,7 @@ ...@@ -15,19 +15,7 @@
<result property="createTime" column="createTime" /> <result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" /> <result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" /> <result property="updateTime" column="updateTime" />
<collection property="noticeRoomList" column="id" ofType="NoticeRoomEntity" javaType="ArrayList" select="getNoticeRoomByNoticeId"></collection>
</resultMap>
<resultMap type="NoticeRoomEntity" id="NoticeRoomEntity-Map">
<result property="id" column="id" />
<result property="noticeId" column="noticeId" />
<result property="title" column="title" />
<result property="roomId" column="roomId" />
<result property="roomName" column="roomName" />
<result property="remark" column="remark" />
<result property="createUserId" column="createUserId" />
<result property="createTime" column="createTime" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</resultMap> </resultMap>
...@@ -66,12 +54,6 @@ ...@@ -66,12 +54,6 @@
</if> </if>
</trim> </trim>
</sql> </sql>
<!-- 子表所有列 -->
<sql id="_columns_sub">
<trim suffixOverrides="," suffix="">
b.id,b.noticeId,b.title,b.roomId,b.roomName,b.remark,b.createUserId,b.createTime,b.updateUserId,b.updateTime,
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 --> <!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="NoticeEntity" useGeneratedKeys="true" keyProperty="id"> <insert id="insert" parameterType="NoticeEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_notice insert into mortals_xhx_notice
...@@ -274,14 +256,6 @@ ...@@ -274,14 +256,6 @@
</trim> </trim>
<include refid="_orderCols_"/> <include refid="_orderCols_"/>
</select> </select>
<!-- 获取子列表 -->
<select id="getNoticeRoomByNoticeId" parameterType="java.lang.Long" resultMap="NoticeRoomEntity-Map">
select <include refid="_columns_sub"/>
from mortals_xhx_notice_room as b
<trim suffixOverrides="where" suffix="">
where b.noticeId = #{id}
</trim>
</select>
......
...@@ -29,11 +29,11 @@ Authorization: {{authToken}} ...@@ -29,11 +29,11 @@ Authorization: {{authToken}}
Content-Type: application/json Content-Type: application/json
{ {
"title":"2fntwc", "title":"1x7w1v",
"noticeContent":"47riae", "noticeContent":"4f0ita",
"filePath":"tcntq2", "filePath":"ypnak8",
"fileName":"rd8qfy", "fileName":"f02j81",
"remark":"4b0igp", "remark":"le03v4",
} }
> {% > {%
......
...@@ -29,11 +29,11 @@ Authorization: {{authToken}} ...@@ -29,11 +29,11 @@ Authorization: {{authToken}}
Content-Type: application/json Content-Type: application/json
{ {
"noticeId":882, "noticeId":940,
"title":"lyrqsg", "title":"1gosfz",
"roomId":961, "roomId":567,
"roomName":"w4a7jv", "roomName":"gam3y7",
"remark":"887xvv", "remark":"x6sv4n",
} }
> {% > {%
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment