2 files modified
2 files added
| | |
| | | <insert id="savePatrolTask"> |
| | | INSERT INTO sm_patrol_task |
| | | ( |
| | | title,start_time,end_time,content,to_user_id, |
| | | id,title,start_time,end_time,content,to_user_id, |
| | | route_id,state,source,task_type,project_id, |
| | | create_dept,create_time,create_user,update_user,update_time,is_deleted,status, |
| | | patrol_group_item_id,route_coordinates |
| | | ) |
| | | VALUES |
| | | ( |
| | | #{patrolTask.title},#{patrolTask.startTime},#{patrolTask.endTime},#{patrolTask.content},#{patrolTask.toUserId}, |
| | | #{patrolTask.id},#{patrolTask.title},#{patrolTask.startTime},#{patrolTask.endTime},#{patrolTask.content},#{patrolTask.toUserId}, |
| | | #{patrolTask.routeId},#{patrolTask.state},#{patrolTask.source},#{patrolTask.taskType},#{patrolTask.projectId}, |
| | | #{patrolTask.createDept},#{patrolTask.createTime},#{patrolTask.updateUser}, |
| | | #{patrolTask.patrolGroupItemId},dmgeo.ST_LineFromText(${patrolTask.routeCoordinates}) |
| | | ); |
| | | #{patrolTask.createDept},#{patrolTask.createTime},#{patrolTask.createUser},#{patrolTask.updateUser},#{patrolTask.updateTime}, |
| | | #{patrolTask.isDeleted},#{patrolTask.status}, |
| | | #{patrolTask.patrolGroupItemId},dmgeo.ST_LineFromText(${patrolTask.routeCoordinates},0) |
| | | ) |
| | | </insert> |
| | | |
| | | <!--自定义查询详情--> |
| | |
| | | import cn.gistack.sm.patrol.entity.PatrolTask; |
| | | import cn.gistack.sm.patrol.mapper.PatrolTaskMapper; |
| | | import cn.gistack.sm.patrol.service.IPatrolTaskService; |
| | | import cn.gistack.sm.patrol.util.EnhancementServicesTool; |
| | | import cn.gistack.sm.patrol.util.IdWorker; |
| | | import cn.gistack.sm.patrol.vo.PatrolTaskVO; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import org.springblade.core.mp.base.BaseServiceImpl; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.Date; |
| | | |
| | | @Service |
| | | public class PatrolTaskServiceImpl extends BaseServiceImpl<PatrolTaskMapper, PatrolTask> implements IPatrolTaskService { |
| | |
| | | @Override |
| | | public Boolean updatePatrolTask(PatrolTask patrolTask) { |
| | | Integer update = baseMapper.updatePatrolTask(patrolTask); |
| | | // 设置基础信息 |
| | | EnhancementServicesTool enhancementServicesTool = new EnhancementServicesTool(); |
| | | enhancementServicesTool.resolveEntity(patrolTask); |
| | | //返回 |
| | | return update>0?true:false; |
| | | } |
| | |
| | | */ |
| | | @Override |
| | | public Boolean savePatrolTask(PatrolTask patrolTask) { |
| | | patrolTask.setId(IdWorker.getId()); |
| | | // 设置基础信息 |
| | | EnhancementServicesTool enhancementServicesTool = new EnhancementServicesTool(); |
| | | enhancementServicesTool.resolveEntity(patrolTask); |
| | | // 新增 |
| | | Integer save = baseMapper.savePatrolTask(patrolTask); |
| | | //返回 |
| | | return save>0?true:false; |
| New file |
| | |
| | | package cn.gistack.sm.patrol.util; |
| | | |
| | | import org.springblade.core.mp.base.BaseEntity; |
| | | import org.springblade.core.secure.BladeUser; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.utils.DateUtil; |
| | | import org.springblade.core.tool.utils.Func; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @ClassName EnhancementServicesTool |
| | | * @Description TODO 给框架重写save方法导致没有默认技术字段赋值的解决方法 |
| | | * @Author guoshilong |
| | | * @Date 2022/11/25 |
| | | * @Version 1.0 |
| | | */ |
| | | public class EnhancementServicesTool<T extends BaseEntity> { |
| | | public void resolveEntity(T entity) { |
| | | try { |
| | | BladeUser user = AuthUtil.getUser(); |
| | | Date now = DateUtil.now(); |
| | | if (entity.getId() == null) { |
| | | if (user != null) { |
| | | entity.setCreateUser(user.getUserId()); |
| | | entity.setCreateDept(Func.firstLong(user.getDeptId())); |
| | | entity.setUpdateUser(user.getUserId()); |
| | | } |
| | | |
| | | if (entity.getStatus() == null) { |
| | | entity.setStatus(1); |
| | | } |
| | | |
| | | entity.setCreateTime(now); |
| | | } else if (user != null) { |
| | | entity.setUpdateUser(user.getUserId()); |
| | | } |
| | | |
| | | entity.setUpdateTime(now); |
| | | entity.setIsDeleted(0); |
| | | |
| | | } catch (Throwable var8) { |
| | | throw var8; |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | package cn.gistack.sm.patrol.util; |
| | | |
| | | import com.baomidou.mybatisplus.core.config.GlobalConfig; |
| | | import com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator; |
| | | import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; |
| | | |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | |
| | | /** |
| | | * id 获取器 |
| | | * |
| | | */ |
| | | public class IdWorker { |
| | | |
| | | /** |
| | | * 主机和进程的机器码 |
| | | */ |
| | | private static IdentifierGenerator IDENTIFIER_GENERATOR = new DefaultIdentifierGenerator(); |
| | | |
| | | /** |
| | | * 毫秒格式化时间 |
| | | */ |
| | | public static final DateTimeFormatter MILLISECOND = DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS"); |
| | | |
| | | /** |
| | | * 获取唯一ID |
| | | * |
| | | * @return id |
| | | */ |
| | | public static long getId() { |
| | | return getId(new Object()); |
| | | } |
| | | |
| | | /** |
| | | * 获取唯一ID |
| | | * |
| | | * @return id |
| | | */ |
| | | public static long getId(Object entity) { |
| | | return IDENTIFIER_GENERATOR.nextId(entity).longValue(); |
| | | } |
| | | |
| | | /** |
| | | * 获取唯一ID |
| | | * |
| | | * @return id |
| | | */ |
| | | public static String getIdStr() { |
| | | return getIdStr(new Object()); |
| | | } |
| | | |
| | | /** |
| | | * 获取唯一ID |
| | | * |
| | | * @return id |
| | | */ |
| | | public static String getIdStr(Object entity) { |
| | | return IDENTIFIER_GENERATOR.nextId(entity).toString(); |
| | | } |
| | | |
| | | /** |
| | | * 格式化的毫秒时间 |
| | | */ |
| | | public static String getMillisecond() { |
| | | return LocalDateTime.now().format(MILLISECOND); |
| | | } |
| | | |
| | | /** |
| | | * 时间 ID = Time + ID |
| | | * <p>例如:可用于商品订单 ID</p> |
| | | */ |
| | | public static String getTimeId() { |
| | | return getMillisecond() + getIdStr(); |
| | | } |
| | | |
| | | /** |
| | | * 有参构造器 |
| | | * |
| | | * @param workerId 工作机器 ID |
| | | * @param dataCenterId 序列号 |
| | | * @see #setIdentifierGenerator(IdentifierGenerator) |
| | | */ |
| | | public static void initSequence(long workerId, long dataCenterId) { |
| | | IDENTIFIER_GENERATOR = new DefaultIdentifierGenerator(workerId, dataCenterId); |
| | | } |
| | | |
| | | /** |
| | | * 自定义id 生成方式 |
| | | * |
| | | * @param identifierGenerator id 生成器 |
| | | * @see GlobalConfig#setIdentifierGenerator(IdentifierGenerator) |
| | | */ |
| | | public static void setIdentifierGenerator(IdentifierGenerator identifierGenerator) { |
| | | IDENTIFIER_GENERATOR = identifierGenerator; |
| | | } |
| | | } |