ard-work/src/main/java/com/ruoyi/app/task/controller/ArdAppTaskController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,104 @@ package com.ruoyi.app.task.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.app.task.domain.ArdAppTask; import com.ruoyi.app.task.service.IArdAppTaskService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; /** * appä»»å¡ç®¡çController * * @author ard * @date 2023-07-22 */ @RestController @RequestMapping("/app/task") public class ArdAppTaskController extends BaseController { @Autowired private IArdAppTaskService ardAppTaskService; /** * æ¥è¯¢appä»»å¡ç®¡çå表 */ @PreAuthorize("@ss.hasPermi('app:task:list')") @GetMapping("/list") public TableDataInfo list(ArdAppTask ardAppTask) { startPage(); List<ArdAppTask> list = ardAppTaskService.selectArdAppTaskList(ardAppTask); return getDataTable(list); } /** * 导åºappä»»å¡ç®¡çå表 */ @PreAuthorize("@ss.hasPermi('app:task:export')") @Log(title = "appä»»å¡ç®¡ç", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, ArdAppTask ardAppTask) { List<ArdAppTask> list = ardAppTaskService.selectArdAppTaskList(ardAppTask); ExcelUtil<ArdAppTask> util = new ExcelUtil<ArdAppTask>(ArdAppTask.class); util.exportExcel(response, list, "appä»»å¡ç®¡çæ°æ®"); } /** * è·åappä»»å¡ç®¡ç详ç»ä¿¡æ¯ */ @PreAuthorize("@ss.hasPermi('app:task:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") String id) { return success(ardAppTaskService.selectArdAppTaskById(id)); } /** * æ°å¢appä»»å¡ç®¡ç */ @PreAuthorize("@ss.hasPermi('app:task:add')") @Log(title = "appä»»å¡ç®¡ç", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody ArdAppTask ardAppTask) { return toAjax(ardAppTaskService.insertArdAppTask(ardAppTask)); } /** * ä¿®æ¹appä»»å¡ç®¡ç */ @PreAuthorize("@ss.hasPermi('app:task:edit')") @Log(title = "appä»»å¡ç®¡ç", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody ArdAppTask ardAppTask) { return toAjax(ardAppTaskService.updateArdAppTask(ardAppTask)); } /** * å é¤appä»»å¡ç®¡ç */ @PreAuthorize("@ss.hasPermi('app:task:remove')") @Log(title = "appä»»å¡ç®¡ç", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable String[] ids) { return toAjax(ardAppTaskService.deleteArdAppTaskByIds(ids)); } } ard-work/src/main/java/com/ruoyi/app/task/domain/ArdAppTask.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,149 @@ package com.ruoyi.app.task.domain; import java.util.List; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; /** * appä»»å¡ç®¡ç对象 ard_app_task * * @author ard * @date 2023-07-22 */ public class ArdAppTask extends BaseEntity { private static final long serialVersionUID = 1L; /** ID */ private String id; /** ä»»å¡åç§° */ @Excel(name = "ä»»å¡åç§°") private String name; /** ä»»å¡ææ¬ */ @Excel(name = "任塿æ¬") private String text; /** ä»»å¡è¯é³ */ @Excel(name = "ä»»å¡è¯é³") private String voice; /** é¨é¨ID */ @Excel(name = "é¨é¨ID") private Integer deptId; /** ç¨æ·ID */ @Excel(name = "ç¨æ·ID") private String userId; /** appä»»å¡å¾çä¿¡æ¯ */ private List<ArdAppTaskPic> ardAppTaskPicList; /** appä»»å¡å ³èå¤ç¨æ· */ private List<String> userIds; /** appä»»å¡è¯¦æ ä¿¡æ¯ */ private List<ArdAppTaskDetail> ardAppTaskDetailList; public List<ArdAppTaskPic> getArdAppTaskPicList() { return ardAppTaskPicList; } public List<String> getUserIds() { return userIds; } public void setUserIds(List<String> userIds) { this.userIds = userIds; } public void setArdAppTaskPicList(List<ArdAppTaskPic> ardAppTaskPicList) { this.ardAppTaskPicList = ardAppTaskPicList; } public void setId(String id) { this.id = id; } public String getId() { return id; } public void setName(String name) { this.name = name; } public String getName() { return name; } public void setText(String text) { this.text = text; } public String getText() { return text; } public void setVoice(String voice) { this.voice = voice; } public String getVoice() { return voice; } public void setDeptId(Integer deptId) { this.deptId = deptId; } public Integer getDeptId() { return deptId; } public void setUserId(String userId) { this.userId = userId; } public String getUserId() { return userId; } public List<ArdAppTaskDetail> getArdAppTaskDetailList() { return ardAppTaskDetailList; } public void setArdAppTaskDetailList(List<ArdAppTaskDetail> ardAppTaskDetailList) { this.ardAppTaskDetailList = ardAppTaskDetailList; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("updateBy", getUpdateBy()) .append("updateTime", getUpdateTime()) .append("id", getId()) .append("name", getName()) .append("text", getText()) .append("voice", getVoice()) .append("deptId", getDeptId()) .append("userId", getUserId()) .append("createBy", getCreateBy()) .append("createTime", getCreateTime()) .append("ardAppTaskDetailList", getArdAppTaskDetailList()) .toString(); } } ard-work/src/main/java/com/ruoyi/app/task/domain/ArdAppTaskDetail.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,149 @@ package com.ruoyi.app.task.domain; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; /** * appä»»å¡è¯¦æ 对象 ard_app_task_detail * * @author ard * @date 2023-07-22 */ public class ArdAppTaskDetail extends BaseEntity { private static final long serialVersionUID = 1L; /** ID */ private String id; /** å ´è¶£ç¹åç§° */ @Excel(name = "å ´è¶£ç¹åç§°") private String name; /** å ´è¶£ç¹ç»åº¦ */ @Excel(name = "å ´è¶£ç¹ç»åº¦") private String longitude; /** å ´è¶£ç¹çº¬åº¦ */ @Excel(name = "å ´è¶£ç¹çº¬åº¦") private String latitude; /** å ´è¶£ç¹é«å± */ @Excel(name = "å ´è¶£ç¹é«å±") private String altitude; /** å ³èç¨æ·ID */ @Excel(name = "å ³èç¨æ·ID") private String userId; /** æå¡ææ¬ */ @Excel(name = "æå¡ææ¬") private String text; /** æå¡è¯é³ */ @Excel(name = "æå¡è¯é³") private String voice; /** ä»»å¡ID */ @Excel(name = "ä»»å¡ID") private String taskId; public void setId(String id) { this.id = id; } public String getId() { return id; } public void setName(String name) { this.name = name; } public String getName() { return name; } public void setLongitude(String longitude) { this.longitude = longitude; } public String getLongitude() { return longitude; } public void setLatitude(String latitude) { this.latitude = latitude; } public String getLatitude() { return latitude; } public void setAltitude(String altitude) { this.altitude = altitude; } public String getAltitude() { return altitude; } public void setUserId(String userId) { this.userId = userId; } public String getUserId() { return userId; } public void setText(String text) { this.text = text; } public String getText() { return text; } public void setVoice(String voice) { this.voice = voice; } public String getVoice() { return voice; } public void setTaskId(String taskId) { this.taskId = taskId; } public String getTaskId() { return taskId; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("id", getId()) .append("name", getName()) .append("longitude", getLongitude()) .append("latitude", getLatitude()) .append("altitude", getAltitude()) .append("userId", getUserId()) .append("text", getText()) .append("voice", getVoice()) .append("taskId", getTaskId()) .toString(); } } ard-work/src/main/java/com/ruoyi/app/task/domain/ArdAppTaskPic.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,65 @@ package com.ruoyi.app.task.domain; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; /** * appä»»å¡å¾ç对象 ard_app_task_pic * * @author ard * @date 2023-07-22 */ public class ArdAppTaskPic extends BaseEntity { private static final long serialVersionUID = 1L; /** ID */ private String id; /** appä»»å¡ID */ @Excel(name = "appä»»å¡ID") private String taskId; /** appä»»å¡å¾çurl */ @Excel(name = "appä»»å¡å¾çurl") private String picUrl; public void setId(String id) { this.id = id; } public String getId() { return id; } public void setTaskId(String taskId) { this.taskId = taskId; } public String getTaskId() { return taskId; } public void setPicUrl(String picUrl) { this.picUrl = picUrl; } public String getPicUrl() { return picUrl; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("id", getId()) .append("taskId", getTaskId()) .append("picUrl", getPicUrl()) .toString(); } } ard-work/src/main/java/com/ruoyi/app/task/mapper/ArdAppTaskMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,113 @@ package com.ruoyi.app.task.mapper; import java.util.List; import com.ruoyi.app.task.domain.ArdAppTask; import com.ruoyi.app.task.domain.ArdAppTaskDetail; import com.ruoyi.app.task.domain.ArdAppTaskPic; /** * appä»»å¡ç®¡çMapperæ¥å£ * * @author ard * @date 2023-07-22 */ public interface ArdAppTaskMapper { /** * æ¥è¯¢appä»»å¡ç®¡ç * * @param id appä»»å¡ç®¡çä¸»é® * @return appä»»å¡ç®¡ç */ public ArdAppTask selectArdAppTaskById(String id); /** * æ¥è¯¢appä»»å¡ç®¡çå表 * * @param ardAppTask appä»»å¡ç®¡ç * @return appä»»å¡ç®¡çéå */ public List<ArdAppTask> selectArdAppTaskList(ArdAppTask ardAppTask); /** * æ°å¢appä»»å¡ç®¡ç * * @param ardAppTask appä»»å¡ç®¡ç * @return ç»æ */ public int insertArdAppTask(ArdAppTask ardAppTask); /** * ä¿®æ¹appä»»å¡ç®¡ç * * @param ardAppTask appä»»å¡ç®¡ç * @return ç»æ */ public int updateArdAppTask(ArdAppTask ardAppTask); /** * å é¤appä»»å¡ç®¡ç * * @param id appä»»å¡ç®¡çä¸»é® * @return ç»æ */ public int deleteArdAppTaskById(String id); /** * æ¹éå é¤appä»»å¡ç®¡ç * * @param ids éè¦å é¤çæ°æ®ä¸»é®éå * @return ç»æ */ public int deleteArdAppTaskByIds(String[] ids); /** * æ¹éå é¤appä»»å¡å¾ç * * @param ids éè¦å é¤çæ°æ®ä¸»é®éå * @return ç»æ */ public int deleteArdAppTaskPicByTaskIds(String[] ids); /** * æ¹éæ°å¢appä»»å¡å¾ç * * @param ardAppTaskPicList appä»»å¡å¾çå表 * @return ç»æ */ public int batchArdAppTaskPic(List<ArdAppTaskPic> ardAppTaskPicList); /** * éè¿appä»»å¡ç®¡ç主é®å é¤appä»»å¡å¾çä¿¡æ¯ * * @param id appä»»å¡ç®¡çID * @return ç»æ */ public int deleteArdAppTaskPicByTaskId(String id); /** * æ¹éå é¤appä»»å¡è¯¦æ * * @param ids éè¦å é¤çæ°æ®ä¸»é®éå * @return ç»æ */ public int deleteArdAppTaskDetailByTaskIds(String[] ids); /** * æ¹éæ°å¢appä»»å¡è¯¦æ * * @param ardAppTaskDetailList appä»»å¡è¯¦æ å表 * @return ç»æ */ public int batchArdAppTaskDetail(List<ArdAppTaskDetail> ardAppTaskDetailList); /** * éè¿appä»»å¡ç®¡ç主é®å é¤appä»»å¡è¯¦æ ä¿¡æ¯ * * @param id appä»»å¡ç®¡çID * @return ç»æ */ public int deleteArdAppTaskDetailByTaskId(String id); } ard-work/src/main/java/com/ruoyi/app/task/service/IArdAppTaskService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,61 @@ package com.ruoyi.app.task.service; import java.util.List; import com.ruoyi.app.task.domain.ArdAppTask; /** * appä»»å¡ç®¡çServiceæ¥å£ * * @author ard * @date 2023-07-22 */ public interface IArdAppTaskService { /** * æ¥è¯¢appä»»å¡ç®¡ç * * @param id appä»»å¡ç®¡çä¸»é® * @return appä»»å¡ç®¡ç */ public ArdAppTask selectArdAppTaskById(String id); /** * æ¥è¯¢appä»»å¡ç®¡çå表 * * @param ardAppTask appä»»å¡ç®¡ç * @return appä»»å¡ç®¡çéå */ public List<ArdAppTask> selectArdAppTaskList(ArdAppTask ardAppTask); /** * æ°å¢appä»»å¡ç®¡ç * * @param ardAppTask appä»»å¡ç®¡ç * @return ç»æ */ public int insertArdAppTask(ArdAppTask ardAppTask); /** * ä¿®æ¹appä»»å¡ç®¡ç * * @param ardAppTask appä»»å¡ç®¡ç * @return ç»æ */ public int updateArdAppTask(ArdAppTask ardAppTask); /** * æ¹éå é¤appä»»å¡ç®¡ç * * @param ids éè¦å é¤çappä»»å¡ç®¡ç主é®éå * @return ç»æ */ public int deleteArdAppTaskByIds(String[] ids); /** * å é¤appä»»å¡ç®¡çä¿¡æ¯ * * @param id appä»»å¡ç®¡çä¸»é® * @return ç»æ */ public int deleteArdAppTaskById(String id); } ard-work/src/main/java/com/ruoyi/app/task/service/impl/ArdAppTaskServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,190 @@ package com.ruoyi.app.task.service.impl; import java.util.List; import com.ruoyi.app.task.domain.ArdAppTaskDetail; import com.ruoyi.app.tasktext.domain.ArdAppTaskText; import com.ruoyi.app.tasktext.mapper.ArdAppTaskTextMapper; import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.uuid.IdUtils; import com.ruoyi.common.utils.uuid.UUID; import org.springframework.beans.factory.annotation.Autowired; 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; import com.ruoyi.app.task.domain.ArdAppTaskPic; 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; /** * appä»»å¡ç®¡çServiceä¸å¡å±å¤ç * * @author ard * @date 2023-07-22 */ @Service public class ArdAppTaskServiceImpl implements IArdAppTaskService { @Resource private ArdAppTaskMapper ardAppTaskMapper; @Resource private ArdAppTaskTextMapper ardAppTaskTextMapper; /** * æ¥è¯¢appä»»å¡ç®¡ç * * @param id appä»»å¡ç®¡çä¸»é® * @return appä»»å¡ç®¡ç */ @Override public ArdAppTask selectArdAppTaskById(String id) { return ardAppTaskMapper.selectArdAppTaskById(id); } /** * æ¥è¯¢appä»»å¡ç®¡çå表 * * @param ardAppTask appä»»å¡ç®¡ç * @return appä»»å¡ç®¡ç */ @Override @DataScope(deptAlias = "d", userAlias = "u") public List<ArdAppTask> selectArdAppTaskList(ArdAppTask ardAppTask) { return ardAppTaskMapper.selectArdAppTaskList(ardAppTask); } /** * æ°å¢appä»»å¡ç®¡ç * * @param ardAppTask appä»»å¡ç®¡ç * @return ç»æ */ @Transactional @Override public int insertArdAppTask(ArdAppTask ardAppTask) { ardAppTask.setId(IdUtils.simpleUUID()); ardAppTask.setUserId(SecurityUtils.getUserId()); ardAppTask.setCreateBy(SecurityUtils.getUsername()); ardAppTask.setCreateTime(DateUtils.getNowDate()); int rows = ardAppTaskMapper.insertArdAppTask(ardAppTask); insertArdAppTaskPic(ardAppTask); insertArdAppTaskDetail(ardAppTask); insertArdAppTaskText(ardAppTask); return rows; } /** * ä¿®æ¹appä»»å¡ç®¡ç * * @param ardAppTask appä»»å¡ç®¡ç * @return ç»æ */ @Transactional @Override public int updateArdAppTask(ArdAppTask ardAppTask) { ardAppTask.setUpdateBy(SecurityUtils.getUsername()); ardAppTask.setUpdateTime(DateUtils.getNowDate()); ardAppTaskMapper.deleteArdAppTaskPicByTaskId(ardAppTask.getId()); ardAppTaskMapper.deleteArdAppTaskDetailByTaskId(ardAppTask.getId()); insertArdAppTaskPic(ardAppTask); insertArdAppTaskDetail(ardAppTask); return ardAppTaskMapper.updateArdAppTask(ardAppTask); } /** * æ¹éå é¤appä»»å¡ç®¡ç * * @param ids éè¦å é¤çappä»»å¡ç®¡çä¸»é® * @return ç»æ */ @Transactional @Override public int deleteArdAppTaskByIds(String[] ids) { ardAppTaskMapper.deleteArdAppTaskPicByTaskIds(ids); return ardAppTaskMapper.deleteArdAppTaskByIds(ids); } /** * å é¤appä»»å¡ç®¡çä¿¡æ¯ * * @param id appä»»å¡ç®¡çä¸»é® * @return ç»æ */ @Transactional @Override public int deleteArdAppTaskById(String id) { ardAppTaskMapper.deleteArdAppTaskPicByTaskId(id); return ardAppTaskMapper.deleteArdAppTaskById(id); } /** * æ°å¢appä»»å¡å¾çä¿¡æ¯ * * @param ardAppTask appä»»å¡ç®¡ç对象 */ public void insertArdAppTaskPic(ArdAppTask ardAppTask) { List<ArdAppTaskPic> ardAppTaskPicList = ardAppTask.getArdAppTaskPicList(); String id = ardAppTask.getId(); if (StringUtils.isNotNull(ardAppTaskPicList)) { List<ArdAppTaskPic> list = new ArrayList<ArdAppTaskPic>(); for (ArdAppTaskPic ardAppTaskPic :ardAppTaskPicList) { ardAppTaskPic.setId(IdUtils.simpleUUID()); ardAppTaskPic.setTaskId(id); list.add(ardAppTaskPic); } if (list.size() > 0) { ardAppTaskMapper.batchArdAppTaskPic(list); } } } /** * æ°å¢appä»»å¡è¯¦æ ä¿¡æ¯ * * @param ardAppTask appä»»å¡ç®¡ç对象 */ public void insertArdAppTaskDetail(ArdAppTask ardAppTask) { List<String> userIds = ardAppTask.getUserIds(); for(String userId:userIds) { List<ArdAppTaskDetail> ardAppTaskDetailList = ardAppTask.getArdAppTaskDetailList(); String id = ardAppTask.getId(); if (StringUtils.isNotNull(ardAppTaskDetailList)) { List<ArdAppTaskDetail> list = new ArrayList<ArdAppTaskDetail>(); for (ArdAppTaskDetail ardAppTaskDetail : ardAppTaskDetailList) { ardAppTaskDetail.setId(IdUtils.simpleUUID()); ardAppTaskDetail.setTaskId(id); ardAppTaskDetail.setUserId(userId); list.add(ardAppTaskDetail); } if (list.size() > 0) { ardAppTaskMapper.batchArdAppTaskDetail(list); } } } } /** * æ°å¢appä»»å¡æè¿°ä¿¡æ¯ * * @param ardAppTask appä»»å¡ç®¡ç对象 */ public void insertArdAppTaskText(ArdAppTask ardAppTask) { String userId = ardAppTask.getUserId(); String text = ardAppTask.getText(); ArdAppTaskText ardAppTaskText=new ArdAppTaskText(); ardAppTaskText.setId(IdUtils.simpleUUID()); ardAppTaskText.setUserId(userId); ardAppTaskText.setText(text); List<ArdAppTaskText> ardAppTaskTexts = ardAppTaskTextMapper.selectArdAppTaskTextList(ardAppTaskText); if(ardAppTaskTexts.size()==0) { ardAppTaskTextMapper.insertArdAppTaskText(ardAppTaskText); } } } ard-work/src/main/java/com/ruoyi/app/tasktext/controller/ArdAppTaskTextController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,104 @@ package com.ruoyi.app.tasktext.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.app.tasktext.domain.ArdAppTaskText; import com.ruoyi.app.tasktext.service.IArdAppTaskTextService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; /** * appä»»å¡æè¿°Controller * * @author ard * @date 2023-07-22 */ @RestController @RequestMapping("/task/text") public class ArdAppTaskTextController extends BaseController { @Autowired private IArdAppTaskTextService ardAppTaskTextService; /** * æ¥è¯¢appä»»å¡æè¿°å表 */ @PreAuthorize("@ss.hasPermi('task:text:list')") @GetMapping("/list") public TableDataInfo list(ArdAppTaskText ardAppTaskText) { startPage(); List<ArdAppTaskText> list = ardAppTaskTextService.selectArdAppTaskTextList(ardAppTaskText); return getDataTable(list); } /** * 导åºappä»»å¡æè¿°å表 */ @PreAuthorize("@ss.hasPermi('task:text:export')") @Log(title = "appä»»å¡æè¿°", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, ArdAppTaskText ardAppTaskText) { List<ArdAppTaskText> list = ardAppTaskTextService.selectArdAppTaskTextList(ardAppTaskText); ExcelUtil<ArdAppTaskText> util = new ExcelUtil<ArdAppTaskText>(ArdAppTaskText.class); util.exportExcel(response, list, "appä»»å¡æè¿°æ°æ®"); } /** * è·åappä»»å¡æè¿°è¯¦ç»ä¿¡æ¯ */ @PreAuthorize("@ss.hasPermi('task:text:query')") @GetMapping(value = "/{userId}") public AjaxResult getInfo(@PathVariable("userId") String userId) { return success(ardAppTaskTextService.selectArdAppTaskTextByUserId(userId)); } /** * æ°å¢appä»»å¡æè¿° */ @PreAuthorize("@ss.hasPermi('task:text:add')") @Log(title = "appä»»å¡æè¿°", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody ArdAppTaskText ardAppTaskText) { return toAjax(ardAppTaskTextService.insertArdAppTaskText(ardAppTaskText)); } /** * ä¿®æ¹appä»»å¡æè¿° */ @PreAuthorize("@ss.hasPermi('task:text:edit')") @Log(title = "appä»»å¡æè¿°", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody ArdAppTaskText ardAppTaskText) { return toAjax(ardAppTaskTextService.updateArdAppTaskText(ardAppTaskText)); } /** * å é¤appä»»å¡æè¿° */ @PreAuthorize("@ss.hasPermi('task:text:remove')") @Log(title = "appä»»å¡æè¿°", businessType = BusinessType.DELETE) @DeleteMapping("/{userIds}") public AjaxResult remove(@PathVariable String[] userIds) { return toAjax(ardAppTaskTextService.deleteArdAppTaskTextByUserIds(userIds)); } } ard-work/src/main/java/com/ruoyi/app/tasktext/domain/ArdAppTaskText.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,65 @@ package com.ruoyi.app.tasktext.domain; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; /** * appä»»å¡æè¿°å¯¹è±¡ ard_app_task_text * * @author ard * @date 2023-07-22 */ public class ArdAppTaskText extends BaseEntity { private static final long serialVersionUID = 1L; /** ç¨æ·ID */ @Excel(name = "ç¨æ·ID") private String userId; /** appä»»å¡æè¿° */ @Excel(name = "appä»»å¡æè¿°") private String text; /** ID */ private String id; public void setUserId(String userId) { this.userId = userId; } public String getUserId() { return userId; } public void setText(String text) { this.text = text; } public String getText() { return text; } public void setId(String id) { this.id = id; } public String getId() { return id; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("userId", getUserId()) .append("text", getText()) .append("id", getId()) .toString(); } } ard-work/src/main/java/com/ruoyi/app/tasktext/mapper/ArdAppTaskTextMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,61 @@ package com.ruoyi.app.tasktext.mapper; import java.util.List; import com.ruoyi.app.tasktext.domain.ArdAppTaskText; /** * appä»»å¡æè¿°Mapperæ¥å£ * * @author ard * @date 2023-07-22 */ public interface ArdAppTaskTextMapper { /** * æ¥è¯¢appä»»å¡æè¿° * * @param userId appä»»å¡æè¿°ä¸»é® * @return appä»»å¡æè¿° */ public ArdAppTaskText selectArdAppTaskTextByUserId(String userId); /** * æ¥è¯¢appä»»å¡æè¿°å表 * * @param ardAppTaskText appä»»å¡æè¿° * @return appä»»å¡æè¿°éå */ public List<ArdAppTaskText> selectArdAppTaskTextList(ArdAppTaskText ardAppTaskText); /** * æ°å¢appä»»å¡æè¿° * * @param ardAppTaskText appä»»å¡æè¿° * @return ç»æ */ public int insertArdAppTaskText(ArdAppTaskText ardAppTaskText); /** * ä¿®æ¹appä»»å¡æè¿° * * @param ardAppTaskText appä»»å¡æè¿° * @return ç»æ */ public int updateArdAppTaskText(ArdAppTaskText ardAppTaskText); /** * å é¤appä»»å¡æè¿° * * @param userId appä»»å¡æè¿°ä¸»é® * @return ç»æ */ public int deleteArdAppTaskTextByUserId(String userId); /** * æ¹éå é¤appä»»å¡æè¿° * * @param userIds éè¦å é¤çæ°æ®ä¸»é®éå * @return ç»æ */ public int deleteArdAppTaskTextByUserIds(String[] userIds); } ard-work/src/main/java/com/ruoyi/app/tasktext/service/IArdAppTaskTextService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,61 @@ package com.ruoyi.app.tasktext.service; import java.util.List; import com.ruoyi.app.tasktext.domain.ArdAppTaskText; /** * appä»»å¡æè¿°Serviceæ¥å£ * * @author ard * @date 2023-07-22 */ public interface IArdAppTaskTextService { /** * æ¥è¯¢appä»»å¡æè¿° * * @param userId appä»»å¡æè¿°ä¸»é® * @return appä»»å¡æè¿° */ public ArdAppTaskText selectArdAppTaskTextByUserId(String userId); /** * æ¥è¯¢appä»»å¡æè¿°å表 * * @param ardAppTaskText appä»»å¡æè¿° * @return appä»»å¡æè¿°éå */ public List<ArdAppTaskText> selectArdAppTaskTextList(ArdAppTaskText ardAppTaskText); /** * æ°å¢appä»»å¡æè¿° * * @param ardAppTaskText appä»»å¡æè¿° * @return ç»æ */ public int insertArdAppTaskText(ArdAppTaskText ardAppTaskText); /** * ä¿®æ¹appä»»å¡æè¿° * * @param ardAppTaskText appä»»å¡æè¿° * @return ç»æ */ public int updateArdAppTaskText(ArdAppTaskText ardAppTaskText); /** * æ¹éå é¤appä»»å¡æè¿° * * @param userIds éè¦å é¤çappä»»å¡æè¿°ä¸»é®éå * @return ç»æ */ public int deleteArdAppTaskTextByUserIds(String[] userIds); /** * å é¤appä»»å¡æè¿°ä¿¡æ¯ * * @param userId appä»»å¡æè¿°ä¸»é® * @return ç»æ */ public int deleteArdAppTaskTextByUserId(String userId); } ard-work/src/main/java/com/ruoyi/app/tasktext/service/impl/ArdAppTaskTextServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,89 @@ package com.ruoyi.app.tasktext.service.impl; import java.util.List; import com.ruoyi.common.utils.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.app.tasktext.mapper.ArdAppTaskTextMapper; import com.ruoyi.app.tasktext.domain.ArdAppTaskText; import com.ruoyi.app.tasktext.service.IArdAppTaskTextService; /** * appä»»å¡æè¿°Serviceä¸å¡å±å¤ç * * @author ard * @date 2023-07-22 */ @Service public class ArdAppTaskTextServiceImpl implements IArdAppTaskTextService { @Autowired private ArdAppTaskTextMapper ardAppTaskTextMapper; /** * æ¥è¯¢appä»»å¡æè¿° * * @param userId appä»»å¡æè¿°ä¸»é® * @return appä»»å¡æè¿° */ @Override public ArdAppTaskText selectArdAppTaskTextByUserId(String userId) { return ardAppTaskTextMapper.selectArdAppTaskTextByUserId(userId); } /** * æ¥è¯¢appä»»å¡æè¿°å表 * * @param ardAppTaskText appä»»å¡æè¿° * @return appä»»å¡æè¿° */ @Override public List<ArdAppTaskText> selectArdAppTaskTextList(ArdAppTaskText ardAppTaskText) { return ardAppTaskTextMapper.selectArdAppTaskTextList(ardAppTaskText); } /** * æ°å¢appä»»å¡æè¿° * * @param ardAppTaskText appä»»å¡æè¿° * @return ç»æ */ @Override public int insertArdAppTaskText(ArdAppTaskText ardAppTaskText) { ardAppTaskText.setUserId(SecurityUtils.getUserId()); return ardAppTaskTextMapper.insertArdAppTaskText(ardAppTaskText); } /** * ä¿®æ¹appä»»å¡æè¿° * * @param ardAppTaskText appä»»å¡æè¿° * @return ç»æ */ @Override public int updateArdAppTaskText(ArdAppTaskText ardAppTaskText) { return ardAppTaskTextMapper.updateArdAppTaskText(ardAppTaskText); } /** * æ¹éå é¤appä»»å¡æè¿° * * @param userIds éè¦å é¤çappä»»å¡æè¿°ä¸»é® * @return ç»æ */ @Override public int deleteArdAppTaskTextByUserIds(String[] userIds) { return ardAppTaskTextMapper.deleteArdAppTaskTextByUserIds(userIds); } /** * å é¤appä»»å¡æè¿°ä¿¡æ¯ * * @param userId appä»»å¡æè¿°ä¸»é® * @return ç»æ */ @Override public int deleteArdAppTaskTextByUserId(String userId) { return ardAppTaskTextMapper.deleteArdAppTaskTextByUserId(userId); } } ard-work/src/main/resources/mapper/app/ArdAppTaskMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,190 @@ <?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="com.ruoyi.app.task.mapper.ArdAppTaskMapper"> <resultMap type="ArdAppTask" id="ArdAppTaskResult"> <result property="id" column="id"/> <result property="name" column="name"/> <result property="text" column="text"/> <result property="voice" column="voice"/> <result property="deptId" column="dept_id"/> <result property="userId" column="user_id"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> </resultMap> <resultMap id="ArdAppTaskArdAppTaskPicResult" type="ArdAppTask" extends="ArdAppTaskResult"> <collection property="ardAppTaskPicList" notNullColumn="sub_id" javaType="java.util.List" resultMap="ArdAppTaskPicResult"/> </resultMap> <resultMap id="ArdAppTaskArdAppTaskDetailResult" type="ArdAppTask" extends="ArdAppTaskResult"> <collection property="ardAppTaskDetailList" notNullColumn="sub_id" javaType="java.util.List" resultMap="ArdAppTaskDetailResult"/> </resultMap> <resultMap type="ArdAppTaskDetail" id="ArdAppTaskDetailResult"> <result property="id" column="sub_id"/> <result property="name" column="sub_name"/> <result property="longitude" column="sub_longitude"/> <result property="latitude" column="sub_latitude"/> <result property="altitude" column="sub_altitude"/> <result property="userId" column="sub_user_id"/> <result property="text" column="sub_text"/> <result property="voice" column="sub_voice"/> <result property="taskId" column="sub_task_id"/> </resultMap> <resultMap type="ArdAppTaskPic" id="ArdAppTaskPicResult"> <result property="id" column="sub_id"/> <result property="taskId" column="sub_task_id"/> <result property="picUrl" column="sub_pic_url"/> </resultMap> <sql id="selectArdAppTaskVo"> select c.id, c.name, c.text, c.voice, c.dept_id, c.user_id, c.create_by, c.create_time, c.update_by, c.update_time from ard_app_task c left join sys_dept d on d.dept_id = c.dept_id left join sys_user u on u.user_id = c.user_id </sql> <select id="selectArdAppTaskList" parameterType="ArdAppTask" resultMap="ArdAppTaskResult"> <include refid="selectArdAppTaskVo"/> <where> <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="deptId != null ">and (c.dept_id = #{deptId} OR c.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE cast(#{deptId} as varchar) = any(string_to_array(ancestors,',')) )) </if> <if test="userId != null and userId != ''">and user_id = #{userId}</if> <!-- æ°æ®èå´è¿æ»¤ --> ${params.dataScope} </where> </select> <select id="selectArdAppTaskById" parameterType="String" resultMap="ArdAppTaskArdAppTaskPicResult"> select a.id, a.name, a.text, a.voice, a.dept_id, a.user_id, a.create_by, a.create_time, a.update_by, a.update_time, b.id as sub_id, b.task_id as sub_task_id, b.pic_url as sub_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 a.id = #{id} </select> <insert id="insertArdAppTask" parameterType="ArdAppTask"> insert into ard_app_task <trim prefix="(" suffix=")" suffixOverrides=","> <if test="id != null">id,</if> <if test="name != null">name,</if> <if test="text != null">text,</if> <if test="voice != null">voice,</if> <if test="deptId != null">dept_id,</if> <if test="userId != null">user_id,</if> <if test="createBy != null">create_by,</if> <if test="createTime != null">create_time,</if> <if test="updateBy != null">update_by,</if> <if test="updateTime != null">update_time,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null">#{id},</if> <if test="name != null">#{name},</if> <if test="text != null">#{text},</if> <if test="voice != null">#{voice},</if> <if test="deptId != null">#{deptId},</if> <if test="userId != null">#{userId},</if> <if test="createBy != null">#{createBy},</if> <if test="createTime != null">#{createTime},</if> <if test="updateBy != null">#{updateBy},</if> <if test="updateTime != null">#{updateTime},</if> </trim> </insert> <update id="updateArdAppTask" parameterType="ArdAppTask"> update ard_app_task <trim prefix="SET" suffixOverrides=","> <if test="name != null">name = #{name},</if> <if test="text != null">text = #{text},</if> <if test="voice != null">voice = #{voice},</if> <if test="deptId != null">dept_id = #{deptId},</if> <if test="userId != null">user_id = #{userId},</if> <if test="createBy != null">create_by = #{createBy},</if> <if test="createTime != null">create_time = #{createTime},</if> <if test="updateBy != null">update_by = #{updateBy},</if> <if test="updateTime != null">update_time = #{updateTime},</if> </trim> where id = #{id} </update> <delete id="deleteArdAppTaskById" parameterType="String"> delete from ard_app_task where id = #{id} </delete> <delete id="deleteArdAppTaskByIds" parameterType="String"> delete from ard_app_task where id in <foreach item="id" collection="array" open="(" separator="," close=")"> #{id} </foreach> </delete> <delete id="deleteArdAppTaskPicByTaskIds" parameterType="String"> delete from ard_app_task_pic where task_id in <foreach item="taskId" collection="array" open="(" separator="," close=")"> #{taskId} </foreach> </delete> <delete id="deleteArdAppTaskPicByTaskId" parameterType="String"> delete from ard_app_task_pic where task_id = #{taskId} </delete> <insert id="batchArdAppTaskPic"> insert into ard_app_task_pic( id, task_id, pic_url) values <foreach item="item" index="index" collection="list" separator=","> ( #{item.id}, #{item.taskId}, #{item.picUrl}) </foreach> </insert> <delete id="deleteArdAppTaskDetailByTaskIds" parameterType="String"> delete from ard_app_task_detail where task_id in <foreach item="taskId" collection="array" open="(" separator="," close=")"> #{taskId} </foreach> </delete> <delete id="deleteArdAppTaskDetailByTaskId" parameterType="String"> delete from ard_app_task_detail where task_id = #{taskId} </delete> <insert id="batchArdAppTaskDetail"> insert into ard_app_task_detail( id, name, longitude, latitude, altitude, user_id, text, voice, task_id) 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}) </foreach> </insert> </mapper> ard-work/src/main/resources/mapper/app/ArdAppTaskTextMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,63 @@ <?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="com.ruoyi.app.tasktext.mapper.ArdAppTaskTextMapper"> <resultMap type="ArdAppTaskText" id="ArdAppTaskTextResult"> <result property="userId" column="user_id" /> <result property="text" column="text" /> <result property="id" column="id" /> </resultMap> <sql id="selectArdAppTaskTextVo"> select user_id, text, id from ard_app_task_text </sql> <select id="selectArdAppTaskTextList" parameterType="ArdAppTaskText" resultMap="ArdAppTaskTextResult"> <include refid="selectArdAppTaskTextVo"/> <where> <if test="userId != null and userId != ''"> and user_id = #{userId}</if> <if test="text != null and text != ''"> and text = #{text}</if> </where> </select> <select id="selectArdAppTaskTextByUserId" parameterType="String" resultMap="ArdAppTaskTextResult"> <include refid="selectArdAppTaskTextVo"/> where user_id = #{userId} </select> <insert id="insertArdAppTaskText" parameterType="ArdAppTaskText"> insert into ard_app_task_text <trim prefix="(" suffix=")" suffixOverrides=","> <if test="userId != null">user_id,</if> <if test="text != null">text,</if> <if test="id != null">id,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="userId != null">#{userId},</if> <if test="text != null">#{text},</if> <if test="id != null">#{id},</if> </trim> </insert> <update id="updateArdAppTaskText" parameterType="ArdAppTaskText"> update ard_app_task_text <trim prefix="SET" suffixOverrides=","> <if test="text != null">text = #{text},</if> <if test="id != null">id = #{id},</if> </trim> where user_id = #{userId} </update> <delete id="deleteArdAppTaskTextByUserId" parameterType="String"> delete from ard_app_task_text where user_id = #{userId} </delete> <delete id="deleteArdAppTaskTextByUserIds" parameterType="String"> delete from ard_app_task_text where user_id in <foreach item="userId" collection="array" open="(" separator="," close=")"> #{userId} </foreach> </delete> </mapper>