Commit 3702f229 authored by 赵啸非's avatar 赵啸非

添加通知

parent 3d1bdbd3
...@@ -76,3 +76,12 @@ ALTER TABLE mortals_xhx_workman ADD COLUMN `filePath` varchar(256) COMMENT ...@@ -76,3 +76,12 @@ ALTER TABLE mortals_xhx_workman ADD COLUMN `filePath` varchar(256) COMMENT
2023-09-21 2023-09-21
-- ---------------------------- -- ----------------------------
ALTER TABLE mortals_xhx_workman ADD COLUMN `order` int(4) DEFAULT '1' COMMENT '排序,值越大越靠前' ALTER TABLE mortals_xhx_workman ADD COLUMN `order` int(4) DEFAULT '1' COMMENT '排序,值越大越靠前'
-- ----------------------------
2023-12-27
-- ----------------------------
ALTER TABLE mortals_xhx_basic_set ADD COLUMN `preMeetStart` tinyint(4) DEFAULT '0' COMMENT '会议开始前几分钟切换'
ALTER TABLE mortals_xhx_basic_set ADD COLUMN `postMeetStart` tinyint(4) DEFAULT '0' COMMENT '会议开始后几分钟切换'
ALTER TABLE mortals_xhx_basic_set ADD COLUMN `meetEnd` tinyint(4) DEFAULT '0' COMMENT '会议结束切换(0.否,1.是)'
...@@ -65,6 +65,12 @@ ...@@ -65,6 +65,12 @@
v-model="form.showMeetDesc" v-model="form.showMeetDesc"
placeholder="请输入显示会议室门牌信息自定义内容" placeholder="请输入显示会议室门牌信息自定义内容"
/> />
<Field :span="20" label="会议开始前几分钟切换" prop="preMeetStart" v-model="form.preMeetStart" placeholder="请选择会议开始前几分钟切换"/>
<Field :span="20" label="会议开始后几分钟切换" prop="postMeetStart" v-model="form.postMeetStart" placeholder="请选择会议开始后几分钟切换"/>
<Field :span="20" label="会议结束切换" prop="meetEnd" v-model="form.meetEnd" type="checkbox" :enumData="dict.meetEnd" placeholder="请选择会议结束切换"/>
<Field <Field
:span="20" :span="20"
label="备注" label="备注"
...@@ -270,6 +276,9 @@ export default { ...@@ -270,6 +276,9 @@ export default {
showMeet: 0, showMeet: 0,
showMeetDesc: "", showMeetDesc: "",
remark: "", remark: "",
preMeetStart : 0,
postMeetStart : 0,
meetEnd : 0,
}; };
this.resetForm("form"); this.resetForm("form");
}, },
......
package com.mortals.xhx.daemon.task;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.xhx.common.code.FinishMethodEnum;
import com.mortals.xhx.common.code.MeetStatusEnum;
import com.mortals.xhx.common.pdu.UploadDeviceReq;
import com.mortals.xhx.feign.device.IDeviceMessageFeign;
import com.mortals.xhx.module.basic.model.BasicSetEntity;
import com.mortals.xhx.module.basic.service.BasicSetService;
import com.mortals.xhx.module.metting.model.MettingRecordEntity;
import com.mortals.xhx.module.metting.model.MettingRecordQuery;
import com.mortals.xhx.module.metting.service.MettingRecordService;
import com.mortals.xhx.module.room.model.RoomDeviceQuery;
import com.mortals.xhx.module.room.model.RoomEntity;
import com.sun.org.apache.xerces.internal.dom.PSVIAttrNSImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
/**
* 会议室切换状态
*/
@Slf4j
@Service("MeetSwitchTaskTask")
public class MeetSwitchTaskImpl implements ITaskExcuteService {
@Autowired
private MettingRecordService mettingRecordService;
@Autowired
private BasicSetService basicSetService;
@Autowired
private IDeviceMessageFeign messageFeign;
@Override
public void excuteTask(ITask task) throws AppException {
log.debug("会议室切换状态");
BasicSetEntity basicSetEntity = basicSetService.selectOne(new BasicSetEntity());
if (!ObjectUtils.isEmpty(basicSetEntity)) {
log.info("基础未配置");
return;
}
swicthMeet(basicSetEntity);
log.debug("会议室切换状态完成");
}
private void swicthMeet(BasicSetEntity basicSetEntity) {
if (!ObjectUtils.isEmpty(basicSetEntity.getPreMeetStart()) && basicSetEntity.getPreMeetStart() > 0) {
//会议开始前几分钟 通知设备进行数据更新
MettingRecordQuery mettingRecordQuery = new MettingRecordQuery();
//mettingRecordQuery.setFinishMethod(FinishMethodEnum.自动结束.getValue());
mettingRecordQuery.setMeetStatus(MeetStatusEnum.等待中.getValue());
List<MettingRecordEntity> recordEntities = mettingRecordService.find(mettingRecordQuery);
for (MettingRecordEntity recordEntity : recordEntities) {
long between = DateUtil.between(new Date(), recordEntity.getMeetTimeStart(), DateUnit.MINUTE);
if (between <= basicSetEntity.getPreMeetStart()) {
//通知设备进行数据更新 todo
UploadDeviceReq uploadDeviceReq = new UploadDeviceReq();
uploadDeviceReq.setDeviceCodeList(Arrays.asList(recordEntity.getDeviceCode()));
uploadDeviceReq.setAction("preMeetStart");
uploadDeviceReq.setContent(JSON.toJSONString(recordEntity));
messageFeign.downMsg(uploadDeviceReq);
}
}
if (!ObjectUtils.isEmpty(basicSetEntity.getPostMeetStart()) && basicSetEntity.getPostMeetStart() > 0) {
mettingRecordQuery = new MettingRecordQuery();
mettingRecordQuery.setMeetStatus(MeetStatusEnum.进行中.getValue());
List<MettingRecordEntity> pendRecordEntities = mettingRecordService.find(mettingRecordQuery);
for (MettingRecordEntity pendRecordEntity : pendRecordEntities) {
long between = DateUtil.between( pendRecordEntity.getMeetTimeStart(),new Date(), DateUnit.MINUTE);
if (between <= basicSetEntity.getPostMeetStart()) {
UploadDeviceReq uploadDeviceReq = new UploadDeviceReq();
uploadDeviceReq.setDeviceCodeList(Arrays.asList(pendRecordEntity.getDeviceCode()));
uploadDeviceReq.setAction("postMeet");
messageFeign.downMsg(uploadDeviceReq);
}
}
}
}
}
@Override
public void stopTask(ITask task) throws AppException {
}
public static void main(String[] args) {
long between = DateUtil.between(new Date(), DateUtil.offsetMinute(new Date(), 5), DateUnit.MINUTE);
System.out.println(between);
}
}
...@@ -6,13 +6,20 @@ import com.mortals.framework.service.ITask; ...@@ -6,13 +6,20 @@ import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService; import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.xhx.common.code.FinishMethodEnum; import com.mortals.xhx.common.code.FinishMethodEnum;
import com.mortals.xhx.common.code.MeetStatusEnum; import com.mortals.xhx.common.code.MeetStatusEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.pdu.UploadDeviceReq;
import com.mortals.xhx.feign.device.IDeviceMessageFeign;
import com.mortals.xhx.module.basic.model.BasicSetEntity;
import com.mortals.xhx.module.basic.service.BasicSetService;
import com.mortals.xhx.module.metting.model.MettingRecordEntity; import com.mortals.xhx.module.metting.model.MettingRecordEntity;
import com.mortals.xhx.module.metting.model.MettingRecordQuery; import com.mortals.xhx.module.metting.model.MettingRecordQuery;
import com.mortals.xhx.module.metting.service.MettingRecordService; import com.mortals.xhx.module.metting.service.MettingRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
...@@ -26,6 +33,12 @@ public class SyncMeetStatusTaskImpl implements ITaskExcuteService { ...@@ -26,6 +33,12 @@ public class SyncMeetStatusTaskImpl implements ITaskExcuteService {
@Autowired @Autowired
private MettingRecordService mettingRecordService; private MettingRecordService mettingRecordService;
@Autowired
private IDeviceMessageFeign messageFeign;
@Autowired
private BasicSetService basicSetService;
@Override @Override
public void excuteTask(ITask task) throws AppException { public void excuteTask(ITask task) throws AppException {
...@@ -37,6 +50,7 @@ public class SyncMeetStatusTaskImpl implements ITaskExcuteService { ...@@ -37,6 +50,7 @@ public class SyncMeetStatusTaskImpl implements ITaskExcuteService {
private void syncMeetStatus() { private void syncMeetStatus() {
BasicSetEntity basicSetEntity = basicSetService.selectOne(new BasicSetEntity());
MettingRecordQuery mettingRecordQuery = new MettingRecordQuery(); MettingRecordQuery mettingRecordQuery = new MettingRecordQuery();
//mettingRecordQuery.setFinishMethod(FinishMethodEnum.自动结束.getValue()); //mettingRecordQuery.setFinishMethod(FinishMethodEnum.自动结束.getValue());
mettingRecordQuery.setMeetStatus(MeetStatusEnum.等待中.getValue()); mettingRecordQuery.setMeetStatus(MeetStatusEnum.等待中.getValue());
...@@ -44,23 +58,13 @@ public class SyncMeetStatusTaskImpl implements ITaskExcuteService { ...@@ -44,23 +58,13 @@ public class SyncMeetStatusTaskImpl implements ITaskExcuteService {
for (MettingRecordEntity recordEntity : recordEntities) { for (MettingRecordEntity recordEntity : recordEntities) {
if(new Date().getTime()>recordEntity.getMeetTimeStart().getTime()){ if (new Date().getTime() > recordEntity.getMeetTimeStart().getTime()) {
//更新状态 //更新状态
recordEntity.setMeetStatus(MeetStatusEnum.进行中.getValue()); recordEntity.setMeetStatus(MeetStatusEnum.进行中.getValue());
recordEntity.setUpdateTime(new Date()); recordEntity.setUpdateTime(new Date());
recordEntity.setUpdateUserId(1L); recordEntity.setUpdateUserId(1L);
mettingRecordService.update(recordEntity); mettingRecordService.update(recordEntity);
} }
/*
//判断当前时间是否已经在区间范围内,如果在 更新状态
boolean in = DateUtil.isIn(new Date(), recordEntity.getMeetTimeStart(), recordEntity.getMeetTimeEnd());
if (in) {
//更新状态
recordEntity.setMeetStatus(MeetStatusEnum.进行中.getValue());
recordEntity.setUpdateTime(new Date());
recordEntity.setUpdateUserId(1L);
mettingRecordService.update(recordEntity);
}*/
} }
mettingRecordQuery = new MettingRecordQuery(); mettingRecordQuery = new MettingRecordQuery();
...@@ -76,6 +80,14 @@ public class SyncMeetStatusTaskImpl implements ITaskExcuteService { ...@@ -76,6 +80,14 @@ public class SyncMeetStatusTaskImpl implements ITaskExcuteService {
pendRecordEntity.setUpdateTime(new Date()); pendRecordEntity.setUpdateTime(new Date());
pendRecordEntity.setUpdateUserId(1L); pendRecordEntity.setUpdateUserId(1L);
mettingRecordService.update(pendRecordEntity); mettingRecordService.update(pendRecordEntity);
//判断基础是否设置关闭切换通知,有则推送
if (!ObjectUtils.isEmpty(basicSetEntity.getMeetEnd()) && basicSetEntity.getMeetEnd() == YesNoEnum.YES.getValue()) {
UploadDeviceReq uploadDeviceReq = new UploadDeviceReq();
uploadDeviceReq.setDeviceCodeList(Arrays.asList(pendRecordEntity.getDeviceCode()));
uploadDeviceReq.setAction("postMeet");
messageFeign.downMsg(uploadDeviceReq);
}
} }
} }
......
...@@ -2,6 +2,9 @@ package com.mortals.xhx.module.basic.model; ...@@ -2,6 +2,9 @@ package com.mortals.xhx.module.basic.model;
import java.util.List; 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 cn.hutool.core.date.DateUtil;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat; 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;
...@@ -9,11 +12,11 @@ import com.mortals.xhx.module.basic.model.vo.BasicSetVo; ...@@ -9,11 +12,11 @@ import com.mortals.xhx.module.basic.model.vo.BasicSetVo;
import com.mortals.xhx.module.basic.model.BasicStatusEntity; import com.mortals.xhx.module.basic.model.BasicStatusEntity;
import lombok.Data; import lombok.Data;
/** /**
* 基础设置实体对象 * 基础设置实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-23 * @date 2023-12-27
*/ */
@Data @Data
public class BasicSetEntity extends BasicSetVo { public class BasicSetEntity extends BasicSetVo {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
...@@ -58,6 +61,18 @@ public class BasicSetEntity extends BasicSetVo { ...@@ -58,6 +61,18 @@ public class BasicSetEntity extends BasicSetVo {
* 备注 * 备注
*/ */
private String remark; private String remark;
/**
* 会议开始前几分钟切换
*/
private Integer preMeetStart;
/**
* 会议开始后几分钟切换
*/
private Integer postMeetStart;
/**
* 会议结束切换(0.否,1.是)
*/
private Integer meetEnd;
/** /**
* 状态设置信息 * 状态设置信息
*/ */
...@@ -86,25 +101,18 @@ public class BasicSetEntity extends BasicSetVo { ...@@ -86,25 +101,18 @@ public class BasicSetEntity extends BasicSetVo {
} }
public void initAttrValue(){ public void initAttrValue(){
this.showPhoto = 0; this.showPhoto = 0;
this.showName = 0; this.showName = 0;
this.showPost = 0; this.showPost = 0;
this.showWork = 0; this.showWork = 0;
this.showPhone = 0; this.showPhone = 0;
this.showElect = 0; this.showElect = 0;
this.showElectDesc = ""; this.showElectDesc = "";
this.showMeet = 0; this.showMeet = 0;
this.showMeetDesc = ""; this.showMeetDesc = "";
this.remark = ""; this.remark = "";
this.preMeetStart = 0;
this.postMeetStart = 0;
this.meetEnd = 0;
} }
} }
\ No newline at end of file
...@@ -4,11 +4,11 @@ import java.util.List; ...@@ -4,11 +4,11 @@ import java.util.List;
import java.util.List; import java.util.List;
import com.mortals.xhx.module.basic.model.BasicSetEntity; import com.mortals.xhx.module.basic.model.BasicSetEntity;
/** /**
* 基础设置查询对象 * 基础设置查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-23 * @date 2023-12-27
*/ */
public class BasicSetQuery extends BasicSetEntity { public class BasicSetQuery extends BasicSetEntity {
/** 开始 主键ID,主键,自增长 */ /** 开始 主键ID,主键,自增长 */
private Long idStart; private Long idStart;
...@@ -187,6 +187,51 @@ public class BasicSetQuery extends BasicSetEntity { ...@@ -187,6 +187,51 @@ public class BasicSetQuery extends BasicSetEntity {
/** 结束 更新时间 */ /** 结束 更新时间 */
private String updateTimeEnd; private String updateTimeEnd;
/** 开始 会议开始前几分钟切换 */
private Integer preMeetStartStart;
/** 结束 会议开始前几分钟切换 */
private Integer preMeetStartEnd;
/** 增加 会议开始前几分钟切换 */
private Integer preMeetStartIncrement;
/** 会议开始前几分钟切换列表 */
private List <Integer> preMeetStartList;
/** 会议开始前几分钟切换排除列表 */
private List <Integer> preMeetStartNotList;
/** 开始 会议开始后几分钟切换 */
private Integer postMeetStartStart;
/** 结束 会议开始后几分钟切换 */
private Integer postMeetStartEnd;
/** 增加 会议开始后几分钟切换 */
private Integer postMeetStartIncrement;
/** 会议开始后几分钟切换列表 */
private List <Integer> postMeetStartList;
/** 会议开始后几分钟切换排除列表 */
private List <Integer> postMeetStartNotList;
/** 开始 会议结束切换(0.否,1.是) */
private Integer meetEndStart;
/** 结束 会议结束切换(0.否,1.是) */
private Integer meetEndEnd;
/** 增加 会议结束切换(0.否,1.是) */
private Integer meetEndIncrement;
/** 会议结束切换(0.否,1.是)列表 */
private List <Integer> meetEndList;
/** 会议结束切换(0.否,1.是)排除列表 */
private List <Integer> meetEndNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */ /** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<BasicSetQuery> orConditionList; private List<BasicSetQuery> orConditionList;
...@@ -1165,6 +1210,249 @@ public class BasicSetQuery extends BasicSetEntity { ...@@ -1165,6 +1210,249 @@ public class BasicSetQuery extends BasicSetEntity {
this.updateTimeEnd = updateTimeEnd; this.updateTimeEnd = updateTimeEnd;
} }
/**
* 获取 开始 会议开始前几分钟切换
* @return preMeetStartStart
*/
public Integer getPreMeetStartStart(){
return this.preMeetStartStart;
}
/**
* 设置 开始 会议开始前几分钟切换
* @param preMeetStartStart
*/
public void setPreMeetStartStart(Integer preMeetStartStart){
this.preMeetStartStart = preMeetStartStart;
}
/**
* 获取 结束 会议开始前几分钟切换
* @return $preMeetStartEnd
*/
public Integer getPreMeetStartEnd(){
return this.preMeetStartEnd;
}
/**
* 设置 结束 会议开始前几分钟切换
* @param preMeetStartEnd
*/
public void setPreMeetStartEnd(Integer preMeetStartEnd){
this.preMeetStartEnd = preMeetStartEnd;
}
/**
* 获取 增加 会议开始前几分钟切换
* @return preMeetStartIncrement
*/
public Integer getPreMeetStartIncrement(){
return this.preMeetStartIncrement;
}
/**
* 设置 增加 会议开始前几分钟切换
* @param preMeetStartIncrement
*/
public void setPreMeetStartIncrement(Integer preMeetStartIncrement){
this.preMeetStartIncrement = preMeetStartIncrement;
}
/**
* 获取 会议开始前几分钟切换
* @return preMeetStartList
*/
public List<Integer> getPreMeetStartList(){
return this.preMeetStartList;
}
/**
* 设置 会议开始前几分钟切换
* @param preMeetStartList
*/
public void setPreMeetStartList(List<Integer> preMeetStartList){
this.preMeetStartList = preMeetStartList;
}
/**
* 获取 会议开始前几分钟切换
* @return preMeetStartNotList
*/
public List<Integer> getPreMeetStartNotList(){
return this.preMeetStartNotList;
}
/**
* 设置 会议开始前几分钟切换
* @param preMeetStartNotList
*/
public void setPreMeetStartNotList(List<Integer> preMeetStartNotList){
this.preMeetStartNotList = preMeetStartNotList;
}
/**
* 获取 开始 会议开始后几分钟切换
* @return postMeetStartStart
*/
public Integer getPostMeetStartStart(){
return this.postMeetStartStart;
}
/**
* 设置 开始 会议开始后几分钟切换
* @param postMeetStartStart
*/
public void setPostMeetStartStart(Integer postMeetStartStart){
this.postMeetStartStart = postMeetStartStart;
}
/**
* 获取 结束 会议开始后几分钟切换
* @return $postMeetStartEnd
*/
public Integer getPostMeetStartEnd(){
return this.postMeetStartEnd;
}
/**
* 设置 结束 会议开始后几分钟切换
* @param postMeetStartEnd
*/
public void setPostMeetStartEnd(Integer postMeetStartEnd){
this.postMeetStartEnd = postMeetStartEnd;
}
/**
* 获取 增加 会议开始后几分钟切换
* @return postMeetStartIncrement
*/
public Integer getPostMeetStartIncrement(){
return this.postMeetStartIncrement;
}
/**
* 设置 增加 会议开始后几分钟切换
* @param postMeetStartIncrement
*/
public void setPostMeetStartIncrement(Integer postMeetStartIncrement){
this.postMeetStartIncrement = postMeetStartIncrement;
}
/**
* 获取 会议开始后几分钟切换
* @return postMeetStartList
*/
public List<Integer> getPostMeetStartList(){
return this.postMeetStartList;
}
/**
* 设置 会议开始后几分钟切换
* @param postMeetStartList
*/
public void setPostMeetStartList(List<Integer> postMeetStartList){
this.postMeetStartList = postMeetStartList;
}
/**
* 获取 会议开始后几分钟切换
* @return postMeetStartNotList
*/
public List<Integer> getPostMeetStartNotList(){
return this.postMeetStartNotList;
}
/**
* 设置 会议开始后几分钟切换
* @param postMeetStartNotList
*/
public void setPostMeetStartNotList(List<Integer> postMeetStartNotList){
this.postMeetStartNotList = postMeetStartNotList;
}
/**
* 获取 开始 会议结束切换(0.否,1.是)
* @return meetEndStart
*/
public Integer getMeetEndStart(){
return this.meetEndStart;
}
/**
* 设置 开始 会议结束切换(0.否,1.是)
* @param meetEndStart
*/
public void setMeetEndStart(Integer meetEndStart){
this.meetEndStart = meetEndStart;
}
/**
* 获取 结束 会议结束切换(0.否,1.是)
* @return $meetEndEnd
*/
public Integer getMeetEndEnd(){
return this.meetEndEnd;
}
/**
* 设置 结束 会议结束切换(0.否,1.是)
* @param meetEndEnd
*/
public void setMeetEndEnd(Integer meetEndEnd){
this.meetEndEnd = meetEndEnd;
}
/**
* 获取 增加 会议结束切换(0.否,1.是)
* @return meetEndIncrement
*/
public Integer getMeetEndIncrement(){
return this.meetEndIncrement;
}
/**
* 设置 增加 会议结束切换(0.否,1.是)
* @param meetEndIncrement
*/
public void setMeetEndIncrement(Integer meetEndIncrement){
this.meetEndIncrement = meetEndIncrement;
}
/**
* 获取 会议结束切换(0.否,1.是)
* @return meetEndList
*/
public List<Integer> getMeetEndList(){
return this.meetEndList;
}
/**
* 设置 会议结束切换(0.否,1.是)
* @param meetEndList
*/
public void setMeetEndList(List<Integer> meetEndList){
this.meetEndList = meetEndList;
}
/**
* 获取 会议结束切换(0.否,1.是)
* @return meetEndNotList
*/
public List<Integer> getMeetEndNotList(){
return this.meetEndNotList;
}
/**
* 设置 会议结束切换(0.否,1.是)
* @param meetEndNotList
*/
public void setMeetEndNotList(List<Integer> meetEndNotList){
this.meetEndNotList = meetEndNotList;
}
/** /**
* 设置 主键ID,主键,自增长 * 设置 主键ID,主键,自增长
* @param id * @param id
...@@ -1764,6 +2052,168 @@ public class BasicSetQuery extends BasicSetEntity { ...@@ -1764,6 +2052,168 @@ public class BasicSetQuery extends BasicSetEntity {
} }
/**
* 设置 会议开始前几分钟切换
* @param preMeetStart
*/
public BasicSetQuery preMeetStart(Integer preMeetStart){
setPreMeetStart(preMeetStart);
return this;
}
/**
* 设置 开始 会议开始前几分钟切换
* @param preMeetStartStart
*/
public BasicSetQuery preMeetStartStart(Integer preMeetStartStart){
this.preMeetStartStart = preMeetStartStart;
return this;
}
/**
* 设置 结束 会议开始前几分钟切换
* @param preMeetStartEnd
*/
public BasicSetQuery preMeetStartEnd(Integer preMeetStartEnd){
this.preMeetStartEnd = preMeetStartEnd;
return this;
}
/**
* 设置 增加 会议开始前几分钟切换
* @param preMeetStartIncrement
*/
public BasicSetQuery preMeetStartIncrement(Integer preMeetStartIncrement){
this.preMeetStartIncrement = preMeetStartIncrement;
return this;
}
/**
* 设置 会议开始前几分钟切换
* @param preMeetStartList
*/
public BasicSetQuery preMeetStartList(List<Integer> preMeetStartList){
this.preMeetStartList = preMeetStartList;
return this;
}
/**
* 设置 会议开始前几分钟切换
* @param preMeetStartNotList
*/
public BasicSetQuery preMeetStartNotList(List<Integer> preMeetStartNotList){
this.preMeetStartNotList = preMeetStartNotList;
return this;
}
/**
* 设置 会议开始后几分钟切换
* @param postMeetStart
*/
public BasicSetQuery postMeetStart(Integer postMeetStart){
setPostMeetStart(postMeetStart);
return this;
}
/**
* 设置 开始 会议开始后几分钟切换
* @param postMeetStartStart
*/
public BasicSetQuery postMeetStartStart(Integer postMeetStartStart){
this.postMeetStartStart = postMeetStartStart;
return this;
}
/**
* 设置 结束 会议开始后几分钟切换
* @param postMeetStartEnd
*/
public BasicSetQuery postMeetStartEnd(Integer postMeetStartEnd){
this.postMeetStartEnd = postMeetStartEnd;
return this;
}
/**
* 设置 增加 会议开始后几分钟切换
* @param postMeetStartIncrement
*/
public BasicSetQuery postMeetStartIncrement(Integer postMeetStartIncrement){
this.postMeetStartIncrement = postMeetStartIncrement;
return this;
}
/**
* 设置 会议开始后几分钟切换
* @param postMeetStartList
*/
public BasicSetQuery postMeetStartList(List<Integer> postMeetStartList){
this.postMeetStartList = postMeetStartList;
return this;
}
/**
* 设置 会议开始后几分钟切换
* @param postMeetStartNotList
*/
public BasicSetQuery postMeetStartNotList(List<Integer> postMeetStartNotList){
this.postMeetStartNotList = postMeetStartNotList;
return this;
}
/**
* 设置 会议结束切换(0.否,1.是)
* @param meetEnd
*/
public BasicSetQuery meetEnd(Integer meetEnd){
setMeetEnd(meetEnd);
return this;
}
/**
* 设置 开始 会议结束切换(0.否,1.是)
* @param meetEndStart
*/
public BasicSetQuery meetEndStart(Integer meetEndStart){
this.meetEndStart = meetEndStart;
return this;
}
/**
* 设置 结束 会议结束切换(0.否,1.是)
* @param meetEndEnd
*/
public BasicSetQuery meetEndEnd(Integer meetEndEnd){
this.meetEndEnd = meetEndEnd;
return this;
}
/**
* 设置 增加 会议结束切换(0.否,1.是)
* @param meetEndIncrement
*/
public BasicSetQuery meetEndIncrement(Integer meetEndIncrement){
this.meetEndIncrement = meetEndIncrement;
return this;
}
/**
* 设置 会议结束切换(0.否,1.是)
* @param meetEndList
*/
public BasicSetQuery meetEndList(List<Integer> meetEndList){
this.meetEndList = meetEndList;
return this;
}
/**
* 设置 会议结束切换(0.否,1.是)
* @param meetEndNotList
*/
public BasicSetQuery meetEndNotList(List<Integer> meetEndNotList){
this.meetEndNotList = meetEndNotList;
return this;
}
/** /**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) * 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList * @return orConditionList
......
package com.mortals.xhx.module.basic.web; package com.mortals.xhx.module.basic.web;
import com.mortals.framework.annotation.UnAuth; import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest; import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException; 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 com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.module.basic.model.BasicSetQuery; import com.mortals.xhx.module.basic.model.BasicSetQuery;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
...@@ -11,49 +13,59 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -11,49 +13,59 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.basic.model.BasicSetEntity; import com.mortals.xhx.module.basic.model.BasicSetEntity;
import com.mortals.xhx.module.basic.service.BasicSetService; import com.mortals.xhx.module.basic.service.BasicSetService;
import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils; import com.mortals.framework.util.StringUtils;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import java.util.Arrays; import java.util.Arrays;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*; import static com.mortals.framework.ap.SysConstains.*;
/** /**
* * 基础设置
* 基础设置 *
* * @author zxfei
* @author zxfei * @date 2023-05-23
* @date 2023-05-23 */
*/
@RestController @RestController
@RequestMapping("basic/set") @RequestMapping("basic/set")
public class BasicSetController extends BaseCRUDJsonBodyMappingController<BasicSetService,BasicSetEntity,Long> { public class BasicSetController extends BaseCRUDJsonBodyMappingController<BasicSetService, BasicSetEntity, Long> {
@Autowired @Autowired
private ParamService paramService; private ParamService paramService;
public BasicSetController(){ public BasicSetController() {
super.setModuleDesc( "基础设置"); super.setModuleDesc("基础设置");
} }
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "showPhoto", paramService.getParamBySecondOrganize("BasicSet","showPhoto")); this.addDict(model, "showPhoto", paramService.getParamBySecondOrganize("BasicSet", "showPhoto"));
this.addDict(model, "showName", paramService.getParamBySecondOrganize("BasicSet","showName")); this.addDict(model, "showName", paramService.getParamBySecondOrganize("BasicSet", "showName"));
this.addDict(model, "showPost", paramService.getParamBySecondOrganize("BasicSet","showPost")); this.addDict(model, "showPost", paramService.getParamBySecondOrganize("BasicSet", "showPost"));
this.addDict(model, "showWork", paramService.getParamBySecondOrganize("BasicSet","showWork")); this.addDict(model, "showWork", paramService.getParamBySecondOrganize("BasicSet", "showWork"));
this.addDict(model, "showPhone", paramService.getParamBySecondOrganize("BasicSet","showPhone")); this.addDict(model, "showPhone", paramService.getParamBySecondOrganize("BasicSet", "showPhone"));
this.addDict(model, "showElect", paramService.getParamBySecondOrganize("BasicSet","showElect")); this.addDict(model, "showElect", paramService.getParamBySecondOrganize("BasicSet", "showElect"));
this.addDict(model, "showMeet", paramService.getParamBySecondOrganize("BasicSet","showMeet")); this.addDict(model, "showMeet", paramService.getParamBySecondOrganize("BasicSet", "showMeet"));
this.addDict(model, "meetEnd", YesNoEnum.getEnumMap());
super.init(model, context); super.init(model, context);
} }
...@@ -68,7 +80,7 @@ public class BasicSetController extends BaseCRUDJsonBodyMappingController<BasicS ...@@ -68,7 +80,7 @@ public class BasicSetController extends BaseCRUDJsonBodyMappingController<BasicS
protected void saveBefore(BasicSetEntity entity, Map<String, Object> model, Context context) throws AppException { protected void saveBefore(BasicSetEntity entity, Map<String, Object> model, Context context) throws AppException {
BasicSetEntity basicSetEntity = this.service.selectOne(new BasicSetQuery(), context); BasicSetEntity basicSetEntity = this.service.selectOne(new BasicSetQuery(), context);
if(!ObjectUtils.isEmpty(basicSetEntity)){ if (!ObjectUtils.isEmpty(basicSetEntity)) {
entity.setId(basicSetEntity.getId()); entity.setId(basicSetEntity.getId());
} }
super.saveBefore(entity, model, context); super.saveBefore(entity, model, context);
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd"> "mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.basic.dao.ibatis.BasicSetDaoImpl"> <mapper namespace="com.mortals.xhx.module.basic.dao.ibatis.BasicSetDaoImpl">
<!-- 字段和属性映射 --> <!-- 字段和属性映射 -->
...@@ -20,6 +20,9 @@ ...@@ -20,6 +20,9 @@
<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" />
<result property="preMeetStart" column="preMeetStart" />
<result property="postMeetStart" column="postMeetStart" />
<result property="meetEnd" column="meetEnd" />
<collection property="basicStatusList" column="id" ofType="BasicStatusEntity" javaType="ArrayList" select="getBasicStatusByBasicSetId"></collection> <collection property="basicStatusList" column="id" ofType="BasicStatusEntity" javaType="ArrayList" select="getBasicStatusByBasicSetId"></collection>
</resultMap> </resultMap>
<resultMap type="BasicStatusEntity" id="BasicStatusEntity-Map"> <resultMap type="BasicStatusEntity" id="BasicStatusEntity-Map">
...@@ -83,6 +86,15 @@ ...@@ -83,6 +86,15 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))"> <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime, a.updateTime,
</if> </if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('preMeetStart') or colPickMode == 1 and data.containsKey('preMeetStart')))">
a.preMeetStart,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('postMeetStart') or colPickMode == 1 and data.containsKey('postMeetStart')))">
a.postMeetStart,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('meetEnd') or colPickMode == 1 and data.containsKey('meetEnd')))">
a.meetEnd,
</if>
</trim> </trim>
</sql> </sql>
<!-- 子表所有列 --> <!-- 子表所有列 -->
...@@ -94,18 +106,18 @@ ...@@ -94,18 +106,18 @@
<!-- 新增 区分主键自增加还是业务插入 --> <!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="BasicSetEntity" useGeneratedKeys="true" keyProperty="id"> <insert id="insert" parameterType="BasicSetEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_basic_set insert into mortals_xhx_basic_set
(showPhoto,showName,showPost,showWork,showPhone,showElect,showElectDesc,showMeet,showMeetDesc,remark,createUserId,createTime,updateUserId,updateTime) (showPhoto,showName,showPost,showWork,showPhone,showElect,showElectDesc,showMeet,showMeetDesc,remark,createUserId,createTime,updateUserId,updateTime,preMeetStart,postMeetStart,meetEnd)
VALUES VALUES
(#{showPhoto},#{showName},#{showPost},#{showWork},#{showPhone},#{showElect},#{showElectDesc},#{showMeet},#{showMeetDesc},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime}) (#{showPhoto},#{showName},#{showPost},#{showWork},#{showPhone},#{showElect},#{showElectDesc},#{showMeet},#{showMeetDesc},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{preMeetStart},#{postMeetStart},#{meetEnd})
</insert> </insert>
<!-- 批量新增 --> <!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto"> <insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_basic_set insert into mortals_xhx_basic_set
(showPhoto,showName,showPost,showWork,showPhone,showElect,showElectDesc,showMeet,showMeetDesc,remark,createUserId,createTime,updateUserId,updateTime) (showPhoto,showName,showPost,showWork,showPhone,showElect,showElectDesc,showMeet,showMeetDesc,remark,createUserId,createTime,updateUserId,updateTime,preMeetStart,postMeetStart,meetEnd)
VALUES VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," > <foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.showPhoto},#{item.showName},#{item.showPost},#{item.showWork},#{item.showPhone},#{item.showElect},#{item.showElectDesc},#{item.showMeet},#{item.showMeetDesc},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime}) (#{item.showPhoto},#{item.showName},#{item.showPost},#{item.showWork},#{item.showPhone},#{item.showElect},#{item.showElectDesc},#{item.showMeet},#{item.showMeetDesc},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.preMeetStart},#{item.postMeetStart},#{item.meetEnd})
</foreach> </foreach>
</insert> </insert>
...@@ -184,6 +196,24 @@ ...@@ -184,6 +196,24 @@
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))"> <if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{data.updateTime}, a.updateTime=#{data.updateTime},
</if> </if>
<if test="(colPickMode==0 and data.containsKey('preMeetStart')) or (colPickMode==1 and !data.containsKey('preMeetStart'))">
a.preMeetStart=#{data.preMeetStart},
</if>
<if test="(colPickMode==0 and data.containsKey('preMeetStartIncrement')) or (colPickMode==1 and !data.containsKey('preMeetStartIncrement'))">
a.preMeetStart=ifnull(a.preMeetStart,0) + #{data.preMeetStartIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('postMeetStart')) or (colPickMode==1 and !data.containsKey('postMeetStart'))">
a.postMeetStart=#{data.postMeetStart},
</if>
<if test="(colPickMode==0 and data.containsKey('postMeetStartIncrement')) or (colPickMode==1 and !data.containsKey('postMeetStartIncrement'))">
a.postMeetStart=ifnull(a.postMeetStart,0) + #{data.postMeetStartIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('meetEnd')) or (colPickMode==1 and !data.containsKey('meetEnd'))">
a.meetEnd=#{data.meetEnd},
</if>
<if test="(colPickMode==0 and data.containsKey('meetEndIncrement')) or (colPickMode==1 and !data.containsKey('meetEndIncrement'))">
a.meetEnd=ifnull(a.meetEnd,0) + #{data.meetEndIncrement},
</if>
</trim> </trim>
<trim suffixOverrides="where" suffix=""> <trim suffixOverrides="where" suffix="">
where where
...@@ -339,6 +369,42 @@ ...@@ -339,6 +369,42 @@
</if> </if>
</foreach> </foreach>
</trim> </trim>
<trim prefix="preMeetStart=(case" suffix="ELSE preMeetStart end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('preMeetStart')) or (colPickMode==1 and !item.containsKey('preMeetStart'))">
when a.id=#{item.id} then #{item.preMeetStart}
</when>
<when test="(colPickMode==0 and item.containsKey('preMeetStartIncrement')) or (colPickMode==1 and !item.containsKey('preMeetStartIncrement'))">
when a.id=#{item.id} then ifnull(a.preMeetStart,0) + #{item.preMeetStartIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="postMeetStart=(case" suffix="ELSE postMeetStart end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('postMeetStart')) or (colPickMode==1 and !item.containsKey('postMeetStart'))">
when a.id=#{item.id} then #{item.postMeetStart}
</when>
<when test="(colPickMode==0 and item.containsKey('postMeetStartIncrement')) or (colPickMode==1 and !item.containsKey('postMeetStartIncrement'))">
when a.id=#{item.id} then ifnull(a.postMeetStart,0) + #{item.postMeetStartIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="meetEnd=(case" suffix="ELSE meetEnd end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('meetEnd')) or (colPickMode==1 and !item.containsKey('meetEnd'))">
when a.id=#{item.id} then #{item.meetEnd}
</when>
<when test="(colPickMode==0 and item.containsKey('meetEndIncrement')) or (colPickMode==1 and !item.containsKey('meetEndIncrement'))">
when a.id=#{item.id} then ifnull(a.meetEnd,0) + #{item.meetEndIncrement}
</when>
</choose>
</foreach>
</trim>
</trim> </trim>
where id in where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")"> <foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
...@@ -826,18 +892,281 @@ ...@@ -826,18 +892,281 @@
<if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''"> <if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
${_conditionType_} a.updateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s') ${_conditionType_} a.updateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if> </if>
<if test="conditionParamRef.containsKey('preMeetStart')">
<if test="conditionParamRef.preMeetStart != null ">
${_conditionType_} a.preMeetStart = #{${_conditionParam_}.preMeetStart}
</if>
<if test="conditionParamRef.preMeetStart == null">
${_conditionType_} a.preMeetStart is null
</if>
</if>
<if test="conditionParamRef.containsKey('preMeetStartList') and conditionParamRef.preMeetStartList.size() > 0">
${_conditionType_} a.preMeetStart in
<foreach collection="conditionParamRef.preMeetStartList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('preMeetStartNotList') and conditionParamRef.preMeetStartNotList.size() > 0">
${_conditionType_} a.preMeetStart not in
<foreach collection="conditionParamRef.preMeetStartNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('preMeetStartStart') and conditionParamRef.preMeetStartStart != null">
${_conditionType_} a.preMeetStart <![CDATA[ >= ]]> #{${_conditionParam_}.preMeetStartStart}
</if>
<if test="conditionParamRef.containsKey('preMeetStartEnd') and conditionParamRef.preMeetStartEnd != null">
${_conditionType_} a.preMeetStart <![CDATA[ <= ]]> #{${_conditionParam_}.preMeetStartEnd}
</if>
<if test="conditionParamRef.containsKey('postMeetStart')">
<if test="conditionParamRef.postMeetStart != null ">
${_conditionType_} a.postMeetStart = #{${_conditionParam_}.postMeetStart}
</if>
<if test="conditionParamRef.postMeetStart == null">
${_conditionType_} a.postMeetStart is null
</if>
</if>
<if test="conditionParamRef.containsKey('postMeetStartList') and conditionParamRef.postMeetStartList.size() > 0">
${_conditionType_} a.postMeetStart in
<foreach collection="conditionParamRef.postMeetStartList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('postMeetStartNotList') and conditionParamRef.postMeetStartNotList.size() > 0">
${_conditionType_} a.postMeetStart not in
<foreach collection="conditionParamRef.postMeetStartNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('postMeetStartStart') and conditionParamRef.postMeetStartStart != null">
${_conditionType_} a.postMeetStart <![CDATA[ >= ]]> #{${_conditionParam_}.postMeetStartStart}
</if>
<if test="conditionParamRef.containsKey('postMeetStartEnd') and conditionParamRef.postMeetStartEnd != null">
${_conditionType_} a.postMeetStart <![CDATA[ <= ]]> #{${_conditionParam_}.postMeetStartEnd}
</if>
<if test="conditionParamRef.containsKey('meetEnd')">
<if test="conditionParamRef.meetEnd != null ">
${_conditionType_} a.meetEnd = #{${_conditionParam_}.meetEnd}
</if>
<if test="conditionParamRef.meetEnd == null">
${_conditionType_} a.meetEnd is null
</if>
</if>
<if test="conditionParamRef.containsKey('meetEndList') and conditionParamRef.meetEndList.size() > 0">
${_conditionType_} a.meetEnd in
<foreach collection="conditionParamRef.meetEndList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('meetEndNotList') and conditionParamRef.meetEndNotList.size() > 0">
${_conditionType_} a.meetEnd not in
<foreach collection="conditionParamRef.meetEndNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('meetEndStart') and conditionParamRef.meetEndStart != null">
${_conditionType_} a.meetEnd <![CDATA[ >= ]]> #{${_conditionParam_}.meetEndStart}
</if>
<if test="conditionParamRef.containsKey('meetEndEnd') and conditionParamRef.meetEndEnd != null">
${_conditionType_} a.meetEnd <![CDATA[ <= ]]> #{${_conditionParam_}.meetEndEnd}
</if>
</sql> </sql>
<sql id="_orderCols_"> <sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()"> <if test="orderColList != null and !orderColList.isEmpty()">
order by order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showPhotoList') and conditionParamRef.showPhotoList.size() > 0">
field(a.showPhoto,
<foreach collection="conditionParamRef.showPhotoList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showNameList') and conditionParamRef.showNameList.size() > 0">
field(a.showName,
<foreach collection="conditionParamRef.showNameList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showPostList') and conditionParamRef.showPostList.size() > 0">
field(a.showPost,
<foreach collection="conditionParamRef.showPostList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showWorkList') and conditionParamRef.showWorkList.size() > 0">
field(a.showWork,
<foreach collection="conditionParamRef.showWorkList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showPhoneList') and conditionParamRef.showPhoneList.size() > 0">
field(a.showPhone,
<foreach collection="conditionParamRef.showPhoneList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showElectList') and conditionParamRef.showElectList.size() > 0">
field(a.showElect,
<foreach collection="conditionParamRef.showElectList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showMeetList') and conditionParamRef.showMeetList.size() > 0">
field(a.showMeet,
<foreach collection="conditionParamRef.showMeetList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
field(a.updateUserId,
<foreach collection="conditionParamRef.updateUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('preMeetStartList') and conditionParamRef.preMeetStartList.size() > 0">
field(a.preMeetStart,
<foreach collection="conditionParamRef.preMeetStartList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('postMeetStartList') and conditionParamRef.postMeetStartList.size() > 0">
field(a.postMeetStart,
<foreach collection="conditionParamRef.postMeetStartList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('meetEndList') and conditionParamRef.meetEndList.size() > 0">
field(a.meetEnd,
<foreach collection="conditionParamRef.meetEndList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix=""> <trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=","> <foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind} a.${item.colName} ${item.sortKind}
</foreach> </foreach>
</trim> </trim>
</if> </if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()"> <if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by order by
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
field(a.id,
<foreach collection="conditionParamRef.idList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showPhotoList') and conditionParamRef.showPhotoList.size() > 0">
field(a.showPhoto,
<foreach collection="conditionParamRef.showPhotoList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showNameList') and conditionParamRef.showNameList.size() > 0">
field(a.showName,
<foreach collection="conditionParamRef.showNameList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showPostList') and conditionParamRef.showPostList.size() > 0">
field(a.showPost,
<foreach collection="conditionParamRef.showPostList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showWorkList') and conditionParamRef.showWorkList.size() > 0">
field(a.showWork,
<foreach collection="conditionParamRef.showWorkList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showPhoneList') and conditionParamRef.showPhoneList.size() > 0">
field(a.showPhone,
<foreach collection="conditionParamRef.showPhoneList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showElectList') and conditionParamRef.showElectList.size() > 0">
field(a.showElect,
<foreach collection="conditionParamRef.showElectList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('showMeetList') and conditionParamRef.showMeetList.size() > 0">
field(a.showMeet,
<foreach collection="conditionParamRef.showMeetList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
field(a.createUserId,
<foreach collection="conditionParamRef.createUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
field(a.updateUserId,
<foreach collection="conditionParamRef.updateUserIdList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('preMeetStartList') and conditionParamRef.preMeetStartList.size() > 0">
field(a.preMeetStart,
<foreach collection="conditionParamRef.preMeetStartList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('postMeetStartList') and conditionParamRef.postMeetStartList.size() > 0">
field(a.postMeetStart,
<foreach collection="conditionParamRef.postMeetStartList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<if test="conditionParamRef.containsKey('meetEndList') and conditionParamRef.meetEndList.size() > 0">
field(a.meetEnd,
<foreach collection="conditionParamRef.meetEndList" open="" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
,
</if>
<trim suffixOverrides="," suffix=""> <trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('id')"> <if test="orderCol.containsKey('id')">
a.id a.id
...@@ -914,8 +1243,25 @@ ...@@ -914,8 +1243,25 @@
<if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if> <if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
, ,
</if> </if>
<if test="orderCol.containsKey('preMeetStart')">
a.preMeetStart
<if test='orderCol.preMeetStart != null and "DESC".equalsIgnoreCase(orderCol.preMeetStart)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('postMeetStart')">
a.postMeetStart
<if test='orderCol.postMeetStart != null and "DESC".equalsIgnoreCase(orderCol.postMeetStart)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('meetEnd')">
a.meetEnd
<if test='orderCol.meetEnd != null and "DESC".equalsIgnoreCase(orderCol.meetEnd)'>DESC</if>
,
</if>
</trim> </trim>
</if> </if>
</sql> </sql>
<sql id="_group_by_"> <sql id="_group_by_">
<if test="groupList != null and !groupList.isEmpty()"> <if test="groupList != null and !groupList.isEmpty()">
......
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