Commit 0b6f034d authored by 赵啸非's avatar 赵啸非

添加关怀配置控制

parent 90054b56
......@@ -69,19 +69,30 @@ CREATE TABLE mortals_xhx_care_records(
`name` varchar(50) COMMENT '姓名',
`contact` varchar(50) COMMENT '联系方式',
`idCard` varchar(18) COMMENT '身份证号码',
`bussinessId` bigint(20) COMMENT '业务Id',
`bussinessName` varchar(255) COMMENT '预约业务',
`service` varchar(50) COMMENT '办理业务',
`queueNo` varchar(20) COMMENT '排队编号',
`takeTime` datetime COMMENT '排队开始时间',
`callTime` datetime COMMENT '排队结束时间',
`monitorTime` datetime COMMENT '监测时间',
`monitorDeviceId` bigint(20) COMMENT '监测设备id',
`monitorDeviceIds` varchar(128) COMMENT '监测设备ids',
`monitorDevice` varchar(50) COMMENT '监测设备',
`waitTime` int(11) COMMENT '最终等待时长,秒',
`processStatus` varchar(20) COMMENT '办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)',
`waitTime` int(4) COMMENT '最终等待时长,秒',
`processStatus` varchar(20) DEFAULT '排队中' COMMENT '办理状态(排队中,办理中,接件结束)',
`careCount` int(4) DEFAULT '0' COMMENT '关怀次数',
`assessment` varchar(255) COMMENT '评价',
`createTime` datetime COMMENT '创建时间',
`createUserId` bigint(20) COMMENT '创建人ID',
`updateTime` datetime COMMENT '更新时间',
`updateUserId` bigint(20) COMMENT '更新人ID',
`smsCount` int(4) DEFAULT '0' COMMENT '短信发送次数',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='预约关怀记录';
-- ----------------------------
-- 预约自动签到配置表
-- ----------------------------
......
......@@ -32,9 +32,8 @@
<profiles.log.level>info</profiles.log.level>
<profiles.publish.path>/home/publish</profiles.publish.path>
<profiles.php.host>http://192.168.0.98:8090</profiles.php.host>
<profiles.sms.smsSendUrl>http://127.0.0.1:8089/api/index/index</profiles.sms.smsSendUrl>
<profiles.sms.apiId>k6BVS1PEbyzcJAE4</profiles.sms.apiId>
<profiles.sms.type>3</profiles.sms.type>
<profiles.sms.smsSendUrl>http://sms.wx3.com.cn</profiles.sms.smsSendUrl>
<profiles.sms.apiId>ADsUXLrS81vZDU95</profiles.sms.apiId>
<profiles.hik.host>8.136.255.30:8001</profiles.hik.host>
<profiles.hik.appKey>25128371</profiles.hik.appKey>
<profiles.hik.appSecret>2m9RcPJOKq5j2QPQM4v5</profiles.hik.appSecret>
......@@ -57,9 +56,8 @@
<profiles.log.path>/home/mortals/app/logs</profiles.log.path>
<profiles.log.level>INFO</profiles.log.level>
<profiles.php.host>http://192.168.0.98:8090</profiles.php.host>
<profiles.sms.smsSendUrl>http://127.0.0.1:8089/api/index/index</profiles.sms.smsSendUrl>
<profiles.sms.apiId>k6BVS1PEbyzcJAE4</profiles.sms.apiId>
<profiles.sms.type>3</profiles.sms.type>
<profiles.sms.smsSendUrl>http://sms.wx3.com.cn</profiles.sms.smsSendUrl>
<profiles.sms.apiId>ADsUXLrS81vZDU95</profiles.sms.apiId>
<profiles.hik.host>8.136.255.30:8001</profiles.hik.host>
<profiles.hik.appKey>25128371</profiles.hik.appKey>
<profiles.hik.appSecret>2m9RcPJOKq5j2QPQM4v5</profiles.hik.appSecret>
......
package com.mortals.xhx.busiz.req;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
/**
* 短信发送类
*
* @author:
* @date: 2022/9/7 14:35
*/
@Data
public class SmsThirdPartyReq {
/**
*
*/
@JSONField(serialize=false)
private Long alarmSmsSendId;
/**
* appid
*/
private String appid;
/**
* 手机号码
*/
private String phone;
/**
* 模板号
*/
private String type;
/**
* 内容
*/
private String json;
public static void main(String[] args) {
SmsThirdPartyReq smsThirdPartyReq = new SmsThirdPartyReq();
smsThirdPartyReq.setAlarmSmsSendId(0L);
smsThirdPartyReq.setAppid("12");
smsThirdPartyReq.setPhone("31");
smsThirdPartyReq.setType("123");
smsThirdPartyReq.setJson("13213");
System.out.println(JSON.toJSONString(smsThirdPartyReq));
}
}
package com.mortals.xhx.busiz.rsp;
import lombok.Data;
/**
* @author karlhoo
*/
@Data
public class ApiSmsResp<T> {
/**
* 结果编码
*/
private int code;
/**
* 结果描述
*/
private String message;
/**
* 响应数据
*/
private T data;
}
package com.mortals.xhx.busiz.rsp.wait;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import java.util.Date;
@Data
public class FinPersonInfo {
@JSONField(name = "id")
private Long waitId;
@JSONField(name = "calltime", format = "yyyy-MM-dd HH:mm:ss")
private Date calltime;
}
\ No newline at end of file
package com.mortals.xhx.busiz.rsp.wait;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import java.util.Date;
@Data
public class WaitPersonInfo {
@JSONField(name = "birthday")
private int birthday;
@JSONField(name = "business_name")
private String businessName;
@JSONField(name = "flownum")
private String flowNum;
@JSONField(name = "idcard_IDCardNo")
private String idcardIDCardNo;
@JSONField(name = "businessid")
private Long businessId;
@JSONField(name = "count")
private String count;
@JSONField(name = "idcard_Name")
private String idcardName;
@JSONField(name = "idcard_Address")
private String idcardAddress;
@JSONField(name = "idcard_Sex")
private String idcardSex;
@JSONField(name = "peopleid")
private String peopleId;
@JSONField(name = "phone")
private String phone;
@JSONField(name = "id")
private Long waitId;
@JSONField(name = "idcardData_PhotoFileName")
private String idcardDataPhotoFileName;
@JSONField(name = "taketime",format = "yyyy-MM-dd HH:mm:ss")
private Date takeTime;
}
\ No newline at end of file
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
public enum WeekDayEnum {
星期一(1, "monday"),
星期二(2, "tuesday"),
星期三(3, "wednesday"),
星期四(4, "thursday"),
星期五(5, "friday"),
星期六(6, "saturday"),
星期日(7, "sunday");
private int value;
private String desc;
private WeekDayEnum(int value, String desc) {
this.value = value;
this.desc = desc;
}
public int getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static WeekDayEnum getByValue(int value) {
WeekDayEnum[] var1 = values();
int var2 = var1.length;
for (int var3 = 0; var3 < var2; ++var3) {
WeekDayEnum examStatus = var1[var3];
if (examStatus.getValue() == value) {
return examStatus;
}
}
return null;
}
public static Map<String, String> getEnumMap(int... eItem) {
Map<String, String> resultMap = new LinkedHashMap();
WeekDayEnum[] var2 = values();
int var3 = var2.length;
for (int var4 = 0; var4 < var3; ++var4) {
WeekDayEnum item = var2[var4];
try {
boolean hasE = false;
int[] var7 = eItem;
int var8 = eItem.length;
for (int var9 = 0; var9 < var8; ++var9) {
int e = var7[var9];
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception var11) {
}
}
return resultMap;
}
}
\ No newline at end of file
......@@ -33,6 +33,6 @@ public class ParamKey {
public static String SYS_PARAM_LOG_TIME = "log_time";
public static String SYS_PARAM_USER_URL = "user_url";
public static String SYS_PARAM_SMS_PERSON_CARE_TYPE = "25";
}
......@@ -15,8 +15,14 @@ public class RedisKey {
public static final String KEY_DEVICE_ONLINE_CACHE = "device:online:";
public static final String KEY_SITE_CACHE = "siteDict";
/**
* 排队等待人群
*/
public static final String KEY_WAITNUM_LIST_CACHE = "takeData";
/**
* 完成业务人群
*/
public static final String KEY_FIN_LIST_CACHE = "callData";
public static final String KEY_PLATFORM_CACHE = "platformDict";
......
package com.mortals.xhx.daemon.task;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ICacheService;
import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.framework.util.DateUtils;
import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.busiz.rsp.register.AppointmentDataInfo;
import com.mortals.xhx.busiz.rsp.register.AppointmentDataItem;
import com.mortals.xhx.busiz.rsp.wait.FinPersonInfo;
import com.mortals.xhx.busiz.rsp.wait.WaitPersonInfo;
import com.mortals.xhx.common.code.ProcessStatusEnum;
import com.mortals.xhx.common.code.UserType;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.RedisKey;
import com.mortals.xhx.module.appointment.model.AppointmentPersonEntity;
import com.mortals.xhx.module.appointment.model.AppointmentPersonQuery;
import com.mortals.xhx.module.appointment.service.AppointmentPersonService;
import com.mortals.xhx.module.care.model.CareConfigEntity;
import com.mortals.xhx.module.care.model.CareConfigQuery;
import com.mortals.xhx.module.care.model.CareRecordsEntity;
import com.mortals.xhx.module.care.model.CareRecordsQuery;
import com.mortals.xhx.module.care.service.CareConfigService;
import com.mortals.xhx.module.care.service.CareRecordsService;
import com.mortals.xhx.module.hik.person.model.rsp.person.PersonInfo;
import com.mortals.xhx.module.notice.model.NoticeEntity;
import com.mortals.xhx.module.notice.service.NoticeService;
import com.mortals.xhx.module.person.model.PersonEntity;
import com.mortals.xhx.module.person.service.PersonService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 同步取号等待人群与完成人群结果。
* 通过redis list 获取
*/
@Slf4j
@Service("SyncAppointWaitAndFinTask")
public class SyncAppointWaitAndFinTaskImpl implements ITaskExcuteService {
@Autowired
private ICacheService cacheService;
@Value("${php.host:''}")
private String host;
@Value("${php.redisDb:''}")
private Integer redisDb;
@Value("${spring.redis.database:''}")
private Integer database;
@Autowired
private CareRecordsService careRecordsService;
@Autowired
private CareConfigService careConfigService;
@Override
public void excuteTask(ITask task) throws AppException {
log.debug("同步今天等待用户任务");
syncWaitAndFinQueue();
log.debug("同步今天等待用户完成任务");
log.debug("关怀用户任务");
updateWaitQueueTime();
log.debug("关怀服务完成任务");
}
private void syncWaitAndFinQueue() {
cacheService.select(redisDb);//
List<WaitPersonInfo> waitPersonInfos = cacheService.lrange(RedisKey.KEY_WAITNUM_LIST_CACHE, WaitPersonInfo.class);
List<FinPersonInfo> finPersonInfos = cacheService.lrange(RedisKey.KEY_FIN_LIST_CACHE, FinPersonInfo.class);
cacheService.select(database);//
if (!ObjectUtils.isEmpty(waitPersonInfos)) {
List<CareRecordsEntity> recordsEntityList = waitPersonInfos.stream().map(item -> {
CareRecordsEntity careRecordsEntity = new CareRecordsEntity();
careRecordsEntity.initAttrValue();
careRecordsEntity.setName(item.getIdcardName());
careRecordsEntity.setContact(item.getPhone());
careRecordsEntity.setIdCard(item.getIdcardIDCardNo());
careRecordsEntity.setBussinessId(item.getBusinessId());
careRecordsEntity.setBussinessName(item.getBusinessName());
careRecordsEntity.setService(item.getBusinessName());
careRecordsEntity.setQueueNo(item.getFlowNum());
careRecordsEntity.setMonitorTime(new Date());
careRecordsEntity.setTakeTime(item.getTakeTime() == null ? new Date() : item.getTakeTime());
careRecordsEntity.setPersonId(item.getWaitId());
careRecordsEntity.setProcessStatus(ProcessStatusEnum.排队中.getValue());
careRecordsEntity.setCreateTime(new Date());
careRecordsEntity.setCreateUserName("system");
careRecordsEntity.setCreateUserId(1L);
return careRecordsEntity;
}).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(recordsEntityList)) {
log.info("保存关怀记录数量,size:{}", recordsEntityList.size());
careRecordsService.save(recordsEntityList);
}
if (!ObjectUtils.isEmpty(finPersonInfos)) {
List<Long> waitIdList = finPersonInfos.stream().map(item -> item.getWaitId()).collect(Collectors.toList());
Map<Long, FinPersonInfo> waitMap = finPersonInfos.stream().collect(Collectors.toMap(x -> x.getWaitId(), y -> y, (o, n) -> n));
CareRecordsQuery careRecordsQuery = new CareRecordsQuery();
careRecordsQuery.setPersonIdList(waitIdList);
List<CareRecordsEntity> careRecordsEntities = careRecordsService.find(careRecordsQuery);
if (!ObjectUtils.isEmpty(careRecordsEntities)) {
//todo 更新关怀记录
careRecordsEntities.forEach(item -> {
FinPersonInfo finPersonInfo = waitMap.get(item.getPersonId());
item.setProcessStatus(ProcessStatusEnum.接件结束.getValue());
item.setCallTime(finPersonInfo.getCalltime());
Long diff = DateUtil.between(item.getTakeTime(), finPersonInfo.getCalltime(), DateUnit.MINUTE);
item.setWaitTime(diff.intValue());
item.setUpdateTime(new Date());
item.setUpdateUserId(1L);
item.setUpdateUserName("system");
});
careRecordsService.update(careRecordsEntities);
}
}
}
}
private void updateWaitQueueTime() {
CareConfigEntity careConfigEntity = careConfigService.selectOne(new CareConfigQuery());
List<CareRecordsEntity> careRecordsEntities = careRecordsService.find(new CareRecordsQuery().processStatus(ProcessStatusEnum.排队中.getValue()));
if (!ObjectUtils.isEmpty(careRecordsEntities)) {
//更新等待时长
List<CareRecordsEntity> recordsEntities = careRecordsEntities.stream().map(item -> {
Long diff = DateUtil.between(item.getTakeTime(), new Date(), DateUnit.MINUTE);
item.setWaitTime(diff.intValue());
item.setUpdateTime(new Date());
item.setUpdateUserId(1L);
item.setUpdateUserName("system");
return item;
}).collect(Collectors.toList());
careRecordsService.update(recordsEntities);
//查询关怀配置,发送管理员通知消息
if (!ObjectUtils.isEmpty(careConfigEntity)) {
if (checkCareServiceUsed(careConfigEntity)) return;
//校验当天日期是否启用
if (checkCareServiceDay(careConfigEntity)) return;
Long serviceThreshold = careConfigEntity.getServiceThreshold();
String msgRecipients = careConfigEntity.getMsgRecipients();
List<CareRecordsEntity> waitCareList = recordsEntities.stream().filter(f -> f.getWaitTime() > serviceThreshold.intValue() && f.getCareCount() == 0).collect(Collectors.toList());
if (!ObjectUtils.isEmpty(waitCareList)) {
waitCareList.forEach(waitCare -> {
//发送消息给管理员
if (StrUtil.contains(msgRecipients, "管理员")) {
careRecordsService.notice(waitCare, null);
}
//发送短信消息给办事群众
if (StrUtil.contains(msgRecipients, "办事群众")) {
careRecordsService.toCare(waitCare, null);
}
});
}
}
}
}
private boolean checkCareServiceUsed(CareConfigEntity careConfigEntity) {
Integer used = careConfigEntity.getUsed();
if (used == YesNoEnum.NO.getValue()) {
log.info("关怀服务未启用!");
return true;
}
return false;
}
private boolean checkCareServiceDay(CareConfigEntity careConfigEntity) {
switch (DateTime.now().dayOfWeekEnum().getValue()) {
case 1:
if (careConfigEntity.getMonday() == 1) return true;
case 2:
if (careConfigEntity.getThursday() == 1) return true;
case 3:
if (careConfigEntity.getWednesday() == 1) return true;
case 4:
if (careConfigEntity.getThursday() == 1) return true;
case 5:
if (careConfigEntity.getFriday() == 1) return true;
case 6:
if (careConfigEntity.getSaturday() == 1) return true;
case 7:
if (careConfigEntity.getSunday() == 1) return true;
default:
return false;
}
}
@Override
public void stopTask(ITask task) throws AppException {
}
public static void main(String[] args) {
System.out.println(DateUtil.parse("19951071", "yyyyMMdd"));
}
}
......@@ -98,11 +98,11 @@ public class SyncAppointmentPersonTaskImpl implements ITaskExcuteService {
if (!ObjectUtils.isEmpty(appointUserList)) {
//查询今天添加的预约 并删除
AppointmentPersonQuery appointmentPersonQuery = new AppointmentPersonQuery();
appointmentPersonQuery.setCreateTimeStart(DateUtil.format(new Date(),"yyyy-MM-dd"));
appointmentPersonQuery.setCreateTimeEnd(DateUtil.format(new Date(),"yyyy-MM-dd"));
appointmentPersonQuery.setCreateTimeStart(DateUtil.format(new Date(), "yyyy-MM-dd"));
appointmentPersonQuery.setCreateTimeEnd(DateUtil.format(new Date(), "yyyy-MM-dd"));
Long[] ids = appointmentPersonService.find(appointmentPersonQuery).stream().map(i -> i.getId()).toArray(Long[]::new);
if(!ObjectUtils.isEmpty(ids)){
appointmentPersonService.remove(ids,null);
if (!ObjectUtils.isEmpty(ids)) {
appointmentPersonService.remove(ids, null);
}
List<AppointmentPersonEntity> newUserList = appointUserList.stream().map(user -> {
AppointmentPersonEntity appointmentPersonEntity = new AppointmentPersonEntity();
......@@ -141,65 +141,6 @@ public class SyncAppointmentPersonTaskImpl implements ITaskExcuteService {
}
/**
* 获取封装得MultipartFile
*
* @param inputStream inputStream
* @param fileName fileName
* @return MultipartFile
*/
public MultipartFile getMultipartFile(InputStream inputStream, String fileName) {
FileItem fileItem = createFileItem(inputStream, fileName);
//CommonsMultipartFile是feign对multipartFile的封装,但是要FileItem类对象
return new CommonsMultipartFile(fileItem);
}
/**
* FileItem类对象创建
*
* @param inputStream inputStream
* @param fileName fileName
* @return FileItem
*/
public FileItem createFileItem(InputStream inputStream, String fileName) {
FileItemFactory factory = new DiskFileItemFactory(16, null);
String textFieldName = "file";
FileItem item = factory.createItem(textFieldName, MediaType.MULTIPART_FORM_DATA_VALUE, true, fileName);
int bytesRead = 0;
byte[] buffer = new byte[10 * 1024 * 1024];
OutputStream os = null;
//使用输出流输出输入流的字节
try {
os = item.getOutputStream();
while ((bytesRead = inputStream.read(buffer, 0, 8192)) != -1) {
os.write(buffer, 0, bytesRead);
}
inputStream.close();
} catch (IOException e) {
log.error("Stream copy exception", e);
throw new IllegalArgumentException("文件上传失败");
} finally {
if (os != null) {
try {
os.close();
} catch (IOException e) {
log.error("Stream close exception", e);
}
}
if (inputStream != null) {
try {
inputStream.close();
} catch (IOException e) {
log.error("Stream close exception", e);
}
}
}
return item;
}
public static void main(String[] args) {
......
......@@ -92,7 +92,6 @@ public class SyncRegisterUserTaskImpl implements ITaskExcuteService {
//根据数量查询
String registerPath = "/inter/Actuary/peopleList";
String url = host + registerPath;
Map<String, Object> params = new HashMap<>();
params.put("page", 1);
params.put("size", 1);
......@@ -116,6 +115,10 @@ public class SyncRegisterUserTaskImpl implements ITaskExcuteService {
log.info("注册用户总数量:{}", userList.size());
if (!ObjectUtils.isEmpty(userList)) {
List<PersonEntity> newUserList = userList.stream().map(user -> {
if (ObjectUtils.isEmpty(user.getIdcardIDCardNo())) {
return null;
}
PersonEntity personEntity = new PersonEntity();
personEntity.initAttrValue();
personEntity.setName(user.getIdcardName());
......@@ -125,13 +128,13 @@ public class SyncRegisterUserTaskImpl implements ITaskExcuteService {
personEntity.setAddress(user.getIdcardAddress());
try {
personEntity.setBirthday(DateUtil.parse(IdcardUtil.getBirth(user.getIdcardIDCardNo()), "yyyyMMdd"));
}catch (Exception e){
} catch (Exception e) {
}
personEntity.setSourceId(user.getId());
personEntity.setSource(SourceEnum.排队叫号系统.getValue());
personEntity.setSourcePhotoUri(user.getIdcardDataPhotoFileName());
return personEntity;
}).collect(Collectors.toList());
}).filter(f -> f != null).collect(Collectors.toList());
List<PersonEntity> oldUserList = personService.find(new PersonQuery());
Map<String, PersonEntity> oldUserMap = oldUserList.stream().collect(Collectors.toMap(x -> x.getIdCard(), y -> y, (o, n) -> n));
......@@ -213,12 +216,12 @@ public class SyncRegisterUserTaskImpl implements ITaskExcuteService {
//下载图片到本地保存并更新
String downUrl = url + personEntity.getSourcePhotoUri();
// String downUrl = "http://192.168.0.98:11078/file/fileupload/1679215657433.jpg";
log.info("downUrl:{}",downUrl);
log.info("downUrl:{}", downUrl);
byte[] bytes = HttpUtil.downloadBytes(downUrl);
if(bytes.length>0){
if (bytes.length > 0) {
InputStream inputStream = new ByteArrayInputStream(bytes);
MultipartFile file = getMultipartFile(inputStream, "photo.jpg");
String filePath = uploadService.saveFileUpload(file, "file/fileupload",null);
String filePath = uploadService.saveFileUpload(file, "file/fileupload", null);
personEntity.setPhoto(filePath);
personService.update(personEntity);
}
......
定时任务,实现接口:com.mortals.framework.service.ITaskExcuteService
\ No newline at end of file
......@@ -73,7 +73,6 @@ public class CareConfigEntity extends CareConfigVo {
/**
* 消息发送对象(办事群众.办事群众,管理员.管理员)
*/
@Excel(name = "消息发送对象", readConverterExp = "办事群众=办事群众,管理员.管理员")
private String msgRecipients;
/**
* 备注
......
package com.mortals.xhx.module.care.model;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
......@@ -7,13 +6,14 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.care.model.vo.CareRecordsVo;
import lombok.Data;
/**
* 预约关怀记录实体对象
*
* @author zxfei
* @date 2023-04-09
*/
* 预约关怀记录实体对象
*
* @author zxfei
* @date 2023-04-18
*/
@Data
public class CareRecordsEntity extends CareRecordsVo {
private static final long serialVersionUID = 1L;
......@@ -28,248 +28,75 @@ public class CareRecordsEntity extends CareRecordsVo {
/**
* 个人信息ID
*/
@Excel(name = "个人信息ID")
private Long personId;
/**
* 姓名
*/
@Excel(name = "姓名")
private String name;
/**
* 联系方式
*/
@Excel(name = "联系方式")
private String contact;
/**
* 身份证号码
*/
@Excel(name = "身份证号码")
private String idCard;
/**
* 业务Id
*/
private Long bussinessId;
/**
* 预约业务
*/
private String bussinessName;
/**
* 办理业务
*/
@Excel(name = "办理业务")
private String service;
/**
* 排队编号
*/
@Excel(name = "排队编号")
private String queueNo;
/**
* 排队开始时间
*/
private Date takeTime;
/**
* 排队结束时间
*/
private Date callTime;
/**
* 监测时间
*/
@Excel(name = "监测时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date monitorTime;
/**
* 监测设备id
* 监测设备ids
*/
@Excel(name = "监测设备id")
private Long monitorDeviceId;
private String monitorDeviceIds;
/**
* 监测设备
*/
@Excel(name = "监测设备")
private String monitorDevice;
/**
* 最终等待时长,秒
*/
@Excel(name = "最终等待时长,秒")
private Long waitTime;
private Integer waitTime;
/**
* 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* 办理状态(排队中,办理中,接件结束)
*/
@Excel(name = "办理状态", readConverterExp = "排队中=排队中,办理中.办理中,接件结束.接件结束")
private String processStatus;
public CareRecordsEntity(){}
/**
* 获取 站点Id
* @return Long
*/
public Long getSiteId(){
return siteId;
}
/**
* 设置 站点Id
* @param siteId
*/
public void setSiteId(Long siteId){
this.siteId = siteId;
}
/**
* 获取 站点名称
* @return String
*/
public String getSiteName(){
return siteName;
}
/**
* 设置 站点名称
* @param siteName
*/
public void setSiteName(String siteName){
this.siteName = siteName;
}
/**
* 获取 个人信息ID
* @return Long
* 关怀次数
*/
public Long getPersonId(){
return personId;
}
private Integer careCount;
/**
* 设置 个人信息ID
* @param personId
* 评价
*/
public void setPersonId(Long personId){
this.personId = personId;
}
private String assessment;
/**
* 获取 姓名
* @return String
* 短信发送次数
*/
public String getName(){
return name;
}
/**
* 设置 姓名
* @param name
*/
public void setName(String name){
this.name = name;
}
/**
* 获取 联系方式
* @return String
*/
public String getContact(){
return contact;
}
/**
* 设置 联系方式
* @param contact
*/
public void setContact(String contact){
this.contact = contact;
}
/**
* 获取 身份证号码
* @return String
*/
public String getIdCard(){
return idCard;
}
/**
* 设置 身份证号码
* @param idCard
*/
public void setIdCard(String idCard){
this.idCard = idCard;
}
/**
* 获取 办理业务
* @return String
*/
public String getService(){
return service;
}
/**
* 设置 办理业务
* @param service
*/
public void setService(String service){
this.service = service;
}
/**
* 获取 排队编号
* @return String
*/
public String getQueueNo(){
return queueNo;
}
/**
* 设置 排队编号
* @param queueNo
*/
public void setQueueNo(String queueNo){
this.queueNo = queueNo;
}
/**
* 获取 监测时间
* @return Date
*/
public Date getMonitorTime(){
return monitorTime;
}
/**
* 设置 监测时间
* @param monitorTime
*/
public void setMonitorTime(Date monitorTime){
this.monitorTime = monitorTime;
}
/**
* 获取 监测设备id
* @return Long
*/
public Long getMonitorDeviceId(){
return monitorDeviceId;
}
/**
* 设置 监测设备id
* @param monitorDeviceId
*/
public void setMonitorDeviceId(Long monitorDeviceId){
this.monitorDeviceId = monitorDeviceId;
}
/**
* 获取 监测设备
* @return String
*/
public String getMonitorDevice(){
return monitorDevice;
}
/**
* 设置 监测设备
* @param monitorDevice
*/
public void setMonitorDevice(String monitorDevice){
this.monitorDevice = monitorDevice;
}
/**
* 获取 最终等待时长,秒
* @return Long
*/
public Long getWaitTime(){
return waitTime;
}
/**
* 设置 最终等待时长,秒
* @param waitTime
*/
public void setWaitTime(Long waitTime){
this.waitTime = waitTime;
}
/**
* 获取 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* @return String
*/
public String getProcessStatus(){
return processStatus;
}
/**
* 设置 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* @param processStatus
*/
public void setProcessStatus(String processStatus){
this.processStatus = processStatus;
}
private Integer smsCount;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -286,24 +113,6 @@ public class CareRecordsEntity extends CareRecordsVo {
return false;
}
public String toString(){
StringBuilder sb = new StringBuilder("");
sb.append(",siteId:").append(getSiteId());
sb.append(",siteName:").append(getSiteName());
sb.append(",personId:").append(getPersonId());
sb.append(",name:").append(getName());
sb.append(",contact:").append(getContact());
sb.append(",idCard:").append(getIdCard());
sb.append(",service:").append(getService());
sb.append(",queueNo:").append(getQueueNo());
sb.append(",monitorTime:").append(getMonitorTime());
sb.append(",monitorDeviceId:").append(getMonitorDeviceId());
sb.append(",monitorDevice:").append(getMonitorDevice());
sb.append(",waitTime:").append(getWaitTime());
sb.append(",processStatus:").append(getProcessStatus());
return sb.toString();
}
public void initAttrValue(){
this.siteId = null;
......@@ -318,18 +127,32 @@ public class CareRecordsEntity extends CareRecordsVo {
this.idCard = "";
this.bussinessId = null;
this.bussinessName = "";
this.service = "";
this.queueNo = "";
this.takeTime = null;
this.callTime = null;
this.monitorTime = null;
this.monitorDeviceId = null;
this.monitorDeviceIds = "";
this.monitorDevice = "";
this.waitTime = null;
this.processStatus = "";
this.processStatus = "排队中";
this.careCount = 0;
this.assessment = "";
this.smsCount = 0;
}
}
\ No newline at end of file
......@@ -4,11 +4,11 @@ import java.util.Date;
import java.util.List;
import com.mortals.xhx.module.care.model.CareRecordsEntity;
/**
* 预约关怀记录查询对象
*
* @author zxfei
* @date 2023-04-09
*/
* 预约关怀记录查询对象
*
* @author zxfei
* @date 2023-04-18
*/
public class CareRecordsQuery extends CareRecordsEntity {
/** 开始 主键ID,主键,自增长 */
private Long idStart;
......@@ -75,6 +75,26 @@ public class CareRecordsQuery extends CareRecordsEntity {
/** 身份证号码排除列表 */
private List <String> idCardNotList;
/** 开始 业务Id */
private Long bussinessIdStart;
/** 结束 业务Id */
private Long bussinessIdEnd;
/** 增加 业务Id */
private Long bussinessIdIncrement;
/** 业务Id列表 */
private List <Long> bussinessIdList;
/** 业务Id排除列表 */
private List <Long> bussinessIdNotList;
/** 预约业务 */
private List<String> bussinessNameList;
/** 预约业务排除列表 */
private List <String> bussinessNameNotList;
/** 办理业务 */
private List<String> serviceList;
......@@ -85,52 +105,74 @@ public class CareRecordsQuery extends CareRecordsEntity {
/** 排队编号排除列表 */
private List <String> queueNoNotList;
/** 开始 监测时间 */
private String monitorTimeStart;
/** 开始 排队开始时间 */
private String takeTimeStart;
/** 结束 监测时间 */
private String monitorTimeEnd;
/** 结束 排队开始时间 */
private String takeTimeEnd;
/** 开始 监测设备id */
private Long monitorDeviceIdStart;
/** 开始 排队结束时间 */
private String callTimeStart;
/** 结束 监测设备id */
private Long monitorDeviceIdEnd;
/** 结束 排队结束时间 */
private String callTimeEnd;
/** 增加 监测设备id */
private Long monitorDeviceIdIncrement;
/** 开始 监测时间 */
private String monitorTimeStart;
/** 监测设备id列表 */
private List <Long> monitorDeviceIdList;
/** 结束 监测时间 */
private String monitorTimeEnd;
/** 监测设备id排除列表 */
private List <Long> monitorDeviceIdNotList;
/** 监测设备ids */
private List<String> monitorDeviceIdsList;
/** 监测设备ids排除列表 */
private List <String> monitorDeviceIdsNotList;
/** 监测设备 */
private List<String> monitorDeviceList;
/** 监测设备排除列表 */
private List <String> monitorDeviceNotList;
/** 开始 最终等待时长,秒 */
private Long waitTimeStart;
private Integer waitTimeStart;
/** 结束 最终等待时长,秒 */
private Long waitTimeEnd;
private Integer waitTimeEnd;
/** 增加 最终等待时长,秒 */
private Long waitTimeIncrement;
private Integer waitTimeIncrement;
/** 最终等待时长,秒列表 */
private List <Long> waitTimeList;
private List <Integer> waitTimeList;
/** 最终等待时长,秒排除列表 */
private List <Long> waitTimeNotList;
private List <Integer> waitTimeNotList;
/** 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束) */
/** 办理状态(排队中,办理中,接件结束) */
private List<String> processStatusList;
/** 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)排除列表 */
/** 办理状态(排队中,办理中,接件结束)排除列表 */
private List <String> processStatusNotList;
/** 开始 关怀次数 */
private Integer careCountStart;
/** 结束 关怀次数 */
private Integer careCountEnd;
/** 增加 关怀次数 */
private Integer careCountIncrement;
/** 关怀次数列表 */
private List <Integer> careCountList;
/** 关怀次数排除列表 */
private List <Integer> careCountNotList;
/** 评价 */
private List<String> assessmentList;
/** 评价排除列表 */
private List <String> assessmentNotList;
/** 开始 创建时间 */
private String createTimeStart;
......@@ -173,6 +215,21 @@ public class CareRecordsQuery extends CareRecordsEntity {
/** 更新人ID排除列表 */
private List <Long> updateUserIdNotList;
/** 开始 短信发送次数 */
private Integer smsCountStart;
/** 结束 短信发送次数 */
private Integer smsCountEnd;
/** 增加 短信发送次数 */
private Integer smsCountIncrement;
/** 短信发送次数列表 */
private List <Integer> smsCountList;
/** 短信发送次数排除列表 */
private List <Integer> smsCountNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<CareRecordsQuery> orConditionList;
......@@ -552,6 +609,119 @@ public class CareRecordsQuery extends CareRecordsEntity {
this.idCardNotList = idCardNotList;
}
/**
* 获取 开始 业务Id
* @return bussinessIdStart
*/
public Long getBussinessIdStart(){
return this.bussinessIdStart;
}
/**
* 设置 开始 业务Id
* @param bussinessIdStart
*/
public void setBussinessIdStart(Long bussinessIdStart){
this.bussinessIdStart = bussinessIdStart;
}
/**
* 获取 结束 业务Id
* @return $bussinessIdEnd
*/
public Long getBussinessIdEnd(){
return this.bussinessIdEnd;
}
/**
* 设置 结束 业务Id
* @param bussinessIdEnd
*/
public void setBussinessIdEnd(Long bussinessIdEnd){
this.bussinessIdEnd = bussinessIdEnd;
}
/**
* 获取 增加 业务Id
* @return bussinessIdIncrement
*/
public Long getBussinessIdIncrement(){
return this.bussinessIdIncrement;
}
/**
* 设置 增加 业务Id
* @param bussinessIdIncrement
*/
public void setBussinessIdIncrement(Long bussinessIdIncrement){
this.bussinessIdIncrement = bussinessIdIncrement;
}
/**
* 获取 业务Id
* @return bussinessIdList
*/
public List<Long> getBussinessIdList(){
return this.bussinessIdList;
}
/**
* 设置 业务Id
* @param bussinessIdList
*/
public void setBussinessIdList(List<Long> bussinessIdList){
this.bussinessIdList = bussinessIdList;
}
/**
* 获取 业务Id
* @return bussinessIdNotList
*/
public List<Long> getBussinessIdNotList(){
return this.bussinessIdNotList;
}
/**
* 设置 业务Id
* @param bussinessIdNotList
*/
public void setBussinessIdNotList(List<Long> bussinessIdNotList){
this.bussinessIdNotList = bussinessIdNotList;
}
/**
* 获取 预约业务
* @return bussinessNameList
*/
public List<String> getBussinessNameList(){
return this.bussinessNameList;
}
/**
* 设置 预约业务
* @param bussinessNameList
*/
public void setBussinessNameList(List<String> bussinessNameList){
this.bussinessNameList = bussinessNameList;
}
/**
* 获取 预约业务
* @return bussinessNameNotList
*/
public List<String> getBussinessNameNotList(){
return this.bussinessNameNotList;
}
/**
* 设置 预约业务
* @param bussinessNameNotList
*/
public void setBussinessNameNotList(List<String> bussinessNameNotList){
this.bussinessNameNotList = bussinessNameNotList;
}
/**
* 获取 办理业务
* @return serviceList
......@@ -617,117 +787,132 @@ public class CareRecordsQuery extends CareRecordsEntity {
}
/**
* 获取 开始 监测时间
* @return monitorTimeStart
* 获取 开始 排队开始时间
* @return takeTimeStart
*/
public String getMonitorTimeStart(){
return this.monitorTimeStart;
public String getTakeTimeStart(){
return this.takeTimeStart;
}
/**
* 设置 开始 监测时间
* @param monitorTimeStart
* 设置 开始 排队开始时间
* @param takeTimeStart
*/
public void setMonitorTimeStart(String monitorTimeStart){
this.monitorTimeStart = monitorTimeStart;
public void setTakeTimeStart(String takeTimeStart){
this.takeTimeStart = takeTimeStart;
}
/**
* 获取 结束 监测时间
* @return monitorTimeEnd
* 获取 结束 排队开始时间
* @return takeTimeEnd
*/
public String getMonitorTimeEnd(){
return this.monitorTimeEnd;
public String getTakeTimeEnd(){
return this.takeTimeEnd;
}
/**
* 设置 结束 监测时间
* @param monitorTimeEnd
* 设置 结束 排队开始时间
* @param takeTimeEnd
*/
public void setMonitorTimeEnd(String monitorTimeEnd){
this.monitorTimeEnd = monitorTimeEnd;
public void setTakeTimeEnd(String takeTimeEnd){
this.takeTimeEnd = takeTimeEnd;
}
/**
* 获取 开始 监测设备id
* @return monitorDeviceIdStart
* 获取 开始 排队结束时间
* @return callTimeStart
*/
public Long getMonitorDeviceIdStart(){
return this.monitorDeviceIdStart;
public String getCallTimeStart(){
return this.callTimeStart;
}
/**
* 设置 开始 监测设备id
* @param monitorDeviceIdStart
* 设置 开始 排队结束时间
* @param callTimeStart
*/
public void setMonitorDeviceIdStart(Long monitorDeviceIdStart){
this.monitorDeviceIdStart = monitorDeviceIdStart;
public void setCallTimeStart(String callTimeStart){
this.callTimeStart = callTimeStart;
}
/**
* 获取 结束 监测设备id
* @return $monitorDeviceIdEnd
* 获取 结束 排队结束时间
* @return callTimeEnd
*/
public Long getMonitorDeviceIdEnd(){
return this.monitorDeviceIdEnd;
public String getCallTimeEnd(){
return this.callTimeEnd;
}
/**
* 设置 结束 监测设备id
* @param monitorDeviceIdEnd
* 设置 结束 排队结束时间
* @param callTimeEnd
*/
public void setMonitorDeviceIdEnd(Long monitorDeviceIdEnd){
this.monitorDeviceIdEnd = monitorDeviceIdEnd;
public void setCallTimeEnd(String callTimeEnd){
this.callTimeEnd = callTimeEnd;
}
/**
* 获取 增加 监测设备id
* @return monitorDeviceIdIncrement
* 获取 开始 监测时间
* @return monitorTimeStart
*/
public String getMonitorTimeStart(){
return this.monitorTimeStart;
}
/**
* 设置 开始 监测时间
* @param monitorTimeStart
*/
public Long getMonitorDeviceIdIncrement(){
return this.monitorDeviceIdIncrement;
public void setMonitorTimeStart(String monitorTimeStart){
this.monitorTimeStart = monitorTimeStart;
}
/**
* 设置 增加 监测设备id
* @param monitorDeviceIdIncrement
* 获取 结束 监测时间
* @return monitorTimeEnd
*/
public void setMonitorDeviceIdIncrement(Long monitorDeviceIdIncrement){
this.monitorDeviceIdIncrement = monitorDeviceIdIncrement;
public String getMonitorTimeEnd(){
return this.monitorTimeEnd;
}
/**
* 获取 监测设备id
* @return monitorDeviceIdList
* 设置 结束 监测时间
* @param monitorTimeEnd
*/
public List<Long> getMonitorDeviceIdList(){
return this.monitorDeviceIdList;
public void setMonitorTimeEnd(String monitorTimeEnd){
this.monitorTimeEnd = monitorTimeEnd;
}
/**
* 设置 监测设备id
* @param monitorDeviceIdList
* 获取 监测设备ids
* @return monitorDeviceIdsList
*/
public void setMonitorDeviceIdList(List<Long> monitorDeviceIdList){
this.monitorDeviceIdList = monitorDeviceIdList;
public List<String> getMonitorDeviceIdsList(){
return this.monitorDeviceIdsList;
}
/**
* 获取 监测设备id
* @return monitorDeviceIdNotList
* 设置 监测设备ids
* @param monitorDeviceIdsList
*/
public List<Long> getMonitorDeviceIdNotList(){
return this.monitorDeviceIdNotList;
public void setMonitorDeviceIdsList(List<String> monitorDeviceIdsList){
this.monitorDeviceIdsList = monitorDeviceIdsList;
}
/**
* 设置 监测设备id
* @param monitorDeviceIdNotList
* 获取 监测设备ids
* @return monitorDeviceIdsNotList
*/
public void setMonitorDeviceIdNotList(List<Long> monitorDeviceIdNotList){
this.monitorDeviceIdNotList = monitorDeviceIdNotList;
public List<String> getMonitorDeviceIdsNotList(){
return this.monitorDeviceIdsNotList;
}
/**
* 设置 监测设备ids
* @param monitorDeviceIdsNotList
*/
public void setMonitorDeviceIdsNotList(List<String> monitorDeviceIdsNotList){
this.monitorDeviceIdsNotList = monitorDeviceIdsNotList;
}
/**
* 获取 监测设备
......@@ -765,7 +950,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 获取 开始 最终等待时长,秒
* @return waitTimeStart
*/
public Long getWaitTimeStart(){
public Integer getWaitTimeStart(){
return this.waitTimeStart;
}
......@@ -773,7 +958,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 开始 最终等待时长,秒
* @param waitTimeStart
*/
public void setWaitTimeStart(Long waitTimeStart){
public void setWaitTimeStart(Integer waitTimeStart){
this.waitTimeStart = waitTimeStart;
}
......@@ -781,7 +966,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 获取 结束 最终等待时长,秒
* @return $waitTimeEnd
*/
public Long getWaitTimeEnd(){
public Integer getWaitTimeEnd(){
return this.waitTimeEnd;
}
......@@ -789,7 +974,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 结束 最终等待时长,秒
* @param waitTimeEnd
*/
public void setWaitTimeEnd(Long waitTimeEnd){
public void setWaitTimeEnd(Integer waitTimeEnd){
this.waitTimeEnd = waitTimeEnd;
}
......@@ -797,7 +982,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 获取 增加 最终等待时长,秒
* @return waitTimeIncrement
*/
public Long getWaitTimeIncrement(){
public Integer getWaitTimeIncrement(){
return this.waitTimeIncrement;
}
......@@ -805,7 +990,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 增加 最终等待时长,秒
* @param waitTimeIncrement
*/
public void setWaitTimeIncrement(Long waitTimeIncrement){
public void setWaitTimeIncrement(Integer waitTimeIncrement){
this.waitTimeIncrement = waitTimeIncrement;
}
......@@ -813,7 +998,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 获取 最终等待时长,秒
* @return waitTimeList
*/
public List<Long> getWaitTimeList(){
public List<Integer> getWaitTimeList(){
return this.waitTimeList;
}
......@@ -821,7 +1006,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 最终等待时长,秒
* @param waitTimeList
*/
public void setWaitTimeList(List<Long> waitTimeList){
public void setWaitTimeList(List<Integer> waitTimeList){
this.waitTimeList = waitTimeList;
}
......@@ -829,7 +1014,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 获取 最终等待时长,秒
* @return waitTimeNotList
*/
public List<Long> getWaitTimeNotList(){
public List<Integer> getWaitTimeNotList(){
return this.waitTimeNotList;
}
......@@ -837,13 +1022,13 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 最终等待时长,秒
* @param waitTimeNotList
*/
public void setWaitTimeNotList(List<Long> waitTimeNotList){
public void setWaitTimeNotList(List<Integer> waitTimeNotList){
this.waitTimeNotList = waitTimeNotList;
}
/**
* 获取 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* 获取 办理状态(排队中,办理中,接件结束)
* @return processStatusList
*/
public List<String> getProcessStatusList(){
......@@ -851,7 +1036,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
}
/**
* 设置 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* 设置 办理状态(排队中,办理中,接件结束)
* @param processStatusList
*/
public void setProcessStatusList(List<String> processStatusList){
......@@ -859,7 +1044,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
}
/**
* 获取 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* 获取 办理状态(排队中,办理中,接件结束)
* @return processStatusNotList
*/
public List<String> getProcessStatusNotList(){
......@@ -867,13 +1052,126 @@ public class CareRecordsQuery extends CareRecordsEntity {
}
/**
* 设置 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* 设置 办理状态(排队中,办理中,接件结束)
* @param processStatusNotList
*/
public void setProcessStatusNotList(List<String> processStatusNotList){
this.processStatusNotList = processStatusNotList;
}
/**
* 获取 开始 关怀次数
* @return careCountStart
*/
public Integer getCareCountStart(){
return this.careCountStart;
}
/**
* 设置 开始 关怀次数
* @param careCountStart
*/
public void setCareCountStart(Integer careCountStart){
this.careCountStart = careCountStart;
}
/**
* 获取 结束 关怀次数
* @return $careCountEnd
*/
public Integer getCareCountEnd(){
return this.careCountEnd;
}
/**
* 设置 结束 关怀次数
* @param careCountEnd
*/
public void setCareCountEnd(Integer careCountEnd){
this.careCountEnd = careCountEnd;
}
/**
* 获取 增加 关怀次数
* @return careCountIncrement
*/
public Integer getCareCountIncrement(){
return this.careCountIncrement;
}
/**
* 设置 增加 关怀次数
* @param careCountIncrement
*/
public void setCareCountIncrement(Integer careCountIncrement){
this.careCountIncrement = careCountIncrement;
}
/**
* 获取 关怀次数
* @return careCountList
*/
public List<Integer> getCareCountList(){
return this.careCountList;
}
/**
* 设置 关怀次数
* @param careCountList
*/
public void setCareCountList(List<Integer> careCountList){
this.careCountList = careCountList;
}
/**
* 获取 关怀次数
* @return careCountNotList
*/
public List<Integer> getCareCountNotList(){
return this.careCountNotList;
}
/**
* 设置 关怀次数
* @param careCountNotList
*/
public void setCareCountNotList(List<Integer> careCountNotList){
this.careCountNotList = careCountNotList;
}
/**
* 获取 评价
* @return assessmentList
*/
public List<String> getAssessmentList(){
return this.assessmentList;
}
/**
* 设置 评价
* @param assessmentList
*/
public void setAssessmentList(List<String> assessmentList){
this.assessmentList = assessmentList;
}
/**
* 获取 评价
* @return assessmentNotList
*/
public List<String> getAssessmentNotList(){
return this.assessmentNotList;
}
/**
* 设置 评价
* @param assessmentNotList
*/
public void setAssessmentNotList(List<String> assessmentNotList){
this.assessmentNotList = assessmentNotList;
}
/**
* 获取 开始 创建时间
* @return createTimeStart
......@@ -1100,6 +1398,87 @@ public class CareRecordsQuery extends CareRecordsEntity {
}
/**
* 获取 开始 短信发送次数
* @return smsCountStart
*/
public Integer getSmsCountStart(){
return this.smsCountStart;
}
/**
* 设置 开始 短信发送次数
* @param smsCountStart
*/
public void setSmsCountStart(Integer smsCountStart){
this.smsCountStart = smsCountStart;
}
/**
* 获取 结束 短信发送次数
* @return $smsCountEnd
*/
public Integer getSmsCountEnd(){
return this.smsCountEnd;
}
/**
* 设置 结束 短信发送次数
* @param smsCountEnd
*/
public void setSmsCountEnd(Integer smsCountEnd){
this.smsCountEnd = smsCountEnd;
}
/**
* 获取 增加 短信发送次数
* @return smsCountIncrement
*/
public Integer getSmsCountIncrement(){
return this.smsCountIncrement;
}
/**
* 设置 增加 短信发送次数
* @param smsCountIncrement
*/
public void setSmsCountIncrement(Integer smsCountIncrement){
this.smsCountIncrement = smsCountIncrement;
}
/**
* 获取 短信发送次数
* @return smsCountList
*/
public List<Integer> getSmsCountList(){
return this.smsCountList;
}
/**
* 设置 短信发送次数
* @param smsCountList
*/
public void setSmsCountList(List<Integer> smsCountList){
this.smsCountList = smsCountList;
}
/**
* 获取 短信发送次数
* @return smsCountNotList
*/
public List<Integer> getSmsCountNotList(){
return this.smsCountNotList;
}
/**
* 设置 短信发送次数
* @param smsCountNotList
*/
public void setSmsCountNotList(List<Integer> smsCountNotList){
this.smsCountNotList = smsCountNotList;
}
/**
* 设置 主键ID,主键,自增长
* @param id
......@@ -1338,96 +1717,136 @@ public class CareRecordsQuery extends CareRecordsEntity {
return this;
}
/**
* 设置 业务Id
* @param bussinessId
*/
public CareRecordsQuery bussinessId(Long bussinessId){
setBussinessId(bussinessId);
return this;
}
/**
* 设置 办理业务
* @param service
* 设置 开始 业务Id
* @param bussinessIdStart
*/
public CareRecordsQuery service(String service){
setService(service);
public CareRecordsQuery bussinessIdStart(Long bussinessIdStart){
this.bussinessIdStart = bussinessIdStart;
return this;
}
/**
* 设置 办理业务
* @param serviceList
* 设置 结束 业务Id
* @param bussinessIdEnd
*/
public CareRecordsQuery serviceList(List<String> serviceList){
this.serviceList = serviceList;
public CareRecordsQuery bussinessIdEnd(Long bussinessIdEnd){
this.bussinessIdEnd = bussinessIdEnd;
return this;
}
/**
* 设置 增加 业务Id
* @param bussinessIdIncrement
*/
public CareRecordsQuery bussinessIdIncrement(Long bussinessIdIncrement){
this.bussinessIdIncrement = bussinessIdIncrement;
return this;
}
/**
* 设置 排队编号
* @param queueNo
* 设置 业务Id
* @param bussinessIdList
*/
public CareRecordsQuery queueNo(String queueNo){
setQueueNo(queueNo);
public CareRecordsQuery bussinessIdList(List<Long> bussinessIdList){
this.bussinessIdList = bussinessIdList;
return this;
}
/**
* 设置 排队编号
* @param queueNoList
* 设置 业务Id
* @param bussinessIdNotList
*/
public CareRecordsQuery queueNoList(List<String> queueNoList){
this.queueNoList = queueNoList;
public CareRecordsQuery bussinessIdNotList(List<Long> bussinessIdNotList){
this.bussinessIdNotList = bussinessIdNotList;
return this;
}
/**
* 设置 监测设备id
* @param monitorDeviceId
* 设置 预约业务
* @param bussinessName
*/
public CareRecordsQuery monitorDeviceId(Long monitorDeviceId){
setMonitorDeviceId(monitorDeviceId);
public CareRecordsQuery bussinessName(String bussinessName){
setBussinessName(bussinessName);
return this;
}
/**
* 设置 开始 监测设备id
* @param monitorDeviceIdStart
* 设置 预约业务
* @param bussinessNameList
*/
public CareRecordsQuery monitorDeviceIdStart(Long monitorDeviceIdStart){
this.monitorDeviceIdStart = monitorDeviceIdStart;
public CareRecordsQuery bussinessNameList(List<String> bussinessNameList){
this.bussinessNameList = bussinessNameList;
return this;
}
/**
* 设置 结束 监测设备id
* @param monitorDeviceIdEnd
* 设置 办理业务
* @param service
*/
public CareRecordsQuery monitorDeviceIdEnd(Long monitorDeviceIdEnd){
this.monitorDeviceIdEnd = monitorDeviceIdEnd;
public CareRecordsQuery service(String service){
setService(service);
return this;
}
/**
* 设置 增加 监测设备id
* @param monitorDeviceIdIncrement
* 设置 办理业务
* @param serviceList
*/
public CareRecordsQuery monitorDeviceIdIncrement(Long monitorDeviceIdIncrement){
this.monitorDeviceIdIncrement = monitorDeviceIdIncrement;
public CareRecordsQuery serviceList(List<String> serviceList){
this.serviceList = serviceList;
return this;
}
/**
* 设置 监测设备id
* @param monitorDeviceIdList
* 设置 排队编号
* @param queueNo
*/
public CareRecordsQuery monitorDeviceIdList(List<Long> monitorDeviceIdList){
this.monitorDeviceIdList = monitorDeviceIdList;
public CareRecordsQuery queueNo(String queueNo){
setQueueNo(queueNo);
return this;
}
/**
* 设置 监测设备id
* @param monitorDeviceIdNotList
* 设置 排队编号
* @param queueNoList
*/
public CareRecordsQuery monitorDeviceIdNotList(List<Long> monitorDeviceIdNotList){
this.monitorDeviceIdNotList = monitorDeviceIdNotList;
public CareRecordsQuery queueNoList(List<String> queueNoList){
this.queueNoList = queueNoList;
return this;
}
/**
* 设置 监测设备ids
* @param monitorDeviceIds
*/
public CareRecordsQuery monitorDeviceIds(String monitorDeviceIds){
setMonitorDeviceIds(monitorDeviceIds);
return this;
}
/**
* 设置 监测设备ids
* @param monitorDeviceIdsList
*/
public CareRecordsQuery monitorDeviceIdsList(List<String> monitorDeviceIdsList){
this.monitorDeviceIdsList = monitorDeviceIdsList;
return this;
}
......@@ -1454,7 +1873,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 最终等待时长,秒
* @param waitTime
*/
public CareRecordsQuery waitTime(Long waitTime){
public CareRecordsQuery waitTime(Integer waitTime){
setWaitTime(waitTime);
return this;
}
......@@ -1463,7 +1882,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 开始 最终等待时长,秒
* @param waitTimeStart
*/
public CareRecordsQuery waitTimeStart(Long waitTimeStart){
public CareRecordsQuery waitTimeStart(Integer waitTimeStart){
this.waitTimeStart = waitTimeStart;
return this;
}
......@@ -1472,7 +1891,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 结束 最终等待时长,秒
* @param waitTimeEnd
*/
public CareRecordsQuery waitTimeEnd(Long waitTimeEnd){
public CareRecordsQuery waitTimeEnd(Integer waitTimeEnd){
this.waitTimeEnd = waitTimeEnd;
return this;
}
......@@ -1481,7 +1900,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 增加 最终等待时长,秒
* @param waitTimeIncrement
*/
public CareRecordsQuery waitTimeIncrement(Long waitTimeIncrement){
public CareRecordsQuery waitTimeIncrement(Integer waitTimeIncrement){
this.waitTimeIncrement = waitTimeIncrement;
return this;
}
......@@ -1490,7 +1909,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 最终等待时长,秒
* @param waitTimeList
*/
public CareRecordsQuery waitTimeList(List<Long> waitTimeList){
public CareRecordsQuery waitTimeList(List<Integer> waitTimeList){
this.waitTimeList = waitTimeList;
return this;
}
......@@ -1499,14 +1918,14 @@ public class CareRecordsQuery extends CareRecordsEntity {
* 设置 最终等待时长,秒
* @param waitTimeNotList
*/
public CareRecordsQuery waitTimeNotList(List<Long> waitTimeNotList){
public CareRecordsQuery waitTimeNotList(List<Integer> waitTimeNotList){
this.waitTimeNotList = waitTimeNotList;
return this;
}
/**
* 设置 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* 设置 办理状态(排队中,办理中,接件结束)
* @param processStatus
*/
public CareRecordsQuery processStatus(String processStatus){
......@@ -1515,7 +1934,7 @@ public class CareRecordsQuery extends CareRecordsEntity {
}
/**
* 设置 办理状态(排队中.排队中,办理中.办理中,接件结束.接件结束)
* 设置 办理状态(排队中,办理中,接件结束)
* @param processStatusList
*/
public CareRecordsQuery processStatusList(List<String> processStatusList){
......@@ -1523,6 +1942,79 @@ public class CareRecordsQuery extends CareRecordsEntity {
return this;
}
/**
* 设置 关怀次数
* @param careCount
*/
public CareRecordsQuery careCount(Integer careCount){
setCareCount(careCount);
return this;
}
/**
* 设置 开始 关怀次数
* @param careCountStart
*/
public CareRecordsQuery careCountStart(Integer careCountStart){
this.careCountStart = careCountStart;
return this;
}
/**
* 设置 结束 关怀次数
* @param careCountEnd
*/
public CareRecordsQuery careCountEnd(Integer careCountEnd){
this.careCountEnd = careCountEnd;
return this;
}
/**
* 设置 增加 关怀次数
* @param careCountIncrement
*/
public CareRecordsQuery careCountIncrement(Integer careCountIncrement){
this.careCountIncrement = careCountIncrement;
return this;
}
/**
* 设置 关怀次数
* @param careCountList
*/
public CareRecordsQuery careCountList(List<Integer> careCountList){
this.careCountList = careCountList;
return this;
}
/**
* 设置 关怀次数
* @param careCountNotList
*/
public CareRecordsQuery careCountNotList(List<Integer> careCountNotList){
this.careCountNotList = careCountNotList;
return this;
}
/**
* 设置 评价
* @param assessment
*/
public CareRecordsQuery assessment(String assessment){
setAssessment(assessment);
return this;
}
/**
* 设置 评价
* @param assessmentList
*/
public CareRecordsQuery assessmentList(List<String> assessmentList){
this.assessmentList = assessmentList;
return this;
}
/**
* 设置 创建人ID
......@@ -1633,6 +2125,60 @@ public class CareRecordsQuery extends CareRecordsEntity {
return this;
}
/**
* 设置 短信发送次数
* @param smsCount
*/
public CareRecordsQuery smsCount(Integer smsCount){
setSmsCount(smsCount);
return this;
}
/**
* 设置 开始 短信发送次数
* @param smsCountStart
*/
public CareRecordsQuery smsCountStart(Integer smsCountStart){
this.smsCountStart = smsCountStart;
return this;
}
/**
* 设置 结束 短信发送次数
* @param smsCountEnd
*/
public CareRecordsQuery smsCountEnd(Integer smsCountEnd){
this.smsCountEnd = smsCountEnd;
return this;
}
/**
* 设置 增加 短信发送次数
* @param smsCountIncrement
*/
public CareRecordsQuery smsCountIncrement(Integer smsCountIncrement){
this.smsCountIncrement = smsCountIncrement;
return this;
}
/**
* 设置 短信发送次数
* @param smsCountList
*/
public CareRecordsQuery smsCountList(List<Integer> smsCountList){
this.smsCountList = smsCountList;
return this;
}
/**
* 设置 短信发送次数
* @param smsCountNotList
*/
public CareRecordsQuery smsCountNotList(List<Integer> smsCountNotList){
this.smsCountNotList = smsCountNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
package com.mortals.xhx.module.care.model.vo;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.care.model.CareRecordsEntity;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import lombok.Data;
/**
* 预约关怀记录视图对象
*
* @author zxfei
* @date 2023-04-09
*/
* 预约关怀记录视图对象
*
* @author zxfei
* @date 2023-04-18
*/
@Data
public class CareRecordsVo extends BaseEntityLong {
/**
* 个人信息ID
*/
@Excel(name = "个人信息ID")
private Long personId;
/**
* 姓名
*/
@Excel(name = "姓名")
private String name;
/**
* 联系方式
*/
@Excel(name = "联系方式")
private String contact;
/**
* 身份证号码
*/
@Excel(name = "身份证号码")
private String idCard;
/**
* 预约业务
*/
@Excel(name = "预约业务")
private String bussinessName;
/**
* 办理业务
*/
@Excel(name = "办理业务")
private String service;
/**
* 排队编号
*/
@Excel(name = "排队编号")
private String queueNo;
/**
* 排队开始时间
*/
@Excel(name = "排队开始时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date takeTime;
/**
* 监测时间
*/
@Excel(name = "监测时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date monitorTime;
/**
* 监测设备ids
*/
@Excel(name = "监测设备ids")
private String monitorDeviceIds;
/**
* 监测设备
*/
@Excel(name = "监测设备")
private String monitorDevice;
/**
* 最终等待时长,秒
*/
@Excel(name = "最终等待时长,秒")
private Integer waitTime;
/**
* 办理状态(排队中,办理中,接件结束)
*/
@Excel(name = "办理状态", readConverterExp = "办理状态(排队中,办理中,接件结束)")
private String processStatus;
}
\ No newline at end of file
package com.mortals.xhx.module.care.service;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.module.care.model.CareRecordsEntity;
import org.springframework.web.bind.annotation.RequestBody;
/**
* CareRecordsService
*
* 预约关怀记录 service接口
*
* @author zxfei
* @date 2023-04-09
*/
public interface CareRecordsService extends ICRUDService<CareRecordsEntity,Long>{
* CareRecordsService
* <p>
* 预约关怀记录 service接口
*
* @author zxfei
* @date 2023-04-09
*/
public interface CareRecordsService extends ICRUDService<CareRecordsEntity, Long> {
Rest<String> notice(CareRecordsEntity careRecordsEntity, Context context);
......
package com.mortals.xhx.module.care.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.mortals.framework.common.Rest;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.util.EntityUtil;
import com.mortals.framework.util.HttpUtil;
import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.busiz.req.SmsThirdPartyReq;
import com.mortals.xhx.busiz.rsp.ApiSmsResp;
import com.mortals.xhx.common.code.UserType;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.key.ParamKey;
import com.mortals.xhx.module.care.dao.CareRecordsDao;
import com.mortals.xhx.module.care.model.CareRecordsEntity;
import com.mortals.xhx.module.care.model.CareRecordsQuery;
import com.mortals.xhx.module.care.service.CareRecordsService;
import com.mortals.xhx.module.notice.model.NoticeEntity;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.time.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* CareRecordsService
* 预约关怀记录 service实现
*
* @author zxfei
* @date 2023-04-09
*/
* CareRecordsService
* 预约关怀记录 service实现
*
* @author zxfei
* @date 2023-04-09
*/
@Service("careRecordsService")
@Slf4j
public class CareRecordsServiceImpl extends AbstractCRUDServiceImpl<CareRecordsDao, CareRecordsEntity, Long> implements CareRecordsService {
@Autowired
private UserService userService;
@Value("${sms.smsSendUrl:http://192.168.0.98:8089/api/index/index}")
private String smsSendUrl;
@Value("${sms.apiId:''}")
private String apiId;
@Override
public Rest<String> notice(CareRecordsEntity careRecordsEntity, Context context) {
//todo 通知负责人
UserEntity userEntity = new UserEntity();
userEntity.setUserType(UserType.SYSTEM.getValue());
List<UserEntity> userEntities = userService.find(userEntity);
List<NoticeEntity> noticeList = userEntities.stream().map(user -> {
NoticeEntity noticeEntity = new NoticeEntity();
noticeEntity.initAttrValue();
noticeEntity.setTitle("群众关怀信息");
noticeEntity.setExpireTime(DateUtils.addHours(new Date(), 1));
noticeEntity.setUserId(user.getId());
String content = "";
noticeEntity.setContent(content);
noticeEntity.setCreateTime(new Date());
noticeEntity.setCreateUserId(1L);
noticeEntity.setCreateUserName("system");
return noticeEntity;
}).collect(Collectors.toList());
if (ObjectUtils.isEmpty(noticeList)) {
//noticeService.save(noticeList);
}
return Rest.ok("通知负责人成功");
}
@Override
public Rest<String> toCare(CareRecordsEntity careRecordsEntity, Context context) {
//todo 短信通知群众
return Rest.ok("通知群众成功");
if (ObjectUtils.isEmpty(careRecordsEntity.getContact())) {
return Rest.fail("手机号码不存在");
}
String resp = null;
try {
SmsThirdPartyReq smsThirdPartyReq = new SmsThirdPartyReq();
smsThirdPartyReq.setAppid(apiId);
smsThirdPartyReq.setPhone(careRecordsEntity.getContact());
smsThirdPartyReq.setType(ParamKey.SYS_PARAM_SMS_PERSON_CARE_TYPE);
Map<String, String> form = new HashMap<>();
EntityUtil.entityToMap(smsThirdPartyReq, form);
resp = HttpUtil.doPost(smsSendUrl, form);
ApiSmsResp<Void> apiSmsResp = JSON.parseObject(resp, new TypeReference<ApiSmsResp<Void>>() {
});
if (apiSmsResp.getCode() == YesNoEnum.YES.getValue()) {
//更新发送数量
CareRecordsQuery condition = new CareRecordsQuery();
condition.setId(careRecordsEntity.getId());
condition.setSmsCountIncrement(1);
this.update(condition, context);
return Rest.ok();
} else {
throw new AppException(apiSmsResp.getMessage());
}
} catch (Exception e) {
log.error("发送短信异常:", e);
return Rest.fail(e.getMessage());
}
}
}
\ No newline at end of file
......@@ -60,7 +60,7 @@ public class CareRecordsController extends BaseCRUDJsonBodyMappingController<Car
Map<String, Object> model = new HashMap<>();
String busiDesc = this.getModuleDesc() + "通知负责人";
try {
Rest<String> rest = this.service.notice(careRecordsEntity, getContext());
/* Rest<String> rest = this.service.notice(careRecordsEntity, getContext());
if(YesNoEnum.YES.getValue()==rest.getCode()){
recordSysLog(request, busiDesc + " 【成功】");
jsonObject.put(KEY_RESULT_DATA, model);
......@@ -68,7 +68,7 @@ public class CareRecordsController extends BaseCRUDJsonBodyMappingController<Car
jsonObject.put(KEY_RESULT_MSG, rest.getMsg());
}else {
throw new AppException(rest.getMsg());
}
}*/
} catch (Exception e) {
log.error(busiDesc, e);
jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE);
......@@ -87,7 +87,7 @@ public class CareRecordsController extends BaseCRUDJsonBodyMappingController<Car
Map<String, Object> model = new HashMap<>();
String busiDesc = this.getModuleDesc() + "toCare";
try {
Rest<String> rest = this.service.notice(careRecordsEntity, getContext());
/* Rest<String> rest = this.service.notice(careRecordsEntity, getContext());
if(YesNoEnum.YES.getValue()==rest.getCode()){
recordSysLog(request, busiDesc + " 【成功】");
jsonObject.put(KEY_RESULT_DATA, model);
......@@ -95,7 +95,7 @@ public class CareRecordsController extends BaseCRUDJsonBodyMappingController<Car
jsonObject.put(KEY_RESULT_MSG, rest.getMsg());
}else {
throw new AppException(rest.getMsg());
}
}*/
} catch (Exception e) {
log.error(busiDesc, e);
jsonObject.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE);
......
package com.mortals.xhx.module.notice.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.OrderCol;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -6,45 +9,58 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.notice.model.NoticeEntity;
import com.mortals.xhx.module.notice.service.NoticeService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/**
*
* 用户消息
*
* @author zxfei
* @date 2023-04-15
*/
* 用户消息
*
* @author zxfei
* @date 2023-04-15
*/
@RestController
@RequestMapping("notice")
public class NoticeController extends BaseCRUDJsonBodyMappingController<NoticeService,NoticeEntity,Long> {
public class NoticeController extends BaseCRUDJsonBodyMappingController<NoticeService, NoticeEntity, Long> {
@Autowired
private ParamService paramService;
public NoticeController(){
super.setModuleDesc( "用户消息");
public NoticeController() {
super.setModuleDesc("用户消息");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "read", paramService.getParamBySecondOrganize("Notice","read"));
this.addDict(model, "read", paramService.getParamBySecondOrganize("Notice", "read"));
super.init(model, context);
}
@Override
protected void doListBefore(NoticeEntity query, Map<String, Object> model, Context context) throws AppException {
query.setUserId(this.getContextUserId(context));
query.setOrderField("read");
query.setOrderKind(OrderCol.DESCENDING);
super.doListBefore(query, model, context);
}
}
\ No newline at end of file
package com.mortals.xhx.module.person.model;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.person.model.vo.PersonVo;
import lombok.Data;
import java.util.Date;
/**
* 注册人员实体对象
*
* @author zxfei
* @date 2023-04-16
*/
@Data
public class PersonEntity extends PersonVo {
private static final long serialVersionUID = 1L;
......@@ -36,7 +35,6 @@ public class PersonEntity extends PersonVo {
/**
* 性别(0.男,1.女)
*/
@Excel(name = "性别", readConverterExp = "0=男,1.女")
private Integer gender;
/**
* 手机号码
......@@ -85,241 +83,11 @@ public class PersonEntity extends PersonVo {
*/
private String ifaceGroupIndexCode;
public PersonEntity(){}
/**
* 获取 站点Id
* @return Long
*/
public Long getSiteId(){
return siteId;
}
/**
* 设置 站点Id
* @param siteId
*/
public void setSiteId(Long siteId){
this.siteId = siteId;
}
/**
* 获取 站点名称
* @return String
*/
public String getSiteName(){
return siteName;
}
/**
* 设置 站点名称
* @param siteName
*/
public void setSiteName(String siteName){
this.siteName = siteName;
}
/**
* 获取 用户名称
* @return String
*/
public String getName(){
return name;
}
/**
* 设置 用户名称
* @param name
*/
public void setName(String name){
this.name = name;
}
/**
* 获取 身份证号码
* @return String
*/
public String getIdCard(){
return idCard;
}
/**
* 设置 身份证号码
* @param idCard
*/
public void setIdCard(String idCard){
this.idCard = idCard;
}
/**
* 获取 性别(0.男,1.女)
* @return Integer
*/
public Integer getGender(){
return gender;
}
/**
* 设置 性别(0.男,1.女)
* @param gender
*/
public void setGender(Integer gender){
this.gender = gender;
}
/**
* 获取 手机号码
* @return String
*/
public String getPhone(){
return phone;
}
/**
* 设置 手机号码
* @param phone
*/
public void setPhone(String phone){
this.phone = phone;
}
/**
* 获取 出生日期
* @return Date
*/
public Date getBirthday(){
return birthday;
}
/**
* 设置 出生日期
* @param birthday
*/
public void setBirthday(Date birthday){
this.birthday = birthday;
}
/**
* 获取 家庭住址
* @return String
*/
public String getAddress(){
return address;
}
/**
* 设置 家庭住址
* @param address
*/
public void setAddress(String address){
this.address = address;
}
/**
* 获取 本地照片路径
* @return String
*/
public String getPhoto(){
return photo;
}
/**
* 设置 本地照片路径
* @param photo
*/
public void setPhoto(String photo){
this.photo = photo;
}
/**
* 获取 原始照片路径
* @return String
*/
public String getSourcePhotoUri(){
return sourcePhotoUri;
}
/**
* 设置 原始照片路径
* @param sourcePhotoUri
*/
public void setSourcePhotoUri(String sourcePhotoUri){
this.sourcePhotoUri = sourcePhotoUri;
}
/**
* 获取 Php原始注册用户id
* @return Long
*/
public Long getSourceId(){
return sourceId;
}
/**
* 设置 Php原始注册用户id
* @param sourceId
*/
public void setSourceId(Long sourceId){
this.sourceId = sourceId;
}
/**
* 获取 备注
* @return String
*/
public String getRemark(){
return remark;
}
/**
* 设置 备注
* @param remark
*/
public void setRemark(String remark){
this.remark = remark;
}
/**
* 获取 注册人员来源(0.预约系统,1.排队叫号系统,2.自助服务系统,99.其它)
* @return Integer
*/
public Integer getSource(){
return source;
}
/**
* 设置 注册人员来源(0.预约系统,1.排队叫号系统,2.自助服务系统,99.其它)
* @param source
*/
public void setSource(Integer source){
this.source = source;
}
/**
* 获取 是否添加到海康人脸库(0.否,1.是)
* @return Integer
*/
public Integer getInFaceHk(){
return inFaceHk;
}
/**
* 设置 是否添加到海康人脸库(0.否,1.是)
* @param inFaceHk
*/
public void setInFaceHk(Integer inFaceHk){
this.inFaceHk = inFaceHk;
}
/**
* 获取 人脸的唯一标识
* @return String
*/
public String getIndexCode(){
return indexCode;
}
/**
* 设置 人脸的唯一标识
* @param indexCode
*/
public void setIndexCode(String indexCode){
this.indexCode = indexCode;
}
/**
* 获取 人脸所属的人脸分组的唯一标识
* @return String
*/
public String getIfaceGroupIndexCode(){
return ifaceGroupIndexCode;
}
/**
* 设置 人脸所属的人脸分组的唯一标识
* @param ifaceGroupIndexCode
*/
public void setIfaceGroupIndexCode(String ifaceGroupIndexCode){
this.ifaceGroupIndexCode = ifaceGroupIndexCode;
}
@Override
public int hashCode() {
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) return false;
......@@ -332,28 +100,8 @@ public class PersonEntity extends PersonVo {
return false;
}
public String toString(){
StringBuilder sb = new StringBuilder("");
sb.append(",siteId:").append(getSiteId());
sb.append(",siteName:").append(getSiteName());
sb.append(",name:").append(getName());
sb.append(",idCard:").append(getIdCard());
sb.append(",gender:").append(getGender());
sb.append(",phone:").append(getPhone());
sb.append(",birthday:").append(getBirthday());
sb.append(",address:").append(getAddress());
sb.append(",photo:").append(getPhoto());
sb.append(",sourcePhotoUri:").append(getSourcePhotoUri());
sb.append(",sourceId:").append(getSourceId());
sb.append(",remark:").append(getRemark());
sb.append(",source:").append(getSource());
sb.append(",inFaceHk:").append(getInFaceHk());
sb.append(",indexCode:").append(getIndexCode());
sb.append(",ifaceGroupIndexCode:").append(getIfaceGroupIndexCode());
return sb.toString();
}
public void initAttrValue(){
public void initAttrValue() {
this.siteId = null;
......
package com.mortals.xhx.module.person.model.vo;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.person.model.PersonEntity;
import java.util.ArrayList;
......@@ -13,4 +14,6 @@ import lombok.Data;
@Data
public class PersonVo extends BaseEntityLong {
@Excel(name = "性别", readConverterExp = "0=男,1.女")
private Integer gender;
}
\ No newline at end of file
......@@ -57,10 +57,9 @@ public class PersonController extends BaseCRUDJsonBodyMappingController<PersonSe
}
@Override
public void doExportFileAfter(byte[] data, Context context) throws AppException {
InputStream inputStream = new ByteArrayInputStream(data);
MultipartFile file = ServletUtils.getMultipartFile(inputStream, "photo.jpg");
String filePath = uploadService.saveFileUpload(file, "file/fileupload",null);
public void doExportBefore(Context context, PersonEntity query, List<String> properties) throws AppException {
properties.add("性别");
// super.doExportBefore(context, query, properties);
}
@Override
......
......@@ -60,9 +60,9 @@ hystrix:
sms:
smsSendUrl: @profiles.sms.smsSendUrl@
apiId: @profiles.sms.apiId@
type: @profiles.sms.type@
php:
host: @profiles.php.host@
redisDb: 5
hik:
host: @profiles.hik.host@
appKey: @profiles.hik.appKey@
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.care.dao.ibatis.CareRecordsDaoImpl">
<!-- 字段和属性映射 -->
......@@ -12,17 +12,24 @@
<result property="name" column="name" />
<result property="contact" column="contact" />
<result property="idCard" column="idCard" />
<result property="bussinessId" column="bussinessId" />
<result property="bussinessName" column="bussinessName" />
<result property="service" column="service" />
<result property="queueNo" column="queueNo" />
<result property="takeTime" column="takeTime" />
<result property="callTime" column="callTime" />
<result property="monitorTime" column="monitorTime" />
<result property="monitorDeviceId" column="monitorDeviceId" />
<result property="monitorDeviceIds" column="monitorDeviceIds" />
<result property="monitorDevice" column="monitorDevice" />
<result property="waitTime" column="waitTime" />
<result property="processStatus" column="processStatus" />
<result property="careCount" column="careCount" />
<result property="assessment" column="assessment" />
<result property="createTime" column="createTime" />
<result property="createUserId" column="createUserId" />
<result property="updateTime" column="updateTime" />
<result property="updateUserId" column="updateUserId" />
<result property="smsCount" column="smsCount" />
</resultMap>
......@@ -51,17 +58,29 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('idCard') or colPickMode == 1 and data.containsKey('idCard')))">
a.idCard,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('bussinessId') or colPickMode == 1 and data.containsKey('bussinessId')))">
a.bussinessId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('bussinessName') or colPickMode == 1 and data.containsKey('bussinessName')))">
a.bussinessName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('service') or colPickMode == 1 and data.containsKey('service')))">
a.service,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('queueNo') or colPickMode == 1 and data.containsKey('queueNo')))">
a.queueNo,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('takeTime') or colPickMode == 1 and data.containsKey('takeTime')))">
a.takeTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('callTime') or colPickMode == 1 and data.containsKey('callTime')))">
a.callTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('monitorTime') or colPickMode == 1 and data.containsKey('monitorTime')))">
a.monitorTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('monitorDeviceId') or colPickMode == 1 and data.containsKey('monitorDeviceId')))">
a.monitorDeviceId,
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('monitorDeviceIds') or colPickMode == 1 and data.containsKey('monitorDeviceIds')))">
a.monitorDeviceIds,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('monitorDevice') or colPickMode == 1 and data.containsKey('monitorDevice')))">
a.monitorDevice,
......@@ -72,6 +91,12 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('processStatus') or colPickMode == 1 and data.containsKey('processStatus')))">
a.processStatus,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('careCount') or colPickMode == 1 and data.containsKey('careCount')))">
a.careCount,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('assessment') or colPickMode == 1 and data.containsKey('assessment')))">
a.assessment,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
......@@ -84,23 +109,26 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('smsCount') or colPickMode == 1 and data.containsKey('smsCount')))">
a.smsCount,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="CareRecordsEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_care_records
(siteId,siteName,personId,name,contact,idCard,service,queueNo,monitorTime,monitorDeviceId,monitorDevice,waitTime,processStatus,createTime,createUserId,updateTime,updateUserId)
(siteId,siteName,personId,name,contact,idCard,bussinessId,bussinessName,service,queueNo,takeTime,callTime,monitorTime,monitorDeviceIds,monitorDevice,waitTime,processStatus,careCount,assessment,createTime,createUserId,updateTime,updateUserId,smsCount)
VALUES
(#{siteId},#{siteName},#{personId},#{name},#{contact},#{idCard},#{service},#{queueNo},#{monitorTime},#{monitorDeviceId},#{monitorDevice},#{waitTime},#{processStatus},#{createTime},#{createUserId},#{updateTime},#{updateUserId})
(#{siteId},#{siteName},#{personId},#{name},#{contact},#{idCard},#{bussinessId},#{bussinessName},#{service},#{queueNo},#{takeTime},#{callTime},#{monitorTime},#{monitorDeviceIds},#{monitorDevice},#{waitTime},#{processStatus},#{careCount},#{assessment},#{createTime},#{createUserId},#{updateTime},#{updateUserId},#{smsCount})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_care_records
(siteId,siteName,personId,name,contact,idCard,service,queueNo,monitorTime,monitorDeviceId,monitorDevice,waitTime,processStatus,createTime,createUserId,updateTime,updateUserId)
(siteId,siteName,personId,name,contact,idCard,bussinessId,bussinessName,service,queueNo,takeTime,callTime,monitorTime,monitorDeviceIds,monitorDevice,waitTime,processStatus,careCount,assessment,createTime,createUserId,updateTime,updateUserId,smsCount)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.siteId},#{item.siteName},#{item.personId},#{item.name},#{item.contact},#{item.idCard},#{item.service},#{item.queueNo},#{item.monitorTime},#{item.monitorDeviceId},#{item.monitorDevice},#{item.waitTime},#{item.processStatus},#{item.createTime},#{item.createUserId},#{item.updateTime},#{item.updateUserId})
(#{item.siteId},#{item.siteName},#{item.personId},#{item.name},#{item.contact},#{item.idCard},#{item.bussinessId},#{item.bussinessName},#{item.service},#{item.queueNo},#{item.takeTime},#{item.callTime},#{item.monitorTime},#{item.monitorDeviceIds},#{item.monitorDevice},#{item.waitTime},#{item.processStatus},#{item.careCount},#{item.assessment},#{item.createTime},#{item.createUserId},#{item.updateTime},#{item.updateUserId},#{item.smsCount})
</foreach>
</insert>
......@@ -134,20 +162,32 @@
<if test="(colPickMode==0 and data.containsKey('idCard')) or (colPickMode==1 and !data.containsKey('idCard'))">
a.idCard=#{data.idCard},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessId')) or (colPickMode==1 and !data.containsKey('bussinessId'))">
a.bussinessId=#{data.bussinessId},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessIdIncrement')) or (colPickMode==1 and !data.containsKey('bussinessIdIncrement'))">
a.bussinessId=ifnull(a.bussinessId,0) + #{data.bussinessIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('bussinessName')) or (colPickMode==1 and !data.containsKey('bussinessName'))">
a.bussinessName=#{data.bussinessName},
</if>
<if test="(colPickMode==0 and data.containsKey('service')) or (colPickMode==1 and !data.containsKey('service'))">
a.service=#{data.service},
</if>
<if test="(colPickMode==0 and data.containsKey('queueNo')) or (colPickMode==1 and !data.containsKey('queueNo'))">
a.queueNo=#{data.queueNo},
</if>
<if test="(colPickMode==0 and data.containsKey('takeTime')) or (colPickMode==1 and !data.containsKey('takeTime'))">
a.takeTime=#{data.takeTime},
</if>
<if test="(colPickMode==0 and data.containsKey('callTime')) or (colPickMode==1 and !data.containsKey('callTime'))">
a.callTime=#{data.callTime},
</if>
<if test="(colPickMode==0 and data.containsKey('monitorTime')) or (colPickMode==1 and !data.containsKey('monitorTime'))">
a.monitorTime=#{data.monitorTime},
</if>
<if test="(colPickMode==0 and data.containsKey('monitorDeviceId')) or (colPickMode==1 and !data.containsKey('monitorDeviceId'))">
a.monitorDeviceId=#{data.monitorDeviceId},
</if>
<if test="(colPickMode==0 and data.containsKey('monitorDeviceIdIncrement')) or (colPickMode==1 and !data.containsKey('monitorDeviceIdIncrement'))">
a.monitorDeviceId=ifnull(a.monitorDeviceId,0) + #{data.monitorDeviceIdIncrement},
<if test="(colPickMode==0 and data.containsKey('monitorDeviceIds')) or (colPickMode==1 and !data.containsKey('monitorDeviceIds'))">
a.monitorDeviceIds=#{data.monitorDeviceIds},
</if>
<if test="(colPickMode==0 and data.containsKey('monitorDevice')) or (colPickMode==1 and !data.containsKey('monitorDevice'))">
a.monitorDevice=#{data.monitorDevice},
......@@ -161,6 +201,15 @@
<if test="(colPickMode==0 and data.containsKey('processStatus')) or (colPickMode==1 and !data.containsKey('processStatus'))">
a.processStatus=#{data.processStatus},
</if>
<if test="(colPickMode==0 and data.containsKey('careCount')) or (colPickMode==1 and !data.containsKey('careCount'))">
a.careCount=#{data.careCount},
</if>
<if test="(colPickMode==0 and data.containsKey('careCountIncrement')) or (colPickMode==1 and !data.containsKey('careCountIncrement'))">
a.careCount=ifnull(a.careCount,0) + #{data.careCountIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('assessment')) or (colPickMode==1 and !data.containsKey('assessment'))">
a.assessment=#{data.assessment},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
......@@ -179,6 +228,12 @@
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('smsCount')) or (colPickMode==1 and !data.containsKey('smsCount'))">
a.smsCount=#{data.smsCount},
</if>
<if test="(colPickMode==0 and data.containsKey('smsCountIncrement')) or (colPickMode==1 and !data.containsKey('smsCountIncrement'))">
a.smsCount=ifnull(a.smsCount,0) + #{data.smsCountIncrement},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
......@@ -243,6 +298,25 @@
</if>
</foreach>
</trim>
<trim prefix="bussinessId=(case" suffix="ELSE bussinessId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('bussinessId')) or (colPickMode==1 and !item.containsKey('bussinessId'))">
when a.id=#{item.id} then #{item.bussinessId}
</when>
<when test="(colPickMode==0 and item.containsKey('bussinessIdIncrement')) or (colPickMode==1 and !item.containsKey('bussinessIdIncrement'))">
when a.id=#{item.id} then ifnull(a.bussinessId,0) + #{item.bussinessIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="bussinessName=(case" suffix="ELSE bussinessName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('bussinessName')) or (colPickMode==1 and !item.containsKey('bussinessName'))">
when a.id=#{item.id} then #{item.bussinessName}
</if>
</foreach>
</trim>
<trim prefix="service=(case" suffix="ELSE service end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('service')) or (colPickMode==1 and !item.containsKey('service'))">
......@@ -257,6 +331,20 @@
</if>
</foreach>
</trim>
<trim prefix="takeTime=(case" suffix="ELSE takeTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('takeTime')) or (colPickMode==1 and !item.containsKey('takeTime'))">
when a.id=#{item.id} then #{item.takeTime}
</if>
</foreach>
</trim>
<trim prefix="callTime=(case" suffix="ELSE callTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('callTime')) or (colPickMode==1 and !item.containsKey('callTime'))">
when a.id=#{item.id} then #{item.callTime}
</if>
</foreach>
</trim>
<trim prefix="monitorTime=(case" suffix="ELSE monitorTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('monitorTime')) or (colPickMode==1 and !item.containsKey('monitorTime'))">
......@@ -264,16 +352,11 @@
</if>
</foreach>
</trim>
<trim prefix="monitorDeviceId=(case" suffix="ELSE monitorDeviceId end),">
<trim prefix="monitorDeviceIds=(case" suffix="ELSE monitorDeviceIds end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('monitorDeviceId')) or (colPickMode==1 and !item.containsKey('monitorDeviceId'))">
when a.id=#{item.id} then #{item.monitorDeviceId}
</when>
<when test="(colPickMode==0 and item.containsKey('monitorDeviceIdIncrement')) or (colPickMode==1 and !item.containsKey('monitorDeviceIdIncrement'))">
when a.id=#{item.id} then ifnull(a.monitorDeviceId,0) + #{item.monitorDeviceIdIncrement}
</when>
</choose>
<if test="(colPickMode==0 and item.containsKey('monitorDeviceIds')) or (colPickMode==1 and !item.containsKey('monitorDeviceIds'))">
when a.id=#{item.id} then #{item.monitorDeviceIds}
</if>
</foreach>
</trim>
<trim prefix="monitorDevice=(case" suffix="ELSE monitorDevice end),">
......@@ -302,6 +385,25 @@
</if>
</foreach>
</trim>
<trim prefix="careCount=(case" suffix="ELSE careCount end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('careCount')) or (colPickMode==1 and !item.containsKey('careCount'))">
when a.id=#{item.id} then #{item.careCount}
</when>
<when test="(colPickMode==0 and item.containsKey('careCountIncrement')) or (colPickMode==1 and !item.containsKey('careCountIncrement'))">
when a.id=#{item.id} then ifnull(a.careCount,0) + #{item.careCountIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="assessment=(case" suffix="ELSE assessment end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('assessment')) or (colPickMode==1 and !item.containsKey('assessment'))">
when a.id=#{item.id} then #{item.assessment}
</if>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
......@@ -340,6 +442,18 @@
</choose>
</foreach>
</trim>
<trim prefix="smsCount=(case" suffix="ELSE smsCount end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('smsCount')) or (colPickMode==1 and !item.containsKey('smsCount'))">
when a.id=#{item.id} then #{item.smsCount}
</when>
<when test="(colPickMode==0 and item.containsKey('smsCountIncrement')) or (colPickMode==1 and !item.containsKey('smsCountIncrement'))">
when a.id=#{item.id} then ifnull(a.smsCount,0) + #{item.smsCountIncrement}
</when>
</choose>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
......@@ -621,6 +735,54 @@
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessId')">
<if test="conditionParamRef.bussinessId != null ">
${_conditionType_} a.bussinessId = #{${_conditionParam_}.bussinessId}
</if>
<if test="conditionParamRef.bussinessId == null">
${_conditionType_} a.bussinessId is null
</if>
</if>
<if test="conditionParamRef.containsKey('bussinessIdList') and conditionParamRef.bussinessIdList.size() > 0">
${_conditionType_} a.bussinessId in
<foreach collection="conditionParamRef.bussinessIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessIdNotList') and conditionParamRef.bussinessIdNotList.size() > 0">
${_conditionType_} a.bussinessId not in
<foreach collection="conditionParamRef.bussinessIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessIdStart') and conditionParamRef.bussinessIdStart != null">
${_conditionType_} a.bussinessId <![CDATA[ >= ]]> #{${_conditionParam_}.bussinessIdStart}
</if>
<if test="conditionParamRef.containsKey('bussinessIdEnd') and conditionParamRef.bussinessIdEnd != null">
${_conditionType_} a.bussinessId <![CDATA[ <= ]]> #{${_conditionParam_}.bussinessIdEnd}
</if>
<if test="conditionParamRef.containsKey('bussinessName')">
<if test="conditionParamRef.bussinessName != null and conditionParamRef.bussinessName != ''">
${_conditionType_} a.bussinessName like #{${_conditionParam_}.bussinessName}
</if>
<if test="conditionParamRef.bussinessName == null">
${_conditionType_} a.bussinessName is null
</if>
</if>
<if test="conditionParamRef.containsKey('bussinessNameList') and conditionParamRef.bussinessNameList.size() > 0">
${_conditionType_} a.bussinessName in
<foreach collection="conditionParamRef.bussinessNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('bussinessNameNotList') and conditionParamRef.bussinessNameNotList.size() > 0">
${_conditionType_} a.bussinessName not in
<foreach collection="conditionParamRef.bussinessNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('service')">
<if test="conditionParamRef.service != null and conditionParamRef.service != ''">
......@@ -664,6 +826,36 @@
</foreach>
</if>
<if test="conditionParamRef.containsKey('takeTime')">
<if test="conditionParamRef.takeTime != null ">
${_conditionType_} a.takeTime = #{${_conditionParam_}.takeTime}
</if>
<if test="conditionParamRef.takeTime == null">
${_conditionType_} a.takeTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('takeTimeStart') and conditionParamRef.takeTimeStart != null and conditionParamRef.takeTimeStart!=''">
${_conditionType_} a.takeTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.takeTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('takeTimeEnd') and conditionParamRef.takeTimeEnd != null and conditionParamRef.takeTimeEnd!=''">
${_conditionType_} a.takeTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.takeTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('callTime')">
<if test="conditionParamRef.callTime != null ">
${_conditionType_} a.callTime = #{${_conditionParam_}.callTime}
</if>
<if test="conditionParamRef.callTime == null">
${_conditionType_} a.callTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('callTimeStart') and conditionParamRef.callTimeStart != null and conditionParamRef.callTimeStart!=''">
${_conditionType_} a.callTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.callTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('callTimeEnd') and conditionParamRef.callTimeEnd != null and conditionParamRef.callTimeEnd!=''">
${_conditionType_} a.callTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.callTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('monitorTime')">
<if test="conditionParamRef.monitorTime != null ">
${_conditionType_} a.monitorTime = #{${_conditionParam_}.monitorTime}
......@@ -678,33 +870,27 @@
<if test="conditionParamRef.containsKey('monitorTimeEnd') and conditionParamRef.monitorTimeEnd != null and conditionParamRef.monitorTimeEnd!=''">
${_conditionType_} a.monitorTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.monitorTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('monitorDeviceId')">
<if test="conditionParamRef.monitorDeviceId != null ">
${_conditionType_} a.monitorDeviceId = #{${_conditionParam_}.monitorDeviceId}
<if test="conditionParamRef.containsKey('monitorDeviceIds')">
<if test="conditionParamRef.monitorDeviceIds != null and conditionParamRef.monitorDeviceIds != ''">
${_conditionType_} a.monitorDeviceIds like #{${_conditionParam_}.monitorDeviceIds}
</if>
<if test="conditionParamRef.monitorDeviceId == null">
${_conditionType_} a.monitorDeviceId is null
<if test="conditionParamRef.monitorDeviceIds == null">
${_conditionType_} a.monitorDeviceIds is null
</if>
</if>
<if test="conditionParamRef.containsKey('monitorDeviceIdList') and conditionParamRef.monitorDeviceIdList.size() > 0">
${_conditionType_} a.monitorDeviceId in
<foreach collection="conditionParamRef.monitorDeviceIdList" open="(" close=")" index="index" item="item" separator=",">
<if test="conditionParamRef.containsKey('monitorDeviceIdsList') and conditionParamRef.monitorDeviceIdsList.size() > 0">
${_conditionType_} a.monitorDeviceIds in
<foreach collection="conditionParamRef.monitorDeviceIdsList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('monitorDeviceIdNotList') and conditionParamRef.monitorDeviceIdNotList.size() > 0">
${_conditionType_} a.monitorDeviceId not in
<foreach collection="conditionParamRef.monitorDeviceIdNotList" open="(" close=")" index="index" item="item" separator=",">
<if test="conditionParamRef.containsKey('monitorDeviceIdsNotList') and conditionParamRef.monitorDeviceIdsNotList.size() > 0">
${_conditionType_} a.monitorDeviceIds not in
<foreach collection="conditionParamRef.monitorDeviceIdsNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('monitorDeviceIdStart') and conditionParamRef.monitorDeviceIdStart != null">
${_conditionType_} a.monitorDeviceId <![CDATA[ >= ]]> #{${_conditionParam_}.monitorDeviceIdStart}
</if>
<if test="conditionParamRef.containsKey('monitorDeviceIdEnd') and conditionParamRef.monitorDeviceIdEnd != null">
${_conditionType_} a.monitorDeviceId <![CDATA[ <= ]]> #{${_conditionParam_}.monitorDeviceIdEnd}
</if>
<if test="conditionParamRef.containsKey('monitorDevice')">
<if test="conditionParamRef.monitorDevice != null and conditionParamRef.monitorDevice != ''">
......@@ -774,6 +960,54 @@
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('careCount')">
<if test="conditionParamRef.careCount != null ">
${_conditionType_} a.careCount = #{${_conditionParam_}.careCount}
</if>
<if test="conditionParamRef.careCount == null">
${_conditionType_} a.careCount is null
</if>
</if>
<if test="conditionParamRef.containsKey('careCountList') and conditionParamRef.careCountList.size() > 0">
${_conditionType_} a.careCount in
<foreach collection="conditionParamRef.careCountList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('careCountNotList') and conditionParamRef.careCountNotList.size() > 0">
${_conditionType_} a.careCount not in
<foreach collection="conditionParamRef.careCountNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('careCountStart') and conditionParamRef.careCountStart != null">
${_conditionType_} a.careCount <![CDATA[ >= ]]> #{${_conditionParam_}.careCountStart}
</if>
<if test="conditionParamRef.containsKey('careCountEnd') and conditionParamRef.careCountEnd != null">
${_conditionType_} a.careCount <![CDATA[ <= ]]> #{${_conditionParam_}.careCountEnd}
</if>
<if test="conditionParamRef.containsKey('assessment')">
<if test="conditionParamRef.assessment != null and conditionParamRef.assessment != ''">
${_conditionType_} a.assessment like #{${_conditionParam_}.assessment}
</if>
<if test="conditionParamRef.assessment == null">
${_conditionType_} a.assessment is null
</if>
</if>
<if test="conditionParamRef.containsKey('assessmentList') and conditionParamRef.assessmentList.size() > 0">
${_conditionType_} a.assessment in
<foreach collection="conditionParamRef.assessmentList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('assessmentNotList') and conditionParamRef.assessmentNotList.size() > 0">
${_conditionType_} a.assessment not in
<foreach collection="conditionParamRef.assessmentNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
......@@ -858,6 +1092,33 @@
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('smsCount')">
<if test="conditionParamRef.smsCount != null ">
${_conditionType_} a.smsCount = #{${_conditionParam_}.smsCount}
</if>
<if test="conditionParamRef.smsCount == null">
${_conditionType_} a.smsCount is null
</if>
</if>
<if test="conditionParamRef.containsKey('smsCountList') and conditionParamRef.smsCountList.size() > 0">
${_conditionType_} a.smsCount in
<foreach collection="conditionParamRef.smsCountList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('smsCountNotList') and conditionParamRef.smsCountNotList.size() > 0">
${_conditionType_} a.smsCount not in
<foreach collection="conditionParamRef.smsCountNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('smsCountStart') and conditionParamRef.smsCountStart != null">
${_conditionType_} a.smsCount <![CDATA[ >= ]]> #{${_conditionParam_}.smsCountStart}
</if>
<if test="conditionParamRef.containsKey('smsCountEnd') and conditionParamRef.smsCountEnd != null">
${_conditionType_} a.smsCount <![CDATA[ <= ]]> #{${_conditionParam_}.smsCountEnd}
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
......@@ -906,6 +1167,16 @@
<if test='orderCol.idCard != null and "DESC".equalsIgnoreCase(orderCol.idCard)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('bussinessId')">
a.bussinessId
<if test='orderCol.bussinessId != null and "DESC".equalsIgnoreCase(orderCol.bussinessId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('bussinessName')">
a.bussinessName
<if test='orderCol.bussinessName != null and "DESC".equalsIgnoreCase(orderCol.bussinessName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('service')">
a.service
<if test='orderCol.service != null and "DESC".equalsIgnoreCase(orderCol.service)'>DESC</if>
......@@ -916,14 +1187,24 @@
<if test='orderCol.queueNo != null and "DESC".equalsIgnoreCase(orderCol.queueNo)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('takeTime')">
a.takeTime
<if test='orderCol.takeTime != null and "DESC".equalsIgnoreCase(orderCol.takeTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('callTime')">
a.callTime
<if test='orderCol.callTime != null and "DESC".equalsIgnoreCase(orderCol.callTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('monitorTime')">
a.monitorTime
<if test='orderCol.monitorTime != null and "DESC".equalsIgnoreCase(orderCol.monitorTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('monitorDeviceId')">
a.monitorDeviceId
<if test='orderCol.monitorDeviceId != null and "DESC".equalsIgnoreCase(orderCol.monitorDeviceId)'>DESC</if>
<if test="orderCol.containsKey('monitorDeviceIds')">
a.monitorDeviceIds
<if test='orderCol.monitorDeviceIds != null and "DESC".equalsIgnoreCase(orderCol.monitorDeviceIds)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('monitorDevice')">
......@@ -941,6 +1222,16 @@
<if test='orderCol.processStatus != null and "DESC".equalsIgnoreCase(orderCol.processStatus)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('careCount')">
a.careCount
<if test='orderCol.careCount != null and "DESC".equalsIgnoreCase(orderCol.careCount)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('assessment')">
a.assessment
<if test='orderCol.assessment != null and "DESC".equalsIgnoreCase(orderCol.assessment)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
......@@ -961,6 +1252,11 @@
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('smsCount')">
a.smsCount
<if test='orderCol.smsCount != null and "DESC".equalsIgnoreCase(orderCol.smsCount)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
......
package com.mortals.httpclient;
import cn.hutool.core.codec.Base64;
import cn.hutool.core.io.FileUtil;
import cn.hutool.http.HttpUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.security.NoSuchAlgorithmException;
/**
......@@ -18,5 +25,22 @@ public class Test {
// byte[] result = clipher.doFinal(plainText.getBytes());
// System.out.println(Base64.encodeBase64URLSafeString(result));
String encode = Base64.encode(FileUtil.readBytes("F:\\pics\\background.jpg"));
JSONObject jsonObject = new JSONObject();
JSONArray jsonArray = new JSONArray();
JSONObject jsonObj = new JSONObject();
jsonObj.put("imageBase64",encode);
jsonArray.add(jsonObj);
jsonObject.put("userMatterDetails",jsonArray);
System.out.println(JSON.toJSONString(jsonObject));
String post = HttpUtil.post("http://192.168.0.98:11078/sst/user/matter/apply/save", JSON.toJSONString(jsonObject));
//String post = HttpUtil.post("http://192.168.0.98:11059/basics_api/sst/user/matter/apply/save", JSON.toJSONString(jsonObject));
System.out.println(post);
}
}
......@@ -67,5 +67,14 @@ Authorization: {{authToken}}
Accept: application/json
###注册人员列表导出
POST {{baseUrl}}/person/exportExcel
Authorization: {{authToken}}
Content-Type: application/json
{
"page":1,
"size":10
}
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