From 73ceaaa73dd6b73808aac425c70e0d9184f9f415 Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Fri, 19 Apr 2024 17:33:53 +0800
Subject: [PATCH] 校园安全+议事问题优化
---
src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java | 43 ++
src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java | 44 ++
src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java | 10
src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.java | 2
src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java | 43 ++
src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java | 24
src/main/java/org/springblade/modules/sms/mapper/SmsRecordMapper.xml | 1
src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java | 129 +++++++
src/main/java/org/springblade/modules/task/service/ITaskPlaceSelfCheckService.java | 7
src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java | 73 ++++
src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java | 34 ++
src/main/java/org/springblade/modules/discuss/service/impl/UserTopicsServiceImpl.java | 8
src/main/java/org/springblade/modules/task/entity/TaskPlaceRecordEntity.java | 2
src/main/java/org/springblade/modules/task/entity/TaskEntity.java | 2
src/main/java/org/springblade/modules/discuss/mapper/PublicDiscussMapper.xml | 4
src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java | 125 +++++++
src/main/java/org/springblade/modules/discuss/entity/PublicDiscussEntity.java | 9
src/main/java/org/springblade/modules/task/dto/TaskSchoolEvenDTO.java | 130 +++++++
src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml | 2
src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java | 116 ++++--
src/main/java/org/springblade/common/constant/DictConstant.java | 2
src/main/java/org/springblade/modules/sms/service/ISmsSendService.java | 2
src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml | 86 +++++
src/main/java/org/springblade/common/constant/CommonConstant.java | 2
src/main/java/org/springblade/modules/task/wrapper/TaskSchoolEvenWrapper.java | 51 +++
src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java | 10
src/main/java/org/springblade/modules/task/service/ITaskService.java | 2
src/main/java/org/springblade/xxljob/jobhandler/LabelHandleJob.java | 14
src/main/java/org/springblade/modules/sms/controller/SmsSendController.java | 18 +
29 files changed, 939 insertions(+), 56 deletions(-)
diff --git a/src/main/java/org/springblade/common/constant/CommonConstant.java b/src/main/java/org/springblade/common/constant/CommonConstant.java
index c7eb27f..bb3dbf6 100644
--- a/src/main/java/org/springblade/common/constant/CommonConstant.java
+++ b/src/main/java/org/springblade/common/constant/CommonConstant.java
@@ -86,6 +86,8 @@
Integer NUMBER_TWO = 2;
+ Integer NUMBER_FIVE = 5;
+
Integer NUMBER_THREE = 3;
Integer NUMBER_FOUR = 4;
diff --git a/src/main/java/org/springblade/common/constant/DictConstant.java b/src/main/java/org/springblade/common/constant/DictConstant.java
index a3395ea..4aecb19 100644
--- a/src/main/java/org/springblade/common/constant/DictConstant.java
+++ b/src/main/java/org/springblade/common/constant/DictConstant.java
@@ -57,6 +57,8 @@
String FIRE_SELF_CHECK_NOTICE = "消防自查";
+ String FIRE_SCHOOL_CHECK_NOTICE = "校园安全检查";
+
String NO_FRAUD_REPORTING = "无诈宣传";
String RESIDENCE_PERMIT_APPLICATION = "居住证申请";
diff --git a/src/main/java/org/springblade/modules/discuss/entity/PublicDiscussEntity.java b/src/main/java/org/springblade/modules/discuss/entity/PublicDiscussEntity.java
index 63979a0..04d4ef9 100644
--- a/src/main/java/org/springblade/modules/discuss/entity/PublicDiscussEntity.java
+++ b/src/main/java/org/springblade/modules/discuss/entity/PublicDiscussEntity.java
@@ -89,6 +89,15 @@
private Date endTime;
/**
+ * 开始时间
+ */
+ @ApiModelProperty(value = "开始时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField("start_time")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date startTime;
+
+ /**
* 文章id
*/
@ApiModelProperty(value = "文章id", example = "")
diff --git a/src/main/java/org/springblade/modules/discuss/mapper/PublicDiscussMapper.xml b/src/main/java/org/springblade/modules/discuss/mapper/PublicDiscussMapper.xml
index 038ade7..1a7096b 100644
--- a/src/main/java/org/springblade/modules/discuss/mapper/PublicDiscussMapper.xml
+++ b/src/main/java/org/springblade/modules/discuss/mapper/PublicDiscussMapper.xml
@@ -11,6 +11,7 @@
<result property="voteRestrictions" column="vote_restrictions" />
<result property="userRestrictions" column="user_restrictions" />
<result property="endTime" column="end_time" />
+ <result property="startTime" column="start_time" />
<result property="articleId" column="article_id" />
<result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" />
@@ -32,6 +33,7 @@
vote_restrictions,
user_restrictions,
end_time,
+ start_time,
article_id,
create_time,
update_time,
@@ -54,6 +56,7 @@
jpd.vote_restrictions,
jpd.user_restrictions,
jpd.end_time,
+ jpd.start_time,
jpd.article_id,
jpd.create_time,
jpd.update_time,
@@ -120,6 +123,7 @@
jpd.vote_restrictions,
jpd.user_restrictions,
jpd.end_time,
+ jpd.start_time,
jpd.article_id,
jpd.create_time,
jpd.update_time,
diff --git a/src/main/java/org/springblade/modules/discuss/service/impl/UserTopicsServiceImpl.java b/src/main/java/org/springblade/modules/discuss/service/impl/UserTopicsServiceImpl.java
index 410328f..eba7dc5 100644
--- a/src/main/java/org/springblade/modules/discuss/service/impl/UserTopicsServiceImpl.java
+++ b/src/main/java/org/springblade/modules/discuss/service/impl/UserTopicsServiceImpl.java
@@ -130,9 +130,13 @@
.eq(HouseholdEntity::getIsDeleted, 0)
.last("limit 1"));
IPublicDiscussService bean = SpringUtil.getBean(IPublicDiscussService.class);
- PublicDiscussEntity one = bean.getOne(Wrappers.<PublicDiscussEntity>lambdaQuery().eq(PublicDiscussEntity::getArticleId, topicsList.get(0).getArticleId()));
+ PublicDiscussEntity discussEntity = bean.getOne(Wrappers.<PublicDiscussEntity>lambdaQuery().eq(PublicDiscussEntity::getArticleId, topicsList.get(0).getArticleId()));
+ // 判断是否在开始和结束时间内
+ if (discussEntity.getStartTime().getTime() > System.currentTimeMillis() || discussEntity.getEndTime().getTime() < System.currentTimeMillis()) {
+ return "目前不在投票时间内";
+ }
// 一户一票
- if (one.getVoteRestrictions().equals(CommonConstant.NUMBER_ONE)) {
+ if (discussEntity.getVoteRestrictions().equals(CommonConstant.NUMBER_ONE)) {
long count = count(Wrappers.<UserTopicsEntity>lambdaQuery()
.eq(UserTopicsEntity::getHouseCode, topicsList.get(0).getHouseCode())
.eq(UserTopicsEntity::getArticleId, topicsList.get(0).getArticleId()));
diff --git a/src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java b/src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java
index fd50bf9..f3a65c4 100644
--- a/src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java
+++ b/src/main/java/org/springblade/modules/nursingCheckIn/entity/NursingCheckInEntity.java
@@ -87,4 +87,14 @@
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@TableField(value = "create_time",fill = FieldFill.INSERT)
private Date createTime;
+
+ /** 经度 */
+ @ApiModelProperty(value = "经度", example = "")
+ @TableField("longitude")
+ private String longitude;
+
+ /** 纬度 */
+ @ApiModelProperty(value = "纬度", example = "")
+ @TableField("latitude")
+ private String latitude;
}
diff --git a/src/main/java/org/springblade/modules/sms/controller/SmsSendController.java b/src/main/java/org/springblade/modules/sms/controller/SmsSendController.java
index f8fbe63..37f0288 100644
--- a/src/main/java/org/springblade/modules/sms/controller/SmsSendController.java
+++ b/src/main/java/org/springblade/modules/sms/controller/SmsSendController.java
@@ -53,6 +53,9 @@
/**
* 发送居住申请通知
+ * @param templateId 模版id
+ * @param residenceId 居住证申请记录id
+ * @return
*/
@GetMapping("/sendNotice")
@ApiOperationSupport(order = 1)
@@ -63,5 +66,20 @@
return R.status(aBoolean);
}
+ /**
+ *
+ * @param templateId
+ * @param placeSelfCheckId
+ * @return
+ */
+ @GetMapping("/sendRectificationNotice")
+ @ApiOperationSupport(order = 1)
+ @ApiOperation(value = "发送整改完成通知")
+ public R<SmsTemplateVO> sendRectificationNotice(@RequestParam("templateId") Long templateId,
+ @RequestParam(value = "placeSelfCheckId",required = false) Long placeSelfCheckId) {
+ Boolean aBoolean = iSmsSendService.sendRectificationNotice(templateId,placeSelfCheckId);
+ return R.status(aBoolean);
+ }
+
}
diff --git a/src/main/java/org/springblade/modules/sms/mapper/SmsRecordMapper.xml b/src/main/java/org/springblade/modules/sms/mapper/SmsRecordMapper.xml
index 31de588..4d0d185 100644
--- a/src/main/java/org/springblade/modules/sms/mapper/SmsRecordMapper.xml
+++ b/src/main/java/org/springblade/modules/sms/mapper/SmsRecordMapper.xml
@@ -20,6 +20,7 @@
<if test="smsRecord.updateTime != null ">and update_time = #{smsRecord.updateTime}</if>
<if test="smsRecord.status != null ">and status = #{smsRecord.status}</if>
<if test="smsRecord.isDeleted != null ">and is_deleted = #{smsRecord.isDeleted}</if>
+ order by create_time desc
</where>
</select>
diff --git a/src/main/java/org/springblade/modules/sms/service/ISmsSendService.java b/src/main/java/org/springblade/modules/sms/service/ISmsSendService.java
index f589f43..a4792a9 100644
--- a/src/main/java/org/springblade/modules/sms/service/ISmsSendService.java
+++ b/src/main/java/org/springblade/modules/sms/service/ISmsSendService.java
@@ -36,4 +36,6 @@
Boolean sendNotice(Long templateId,Long residenceId);
+
+ Boolean sendRectificationNotice(Long templateId,Long placeSelfCheckId);
}
diff --git a/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java b/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
index 23d6f0a..a887043 100644
--- a/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
+++ b/src/main/java/org/springblade/modules/sms/service/impl/SmsSendServiceImpl.java
@@ -37,7 +37,11 @@
import org.springblade.modules.sms.service.ISmsTemplateService;
import org.springblade.modules.sms.entity.SmsRecordEntity;
import org.springblade.modules.sms.service.ISmsRecordService;
+import org.springblade.modules.system.service.IUserService;
+import org.springblade.modules.system.vo.UserVO;
+import org.springblade.modules.task.entity.TaskPlaceSelfCheckEntity;
import org.springblade.modules.task.entity.TaskResidencePermitApplyEntity;
+import org.springblade.modules.task.service.ITaskPlaceSelfCheckService;
import org.springblade.modules.task.service.ITaskResidencePermitApplyService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -78,6 +82,11 @@
public Boolean sendVerificationCode(String phone) {
if (phone == null || phone.length() != 11) {
logger.error("手机号格式错误");
+ return false;
+ }
+
+ if (redisTemplate.exists(SMS_VALIDATE_PHONE_NUM + phone)) {
+ logger.error("同一个手机号一分钟内只能发送一条记录");
return false;
}
@@ -138,13 +147,12 @@
/**
- *
* @param templateId
* @param residenceId
* @return
*/
@Override
- public Boolean sendNotice( Long templateId, Long residenceId) {
+ public Boolean sendNotice(Long templateId, Long residenceId) {
Sms serviceOne = iSmsService.getOne(Wrappers.<Sms>lambdaQuery().eq(Sms::getStatus, 2));
if (serviceOne == null) {
@@ -197,6 +205,67 @@
}
/**
+ * @param templateId
+ * @param placeSelfCheckId
+ * @return
+ */
+ @Override
+ public Boolean sendRectificationNotice(Long templateId, Long placeSelfCheckId) {
+
+ Sms serviceOne = iSmsService.getOne(Wrappers.<Sms>lambdaQuery().eq(Sms::getStatus, 2));
+ if (serviceOne == null) {
+ logger.error("未找到状态为2的Sms服务");
+ return false;
+ }
+ SmsTemplateEntity smsTemplateEntity = iSmsTemplateService.getOne(Wrappers.<SmsTemplateEntity>lambdaQuery()
+ .eq(SmsTemplateEntity::getId, templateId));
+ if (smsTemplateEntity == null) {
+ logger.error("未找到对应的短信模板");
+ return false;
+ }
+ ITaskPlaceSelfCheckService bean = SpringUtils.getBean(ITaskPlaceSelfCheckService.class);
+ TaskPlaceSelfCheckEntity placeSelfCheckEntity = bean.getById(placeSelfCheckId);
+ IUserService userService = SpringUtils.getBean(IUserService.class);
+ UserVO userVO = userService.getuserById(placeSelfCheckEntity.getId());
+ String phone = userVO.getPhone();
+ //发送的手机号
+ List<Map> phonesList = new ArrayList<>();
+ Map phoneMap = new HashMap();
+ phoneMap.put("phone", phone);
+ List<String> varList = new ArrayList<>();
+ // 设置参数
+
+ varList.add(userVO.getName());
+ varList.add(placeSelfCheckEntity.getPlaceName());
+ phoneMap.put("varList", varList);
+ phonesList.add(phoneMap);
+ //短信内容
+ String content = smsTemplateEntity.getContent();
+ //发送时间
+ LocalDateTime nowDateTime = LocalDateTime.now();
+ String send_time = nowDateTime.format(SECOND_FORMATTER);
+ Map params = new HashMap();
+ params.put("phones", phonesList);
+ //短信主题
+ params.put("subject", "对外接口不同内容发送-动态模板");
+ params.put("content", content);
+ //短信模板
+ params.put("template_id", null);
+ // 发送时间
+ params.put("send_time", send_time);
+ //优先级,高级=5,中级=3,低级=1
+ params.put("priority", "1");
+ //不同内容发送类型,1=动态模板发送,2=文件内容发送
+ params.put("type", "1");
+ //创建人主键
+ params.put("sop_create_by", serviceOne.getSmsCode());
+ //短信发送记录
+ saveSmsRecord(phone, serviceOne, placeSelfCheckEntity.getPlaceName(), content);
+ Boolean aBoolean = sendSmsGet(serviceOne, params);
+ return aBoolean;
+ }
+
+ /**
* 发送短信并获取发送结果。
*
* @param serviceOne 用于发送短信的服务对象
diff --git a/src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java b/src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java
new file mode 100644
index 0000000..f350aa0
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/controller/TaskSchoolEvenController.java
@@ -0,0 +1,125 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.task.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.task.service.ITaskSchoolEvenService;
+import org.springblade.modules.task.vo.TaskSchoolEvenVO;
+import org.springblade.modules.task.wrapper.TaskSchoolEvenWrapper;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 校园事件 控制器
+ *
+ * @author BladeX
+ * @since 2024-04-18
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-taskSchoolEven/taskSchoolEven")
+@Api(value = "校园事件", tags = "校园事件接口")
+public class TaskSchoolEvenController extends BladeController {
+
+ private final ITaskSchoolEvenService taskSchoolEvenService;
+
+ /**
+ * 校园事件 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @ApiOperation(value = "详情", notes = "传入taskSchoolEven")
+ public R<TaskSchoolEvenVO> detail(TaskSchoolEvenEntity taskSchoolEven) {
+ TaskSchoolEvenEntity detail = taskSchoolEvenService.getOne(Condition.getQueryWrapper(taskSchoolEven));
+ return R.data(TaskSchoolEvenWrapper.build().entityVO(detail));
+ }
+ /**
+ * 校园事件 分页
+ */
+ @GetMapping("/list")
+ @ApiOperationSupport(order = 2)
+ @ApiOperation(value = "分页", notes = "传入taskSchoolEven")
+ public R<IPage<TaskSchoolEvenVO>> list(TaskSchoolEvenEntity taskSchoolEven, Query query) {
+ IPage<TaskSchoolEvenEntity> pages = taskSchoolEvenService.page(Condition.getPage(query), Condition.getQueryWrapper(taskSchoolEven));
+ return R.data(TaskSchoolEvenWrapper.build().pageVO(pages));
+ }
+
+ /**
+ * 校园事件 自定义分页
+ */
+ @GetMapping("/page")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "分页", notes = "传入taskSchoolEven")
+ public R<IPage<TaskSchoolEvenVO>> page(TaskSchoolEvenVO taskSchoolEven, Query query) {
+ IPage<TaskSchoolEvenVO> pages = taskSchoolEvenService.selectTaskSchoolEvenPage(Condition.getPage(query), taskSchoolEven);
+ return R.data(pages);
+ }
+
+ /**
+ * 校园事件 新增
+ */
+ @PostMapping("/save")
+ @ApiOperationSupport(order = 4)
+ @ApiOperation(value = "新增", notes = "传入taskSchoolEven")
+ public R save(@Valid @RequestBody TaskSchoolEvenEntity taskSchoolEven) {
+ return R.status(taskSchoolEvenService.save(taskSchoolEven));
+ }
+
+ /**
+ * 校园事件 修改
+ */
+ @PostMapping("/update")
+ @ApiOperationSupport(order = 5)
+ @ApiOperation(value = "修改", notes = "传入taskSchoolEven")
+ public R update(@Valid @RequestBody TaskSchoolEvenEntity taskSchoolEven) {
+ return R.status(taskSchoolEvenService.updateById(taskSchoolEven));
+ }
+
+ /**
+ * 校园事件 新增或修改
+ */
+ @PostMapping("/submit")
+ @ApiOperationSupport(order = 6)
+ @ApiOperation(value = "新增或修改", notes = "传入taskSchoolEven")
+ public R submit(@Valid @RequestBody TaskSchoolEvenEntity taskSchoolEven) {
+ return R.status(taskSchoolEvenService.saveOrUpdate(taskSchoolEven));
+ }
+
+ /**
+ * 校园事件 删除
+ */
+ @PostMapping("/remove")
+ @ApiOperationSupport(order = 7)
+ @ApiOperation(value = "逻辑删除", notes = "传入ids")
+ public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+ return R.status(taskSchoolEvenService.removeBatchByIds(Func.toLongList(ids)));
+ }
+
+
+}
diff --git a/src/main/java/org/springblade/modules/task/dto/TaskSchoolEvenDTO.java b/src/main/java/org/springblade/modules/task/dto/TaskSchoolEvenDTO.java
new file mode 100644
index 0000000..a26449d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/dto/TaskSchoolEvenDTO.java
@@ -0,0 +1,130 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.task.dto;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * 校园事件 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-04-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TaskSchoolEvenDTO extends TaskSchoolEvenEntity {
+ private static final long serialVersionUID = 1L;
+
+
+ /** id */
+ @ApiModelProperty(value = "主键ID", example = "")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ /** 创建人 */
+ @ApiModelProperty(value = "创建人", example = "")
+ @TableField("create_user")
+ private Long createUser;
+
+ /** 图片 */
+ @ApiModelProperty(value = "图片", example = "")
+ @TableField("images")
+ private String images;
+
+ /** 描述 */
+ @ApiModelProperty(value = "描述", example = "")
+ @TableField("describe")
+ private String describe;
+
+ /** 隐患类型 */
+ @ApiModelProperty(value = "隐患类型", example = "")
+ @TableField("hidden_danger_type")
+ private String hiddenDangerType;
+
+ /** 类型 1:隐患 2:矛盾 */
+ @ApiModelProperty(value = "类型 1:隐患 2:矛盾", example = "")
+ @TableField("type")
+ private String type;
+
+ /** 是否问题 1:是 2:否 */
+ @ApiModelProperty(value = "是否问题 1:是 2:否", example = "")
+ @TableField("is_problem")
+ private String isProblem;
+
+ /** 是否处理 1:是 2:否 */
+ @ApiModelProperty(value = "是否处理 1:是 2:否", example = "")
+ @TableField("is_handle")
+ private String isHandle;
+
+ /** 是否上报 1:是 2:否 */
+ @ApiModelProperty(value = "是否上报 1:是 2:否", example = "")
+ @TableField("is_reporting")
+ private String isReporting;
+
+ /** 工作照片 */
+ @ApiModelProperty(value = "工作照片", example = "")
+ @TableField("work_image")
+ private String workImage;
+
+ /** 确认标记 1:待审核 2:审核通过 3:审核不通过 */
+ @ApiModelProperty(value = "确认标记 1:待审核 2:审核通过 3:审核不通过 ", example = "")
+ @TableField("confirm_flag")
+ private String confirmFlag;
+
+ /** 确认时间 */
+ @ApiModelProperty(value = "确认时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField("confirm_time")
+ private Date confirmTime;
+
+ /** 确认用户ID */
+ @ApiModelProperty(value = "确认用户ID", example = "")
+ @TableField("confirm_user_id")
+ private Long confirmUserId;
+
+ /** 确认用户ID */
+ @ApiModelProperty(value = "确认用户ID", example = "")
+ @TableField("confirm_user_name")
+ private String confirmUserName;
+
+ /** 确认意见 */
+ @ApiModelProperty(value = "确认意见", example = "")
+ @TableField("confirm_notion")
+ private String confirmNotion;
+
+ /** 创建时间 */
+ @ApiModelProperty(value = "创建时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField(value = "create_time",fill = FieldFill.INSERT)
+ private Date createTime;
+
+ /** 更新时间 */
+ @ApiModelProperty(value = "更新时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField(value = "update_time",fill = FieldFill.UPDATE)
+ private Date updateTime;
+}
diff --git a/src/main/java/org/springblade/modules/task/entity/TaskEntity.java b/src/main/java/org/springblade/modules/task/entity/TaskEntity.java
index 060e161..9509d83 100644
--- a/src/main/java/org/springblade/modules/task/entity/TaskEntity.java
+++ b/src/main/java/org/springblade/modules/task/entity/TaskEntity.java
@@ -63,7 +63,7 @@
private String houseCode;
/** 事件类型(1:取保候审,2.居住证申请 3 统战部事件上报 5二手交易 6.无诈 7.消防自查任务 8 九小整改任务) */
- @ApiModelProperty(value = "事件类型(1:取保候审,2.居住证申请 3 统战部事件上报 5二手交易 6.无诈 7.消防自查任务 8 九小整改任务 )", example = "")
+ @ApiModelProperty(value = "事件类型(1:取保候审,2.居住证申请 3 统战部事件上报 4校园安全 5二手交易 6.无诈 7.消防自查任务 8 九小整改任务 )", example = "")
@TableField("report_type")
private Integer reportType;
/**
diff --git a/src/main/java/org/springblade/modules/task/entity/TaskPlaceRecordEntity.java b/src/main/java/org/springblade/modules/task/entity/TaskPlaceRecordEntity.java
index af4331a..8ebe2fe 100644
--- a/src/main/java/org/springblade/modules/task/entity/TaskPlaceRecordEntity.java
+++ b/src/main/java/org/springblade/modules/task/entity/TaskPlaceRecordEntity.java
@@ -103,7 +103,7 @@
private Date rectificationTime;
/** 1 自查 2.无诈 */
- @ApiModelProperty(value = "1 自查 2.无诈", example = "")
+ @ApiModelProperty(value = "1 自查 2.无诈 3:校园安全检查", example = "")
@TableField("type")
private String type;
}
diff --git a/src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java b/src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java
index f5d6bef..52313ae 100644
--- a/src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java
+++ b/src/main/java/org/springblade/modules/task/entity/TaskPlaceSelfCheckEntity.java
@@ -133,4 +133,14 @@
@ApiModelProperty(value = "0:否 1:是", example = "")
@TableField("delete_flag")
private Integer deleteFlag;
+
+ /** 1:消防自查 2:校园安全检查 */
+ @ApiModelProperty(value = "1:消防自查 2:校园安全检查", example = "")
+ @TableField("type")
+ private String type;
+
+ /** 1:否 2:是 */
+ @ApiModelProperty(value = "1:否 2:是", example = "")
+ @TableField("send_sms_flag")
+ private String sendSmsFlag;
}
diff --git a/src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java b/src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java
new file mode 100644
index 0000000..ac77e31
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/entity/TaskSchoolEvenEntity.java
@@ -0,0 +1,129 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.task.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.util.Date;
+
+/**
+ * 校园事件 实体类
+ *
+ * @author BladeX
+ * @since 2024-04-18
+ */
+@Data
+@TableName("jczz_task_school_even")
+@ApiModel(value = "TaskSchoolEven对象", description = "校园事件")
+public class TaskSchoolEvenEntity {
+
+
+
+ /** id */
+ @ApiModelProperty(value = "主键ID", example = "")
+ @TableId(value = "id", type = IdType.ASSIGN_ID)
+ private Long id;
+
+ /** 创建人 */
+ @ApiModelProperty(value = "创建人", example = "")
+ @TableField("create_user")
+ private Long createUser;
+
+ /** 图片 */
+ @ApiModelProperty(value = "图片", example = "")
+ @TableField("images")
+ private String images;
+
+ /** 描述 */
+ @ApiModelProperty(value = "描述", example = "")
+ @TableField("describe")
+ private String describe;
+
+ /** 隐患类型 */
+ @ApiModelProperty(value = "隐患类型", example = "")
+ @TableField("hidden_danger_type")
+ private String hiddenDangerType;
+
+ /** 类型 1:隐患 2:矛盾 */
+ @ApiModelProperty(value = "类型 1:隐患 2:矛盾", example = "")
+ @TableField("type")
+ private String type;
+
+ /** 是否问题 1:是 2:否 */
+ @ApiModelProperty(value = "是否问题 1:是 2:否", example = "")
+ @TableField("is_problem")
+ private String isProblem;
+
+ /** 是否处理 1:是 2:否 */
+ @ApiModelProperty(value = "是否处理 1:是 2:否", example = "")
+ @TableField("is_handle")
+ private String isHandle;
+
+ /** 是否上报 1:是 2:否 */
+ @ApiModelProperty(value = "是否上报 1:是 2:否", example = "")
+ @TableField("is_reporting")
+ private String isReporting;
+
+ /** 工作照片 */
+ @ApiModelProperty(value = "工作照片", example = "")
+ @TableField("work_image")
+ private String workImage;
+
+ /** 确认标记 1:待审核 2:审核通过 3:审核不通过 */
+ @ApiModelProperty(value = "确认标记 1:待审核 2:审核通过 3:审核不通过 ", example = "")
+ @TableField("confirm_flag")
+ private String confirmFlag;
+
+ /** 确认时间 */
+ @ApiModelProperty(value = "确认时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField("confirm_time")
+ private Date confirmTime;
+
+ /** 确认用户ID */
+ @ApiModelProperty(value = "确认用户ID", example = "")
+ @TableField("confirm_user_id")
+ private Long confirmUserId;
+
+ /** 确认用户ID */
+ @ApiModelProperty(value = "确认用户ID", example = "")
+ @TableField("confirm_user_name")
+ private String confirmUserName;
+
+ /** 确认意见 */
+ @ApiModelProperty(value = "确认意见", example = "")
+ @TableField("confirm_notion")
+ private String confirmNotion;
+
+ /** 创建时间 */
+ @ApiModelProperty(value = "创建时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField(value = "create_time",fill = FieldFill.INSERT)
+ private Date createTime;
+
+ /** 更新时间 */
+ @ApiModelProperty(value = "更新时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField(value = "update_time",fill = FieldFill.UPDATE)
+ private Date updateTime;
+}
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.java b/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.java
index fe6ab63..b11761d 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.java
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.java
@@ -78,7 +78,7 @@
@Param("regionChildCodesList") List<String> regionChildCodesList,
@Param("gridCodeList") List<String> gridCodeList);
- Integer getCount(String neiCode, int i,Long userId);
+ Integer getCount(String neiCode, int status,Long userId, int type);
/**
* 消防自查详情查询
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml
index 381b8bb..1f113c4 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskPlaceSelfCheckMapper.xml
@@ -80,6 +80,7 @@
<if test="place.updateTime != null ">and jpc.update_time = #{place.updateTime}</if>
<if test="place.createTime != null ">and jpc.create_time = #{place.createTime}</if>
<if test="place.houseCode != null and place.houseCode != ''">and jpc.house_code = #{place.houseCode}</if>
+ <if test="place.type != null and place.type != ''">and jpc.type = #{place.type}</if>
<if test="place.rectificationEndTime != null ">and jpc.rectification_end_time =
#{place.rectificationEndTime}
</if>
@@ -492,6 +493,7 @@
WHERE jp.jw_grid_code IN
(SELECT jpag.jw_grid_code FROM jczz_police_affairs_grid jpag WHERE jpag.police_user_id like concat('%',#{userId},'%') )
AND jtpsc.`status` = 1
+ AND jtpsc.`type` = #{type}
AND jg.community_code=#{neiCode}
</select>
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java b/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java
new file mode 100644
index 0000000..aae8651
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.task.mapper;
+
+import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
+import org.springblade.modules.task.vo.TaskSchoolEvenVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 校园事件 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-04-18
+ */
+public interface TaskSchoolEvenMapper extends BaseMapper<TaskSchoolEvenEntity> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param taskSchoolEven
+ * @return
+ */
+ List<TaskSchoolEvenVO> selectTaskSchoolEvenPage(IPage page, TaskSchoolEvenVO taskSchoolEven);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml
new file mode 100644
index 0000000..833782e
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskSchoolEvenMapper.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.task.mapper.TaskSchoolEvenMapper">
+
+ <!-- 通用查询映射结果 -->
+ <resultMap id="taskSchoolEvenResultMap" type="org.springblade.modules.task.entity.TaskSchoolEvenEntity">
+ </resultMap>
+
+
+ <select id="selectTaskSchoolEvenPage" resultMap="taskSchoolEvenResultMap">
+ select * from jczz_task_school_even
+ </select>
+
+ <resultMap type="org.springblade.modules.task.dto.TaskSchoolEvenDTO" id="TaskSchoolEvenDTOResult">
+ <result property="id" column="id" />
+ <result property="createUser" column="create_user" />
+ <result property="images" column="images" />
+ <result property="describe" column="describe" />
+ <result property="hiddenDangerType" column="hidden_danger_type" />
+ <result property="type" column="type" />
+ <result property="isProblem" column="is_problem" />
+ <result property="isHandle" column="is_handle" />
+ <result property="isReporting" column="is_reporting" />
+ <result property="workImage" column="work_image" />
+ <result property="confirmFlag" column="confirm_flag" />
+ <result property="confirmTime" column="confirm_time" />
+ <result property="confirmUserId" column="confirm_user_id" />
+ <result property="confirmUserName" column="confirm_user_name" />
+ <result property="confirmNotion" column="confirm_notion" />
+ <result property="createTime" column="create_time" />
+ <result property="updateTime" column="update_time" />
+ </resultMap>
+
+ <sql id="selectTaskSchoolEven">
+ select
+ id,
+ create_user,
+ images,
+ describe,
+ hidden_danger_type,
+ type,
+ is_problem,
+ is_handle,
+ is_reporting,
+ work_image,
+ confirm_flag,
+ confirm_time,
+ confirm_user_id,
+ confirm_user_name,
+ confirm_notion,
+ create_time,
+ update_time
+ from
+ jczz_task_school_even
+ </sql>
+
+<!-- <select id="selectTaskSchoolEvenById" parameterType="long" resultMap="TaskSchoolEvenDTOResult">-->
+<!-- <include refid="selectTaskSchoolEven"/>-->
+<!-- where-->
+<!-- id = #{id}-->
+<!-- </select>-->
+
+<!-- <select id="selectTaskSchoolEvenList" parameterType="org.springblade.modules..dto.TaskSchoolEvenDTO" resultMap="TaskSchoolEvenDTOResult">-->
+<!-- <include refid="selectTaskSchoolEven"/>-->
+<!-- <where>-->
+<!-- <if test="id != null "> and id = #{id}</if>-->
+<!-- <if test="createUser != null "> and create_user = #{createUser}</if>-->
+<!-- <if test="images != null and images != ''"> and images = #{images}</if>-->
+<!-- <if test="describe != null and describe != ''"> and describe = #{describe}</if>-->
+<!-- <if test="hiddenDangerType != null and hiddenDangerType != ''"> and hidden_danger_type = #{hiddenDangerType}</if>-->
+<!-- <if test="type != null and type != ''"> and type = #{type}</if>-->
+<!-- <if test="isProblem != null and isProblem != ''"> and is_problem = #{isProblem}</if>-->
+<!-- <if test="isHandle != null and isHandle != ''"> and is_handle = #{isHandle}</if>-->
+<!-- <if test="isReporting != null and isReporting != ''"> and is_reporting = #{isReporting}</if>-->
+<!-- <if test="workImage != null and workImage != ''"> and work_image = #{workImage}</if>-->
+<!-- <if test="confirmFlag != null and confirmFlag != ''"> and confirm_flag = #{confirmFlag}</if>-->
+<!-- <if test="confirmTime != null "> and confirm_time = #{confirmTime}</if>-->
+<!-- <if test="confirmUserId != null "> and confirm_user_id = #{confirmUserId}</if>-->
+<!-- <if test="confirmUserName != null and confirmUserName != ''"> and confirm_user_name = #{confirmUserName}</if>-->
+<!-- <if test="confirmNotion != null and confirmNotion != ''"> and confirm_notion = #{confirmNotion}</if>-->
+<!-- <if test="createTime != null "> and create_time = #{createTime}</if>-->
+<!-- <if test="updateTime != null "> and update_time = #{updateTime}</if>-->
+<!-- </where>-->
+<!-- </select>-->
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/task/service/ITaskPlaceSelfCheckService.java b/src/main/java/org/springblade/modules/task/service/ITaskPlaceSelfCheckService.java
index e046a7f..2b07758 100644
--- a/src/main/java/org/springblade/modules/task/service/ITaskPlaceSelfCheckService.java
+++ b/src/main/java/org/springblade/modules/task/service/ITaskPlaceSelfCheckService.java
@@ -42,6 +42,7 @@
* @return
*/
IPage<TaskPlaceSelfCheckVO> selectTaskPlaceSelfCheckPage(IPage<TaskPlaceSelfCheckVO> page, TaskPlaceSelfCheckVO taskPlaceSelfCheck);
+
/**
* 查询消防自查记任务表
*
@@ -59,21 +60,21 @@
public List<TaskPlaceSelfCheckDTO> selectTaskPlaceSelfCheckList(TaskPlaceSelfCheckDTO taskPlaceSelfCheckDTO);
- Boolean savePlace(TaskPlaceSelfCheckVO taskPlaceSelfCheck) ;
+ Boolean savePlace(TaskPlaceSelfCheckVO taskPlaceSelfCheck);
Boolean updateTaskPlaceSelfCheck(TaskPlaceSelfCheckVO taskPlaceSelfCheck);
/**
* 导出消防自查信息
+ *
* @param taskPlaceSelfCheck
* @return
*/
List<TaskPlaceSelfCheckExcel> exportTaskPlaceSelfCheck(TaskPlaceSelfCheckVO taskPlaceSelfCheck);
- Integer getCount(String neiCode, int i);
+ Integer getCount(String neiCode, int i, int type);
/**
- *
* @param taskId
* @return
*/
diff --git a/src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java b/src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java
new file mode 100644
index 0000000..321ea57
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/service/ITaskSchoolEvenService.java
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.task.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import liquibase.pro.packaged.I;
+import org.springblade.modules.task.vo.TaskSchoolEvenVO;
+import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
+import org.springblade.core.mp.base.BaseService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 校园事件 服务类
+ *
+ * @author BladeX
+ * @since 2024-04-18
+ */
+public interface ITaskSchoolEvenService extends IService<TaskSchoolEvenEntity> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param taskSchoolEven
+ * @return
+ */
+ IPage<TaskSchoolEvenVO> selectTaskSchoolEvenPage(IPage<TaskSchoolEvenVO> page, TaskSchoolEvenVO taskSchoolEven);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/task/service/ITaskService.java b/src/main/java/org/springblade/modules/task/service/ITaskService.java
index 57742ff..c667956 100644
--- a/src/main/java/org/springblade/modules/task/service/ITaskService.java
+++ b/src/main/java/org/springblade/modules/task/service/ITaskService.java
@@ -87,4 +87,6 @@
Boolean examine(TaskEntity task);
boolean createResidenceSendSms(String param);
+
+ boolean createSchoolSendSms(String param);
}
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java
index 2da3a52..bf20c1c 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskPlaceSelfCheckServiceImpl.java
@@ -137,16 +137,22 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public Boolean savePlace(TaskPlaceSelfCheckVO taskPlaceSelfCheck) {
+ public Boolean savePlace(TaskPlaceSelfCheckVO taskPlaceSelfCheck) {
taskPlaceSelfCheck.setCreateUser(AuthUtil.getUserId());
// 1.保存任务表
- ITaskService bean2 = SpringUtils.getBean(ITaskService.class);
- Long aLong = bean2.saveTask(CommonConstant.NUMBER_ONE, DictConstant.FIRE_SELF_CHECK_NOTICE, 1,
- "", AuthUtil.getUserId(), taskPlaceSelfCheck.getHouseCode(), CommonConstant.NUMBER_SEVEN, 1);
- if (aLong <= 0) {
+ ITaskService iTaskService = SpringUtils.getBean(ITaskService.class);
+ Long restults;
+ if (taskPlaceSelfCheck.getType().equals("2")) {
+ restults = iTaskService.saveTask(CommonConstant.NUMBER_ONE, DictConstant.FIRE_SCHOOL_CHECK_NOTICE, 1,
+ "", AuthUtil.getUserId(), taskPlaceSelfCheck.getHouseCode(), CommonConstant.NUMBER_FOUR, 1);
+ } else {
+ restults = iTaskService.saveTask(CommonConstant.NUMBER_ONE, DictConstant.FIRE_SELF_CHECK_NOTICE, 1,
+ "", AuthUtil.getUserId(), taskPlaceSelfCheck.getHouseCode(), CommonConstant.NUMBER_SEVEN, 1);
+ }
+ if (restults <= 0) {
return false;
}
- taskPlaceSelfCheck.setTaskId(aLong);
+ taskPlaceSelfCheck.setTaskId(restults);
// 2.保存任务详情
boolean save = save(taskPlaceSelfCheck);
if (save) {
@@ -245,17 +251,17 @@
}
@Override
- public Integer getCount(String neiCode, int i) {
+ public Integer getCount(String neiCode, int status, int type) {
// 获取请求头中的角色别名
String roleName = SpringUtils.getRequestParam("roleName");
if (AuthUtils.isMj(roleName)) {
- return baseMapper.getCount(neiCode, i, AuthUtil.getUserId());
+ return baseMapper.getCount(neiCode, status, AuthUtil.getUserId(), type);
}
return 0;
}
@Override
public TaskPlaceSelfCheckEntity getDetailByTaskId(Long taskId) {
- return baseMapper.getDetailByTaskId( taskId);
+ return baseMapper.getDetailByTaskId(taskId);
}
}
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java
new file mode 100644
index 0000000..760f081
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskSchoolEvenServiceImpl.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.task.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.task.service.ITaskSchoolEvenService;
+import org.springblade.modules.task.vo.TaskSchoolEvenVO;
+import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
+import org.springblade.modules.task.mapper.TaskSchoolEvenMapper;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 校园事件 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-04-18
+ */
+@Service
+public class TaskSchoolEvenServiceImpl extends ServiceImpl<TaskSchoolEvenMapper, TaskSchoolEvenEntity> implements ITaskSchoolEvenService {
+
+ @Override
+ public IPage<TaskSchoolEvenVO> selectTaskSchoolEvenPage(IPage<TaskSchoolEvenVO> page, TaskSchoolEvenVO taskSchoolEven) {
+ return page.setRecords(baseMapper.selectTaskSchoolEvenPage(page, taskSchoolEven));
+ }
+
+
+}
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
index 3846c51..91c82c2 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
@@ -57,6 +57,8 @@
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.LocalTime;
import java.time.temporal.ChronoUnit;
import java.util.*;
import java.util.stream.Collectors;
@@ -237,22 +239,22 @@
public Object countTypeNumber(Integer roleType, String neiCode) {
TaskVO taskVO = new TaskVO();
Map<String, Object> objectObjectHashMap = new HashMap<>();
- taskVO.setStatus(1);
- taskVO.setUserId(roleType > 0 ? AuthUtil.getUserId() : null);
+ taskVO.setStatus(CommonConstant.NUMBER_ONE);
+ taskVO.setUserId(roleType > CommonConstant.NUMBER_ZERO ? AuthUtil.getUserId() : null);
taskVO.setNeiCode(neiCode);
- taskVO.setReportType(5);
- taskVO.setIsDeleted(0);
+ taskVO.setReportType(CommonConstant.NUMBER_FIVE);
+ taskVO.setIsDeleted(CommonConstant.NUMBER_ZERO);
CommonParamSet commonParamSet = new CommonParamSet().invoke(TaskVO.class, taskVO);
// 标签报事-二手交易
Integer bqsj = baseMapper.selectTaskCount(taskVO, commonParamSet.getRegionChildCodesList(),
commonParamSet.getIsAdministrator(), commonParamSet.getGridCodeList());
- taskVO.setReportType(1);
+ taskVO.setReportType(CommonConstant.NUMBER_ONE);
// 取保候审
Integer qbhs = baseMapper.selectTaskCount(taskVO, commonParamSet.getRegionChildCodesList(),
commonParamSet.getIsAdministrator(), commonParamSet.getGridCodeList());
// 报事报修
- Integer bsbx = SpringUtils.getBean(ITaskReportForRepairsService.class).getStatistics(roleType > 0 ? AuthUtil.getUserId() : null, neiCode,commonParamSet.getRegionChildCodesList(),
+ Integer bsbx = SpringUtils.getBean(ITaskReportForRepairsService.class).getStatistics(roleType > 0 ? AuthUtil.getUserId() : null, neiCode, commonParamSet.getRegionChildCodesList(),
commonParamSet.getIsAdministrator(), commonParamSet.getGridCodeList());
// 住户审核
Integer zhsh = iHouseholdService.statistics(roleType > 0 ? AuthUtil.getUserId() : null, neiCode, 0);
@@ -262,17 +264,19 @@
houseRentalTenantVO.setAuditStatus(2);
Integer czsh = iHouseRentalService.getStatisticsCount(houseRentalTenantVO);
// 场所审核
- Integer cssh = SpringUtils.getBean(IPlaceExtService.class).selectCount(roleType > 0 ? AuthUtil.getUserId() : null, neiCode, 1);
+ Integer cssh = SpringUtils.getBean(IPlaceExtService.class).selectCount(roleType > 0 ? AuthUtil.getUserId() : null, neiCode, CommonConstant.NUMBER_ONE);
// 走访日志
// 查询网格员对应的网格id
String gridCode = getGridCode();
- Integer zfrw = SpringUtils.getBean(IGridWorkLogService.class).getGridWorkCountHandleCount(gridCode, 1);
+ Integer zfrw = SpringUtils.getBean(IGridWorkLogService.class).getGridWorkCountHandleCount(gridCode, CommonConstant.NUMBER_ONE);
// 消防自查
- Integer xfzc = SpringUtils.getBean(ITaskPlaceSelfCheckService.class).getCount(neiCode, 1);
+ Integer xfzc = SpringUtils.getBean(ITaskPlaceSelfCheckService.class).getCount(neiCode, CommonConstant.NUMBER_ONE, CommonConstant.NUMBER_ONE);
+ // 校园检查
+ Integer xyjc = SpringUtils.getBean(ITaskPlaceSelfCheckService.class).getCount(neiCode, CommonConstant.NUMBER_ONE, CommonConstant.NUMBER_TWO);
// 消防隐患整改
- Integer xfyhzg = SpringUtils.getBean(ITaskPlaceRectificationService.class).getCount(neiCode, 1);
+ Integer xfyhzg = SpringUtils.getBean(ITaskPlaceRectificationService.class).getCount(neiCode, CommonConstant.NUMBER_ONE);
// 居住证申请
- Integer jzzsq = residencePermitApplyService.getCount(neiCode, 1);
+ Integer jzzsq = residencePermitApplyService.getCount(neiCode, CommonConstant.NUMBER_ONE);
// 无诈统计
taskVO.setReportType(6);
Integer wztj = baseMapper.selectTaskCount(taskVO, commonParamSet.getRegionChildCodesList(),
@@ -289,6 +293,7 @@
objectObjectHashMap.put("xfyhzg", xfyhzg);// 消防隐患整改
objectObjectHashMap.put("jzzsq", jzzsq);// 居住证申请
objectObjectHashMap.put("wztj", wztj);// 无诈
+ objectObjectHashMap.put("xyjc", xyjc);// 校园检查
return objectObjectHashMap;
}
@@ -676,7 +681,7 @@
*
* @param param 传递给发送短信任务的参数,具体用途根据实现而定。
* @return 返回一个布尔值,通常用于指示任务是否创建成功。
- * 根据实际逻辑需要调整返回值,当前示例中返回值始终为false。
+ * 根据实际逻辑需要调整返回值,当前示例中返回值始终为false。
*/
@Override
public boolean createResidenceSendSms(String param) {
@@ -695,6 +700,45 @@
return false; // 根据实际逻辑调整返回值
}
+ @Override
+ public boolean createSchoolSendSms(String param) {
+ try {
+ // 计算当前时间加一天
+ LocalDate endDate = LocalDate.now().plusDays(1);
+ // 创建表示一天结束时刻的 LocalTime 对象
+ LocalTime endOfDayTime = LocalTime.of(23, 59, 59, 999_000_000); // 纳秒精度为999毫微秒,接近最大值
+ // 合并得到加一天后的最后时刻的 LocalDateTime
+ LocalDateTime endTime = LocalDateTime.of(endDate, endOfDayTime);
+ ITaskPlaceSelfCheckService taskPlaceSelfCheckService = SpringUtils.getBean(ITaskPlaceSelfCheckService.class);
+ // 查询整改完毕且未发送短信的记录
+ List<TaskPlaceSelfCheckEntity> list = taskPlaceSelfCheckService.list(new LambdaQueryWrapper<TaskPlaceSelfCheckEntity>()
+ .eq(TaskPlaceSelfCheckEntity::getRectificationFlag, CommonConstant.NUMBER_TWO)
+ .eq(TaskPlaceSelfCheckEntity::getSendSmsFlag, CommonConstant.NUMBER_ONE)
+ .le(TaskPlaceSelfCheckEntity::getRectificationEndTime, endTime));
+ if (list == null || list.isEmpty()) {
+ return false;
+ }
+ // 用于收集成功发送短信并需更新状态的实体列表
+ List<TaskPlaceSelfCheckEntity> updatedEntities = new ArrayList<>();
+ for (TaskPlaceSelfCheckEntity updatedEntity : list) {
+ // 尝试发送短信,发送成功则更新实体状态
+ Boolean smsSent = smsSendService.sendNotice(SMS_TEMPLATE_ID, updatedEntity.getId());
+ if (smsSent) {
+ updatedEntity.setSendSmsFlag("2"); // 标记为已发送短信
+ updatedEntities.add(updatedEntity); // 加入到需更新的实体列表中
+ }
+ }
+ // 若存在需更新的实体,则批量更新这些实体的状态
+ if (!updatedEntities.isEmpty()) {
+ taskPlaceSelfCheckService.updateBatchById(updatedEntities);
+ }
+ } catch (Exception e) {
+ // 处理发送短信过程中可能出现的异常,如记录日志
+ logger.error("Error occurred while sending SMS: " + e.getMessage(), e);
+ return false; // 根据异常处理逻辑决定是否返回false或其他值
+ }
+ return false; // 根据实际逻辑调整返回值
+ }
/**
* 获取六个月前的日期。
@@ -703,8 +747,8 @@
* @return 返回一个LocalDate对象,表示六个月前的日期。
*/
private LocalDate getSixMonthsAgo() {
- // 获取当前日期并减去6个月
- return LocalDate.now().minus(6, ChronoUnit.MONTHS);
+ // 获取当前日期并减去6个月
+ return LocalDate.now().minus(6, ChronoUnit.MONTHS);
}
/**
@@ -713,35 +757,35 @@
* @param sixMonthsAgo 六个月前的日期,用于筛选确认时间在六个月之前的申请记录。
* @return 返回一个包含所有符合条件的居住证申请实体的列表。
*/
- private List<TaskResidencePermitApplyEntity> queryEntitiesToSms(LocalDate sixMonthsAgo) {
- // 使用LambdaQueryWrapper构建查询条件,筛选出确认状态为2(即确认),且未发送过短信(发送短信标志为1),确认时间在指定日期(sixMonthsAgo)之前的所有申请记录。
- return residencePermitApplyService.list(new LambdaQueryWrapper<TaskResidencePermitApplyEntity>()
- .eq(TaskResidencePermitApplyEntity::getConfirmFlag, 2)
- .eq(TaskResidencePermitApplyEntity::getSendSmsFlag, 1)
- .le(TaskResidencePermitApplyEntity::getConfirmTime, sixMonthsAgo));
- }
+ private List<TaskResidencePermitApplyEntity> queryEntitiesToSms(LocalDate sixMonthsAgo) {
+ // 使用LambdaQueryWrapper构建查询条件,筛选出确认状态为2(即确认),且未发送过短信(发送短信标志为1),确认时间在指定日期(sixMonthsAgo)之前的所有申请记录。
+ return residencePermitApplyService.list(new LambdaQueryWrapper<TaskResidencePermitApplyEntity>()
+ .eq(TaskResidencePermitApplyEntity::getConfirmFlag, 2)
+ .eq(TaskResidencePermitApplyEntity::getSendSmsFlag, 1)
+ .le(TaskResidencePermitApplyEntity::getConfirmTime, sixMonthsAgo));
+ }
/**
* 发送短信并更新实体状态
*
* @param entitiesToSms 需要发送短信并更新状态的实体列表,每个实体代表一个居住证申请任务。
- * 实体列表中每个元素应包含至少一个ID属性,用于标识申请任务。
+ * 实体列表中每个元素应包含至少一个ID属性,用于标识申请任务。
*/
- private void sendSmsAndUpdateEntities(List<TaskResidencePermitApplyEntity> entitiesToSms) {
- List<TaskResidencePermitApplyEntity> updatedEntities = new ArrayList<>(); // 用于收集成功发送短信并需更新状态的实体列表
+ private void sendSmsAndUpdateEntities(List<TaskResidencePermitApplyEntity> entitiesToSms) {
+ List<TaskResidencePermitApplyEntity> updatedEntities = new ArrayList<>(); // 用于收集成功发送短信并需更新状态的实体列表
- for (TaskResidencePermitApplyEntity entity : entitiesToSms) {
- // 尝试发送短信,发送成功则更新实体状态
- Boolean smsSent = smsSendService.sendNotice(SMS_TEMPLATE_ID, entity.getId());
- if (smsSent) {
- entity.setSendSmsFlag(2); // 标记为已发送短信
- updatedEntities.add(entity); // 加入到需更新的实体列表中
- }
- }
-
- // 若存在需更新的实体,则批量更新这些实体的状态
- if (!updatedEntities.isEmpty()) {
- residencePermitApplyService.updateBatchById(updatedEntities);
+ for (TaskResidencePermitApplyEntity entity : entitiesToSms) {
+ // 尝试发送短信,发送成功则更新实体状态
+ Boolean smsSent = smsSendService.sendNotice(SMS_TEMPLATE_ID, entity.getId());
+ if (smsSent) {
+ entity.setSendSmsFlag(2); // 标记为已发送短信
+ updatedEntities.add(entity); // 加入到需更新的实体列表中
}
}
+
+ // 若存在需更新的实体,则批量更新这些实体的状态
+ if (!updatedEntities.isEmpty()) {
+ residencePermitApplyService.updateBatchById(updatedEntities);
+ }
+ }
}
diff --git a/src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java b/src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java
new file mode 100644
index 0000000..f8e684c
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/vo/TaskSchoolEvenVO.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.task.vo;
+
+import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 校园事件 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-04-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TaskSchoolEvenVO extends TaskSchoolEvenEntity {
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/task/wrapper/TaskSchoolEvenWrapper.java b/src/main/java/org/springblade/modules/task/wrapper/TaskSchoolEvenWrapper.java
new file mode 100644
index 0000000..970aeb4
--- /dev/null
+++ b/src/main/java/org/springblade/modules/task/wrapper/TaskSchoolEvenWrapper.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.task.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.task.vo.TaskSchoolEvenVO;
+import org.springblade.modules.task.entity.TaskSchoolEvenEntity;
+
+import java.util.Objects;
+
+/**
+ * 校园事件 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-04-18
+ */
+public class TaskSchoolEvenWrapper extends BaseEntityWrapper<TaskSchoolEvenEntity, TaskSchoolEvenVO> {
+
+ public static TaskSchoolEvenWrapper build() {
+ return new TaskSchoolEvenWrapper();
+ }
+
+ @Override
+ public TaskSchoolEvenVO entityVO(TaskSchoolEvenEntity taskSchoolEven) {
+ TaskSchoolEvenVO taskSchoolEvenVO = Objects.requireNonNull(BeanUtil.copy(taskSchoolEven, TaskSchoolEvenVO.class));
+
+ //User createUser = UserCache.getUser(taskSchoolEven.getCreateUser());
+ //User updateUser = UserCache.getUser(taskSchoolEven.getUpdateUser());
+ //taskSchoolEvenVO.setCreateUserName(createUser.getName());
+ //taskSchoolEvenVO.setUpdateUserName(updateUser.getName());
+
+ return taskSchoolEvenVO;
+ }
+
+
+}
diff --git a/src/main/java/org/springblade/xxljob/jobhandler/LabelHandleJob.java b/src/main/java/org/springblade/xxljob/jobhandler/LabelHandleJob.java
index 0698e19..edbef23 100644
--- a/src/main/java/org/springblade/xxljob/jobhandler/LabelHandleJob.java
+++ b/src/main/java/org/springblade/xxljob/jobhandler/LabelHandleJob.java
@@ -55,7 +55,6 @@
@XxlJob("residenceSendSmsJobHandler")
public void residenceJobHandler (String param){
XxlJobHelper.log("开始执行任务...创建居住证发送短信定时任务");
-
// 创建居住证发送短信定时任务
boolean result = taskService.createResidenceSendSms(param);
XxlJobHelper.log("任务响应结果..." + result);
@@ -63,4 +62,17 @@
XxlJobHelper.log("结束自动创建任务...");
}
+ /**
+ * 创建校园安全发送短信定时任务
+ */
+ @XxlJob("schoolSendSmsJobHandler")
+ public void schoolJobHandler (String param){
+ XxlJobHelper.log("开始执行任务...创建校园安全发送短信定时任务");
+ // 创建居住证发送短信定时任务
+ boolean result = taskService.createSchoolSendSms(param);
+ XxlJobHelper.log("任务响应结果..." + result);
+ // 创建居住证发送短信定时任务
+ XxlJobHelper.log("结束自动创建任务...");
+ }
+
}
--
Gitblit v1.9.3