diff --git a/inventory-dao/src/main/java/com/rzyc/bean/task/dto/AddTaskDto.java b/inventory-dao/src/main/java/com/rzyc/bean/task/dto/AddTaskDto.java new file mode 100644 index 0000000..e842bf8 --- /dev/null +++ b/inventory-dao/src/main/java/com/rzyc/bean/task/dto/AddTaskDto.java @@ -0,0 +1,255 @@ +package com.rzyc.bean.task.dto; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.rzyc.model.OADistribution; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @Description: + * @Author: ZQW + * @CreateTime: 2022/9/23 14:43 + */ + +@ApiModel("新增任务请求参数") +public class AddTaskDto { + + @TableId("OATaskId") + @ApiModelProperty("任务id") + private String oataskid; + + @TableField("OTCId") + @ApiModelProperty("来源id") + private String otcid; + + @TableField("TaskType") + @ApiModelProperty(value = "任务类型id",required = true) + private String tasktype; + + @TableField("send_id") + @ApiModelProperty(value = "任务发布人id",required = true) + private String sendId; + + /** + * 0刚发出来 100已完成 + */ + @TableField("SysPercent") + @ApiModelProperty("0刚发出来 100已完成") + private Integer syspercent; + + @TableField("StartDate") + @DateTimeFormat(pattern = "yyyy-MM-dd ") + + @ApiModelProperty(value = "开始时间") + private Date startdate; + + @TableField("EndDate") + @DateTimeFormat(pattern = "yyyy-MM-dd ") + @ApiModelProperty("结束时间") + private Date enddate; + + @TableField("PlanEndDate") + @DateTimeFormat(pattern = "yyyy-MM-dd ") + @ApiModelProperty("计划完成时间") + private Date planenddate; + + /** + * 未执行 执行中 执行完成 + */ + @TableField("AppStatus") + @ApiModelProperty("任务状态:1、执行中 2、执行完成 3、已超时") + private String appstatus; + + @TableField("title") + @ApiModelProperty(value = "任务名称",required = true) + private String title; + + @TableField("Subject") + @ApiModelProperty(value = "任务内容",required = true) + private String subject; + + /** + * 已完成次数 + */ + @TableField("Frequency") + @ApiModelProperty("已完成次数") + private Long frequency; + + + @TableField("IsFinish") + @ApiModelProperty("任务完成状态") + private String isfinish; + + @ApiModelProperty(value = "删除状态 1、正常 2、已删除") + @TableField("del_state") + private Integer delState = 1; + + @TableField("CreatedOn") + @DateTimeFormat(pattern = "yyyy-MM-dd ") + @ApiModelProperty("创建时间") + private Date createdon; + + @TableField("CreatedBy") + @ApiModelProperty("创建人") + private String createdby; + + @TableField("ModifiedOn") + @DateTimeFormat(pattern = "yyyy-MM-dd ") + @ApiModelProperty("修改时间") + private Date modifiedon; + + @TableField("ModifiedBy") + @ApiModelProperty("修改人") + private String modifiedby; + + public String getOataskid() { + return oataskid; + } + + public void setOataskid(String oataskid) { + this.oataskid = oataskid; + } + + public String getOtcid() { + return otcid; + } + + public void setOtcid(String otcid) { + this.otcid = otcid; + } + + public String getTasktype() { + return tasktype; + } + + public void setTasktype(String tasktype) { + this.tasktype = tasktype; + } + + public String getSendId() { + return sendId; + } + + public void setSendId(String sendId) { + this.sendId = sendId; + } + + public Integer getSyspercent() { + return syspercent; + } + + public void setSyspercent(Integer syspercent) { + this.syspercent = syspercent; + } + + public Date getStartdate() { + return startdate; + } + + public void setStartdate(Date startdate) { + this.startdate = startdate; + } + + public Date getEnddate() { + return enddate; + } + + public void setEnddate(Date enddate) { + this.enddate = enddate; + } + + public Date getPlanenddate() { + return planenddate; + } + + public void setPlanenddate(Date planenddate) { + this.planenddate = planenddate; + } + + public String getAppstatus() { + return appstatus; + } + + public void setAppstatus(String appstatus) { + this.appstatus = appstatus; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getSubject() { + return subject; + } + + public void setSubject(String subject) { + this.subject = subject; + } + + public Long getFrequency() { + return frequency; + } + + public void setFrequency(Long frequency) { + this.frequency = frequency; + } + + public String getIsfinish() { + return isfinish; + } + + public void setIsfinish(String isfinish) { + this.isfinish = isfinish; + } + + public Integer getDelState() { + return delState; + } + + public void setDelState(Integer delState) { + this.delState = delState; + } + + public Date getCreatedon() { + return createdon; + } + + public void setCreatedon(Date createdon) { + this.createdon = createdon; + } + + public String getCreatedby() { + return createdby; + } + + public void setCreatedby(String createdby) { + this.createdby = createdby; + } + + public Date getModifiedon() { + return modifiedon; + } + + public void setModifiedon(Date modifiedon) { + this.modifiedon = modifiedon; + } + + public String getModifiedby() { + return modifiedby; + } + + public void setModifiedby(String modifiedby) { + this.modifiedby = modifiedby; + } +} diff --git a/inventory-dao/src/main/java/com/rzyc/bean/task/dto/IdDto.java b/inventory-dao/src/main/java/com/rzyc/bean/task/dto/IdDto.java new file mode 100644 index 0000000..e22250d --- /dev/null +++ b/inventory-dao/src/main/java/com/rzyc/bean/task/dto/IdDto.java @@ -0,0 +1,39 @@ +package com.rzyc.bean.task.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +import javax.validation.constraints.NotBlank; + +/** + * @Description: + * @Author: ZQW + * @CreateTime: 2022/9/23 11:31 + */ + +@ApiModel("id请求参数") +public class IdDto { + + @NotBlank + @ApiModelProperty(value = "请求id",required = true) + private String id; + + @ApiModelProperty(value = "关键词") + private String condition; + + public String getCondition() { + return condition; + } + + public void setCondition(String condition) { + this.condition = condition; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } +} diff --git a/inventory-dao/src/main/java/com/rzyc/bean/task/vo/ThingVo.java b/inventory-dao/src/main/java/com/rzyc/bean/task/vo/ThingVo.java new file mode 100644 index 0000000..b23ee9c --- /dev/null +++ b/inventory-dao/src/main/java/com/rzyc/bean/task/vo/ThingVo.java @@ -0,0 +1,99 @@ +package com.rzyc.bean.task.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.rzyc.model.OADistribution; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @Description: + * @Author: ZQW + * @CreateTime: 2022/9/23 11:20 + */ + +@ApiModel("待办事项返回参数") +public class ThingVo { + + @TableId("OATaskId") + @ApiModelProperty("任务id") + private String oataskid; + + @TableField("OTCId") + @ApiModelProperty("来源id") + private String otcid; + + @TableField("TaskType") + @ApiModelProperty("任务类型") + private String tasktype; + + + @TableField("StartDate") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty("开始时间") + private Date startdate; + + @TableField("EndDate") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty("结束时间") + private Date enddate; + + + + @TableField("Subject") + @ApiModelProperty("任务内容") + private String subject; + + public String getOataskid() { + return oataskid; + } + + public void setOataskid(String oataskid) { + this.oataskid = oataskid; + } + + public String getOtcid() { + return otcid; + } + + public void setOtcid(String otcid) { + this.otcid = otcid; + } + + public String getTasktype() { + return tasktype; + } + + public void setTasktype(String tasktype) { + this.tasktype = tasktype; + } + + public Date getStartdate() { + return startdate; + } + + public void setStartdate(Date startdate) { + this.startdate = startdate; + } + + public Date getEnddate() { + return enddate; + } + + public void setEnddate(Date enddate) { + this.enddate = enddate; + } + + public String getSubject() { + return subject; + } + + public void setSubject(String subject) { + this.subject = subject; + } +} diff --git a/inventory-dao/src/main/java/com/rzyc/mapper/OADistributionMapper.java b/inventory-dao/src/main/java/com/rzyc/mapper/OADistributionMapper.java index 919ee50..375fa6f 100644 --- a/inventory-dao/src/main/java/com/rzyc/mapper/OADistributionMapper.java +++ b/inventory-dao/src/main/java/com/rzyc/mapper/OADistributionMapper.java @@ -1,6 +1,8 @@ package com.rzyc.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.rzyc.bean.task.dto.IdDto; +import com.rzyc.bean.task.vo.ThingVo; import com.rzyc.model.OADistribution; import com.rzyc.model.oth.ManualLable; import org.apache.ibatis.annotations.Param; @@ -37,4 +39,6 @@ public interface OADistributionMapper extends BaseMapper { //发布任务列表 List deliverTaskList(@Param("condition")String condition); + + } diff --git a/inventory-dao/src/main/java/com/rzyc/mapper/OATaskMapper.java b/inventory-dao/src/main/java/com/rzyc/mapper/OATaskMapper.java index 6c013fd..1c0840f 100644 --- a/inventory-dao/src/main/java/com/rzyc/mapper/OATaskMapper.java +++ b/inventory-dao/src/main/java/com/rzyc/mapper/OATaskMapper.java @@ -1,6 +1,8 @@ package com.rzyc.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.rzyc.bean.task.dto.IdDto; +import com.rzyc.bean.task.vo.ThingVo; import com.rzyc.model.OADistribution; import com.rzyc.model.OATask; import org.apache.ibatis.annotations.Param; @@ -102,4 +104,10 @@ public interface OATaskMapper extends BaseMapper { Integer countConduct(@Param("listPerformId") String listPerformId); List taskList(@Param("condition") String condition); + + //待办事项列表 + List thingsList(@Param("idDto") IdDto idDto); + + //插入任务 + int insertTask(OATask oaTask); } diff --git a/inventory-dao/src/main/java/com/rzyc/model/OADistribution.java b/inventory-dao/src/main/java/com/rzyc/model/OADistribution.java index 23af2fc..a6d5ef3 100644 --- a/inventory-dao/src/main/java/com/rzyc/model/OADistribution.java +++ b/inventory-dao/src/main/java/com/rzyc/model/OADistribution.java @@ -2,6 +2,7 @@ package com.rzyc.model; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModelProperty; import java.io.Serializable; import java.util.Date; @@ -11,56 +12,72 @@ import java.util.Date; */ public class OADistribution implements Serializable { + @ApiModelProperty("主键id") @TableId("OADistributionId") private String oadistributionid; + @ApiModelProperty("任务id") @TableField("OATaskId") private String oataskid; + @ApiModelProperty("指派用户id") @TableField("sned_id") private String snedId; + @ApiModelProperty("接收用户id") @TableField("SysUserId") private String sysuserid; + @ApiModelProperty("接收用户姓名") @TableField("SysChinaName") private String syschinaname; /** * 接收人名 */ + @ApiModelProperty("接收人名") private String receiveName; + @ApiModelProperty("接收用户电话") @TableField("SysTelephone") private String systelephone; + @ApiModelProperty("任务摘要") @TableField("title") private String title; + @ApiModelProperty("任务内容") @TableField("subject") private String subject; + @ApiModelProperty("开始时间") @TableField("start_time") private Date startTime; + @ApiModelProperty("结束时间") @TableField("end_time") private Date endTime; /** * 未执行 执行中 执行完成 */ + @ApiModelProperty("1、未执行 2、执行中 3、执行完成") @TableField("AppStatus") private String appstatus; + @ApiModelProperty("创建时间") @TableField("CreatedOn") private Date createdon; + @ApiModelProperty("创建人") @TableField("CreatedBy") private String createdby; + @ApiModelProperty("修改时间") @TableField("ModifiedOn") private Date modifiedon; + @ApiModelProperty("修改人") @TableField("ModifiedBy") private String modifiedby; diff --git a/inventory-dao/src/main/java/com/rzyc/model/task/dto/AddTaskDto.java b/inventory-dao/src/main/java/com/rzyc/model/task/dto/TaskAddOrUpdateDto.java similarity index 95% rename from inventory-dao/src/main/java/com/rzyc/model/task/dto/AddTaskDto.java rename to inventory-dao/src/main/java/com/rzyc/model/task/dto/TaskAddOrUpdateDto.java index 8e7fdba..d430303 100644 --- a/inventory-dao/src/main/java/com/rzyc/model/task/dto/AddTaskDto.java +++ b/inventory-dao/src/main/java/com/rzyc/model/task/dto/TaskAddOrUpdateDto.java @@ -16,9 +16,9 @@ import java.util.Date; **/ @ApiModel("发布任务参数") -public class AddTaskDto { +public class TaskAddOrUpdateDto { - @ApiModelProperty(value = "任务接受id") + @ApiModelProperty(value = "主键id") @TableId("OADistributionId") private String oadistributionid; @@ -34,7 +34,6 @@ public class AddTaskDto { @TableField("SysUserId") private String sysuserid; - /** * 接收人名 */ @@ -59,9 +58,7 @@ public class AddTaskDto { @TableField("end_time") private Date endTime; - /** - * 未执行 执行中 执行完成 - */ + @ApiModelProperty("1、未执行 2、执行中 3、执行完成") @TableField("AppStatus") private String appstatus; diff --git a/inventory-dao/src/main/resources/mapper/OADistributionMapper.xml b/inventory-dao/src/main/resources/mapper/OADistributionMapper.xml index 6ba3794..a3971ad 100644 --- a/inventory-dao/src/main/resources/mapper/OADistributionMapper.xml +++ b/inventory-dao/src/main/resources/mapper/OADistributionMapper.xml @@ -216,4 +216,6 @@ where ob.subject like #{condition} order by ob.end_time asc + + diff --git a/inventory-dao/src/main/resources/mapper/OATaskMapper.xml b/inventory-dao/src/main/resources/mapper/OATaskMapper.xml index b5ff4cc..ef5f84c 100644 --- a/inventory-dao/src/main/resources/mapper/OATaskMapper.xml +++ b/inventory-dao/src/main/resources/mapper/OATaskMapper.xml @@ -410,4 +410,43 @@ where ot.TaskType like #{condition} order by ot.EndDate asc + + + + + insert into OATask (OATaskId, TaskType,OTCId,send_id, + SysPercent, + StartDate, EndDate, PlanEndDate, + AppStatus,title, Subject, Frequency, + IsFinish, del_state, + CreatedOn, CreatedBy, + ModifiedOn, ModifiedBy + ) + values (#{oataskid,jdbcType=VARCHAR}, + #{tasktype,jdbcType=VARCHAR}, + #{otcid,jdbcType=VARCHAR}, + #{sendId,jdbcType=VARCHAR}, + #{syspercent,jdbcType=INTEGER}, + #{startdate,jdbcType=TIMESTAMP}, #{enddate,jdbcType=TIMESTAMP}, #{planenddate,jdbcType=TIMESTAMP}, + #{appstatus,jdbcType=VARCHAR}, + #{title,jdbcType=VARCHAR}, + #{subject,jdbcType=VARCHAR}, + #{frequency,jdbcType=BIGINT}, + #{isfinish,jdbcType=VARCHAR}, + #{delState,jdbcType=VARCHAR},#{createdon,jdbcType=TIMESTAMP}, #{createdby,jdbcType=VARCHAR}, + #{modifiedon,jdbcType=TIMESTAMP}, #{modifiedby,jdbcType=VARCHAR} + ) + diff --git a/inventory-gov/src/main/java/com/rzyc/controller/TaskController.java b/inventory-gov/src/main/java/com/rzyc/controller/TaskController.java index 29aa3dc..19184cd 100644 --- a/inventory-gov/src/main/java/com/rzyc/controller/TaskController.java +++ b/inventory-gov/src/main/java/com/rzyc/controller/TaskController.java @@ -4,10 +4,12 @@ import com.common.utils.RandomNumber; import com.common.utils.StringUtils; import com.common.utils.model.MultiResult; import com.common.utils.model.SingleResult; +import com.rzyc.bean.task.dto.AddTaskDto; +import com.rzyc.bean.task.dto.IdDto; +import com.rzyc.bean.task.vo.ThingVo; import com.rzyc.model.OADistribution; import com.rzyc.model.OATask; -import com.rzyc.model.task.dto.AddTaskDto; -import com.rzyc.model.task.vo.OADistributionVo; +import com.rzyc.model.task.dto.TaskAddOrUpdateDto; import com.rzyc.model.user.SysUser; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -40,9 +42,9 @@ public class TaskController extends BaseController{ * @Author: ZQW * @Date: 2022/9/20 */ - @ApiOperation(value = "新增任务追踪") + @ApiOperation(value = "新增发布任务") @PostMapping() - public SingleResult addTask(@Valid AddTaskDto addTaskDto) throws Exception{ + public SingleResult addTask(@Valid TaskAddOrUpdateDto addTaskDto) throws Exception{ SingleResult result = new SingleResult<>(); OADistribution oaDistribution = new OADistribution(); BeanUtils.copyProperties(oaDistribution,addTaskDto); @@ -63,6 +65,10 @@ public class TaskController extends BaseController{ oaDistribution.setCreatedby(getChinaName()); oaDistribution.setCreatedon(new Date()); oaDistributionMapper.insert(oaDistribution); + }else { + oaDistribution.setModifiedby(getChinaName()); + oaDistribution.setModifiedon(new Date()); + oaDistributionMapper.updateById(oaDistribution); } return result; @@ -95,4 +101,53 @@ public class TaskController extends BaseController{ result.setData(oaTasks); return result; } + + /** + * @Description: 待办事项列表 + * @Author ZQW + * @CreateTime 2022/9/23 10:20 + */ + @ApiOperation(value = "待办事项列表") + @GetMapping("thingsList") + public MultiResult thingsList(@Valid IdDto idDto){ + MultiResult result = new MultiResult<>(); + List thingVos = oaTaskMapper.thingsList(idDto); + result.setData(thingVos); + return result; + } + + /** + * @Description: 新增任务 + * @Author ZQW + * @CreateTime 2022/9/23 14:38 + */ + @ApiOperation(value = "新增任务") + @PostMapping("addTask") + public SingleResult addTask(@Valid AddTaskDto addTaskDto) throws Exception{ + SingleResult result = new SingleResult<>(); + OATask oaTask = new OATask(); + BeanUtils.copyProperties(oaTask,addTaskDto); + //日期格式转换 + ConvertUtils.register(new DateConverter(null), java.util.Date.class); + + SysUser sysUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getSendId()); + System.out.println("用户======" + sysUser); + if(null == sysUser){ + result.setCode(0); + result.setMessage("用户不存在"); + return result; + } + + if(StringUtils.isBlank(addTaskDto.getOataskid())){ + oaTask.setOataskid(RandomNumber.getUUid()); + oaTask.setCreatedby(getChinaName()); + oaTask.setCreatedon(new Date()); + oaTaskMapper.insertTask(oaTask); + }else { + oaTask.setModifiedby(getChinaName()); + oaTask.setModifiedon(new Date()); + oaTaskMapper.updateById(oaTask); + } + return result; + } }