From 0533bbabfe22484a84c85d13a391a1fd5cb949c2 Mon Sep 17 00:00:00 2001 From: Administrator <1144154118@qq.com> Date: 星期二, 25 七月 2023 14:48:06 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java | 36 +++++++++++- ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java | 10 +++ ard-work/src/main/resources/mapper/app/ArdAppTaskMapper.xml | 29 ++++++++- ard-work/src/main/java/com/ruoyi/app/position/service/IArdAppPositionService.java | 8 ++ ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java | 1 ard-work/src/main/java/com/ruoyi/app/task/controller/ArdAppTaskController.java | 1 ard-work/src/main/java/com/ruoyi/app/task/domain/ArdAppTaskDetail.java | 26 ++++++++ ard-work/src/main/java/com/ruoyi/app/position/service/impl/ArdAppPositionServiceImpl.java | 11 +++ ard-work/src/main/java/com/ruoyi/app/position/mapper/ArdAppPositionMapper.java | 7 ++ ard-work/src/main/resources/mapper/app/ArdAppPositionMapper.xml | 7 ++ 10 files changed, 125 insertions(+), 11 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java b/ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java index c3f102a..465b865 100644 --- a/ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java +++ b/ard-work/src/main/java/com/ruoyi/app/position/controller/ArdAppPositionController.java @@ -166,6 +166,16 @@ List<SysUser> offLineList=new ArrayList<>(); for(SysUser sysUser:list) { + + ArdAppPosition ardAppPosition = ardAppPositionService.selectLastArdAppPositionByUserId(sysUser.getUserId()); + if(ardAppPosition!=null) { + Map<String, Object> params =new HashMap<>(); + params.put("longitude", ardAppPosition.getLongitude()); + params.put("lagitude", ardAppPosition.getLatitude()); + params.put("altitude", ardAppPosition.getAltitude()); + params.put("bearing", ardAppPosition.getBearing()); + sysUser.setParams(params); + } Boolean online = rongCloudService.checkOnline(sysUser.getUserId()); if(online) { diff --git a/ard-work/src/main/java/com/ruoyi/app/position/mapper/ArdAppPositionMapper.java b/ard-work/src/main/java/com/ruoyi/app/position/mapper/ArdAppPositionMapper.java index 0b23c5d..117dd30 100644 --- a/ard-work/src/main/java/com/ruoyi/app/position/mapper/ArdAppPositionMapper.java +++ b/ard-work/src/main/java/com/ruoyi/app/position/mapper/ArdAppPositionMapper.java @@ -19,7 +19,14 @@ * @return app浣嶇疆 */ public ArdAppPosition selectArdAppPositionById(String id); + /** + * 鎸夌敤鎴穒d鏌ヨ鏈�鍚庣殑浣嶇疆淇℃伅 + * + * @param userId app鐢ㄦ埛涓婚敭 + * @return app浣嶇疆 + */ + public ArdAppPosition selectLastArdAppPositionByUserId(String userId); /** * 鏌ヨapp浣嶇疆鍒楄〃 * diff --git a/ard-work/src/main/java/com/ruoyi/app/position/service/IArdAppPositionService.java b/ard-work/src/main/java/com/ruoyi/app/position/service/IArdAppPositionService.java index a4fa952..05640d8 100644 --- a/ard-work/src/main/java/com/ruoyi/app/position/service/IArdAppPositionService.java +++ b/ard-work/src/main/java/com/ruoyi/app/position/service/IArdAppPositionService.java @@ -19,7 +19,13 @@ * @return app浣嶇疆 */ public ArdAppPosition selectArdAppPositionById(String id); - + /** + * 鎸夌敤鎴穒d鏌ヨ鏈�鍚庣殑浣嶇疆淇℃伅 + * + * @param userId app鐢ㄦ埛涓婚敭 + * @return app浣嶇疆 + */ + public ArdAppPosition selectLastArdAppPositionByUserId(String userId); /** * 鏌ヨapp浣嶇疆鍒楄〃 * diff --git a/ard-work/src/main/java/com/ruoyi/app/position/service/impl/ArdAppPositionServiceImpl.java b/ard-work/src/main/java/com/ruoyi/app/position/service/impl/ArdAppPositionServiceImpl.java index 14ce8c9..2214737 100644 --- a/ard-work/src/main/java/com/ruoyi/app/position/service/impl/ArdAppPositionServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/app/position/service/impl/ArdAppPositionServiceImpl.java @@ -32,7 +32,16 @@ public ArdAppPosition selectArdAppPositionById(String id) { return ardAppPositionMapper.selectArdAppPositionById(id); } - + /** + * 鎸夌敤鎴穒d鏌ヨ鏈�鍚庣殑浣嶇疆淇℃伅 + * + * @param userId app鐢ㄦ埛涓婚敭 + * @return app浣嶇疆 + */ + @Override + public ArdAppPosition selectLastArdAppPositionByUserId(String userId){ + return ardAppPositionMapper.selectLastArdAppPositionByUserId(userId); + } /** * 鏌ヨapp浣嶇疆鍒楄〃 * diff --git a/ard-work/src/main/java/com/ruoyi/app/task/controller/ArdAppTaskController.java b/ard-work/src/main/java/com/ruoyi/app/task/controller/ArdAppTaskController.java index b1cf439..0d953c3 100644 --- a/ard-work/src/main/java/com/ruoyi/app/task/controller/ArdAppTaskController.java +++ b/ard-work/src/main/java/com/ruoyi/app/task/controller/ArdAppTaskController.java @@ -51,7 +51,6 @@ @PreAuthorize("@ss.hasPermi('app:task:list')") @GetMapping("/listWithDetail") public TableDataInfo userlist(ArdAppTask ardAppTask) { - startPage(); List<ArdAppTask> ardAppTasks = ardAppTaskService.selectArdAppTaskListWithDetail(ardAppTask); return getDataTable(ardAppTasks); } diff --git a/ard-work/src/main/java/com/ruoyi/app/task/domain/ArdAppTaskDetail.java b/ard-work/src/main/java/com/ruoyi/app/task/domain/ArdAppTaskDetail.java index bf0a2a4..ba53338 100644 --- a/ard-work/src/main/java/com/ruoyi/app/task/domain/ArdAppTaskDetail.java +++ b/ard-work/src/main/java/com/ruoyi/app/task/domain/ArdAppTaskDetail.java @@ -54,9 +54,35 @@ @Excel(name = "浠诲姟ID") private String taskId; + /** + * 鐘舵�侊紙0鏈畬鎴� 1宸插畬鎴愶級 + */ + @Excel(name = "鐘舵��", readConverterExp = "0=鏈畬鎴�,1=宸插畬鎴�") + private String status; + + /** 鎵撳崱鍥剧墖url */ + @Excel(name = "鎵撳崱鍥剧墖url") + private String clockInPicUrl; + /** app浠诲姟璇︽儏鍥剧墖淇℃伅 */ private List<ArdAppTaskDetailPic> ardAppTaskDetailPic; + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getClockInPicUrl() { + return clockInPicUrl; + } + + public void setClockInPicUrl(String clockInPicUrl) { + this.clockInPicUrl = clockInPicUrl; + } + public List<ArdAppTaskDetailPic> getArdAppTaskDetailPic() { return ardAppTaskDetailPic; } diff --git a/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java b/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java index a8cf189..b084327 100644 --- a/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java @@ -1,6 +1,8 @@ package com.ruoyi.app.task.service.impl; import java.util.List; + +import com.github.pagehelper.PageHelper; import com.ruoyi.app.task.domain.ArdAppTaskDetail; import com.ruoyi.app.taskdetail.domain.ArdAppTaskDetailPic; import com.ruoyi.app.tasktext.domain.ArdAppTaskText; @@ -9,7 +11,9 @@ import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.uuid.IdUtils; import org.springframework.stereotype.Service; + import java.util.ArrayList; + import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.SecurityUtils; import org.springframework.transaction.annotation.Transactional; @@ -17,6 +21,7 @@ import com.ruoyi.app.task.mapper.ArdAppTaskMapper; import com.ruoyi.app.task.domain.ArdAppTask; import com.ruoyi.app.task.service.IArdAppTaskService; + import javax.annotation.Resource; /** @@ -54,6 +59,7 @@ public List<ArdAppTask> selectArdAppTaskList(ArdAppTask ardAppTask) { return ardAppTaskMapper.selectArdAppTaskList(ardAppTask); } + /** * 鏌ヨapp浠诲姟璇︽儏绠$悊鍒楄〃 * @@ -63,7 +69,31 @@ @Override public List<ArdAppTask> selectArdAppTaskListWithDetail(ArdAppTask ardAppTask) { ardAppTask.setUserId(SecurityUtils.getUserId()); - return ardAppTaskMapper.selectArdAppTaskListWithDetail(ardAppTask); + List<ArdAppTask> list1 = ardAppTaskMapper.selectArdAppTaskListWithDetail(ardAppTask); + List<ArdAppTask>list=new ArrayList<>(); + list.addAll(list1); + return list; +// boolean flag=false; +// List<ArdAppTask> ardAppTasks = ardAppTaskMapper.selectArdAppTaskList(ardAppTask); +// ardAppTask.setUserId(SecurityUtils.getUserId()); +// List<ArdAppTask> ardAppTasksNew=new ArrayList<>(); +// for (ArdAppTask appTask : ardAppTasks) { +// ArdAppTask task = ardAppTaskMapper.selectArdAppTaskById(appTask.getId()); +// List<ArdAppTaskDetail> ardAppTaskDetailListNew = new ArrayList<>(); +// List<ArdAppTaskDetail> ardAppTaskDetailList = task.getArdAppTaskDetailList(); +// for (ArdAppTaskDetail appTaskDetail : ardAppTaskDetailList) { +// if (appTaskDetail.getUserId().equals(ardAppTask.getUserId())) { +// ardAppTaskDetailListNew.add(appTaskDetail); +// flag=true; +// } +// } +// if(flag) { +// appTask.setArdAppTaskDetailList(ardAppTaskDetailListNew); +// ardAppTasksNew.add(appTask); +// } +// flag=false; +// } +// return ardAppTasksNew; } /** @@ -166,6 +196,7 @@ List<ArdAppTaskDetail> list = new ArrayList<ArdAppTaskDetail>(); for (ArdAppTaskDetail ardAppTaskDetail : ardAppTaskDetailList) { ardAppTaskDetail.setId(IdUtils.simpleUUID()); + ardAppTaskDetail.setStatus("0"); ardAppTaskDetail.setTaskId(id); ardAppTaskDetail.setUserId(userId); list.add(ardAppTaskDetail); @@ -185,8 +216,7 @@ public void insertArdAppTaskText(ArdAppTask ardAppTask) { String userId = ardAppTask.getUserId(); String text = ardAppTask.getText(); - if(StringUtils.isEmpty(text)) - { + if (StringUtils.isEmpty(text)) { return; } ArdAppTaskText ardAppTaskText = new ArdAppTaskText(); diff --git a/ard-work/src/main/resources/mapper/app/ArdAppPositionMapper.xml b/ard-work/src/main/resources/mapper/app/ArdAppPositionMapper.xml index 1967f0f..81371a7 100644 --- a/ard-work/src/main/resources/mapper/app/ArdAppPositionMapper.xml +++ b/ard-work/src/main/resources/mapper/app/ArdAppPositionMapper.xml @@ -29,7 +29,12 @@ <include refid="selectArdAppPositionVo"/> where id = #{id} </select> - + <select id="selectLastArdAppPositionByUserId" parameterType="String" resultMap="ArdAppPositionResult"> + <include refid="selectArdAppPositionVo"/> + where user_id = #{userId} + order by create_time desc + limit 1 + </select> <insert id="insertArdAppPosition" parameterType="ArdAppPosition"> insert into ard_app_position <trim prefix="(" suffix=")" suffixOverrides=","> diff --git a/ard-work/src/main/resources/mapper/app/ArdAppTaskMapper.xml b/ard-work/src/main/resources/mapper/app/ArdAppTaskMapper.xml index 297f886..69fbce4 100644 --- a/ard-work/src/main/resources/mapper/app/ArdAppTaskMapper.xml +++ b/ard-work/src/main/resources/mapper/app/ArdAppTaskMapper.xml @@ -32,6 +32,8 @@ <result property="text" column="sub1_text"/> <result property="voice" column="sub1_voice"/> <result property="taskId" column="sub1_task_id"/> + <result property="status" column="sub1_status"/> + <result property="clockInPicUrl" column="sub1_clock_in_pic_url"/> </resultMap> <resultMap type="ArdAppTaskPic" id="ArdAppTaskPicResult"> <result property="id" column="sub2_id"/> @@ -69,6 +71,13 @@ <if test="name != null and name != ''">and name like '%'||#{name}||'%'</if> <if test="text != null and text != ''">and text = #{text}</if> <if test="voice != null and voice != ''">and voice = #{voice}</if> + <if test="params.beginTime != null and params.beginTime != ''"><!-- 寮�濮嬫椂闂存绱� --> + and create_time >= to_timestamp(#{params.beginTime},'yyyy-MM-DD HH24:MI:ss') + </if> + <if test="params.endTime != null and params.endTime != ''"><!-- 缁撴潫鏃堕棿妫�绱� --> + and create_time <= to_timestamp(#{params.endTime},'yyyy-MM-DD HH24:MI:ss') + </if> + <if test="userId != null and userId != ''">and user_id = #{userId}</if> <!-- 鏁版嵁鑼冨洿杩囨护 --> ${params.dataScope} </where> @@ -94,11 +103,19 @@ c.altitude as sub1_altitude, c.user_id as sub1_user_id, c.text as sub1_text, - c.voice as sub1_voice + c.voice as sub1_voice, + c.status as sub1_status, + c.clock_in_pic_url as sub1_clock_in_pic_url from ard_app_task a left join ard_app_task_pic b on b.task_id = a.id left join ard_app_task_detail c on c.task_id = a.id where c.user_id = #{userId} + <if test="params.beginTime != null and params.beginTime != ''"><!-- 寮�濮嬫椂闂存绱� --> + and a.create_time >= to_timestamp(#{params.beginTime},'yyyy-MM-DD HH24:MI:ss') + </if> + <if test="params.endTime != null and params.endTime != ''"><!-- 缁撴潫鏃堕棿妫�绱� --> + and a.create_time <= to_timestamp(#{params.endTime},'yyyy-MM-DD HH24:MI:ss') + </if> </select> <select id="selectArdAppTaskById" parameterType="String" resultMap="ArdAppTaskSubResult"> select a.id, @@ -163,7 +180,9 @@ c.altitude as sub_altitude, c.user_id as sub_user_id, c.text as sub_text, - c.voice as sub_voice + c.voice as sub_voice, + c.status as sub_status, + c.clock_in_pic_url as sub_clock_in_pic_url from ard_app_task a left join ard_app_task_detail c on c.task_id = a.id where a.id = #{id} @@ -260,16 +279,18 @@ </delete> <insert id="batchArdAppTaskDetail"> - insert into ard_app_task_detail( id, name, longitude, latitude, altitude, user_id, text, voice, task_id) values + insert into ard_app_task_detail( id, name, longitude, latitude, altitude, user_id, text, voice, task_id,status,clock_in_pic_url) values <foreach item="item" index="index" collection="list" separator=","> ( #{item.id}, #{item.name}, #{item.longitude}, #{item.latitude}, #{item.altitude}, #{item.userId}, - #{item.text}, #{item.voice}, #{item.taskId}) + #{item.text}, #{item.voice}, #{item.taskId}, #{item.status}, #{item.clockInPicUrl}) </foreach> </insert> <update id="updateArdAppTaskDetail" parameterType="ArdAppTaskDetail"> update ard_app_task_detail <trim prefix="SET" suffixOverrides=","> + <if test="status != null">status = #{status},</if> + <if test="clockInPicUrl != null">clock_in_pic_url = #{clockInPicUrl},</if> <if test="text != null">text = #{text},</if> <if test="voice != null">voice = #{voice},</if> </trim> diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java index 5675fd8..d1ef403 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java @@ -140,6 +140,7 @@ */ private String rongCloudToken; + public SysUser() { } -- Gitblit v1.9.3