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

添加通知

parent ed0efeed
......@@ -12,7 +12,10 @@
<Field :span="20" label="房间类型" prop="roomType" v-model="form.roomType" type="select" :enumData="dict.roomType" placeholder="请选择房间类型"/>
<Field :span="20" label="关联设备" prop="deviceId" v-model="deviceIds" type="select" :multiple="true" :enumData="dict.deviceIds" placeholder="请选择绑定的电子门牌的设备ID"/>
<Field label="附件"><fileUpload v-model="form.filePath" @getFileName="getFileName" prePath="/file/fileupload"/></Field>
<Field :span="20" label="关联公告" prop="noticeId" v-model="form.noticeId" type="select" :enumData="dict.noticeId" placeholder="请选择关联公告"/>
<Field label="附件"><fileUpload v-model="form.filePath" :fileName="form.fileName" @getFileName="getFileName" prePath="/file/fileupload"/></Field>
<Field :span="20" label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
......
......@@ -37,4 +37,7 @@ public class RoomVo extends BaseEntityLong {
private List<NoticeEntity> noticeList;
private Long noticeId;
}
\ No newline at end of file
......@@ -55,22 +55,21 @@ public class RoomServiceImpl extends AbstractCRUDServiceImpl<RoomDao, RoomEntity
private NoticeService noticeService;
@Override
protected void findAfter(RoomEntity params, PageInfo pageInfo, Context context, List<RoomEntity> list) throws AppException {
super.findAfter(params, pageInfo, context, list);
Map<Long, Long> collect = workmanService.find(new WorkmanQuery()).stream().collect(Collectors.groupingBy(x -> x.getRoomId(), Collectors.counting()));
list.forEach(item->{
list.forEach(item -> {
List<NoticeRoomEntity> noticeRoomEntities = noticeRoomService.find(new NoticeRoomQuery().roomId(item.getId()));
if(!ObjectUtils.isEmpty(noticeRoomEntities)){
if (!ObjectUtils.isEmpty(noticeRoomEntities)) {
NoticeQuery noticeQuery = new NoticeQuery();
noticeQuery.setIdList(noticeRoomEntities.stream().map(i->i.getId()).collect(Collectors.toList()));
noticeQuery.setIdList(noticeRoomEntities.stream().map(i -> i.getId()).collect(Collectors.toList()));
List<NoticeEntity> noticeEntities = noticeService.find(noticeQuery, context);
if(!ObjectUtils.isEmpty(noticeEntities)){
if (!ObjectUtils.isEmpty(noticeEntities)) {
item.setNoticeList(noticeEntities);
}
}
item.setCountPerson(collect.getOrDefault(item.getId(),item.getCountPerson()));
item.setCountPerson(collect.getOrDefault(item.getId(), item.getCountPerson()));
});
}
......@@ -96,6 +95,22 @@ public class RoomServiceImpl extends AbstractCRUDServiceImpl<RoomDao, RoomEntity
}).count();
roomDeviceService.save(entity.getRoomDeviceList());
}
if (!ObjectUtils.isEmpty(entity.getNoticeId())) {
//查询notice
NoticeEntity noticeEntity = noticeService.get(entity.getNoticeId(), context);
if (!ObjectUtils.isEmpty(noticeEntity)) {
NoticeRoomEntity noticeRoomEntity = new NoticeRoomEntity();
noticeRoomEntity.initAttrValue();
noticeRoomEntity.setRoomId(entity.getId());
noticeRoomEntity.setRoomName(entity.getRoomName());
noticeRoomEntity.setNoticeId(noticeEntity.getId());
noticeRoomEntity.setCreateTime(new Date());
noticeRoomEntity.setCreateUserId(this.getContextUserId(context));
noticeRoomService.save(noticeRoomEntity, context);
}
}
super.saveAfter(entity, context);
}
......@@ -133,6 +148,32 @@ public class RoomServiceImpl extends AbstractCRUDServiceImpl<RoomDao, RoomEntity
}).count();
roomDeviceService.save(entity.getRoomDeviceList());
}
if (!ObjectUtils.isEmpty(entity.getNoticeId())) {
//查询notice
NoticeEntity noticeEntity = noticeService.get(entity.getNoticeId(), context);
if (!ObjectUtils.isEmpty(noticeEntity)) {
NoticeRoomQuery noticeRoomQuery = new NoticeRoomQuery();
noticeRoomQuery.setRoomId(entity.getId());
NoticeRoomEntity temp = noticeRoomService.selectOne(noticeRoomQuery);
if (!ObjectUtils.isEmpty(temp) && temp.getId() != entity.getNoticeId()) {
//删除后新增
noticeRoomService.remove(temp.getId(), context);
NoticeRoomEntity noticeRoomEntity = new NoticeRoomEntity();
noticeRoomEntity.initAttrValue();
noticeRoomEntity.setRoomId(entity.getId());
noticeRoomEntity.setRoomName(entity.getRoomName());
noticeRoomEntity.setNoticeId(noticeEntity.getId());
noticeRoomEntity.setCreateTime(new Date());
noticeRoomEntity.setCreateUserId(this.getContextUserId(context));
noticeRoomService.save(noticeRoomEntity, context);
}
}
}
super.updateAfter(entity, context);
}
......@@ -141,7 +182,7 @@ public class RoomServiceImpl extends AbstractCRUDServiceImpl<RoomDao, RoomEntity
List<RoomDeviceEntity> roomDevicelist = roomDeviceService.find(new RoomDeviceQuery().roomIdList(Arrays.asList(ids)));
roomDeviceService.removeList(roomDevicelist, context);
roomDevicelist.stream().forEach(item->{
roomDevicelist.stream().forEach(item -> {
DeviceEntity deviceEntity = new DeviceEntity();
deviceEntity.setId(item.getDeviceId());
deviceEntity.setRoomId(-1L);
......
......@@ -6,6 +6,8 @@ import com.mortals.xhx.common.code.DeviceTypeEnum;
import com.mortals.xhx.module.device.model.DeviceEntity;
import com.mortals.xhx.module.device.model.DeviceQuery;
import com.mortals.xhx.module.device.service.DeviceService;
import com.mortals.xhx.module.notice.model.NoticeQuery;
import com.mortals.xhx.module.notice.service.NoticeService;
import com.mortals.xhx.module.room.model.RoomDeviceEntity;
import com.mortals.xhx.module.room.model.RoomDeviceQuery;
import com.mortals.xhx.module.room.model.RoomQuery;
......@@ -50,6 +52,9 @@ public class RoomController extends BaseCRUDJsonBodyMappingController<RoomServic
@Autowired
private RoomDeviceService roomDeviceService;
@Autowired
private NoticeService noticeService;
public RoomController(){
super.setModuleDesc( "房间管理");
......@@ -72,6 +77,11 @@ public class RoomController extends BaseCRUDJsonBodyMappingController<RoomServic
.collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getDeviceName(), (o, n) -> n));
}
Map<String, String> noticeMap = noticeService.find(new NoticeQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getTitle(), (o, n) -> n));
this.addDict(model, "noticeId", noticeMap);
this.addDict(model, "deviceIds", ledMap);
super.init(model, context);
}
......@@ -96,4 +106,8 @@ public class RoomController extends BaseCRUDJsonBodyMappingController<RoomServic
query.setDeviceCode(null);
}
}
}
\ No newline at end of file
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