修改任务以及优化任务显示详情
This commit is contained in:
parent
f25ae4df68
commit
d3fec656bf
|
|
@ -22,7 +22,7 @@ import java.util.List;
|
||||||
public class AddTaskDto {
|
public class AddTaskDto {
|
||||||
|
|
||||||
@TableId("OATaskId")
|
@TableId("OATaskId")
|
||||||
@ApiModelProperty("任务id")
|
@ApiModelProperty(value = "任务id",required = true)
|
||||||
private String oataskid;
|
private String oataskid;
|
||||||
|
|
||||||
@TableField("TaskType")
|
@TableField("TaskType")
|
||||||
|
|
@ -42,7 +42,6 @@ public class AddTaskDto {
|
||||||
|
|
||||||
@TableField("StartDate")
|
@TableField("StartDate")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
|
||||||
@ApiModelProperty(value = "开始时间")
|
@ApiModelProperty(value = "开始时间")
|
||||||
private Date startdate;
|
private Date startdate;
|
||||||
|
|
||||||
|
|
@ -56,13 +55,6 @@ public class AddTaskDto {
|
||||||
@ApiModelProperty("计划完成时间")
|
@ApiModelProperty("计划完成时间")
|
||||||
private Date planenddate;
|
private Date planenddate;
|
||||||
|
|
||||||
/**
|
|
||||||
* 未执行 执行中 执行完成
|
|
||||||
*/
|
|
||||||
@TableField("AppStatus")
|
|
||||||
@ApiModelProperty("任务状态:1、执行中 2、执行完成 3、已超时")
|
|
||||||
private String appstatus = "1";
|
|
||||||
|
|
||||||
@TableField("title")
|
@TableField("title")
|
||||||
@ApiModelProperty(value = "任务名称",required = true)
|
@ApiModelProperty(value = "任务名称",required = true)
|
||||||
private String title;
|
private String title;
|
||||||
|
|
@ -71,30 +63,6 @@ public class AddTaskDto {
|
||||||
@ApiModelProperty(value = "任务内容",required = true)
|
@ApiModelProperty(value = "任务内容",required = true)
|
||||||
private String subject;
|
private String subject;
|
||||||
|
|
||||||
/**
|
|
||||||
* 已完成次数
|
|
||||||
*/
|
|
||||||
@TableField("Frequency")
|
|
||||||
@ApiModelProperty("已完成次数")
|
|
||||||
private Long frequency = 0L;
|
|
||||||
|
|
||||||
|
|
||||||
@TableField("IsFinish")
|
|
||||||
@ApiModelProperty("任务完成状态")
|
|
||||||
private String isfinish;
|
|
||||||
|
|
||||||
@TableField("del_state")
|
|
||||||
@ApiModelProperty("删除状态 1:正常 2:已删除")
|
|
||||||
private Integer delState = 1;
|
|
||||||
|
|
||||||
|
|
||||||
public Integer getDelState() {
|
|
||||||
return delState;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setDelState(Integer delState) {
|
|
||||||
this.delState = delState;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getOataskid() {
|
public String getOataskid() {
|
||||||
return oataskid;
|
return oataskid;
|
||||||
|
|
@ -152,13 +120,6 @@ public class AddTaskDto {
|
||||||
this.planenddate = planenddate;
|
this.planenddate = planenddate;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getAppstatus() {
|
|
||||||
return appstatus;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAppstatus(String appstatus) {
|
|
||||||
this.appstatus = appstatus;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getTitle() {
|
public String getTitle() {
|
||||||
return title;
|
return title;
|
||||||
|
|
@ -176,22 +137,5 @@ public class AddTaskDto {
|
||||||
this.subject = 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;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,83 @@
|
||||||
|
package com.rzyc.bean.task.dto;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description:
|
||||||
|
* @Author: ZQW
|
||||||
|
* @CreateTime: 2022/11/2 15:01
|
||||||
|
*/
|
||||||
|
|
||||||
|
@ApiModel("完成任务请求参数")
|
||||||
|
public class FinishWorkDto {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "主键id",required = true)
|
||||||
|
@TableId("OADistributionId")
|
||||||
|
private String oadistributionid;
|
||||||
|
|
||||||
|
@ApiModelProperty("任务摘要")
|
||||||
|
@TableField("title")
|
||||||
|
private String title;
|
||||||
|
|
||||||
|
@ApiModelProperty("任务内容")
|
||||||
|
@TableField("subject")
|
||||||
|
private String subject;
|
||||||
|
|
||||||
|
@ApiModelProperty("开始时间")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@TableField("start_time")
|
||||||
|
private Date startTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("结束时间")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@TableField("end_time")
|
||||||
|
private Date endTime;
|
||||||
|
|
||||||
|
|
||||||
|
public String getOadistributionid() {
|
||||||
|
return oadistributionid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOadistributionid(String oadistributionid) {
|
||||||
|
this.oadistributionid = oadistributionid;
|
||||||
|
}
|
||||||
|
|
||||||
|
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 Date getStartTime() {
|
||||||
|
return startTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStartTime(Date startTime) {
|
||||||
|
this.startTime = startTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getEndTime() {
|
||||||
|
return endTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setEndTime(Date endTime) {
|
||||||
|
this.endTime = endTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -46,11 +46,11 @@ public class OADistributionVo {
|
||||||
|
|
||||||
@ApiModelProperty("任务摘要")
|
@ApiModelProperty("任务摘要")
|
||||||
@TableField("title")
|
@TableField("title")
|
||||||
private String title;
|
private String remark;
|
||||||
|
|
||||||
@ApiModelProperty("任务内容")
|
@ApiModelProperty("任务内容")
|
||||||
@TableField("subject")
|
@TableField("subject")
|
||||||
private String subject;
|
private String content;
|
||||||
|
|
||||||
@ApiModelProperty("开始时间")
|
@ApiModelProperty("开始时间")
|
||||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd ")
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd ")
|
||||||
|
|
@ -109,28 +109,21 @@ public class OADistributionVo {
|
||||||
this.syschinaname = syschinaname;
|
this.syschinaname = syschinaname;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* public String getReceiveName() {
|
|
||||||
return receiveName;
|
public String getRemark() {
|
||||||
|
return remark;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setReceiveName(String receiveName) {
|
public void setRemark(String remark) {
|
||||||
this.receiveName = receiveName;
|
this.remark = remark;
|
||||||
}*/
|
|
||||||
|
|
||||||
public String getTitle() {
|
|
||||||
return title;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setTitle(String title) {
|
public String getContent() {
|
||||||
this.title = title;
|
return content;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getSubject() {
|
public void setContent(String content) {
|
||||||
return subject;
|
this.content = content;
|
||||||
}
|
|
||||||
|
|
||||||
public void setSubject(String subject) {
|
|
||||||
this.subject = subject;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Date getStartTime() {
|
public Date getStartTime() {
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,6 @@ public class TaskDetailVo {
|
||||||
@ApiModelProperty("任务id")
|
@ApiModelProperty("任务id")
|
||||||
private String oataskid;
|
private String oataskid;
|
||||||
|
|
||||||
@ApiModelProperty("主键id")
|
|
||||||
private String oadistributionid;
|
|
||||||
|
|
||||||
@TableField("StartDate")
|
@TableField("StartDate")
|
||||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd ")
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd ")
|
||||||
|
|
@ -46,16 +44,18 @@ public class TaskDetailVo {
|
||||||
@ApiModelProperty("任务要求")
|
@ApiModelProperty("任务要求")
|
||||||
private String subject;
|
private String subject;
|
||||||
|
|
||||||
|
@ApiModelProperty("任务状态:1、执行中 2、执行完成 3、已超时")
|
||||||
|
private String appStatus;
|
||||||
|
|
||||||
@ApiModelProperty("任务接收人完成情况")
|
@ApiModelProperty("任务接收人完成情况")
|
||||||
private List<OADistributionVo> distributions = new ArrayList<>();
|
private List<OADistributionVo> distributions = new ArrayList<>();
|
||||||
|
|
||||||
public String getOadistributionid() {
|
public String getAppStatus() {
|
||||||
return oadistributionid;
|
return appStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setOadistributionid(String oadistributionid) {
|
public void setAppStatus(String appStatus) {
|
||||||
this.oadistributionid = oadistributionid;
|
this.appStatus = appStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getOataskid() {
|
public String getOataskid() {
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
package com.rzyc.bean.task.vo;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.common.utils.excel.ExcelColumn;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description:
|
||||||
|
* @Author: ZQW
|
||||||
|
* @CreateTime: 2022/11/1 13:48
|
||||||
|
*/
|
||||||
|
|
||||||
|
@ApiModel("用户返回实体类")
|
||||||
|
public class UserVo {
|
||||||
|
|
||||||
|
@ApiModelProperty("用户id")
|
||||||
|
//@TableField("SysUserId")
|
||||||
|
private String sysuserid;
|
||||||
|
|
||||||
|
@ApiModelProperty("职务")
|
||||||
|
private String sysdeptname;
|
||||||
|
|
||||||
|
@ApiModelProperty("中文名")
|
||||||
|
private String chinaname;
|
||||||
|
|
||||||
|
public String getSysuserid() {
|
||||||
|
return sysuserid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSysuserid(String sysuserid) {
|
||||||
|
this.sysuserid = sysuserid;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSysdeptname() {
|
||||||
|
return sysdeptname;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSysdeptname(String sysdeptname) {
|
||||||
|
this.sysdeptname = sysdeptname;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getChinaname() {
|
||||||
|
return chinaname;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setChinaname(String chinaname) {
|
||||||
|
this.chinaname = chinaname;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -8,6 +8,7 @@ import com.rzyc.bean.task.dto.WorkDto;
|
||||||
import com.rzyc.bean.task.vo.*;
|
import com.rzyc.bean.task.vo.*;
|
||||||
import com.rzyc.model.OADistribution;
|
import com.rzyc.model.OADistribution;
|
||||||
import com.rzyc.model.oth.ManualLable;
|
import com.rzyc.model.oth.ManualLable;
|
||||||
|
import com.rzyc.model.task.dto.TaskAddOrUpdateDto;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
|
@ -58,4 +59,7 @@ public interface OADistributionMapper extends BaseMapper<OADistribution> {
|
||||||
|
|
||||||
//人员姓名显示
|
//人员姓名显示
|
||||||
List<NameVo> selectName(@Param("nameDto") NameDto nameDto);
|
List<NameVo> selectName(@Param("nameDto") NameDto nameDto);
|
||||||
|
|
||||||
|
//分配任务
|
||||||
|
int deliverTask(@Param("distributions") List<OADistribution> list);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -144,4 +144,6 @@ public interface OATaskMapper extends BaseMapper<OATask> {
|
||||||
|
|
||||||
//查询接收人姓名
|
//查询接收人姓名
|
||||||
List<NameVo> selectName(@Param("id") String id);
|
List<NameVo> selectName(@Param("id") String id);
|
||||||
|
|
||||||
|
List<UserVo> getUserNameList(@Param("ids") String ids);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package com.rzyc.mapper.user;
|
||||||
import com.rzyc.bean.bigdata.DutyNet;
|
import com.rzyc.bean.bigdata.DutyNet;
|
||||||
import com.rzyc.bean.check.CommunityCheck;
|
import com.rzyc.bean.check.CommunityCheck;
|
||||||
import com.rzyc.bean.check.StreetCheck;
|
import com.rzyc.bean.check.StreetCheck;
|
||||||
|
import com.rzyc.bean.task.vo.UserVo;
|
||||||
import com.rzyc.model.user.SysUser;
|
import com.rzyc.model.user.SysUser;
|
||||||
import com.rzyc.model.user.SysUserExample;
|
import com.rzyc.model.user.SysUserExample;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
@ -188,4 +189,7 @@ public interface SysUserMapper {
|
||||||
SysUser findByUnitOrEntId(@Param("unitOrEntId") String unitOrEntId);
|
SysUser findByUnitOrEntId(@Param("unitOrEntId") String unitOrEntId);
|
||||||
|
|
||||||
SysUser selectUser(@Param("sysUserId")String sysUserId);
|
SysUser selectUser(@Param("sysUserId")String sysUserId);
|
||||||
|
|
||||||
|
//查询流转人
|
||||||
|
List<UserVo> selectTransferor();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -227,14 +227,7 @@
|
||||||
order by ob.end_time asc
|
order by ob.end_time asc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!--<select id="getTaskList" resultType="com.rzyc.model.OADistribution">
|
|
||||||
select ob.* from OADistribution ob
|
|
||||||
where ob.subject like #{condition}
|
|
||||||
<if test="null != SysUserId and SysUserId != ''">
|
|
||||||
and ob.SysUserId = #{snedId}
|
|
||||||
</if>
|
|
||||||
order by ob.end_time asc
|
|
||||||
</select>-->
|
|
||||||
|
|
||||||
|
|
||||||
<update id="updateDistriubtion" parameterType="com.rzyc.model.OADistribution">
|
<update id="updateDistriubtion" parameterType="com.rzyc.model.OADistribution">
|
||||||
|
|
@ -270,4 +263,18 @@
|
||||||
where od.OATaskId = #{nameDto.taskId}
|
where od.OATaskId = #{nameDto.taskId}
|
||||||
and ot.TaskType = #{nameDto.taskTypeId}
|
and ot.TaskType = #{nameDto.taskTypeId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<insert id="deliverTask" parameterType="java.util.List">
|
||||||
|
insert into
|
||||||
|
OADistribution (OADistributionId, OATaskId, sned_id,SysUserId,
|
||||||
|
SysChinaName, SysTelephone, AppStatus,title,subject,start_time,end_time,
|
||||||
|
CreatedOn, CreatedBy, ModifiedOn,ModifiedBy)
|
||||||
|
values
|
||||||
|
<foreach collection="distributions" item="item" index="index" separator="," >
|
||||||
|
(#{item.oadistributionid}, #{item.oataskid}, #{item.snedId},#{item.sysuserid},
|
||||||
|
#{item.syschinaname}, #{item.systelephone}, #{item.appstatus},#{item.title},#{item.subject},#{item.startTime},#{item.endTime},
|
||||||
|
#{item.createdon}, #{item.createdby}, #{item.modifiedon},
|
||||||
|
#{item.modifiedby})
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
|
|
@ -462,6 +462,12 @@
|
||||||
order by ot.EndDate asc
|
order by ot.EndDate asc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<resultMap id="WorkMap" type="com.rzyc.bean.task.vo.WorkPriorityVo">
|
||||||
|
<id column="OATaskId" property="oataskid"/>
|
||||||
|
<result column="title" property="title"/>
|
||||||
|
<result column="finishNum" property="finishNum"/>
|
||||||
|
<result column="totalNum" property="totalNum"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
<!--定义resultMap-->
|
<!--定义resultMap-->
|
||||||
<resultMap id="TaskDetail" type="com.rzyc.bean.task.vo.TaskDetailVo">
|
<resultMap id="TaskDetail" type="com.rzyc.bean.task.vo.TaskDetailVo">
|
||||||
|
|
@ -470,32 +476,27 @@
|
||||||
<result column="EndDate" property="enddate"/>
|
<result column="EndDate" property="enddate"/>
|
||||||
<result column="title" property="title"/>
|
<result column="title" property="title"/>
|
||||||
<result column="Subject" property="subject"/>
|
<result column="Subject" property="subject"/>
|
||||||
|
<result column="AppStatus" property="appStatus"/>
|
||||||
<collection property="distributions" resultMap="OADistributionVo"/>
|
<collection property="distributions" resultMap="OADistributionVo"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
<resultMap id="OADistributionVo" type="com.rzyc.bean.task.vo.OADistributionVo">
|
<resultMap id="OADistributionVo" type="com.rzyc.bean.task.vo.OADistributionVo">
|
||||||
<id column="OADistributionId" property="oadistributionid"/>
|
<id column="OADistributionId" property="oadistributionid"/>
|
||||||
<result column="OATaskId" property="oataskid"/>
|
<result column="OATaskId" property="oataskid"/>
|
||||||
<result column="sned_id" property="snedId"/>
|
<result column="sned_id" property="snedId"/>
|
||||||
<result column="SysUserId" property="sysuserid"/>
|
<result column="SysUserId" property="sysuserid"/>
|
||||||
<result column="SysChinaName" property="syschinaname"/>
|
<result column="SysChinaName" property="syschinaname"/>
|
||||||
<result column="title" property="title"/>
|
<result column="remark" property="remark"/>
|
||||||
<result column="Subject" property="subject"/>
|
<result column="content" property="content"/>
|
||||||
<result column="start_time" property="startTime"/>
|
<result column="start_time" property="startTime"/>
|
||||||
<result column="end_time" property="endTime"/>
|
<result column="end_time" property="endTime"/>
|
||||||
<result column="AppStatus" property="appstatus"/>
|
<result column="AppStatus" property="appstatus"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<resultMap id="WorkMap" type="com.rzyc.bean.task.vo.WorkPriorityVo">
|
|
||||||
<id column="OATaskId" property="oataskid"/>
|
|
||||||
<result column="title" property="title"/>
|
|
||||||
<result column="finishNum" property="finishNum"/>
|
|
||||||
<result column="totalNum" property="totalNum"/>
|
|
||||||
</resultMap>
|
|
||||||
|
|
||||||
|
<!--发布任务详情-->
|
||||||
<select id="selectDetail" resultMap="TaskDetail">
|
<select id="selectDetail" resultMap="TaskDetail">
|
||||||
select ot.oataskid,ot.title,ot.subject,ot.startdate,ot.enddate,od.*
|
select ot.oataskid,ot.title,ot.subject,ot.startdate,ot.enddate,ot.AppStatus,od.*
|
||||||
from OATask ot
|
from OATask ot
|
||||||
left join OADistribution od
|
left join OADistribution od
|
||||||
on ot.oataskid = od.oataskid
|
on ot.oataskid = od.oataskid
|
||||||
|
|
@ -515,8 +516,8 @@
|
||||||
<result column="sned_id" property="snedId"/>
|
<result column="sned_id" property="snedId"/>
|
||||||
<result column="SysUserId" property="sysuserid"/>
|
<result column="SysUserId" property="sysuserid"/>
|
||||||
<result column="SysChinaName" property="syschinaname"/>
|
<result column="SysChinaName" property="syschinaname"/>
|
||||||
<result column="title" property="title"/>
|
<result column="remark" property="remark"/>
|
||||||
<result column="Subject" property="subject"/>
|
<result column="content" property="content"/>
|
||||||
<result column="start_time" property="startTime"/>
|
<result column="start_time" property="startTime"/>
|
||||||
<result column="end_time" property="endTime"/>
|
<result column="end_time" property="endTime"/>
|
||||||
<result column="AppStatus" property="appstatus"/>
|
<result column="AppStatus" property="appstatus"/>
|
||||||
|
|
@ -531,6 +532,14 @@
|
||||||
where od.OADistributionId = #{OADistributionId}
|
where od.OADistributionId = #{OADistributionId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
<!--<select id="selectReceive" resultMap="ReceiveTail">
|
||||||
|
select *
|
||||||
|
from OADistribution od
|
||||||
|
join OATask ot
|
||||||
|
on ot.oataskid = od.oataskid
|
||||||
|
where od.OADistributionId = #{OADistributionId}
|
||||||
|
</select>-->
|
||||||
<!--查询待办事项-->
|
<!--查询待办事项-->
|
||||||
<select id="workList" resultMap="ReceiveTail">
|
<select id="workList" resultMap="ReceiveTail">
|
||||||
select ot.OATaskId,od.OADistributionId,ot.title,ot.TaskType
|
select ot.OATaskId,od.OADistributionId,ot.title,ot.TaskType
|
||||||
|
|
@ -613,4 +622,7 @@
|
||||||
on ot.send_id = s.SysUserId
|
on ot.send_id = s.SysUserId
|
||||||
where ot.send_id = #{id}
|
where ot.send_id = #{id}
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getUserNameList" resultType="com.rzyc.bean.task.vo.UserVo">
|
||||||
|
select SysUserId,ChinaName from sysuser where SysUserId in(#{ids})
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
|
|
@ -1385,4 +1385,9 @@
|
||||||
<select id="selectUser" resultType="com.rzyc.model.user.SysUser">
|
<select id="selectUser" resultType="com.rzyc.model.user.SysUser">
|
||||||
SELECT su.* FROM SysUser su where su.SysUserId = #{sysUserId}
|
SELECT su.* FROM SysUser su where su.SysUserId = #{sysUserId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!--查询流转人-->
|
||||||
|
<select id="selectTransferor" resultType="com.rzyc.bean.task.vo.UserVo">
|
||||||
|
select su.SysUserId ,su.SysDeptName ,su.ChinaName FROM SysUser su
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
|
|
@ -77,9 +77,10 @@ public class AppletsTaskController extends BaseController{
|
||||||
public SingleResult<String> addExecute(@Valid PerRecordDto perRecordDto) throws Exception{
|
public SingleResult<String> addExecute(@Valid PerRecordDto perRecordDto) throws Exception{
|
||||||
SingleResult<String> result = new SingleResult<>();
|
SingleResult<String> result = new SingleResult<>();
|
||||||
TaskRecord taskRecord = new TaskRecord();
|
TaskRecord taskRecord = new TaskRecord();
|
||||||
BeanUtils.copyProperties(taskRecord,perRecordDto);
|
|
||||||
//日期格式转换
|
//日期格式转换
|
||||||
ConvertUtils.register(new DateConverter(null), Date.class);
|
ConvertUtils.register(new DateConverter(null), Date.class);
|
||||||
|
BeanUtils.copyProperties(taskRecord,perRecordDto);
|
||||||
|
|
||||||
|
|
||||||
OADistribution oaDistribution = oaDistributionMapper.selectByPrimaryKey(perRecordDto.getOADistributionId());
|
OADistribution oaDistribution = oaDistributionMapper.selectByPrimaryKey(perRecordDto.getOADistributionId());
|
||||||
System.out.println("任务 ========" + oaDistribution);
|
System.out.println("任务 ========" + oaDistribution);
|
||||||
|
|
|
||||||
|
|
@ -4,14 +4,8 @@ import com.common.utils.RandomNumber;
|
||||||
import com.common.utils.StringUtils;
|
import com.common.utils.StringUtils;
|
||||||
import com.common.utils.model.MultiResult;
|
import com.common.utils.model.MultiResult;
|
||||||
import com.common.utils.model.SingleResult;
|
import com.common.utils.model.SingleResult;
|
||||||
import com.rzyc.bean.task.dto.AddTaskDto;
|
import com.rzyc.bean.task.dto.*;
|
||||||
import com.rzyc.bean.task.dto.AddWorkDto;
|
import com.rzyc.bean.task.vo.*;
|
||||||
import com.rzyc.bean.task.dto.IdDto;
|
|
||||||
import com.rzyc.bean.task.dto.WorkFlowDto;
|
|
||||||
import com.rzyc.bean.task.vo.ReceiveTaskVo;
|
|
||||||
import com.rzyc.bean.task.vo.TaskDetailVo;
|
|
||||||
import com.rzyc.bean.task.vo.TaskVo;
|
|
||||||
import com.rzyc.bean.task.vo.ThingVo;
|
|
||||||
import com.rzyc.config.MethodAnnotation;
|
import com.rzyc.config.MethodAnnotation;
|
||||||
import com.rzyc.model.OADistribution;
|
import com.rzyc.model.OADistribution;
|
||||||
import com.rzyc.model.OATask;
|
import com.rzyc.model.OATask;
|
||||||
|
|
@ -25,12 +19,16 @@ import io.swagger.annotations.ApiOperation;
|
||||||
import org.apache.commons.beanutils.BeanUtils;
|
import org.apache.commons.beanutils.BeanUtils;
|
||||||
import org.apache.commons.beanutils.ConvertUtils;
|
import org.apache.commons.beanutils.ConvertUtils;
|
||||||
import org.apache.commons.beanutils.converters.DateConverter;
|
import org.apache.commons.beanutils.converters.DateConverter;
|
||||||
|
import org.apache.commons.beanutils.converters.SqlDateConverter;
|
||||||
|
import org.springframework.beans.propertyeditors.CustomDateEditor;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.WebDataBinder;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
@ -48,6 +46,7 @@ import java.util.List;
|
||||||
@Validated
|
@Validated
|
||||||
public class WorkController extends BaseController{
|
public class WorkController extends BaseController{
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 新增任务
|
* @Description: 新增任务
|
||||||
* @Author ZQW
|
* @Author ZQW
|
||||||
|
|
@ -58,9 +57,10 @@ public class WorkController extends BaseController{
|
||||||
public SingleResult<String> addTask(@Valid AddTaskDto addTaskDto) throws Exception{
|
public SingleResult<String> addTask(@Valid AddTaskDto addTaskDto) throws Exception{
|
||||||
SingleResult<String> result = new SingleResult<>();
|
SingleResult<String> result = new SingleResult<>();
|
||||||
OATask oaTask = new OATask();
|
OATask oaTask = new OATask();
|
||||||
BeanUtils.copyProperties(oaTask,addTaskDto);
|
|
||||||
//日期格式转换
|
//日期格式转换
|
||||||
ConvertUtils.register(new DateConverter(null), Date.class);
|
ConvertUtils.register(new DateConverter(null), Date.class);
|
||||||
|
BeanUtils.copyProperties(oaTask,addTaskDto);
|
||||||
|
|
||||||
//发布人
|
//发布人
|
||||||
SysUser sysUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getSendId());
|
SysUser sysUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getSendId());
|
||||||
|
|
@ -71,78 +71,113 @@ public class WorkController extends BaseController{
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(StringUtils.isBlank(addTaskDto.getOataskid())){
|
if(StringUtils.isNotBlank(addTaskDto.getOataskid())){
|
||||||
oaTask.setOataskid(RandomNumber.getUUid());
|
oaTask.setOataskid(addTaskDto.getOataskid());
|
||||||
oaTask.setAppstatus("1");
|
oaTask.setAppstatus("1");
|
||||||
oaTask.setCreatedby(getUserId());
|
oaTask.setCreatedby(getUserId());
|
||||||
oaTask.setCreatedon(new Date());
|
oaTask.setCreatedon(new Date());
|
||||||
oaTaskMapper.insertTask(oaTask);
|
oaTaskMapper.insertTask(oaTask);
|
||||||
System.out.println("用户id======" + oaTask.getUserId());
|
System.out.println("用户id======" + oaTask);
|
||||||
}else {
|
}
|
||||||
oaTask.setModifiedby(getUserId());
|
return result;
|
||||||
oaTask.setModifiedon(new Date());
|
|
||||||
oaTaskMapper.updateById(oaTask);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 修改任务
|
||||||
|
* @Author ZQW
|
||||||
|
* @CreateTime 2022/11/2 17:01
|
||||||
|
*/
|
||||||
|
@ApiOperation(value = "修改任务",position = 2)
|
||||||
|
@PreAuthorize("hasAnyAuthority('updateTask','updateTask:update')")
|
||||||
|
@MethodAnnotation(authorizations = {"updateTask","updateTask:update"},name = "修改任务")
|
||||||
|
@PostMapping("updateTask")
|
||||||
|
public SingleResult<String> updateTask(@Valid AddTaskDto addTaskDto) throws Exception{
|
||||||
|
SingleResult<String> result = new SingleResult<>();
|
||||||
|
OATask oaTask = new OATask();
|
||||||
|
|
||||||
|
//日期格式转换
|
||||||
|
ConvertUtils.register(new DateConverter(null), Date.class);
|
||||||
|
BeanUtils.copyProperties(oaTask,addTaskDto);
|
||||||
|
|
||||||
|
//发布人
|
||||||
|
SysUser sysUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getSendId());
|
||||||
|
|
||||||
|
if(null == sysUser){
|
||||||
|
result.setCode(0);
|
||||||
|
result.setMessage("未知错误");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(StringUtils.isNotBlank(addTaskDto.getOataskid())){
|
||||||
|
oaTask.setModifiedby(getUserId());
|
||||||
|
oaTask.setModifiedon(new Date());
|
||||||
|
oaTaskMapper.updateOATask(oaTask);
|
||||||
|
System.out.println("用户id======" + oaTask);
|
||||||
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 分配任务
|
* @Description: 分配任务
|
||||||
* @Author ZQW
|
* @Author ZQW
|
||||||
* @CreateTime 2022/10/27 11:08
|
* @CreateTime 2022/11/2 11:03
|
||||||
*/
|
*/
|
||||||
@ApiOperation(value = "分配任务",position = 2)
|
@ApiOperation(value = "分配任务",position = 3)
|
||||||
@PostMapping("distributeWork")
|
@PostMapping("distributeWork")
|
||||||
public SingleResult<String> distributeWork(@Valid TaskAddOrUpdateDto addTaskDto) throws Exception{
|
public SingleResult<String> distributeWork(@Valid TaskAddOrUpdateDto addTaskDto) throws Exception{
|
||||||
SingleResult<String> result = new SingleResult<>();
|
SingleResult<String> result = new SingleResult<>();
|
||||||
OADistribution oaDistribution = new OADistribution();
|
|
||||||
BeanUtils.copyProperties(oaDistribution,addTaskDto);
|
|
||||||
//日期格式转换
|
|
||||||
//ConvertUtils.register(new DateConverter(null), Date.class);
|
|
||||||
|
|
||||||
SysUser sysUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getSysuserid());
|
|
||||||
OATask oaTask = oaTaskMapper.findById(addTaskDto.getOataskid());
|
OATask oaTask = oaTaskMapper.findById(addTaskDto.getOataskid());
|
||||||
System.out.println("任务 ========" + oaTask);
|
//List<UserVo> userNameList = oaTaskMapper.getUserNameList(addTaskDto.getSysuserid());
|
||||||
if(null == sysUser){
|
String[] sysuid = addTaskDto.getSysuserid().split(",");
|
||||||
result.setCode(0);
|
List<OADistribution> list = new ArrayList<>();
|
||||||
result.setMessage("用户不存在");
|
for (String uid: sysuid) {
|
||||||
return result;
|
OADistribution oaDistribution = new OADistribution();
|
||||||
}
|
|
||||||
|
|
||||||
if(null == oaTask){
|
|
||||||
result.setCode(0);
|
|
||||||
result.setMessage("未知任务");
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(StringUtils.isBlank(addTaskDto.getOadistributionid())){
|
|
||||||
oaDistribution.setOadistributionid(RandomNumber.getUUid());
|
oaDistribution.setOadistributionid(RandomNumber.getUUid());
|
||||||
|
oaDistribution.setOataskid(addTaskDto.getOataskid());
|
||||||
oaDistribution.setSnedId(oaTask.getSendId());
|
oaDistribution.setSnedId(oaTask.getSendId());
|
||||||
oaDistribution.setSyschinaname(sysUser.getChinaname());
|
oaDistribution.setSysuserid(uid);
|
||||||
oaDistribution.setSystelephone(sysUser.getMobiletel());
|
|
||||||
oaDistribution.setStartTime(oaTask.getStartdate());
|
oaDistribution.setStartTime(oaTask.getStartdate());
|
||||||
oaDistribution.setEndTime(oaTask.getEnddate());
|
oaDistribution.setEndTime(oaTask.getEnddate());
|
||||||
oaDistribution.setAppstatus("1");
|
oaDistribution.setAppstatus("1");
|
||||||
oaDistribution.setCreatedby(getUserId());
|
oaDistribution.setCreatedby(getUserId());
|
||||||
oaDistribution.setCreatedon(new Date());
|
oaDistribution.setCreatedon(new Date());
|
||||||
oaDistributionMapper.insertOAdistribution(oaDistribution);
|
list.add(oaDistribution);
|
||||||
}else {
|
|
||||||
oaDistribution.setModifiedby(getUserId());
|
|
||||||
oaDistribution.setModifiedon(new Date());
|
|
||||||
oaDistribution.setAppstatus("3");
|
|
||||||
oaDistributionMapper.updateDistriubtion(oaDistribution);
|
|
||||||
System.err.println(oaDistribution);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
oaDistributionMapper.deliverTask(list);
|
||||||
|
// List<TaskAddOrUpdateDto> list = new ArrayList<>();
|
||||||
|
// for (TaskAddOrUpdateDto taskDto : list) {
|
||||||
|
// String sysuserid = addTaskDto.getSysuserid();
|
||||||
|
// String[] split = sysuserid.split(",");
|
||||||
|
// for (String s : split) {
|
||||||
|
// SysUser sysUser = sysUserMapper.selectByPrimaryKey(s);
|
||||||
|
// OADistribution oaDistribution = new OADistribution();
|
||||||
|
// BeanUtils.copyProperties(oaDistribution,taskDto);
|
||||||
|
// //日期格式转换
|
||||||
|
// ConvertUtils.register(new DateConverter(null), Date.class);
|
||||||
|
// oaDistribution.setOadistributionid(RandomNumber.getUUid());
|
||||||
|
// oaDistribution.setSnedId(oaTask.getSendId());
|
||||||
|
// oaDistribution.setSyschinaname(sysUser.getChinaname());
|
||||||
|
// oaDistribution.setSystelephone(sysUser.getMobiletel());
|
||||||
|
// oaDistribution.setStartTime(oaTask.getStartdate());
|
||||||
|
// oaDistribution.setEndTime(oaTask.getEnddate());
|
||||||
|
// oaDistribution.setAppstatus("1");
|
||||||
|
// oaDistribution.setCreatedby(getUserId());
|
||||||
|
// oaDistribution.setCreatedon(new Date());
|
||||||
|
// list.add(taskDto);
|
||||||
|
// }
|
||||||
|
// oaDistributionMapper.deliverTask(list);
|
||||||
|
// }
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 待办事项列表
|
* @Description: 待办事项列表
|
||||||
* @Author ZQW
|
* @Author ZQW
|
||||||
* @CreateTime 2022/9/23 10:20
|
* @CreateTime 2022/9/23 10:20
|
||||||
*/
|
*/
|
||||||
@ApiOperation(value = "待办事项列表",position = 3)
|
@ApiOperation(value = "待办事项列表",position = 4)
|
||||||
@GetMapping("thingsList")
|
@GetMapping("thingsList")
|
||||||
@ApiImplicitParams(value = {
|
@ApiImplicitParams(value = {
|
||||||
@ApiImplicitParam(name = "id",value = "任务类型id")
|
@ApiImplicitParam(name = "id",value = "任务类型id")
|
||||||
|
|
@ -160,7 +195,7 @@ public class WorkController extends BaseController{
|
||||||
* @Author: ZQW
|
* @Author: ZQW
|
||||||
* @Date: 2022/9/20
|
* @Date: 2022/9/20
|
||||||
*/
|
*/
|
||||||
@ApiOperation(value = "查询我发布的任务",position = 4)
|
@ApiOperation(value = "查询我发布的任务",position = 5)
|
||||||
@ApiImplicitParams(value = {
|
@ApiImplicitParams(value = {
|
||||||
@ApiImplicitParam(name = "id",value = "发布人id")
|
@ApiImplicitParam(name = "id",value = "发布人id")
|
||||||
})
|
})
|
||||||
|
|
@ -188,7 +223,7 @@ public class WorkController extends BaseController{
|
||||||
* @Author ZQW
|
* @Author ZQW
|
||||||
* @CreateTime 2022/9/26 9:34
|
* @CreateTime 2022/9/26 9:34
|
||||||
*/
|
*/
|
||||||
@ApiOperation(value = "查询我收到的任务",position = 4)
|
@ApiOperation(value = "查询我收到的任务",position = 6)
|
||||||
@ApiImplicitParams(value = {
|
@ApiImplicitParams(value = {
|
||||||
@ApiImplicitParam(name = "id",value = "接收用户id")
|
@ApiImplicitParam(name = "id",value = "接收用户id")
|
||||||
})
|
})
|
||||||
|
|
@ -212,49 +247,27 @@ public class WorkController extends BaseController{
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return: 新增任务执行情况
|
* @return: 完成任务
|
||||||
* @Author: ZQW
|
* @Author: ZQW
|
||||||
* @Date: 2022/9/20
|
* @Date: 2022/9/20
|
||||||
*/
|
*/
|
||||||
/* @ApiOperation(value = "新增或修改任务执行情况",position = 10)
|
@ApiOperation(value = "完成任务",position = 7)
|
||||||
@PostMapping("addExecute")
|
@PostMapping("addExecute")
|
||||||
public SingleResult<String> addExecute(@Valid TaskAddOrUpdateDto addTaskDto) throws Exception{
|
public SingleResult<String> addExecute(@Valid FinishWorkDto finishDto) throws Exception{
|
||||||
SingleResult<String> result = new SingleResult<>();
|
SingleResult<String> result = new SingleResult<>();
|
||||||
OADistribution oaDistribution = new OADistribution();
|
OADistribution oaDistribution = new OADistribution();
|
||||||
BeanUtils.copyProperties(oaDistribution,addTaskDto);
|
|
||||||
//日期格式转换
|
//日期格式转换
|
||||||
ConvertUtils.register(new DateConverter(null), Date.class);
|
ConvertUtils.register(new DateConverter(null), Date.class);
|
||||||
|
BeanUtils.copyProperties(oaDistribution,finishDto);
|
||||||
|
|
||||||
SysUser sysUser = sysUserMapper.selectByPrimaryKey(addTaskDto.getSysuserid());
|
if (StringUtils.isNotBlank(finishDto.getOadistributionid())){
|
||||||
OATask oaTask = oaTaskMapper.findById(addTaskDto.getOataskid());
|
oaDistribution.setAppstatus("3");
|
||||||
System.out.println("任务 ========" + oaTask);
|
|
||||||
if(null == sysUser){
|
|
||||||
result.setCode(0);
|
|
||||||
result.setMessage("用户不存在");
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(null == oaTask){
|
|
||||||
result.setCode(0);
|
|
||||||
result.setMessage("未知任务");
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(StringUtils.isBlank(addTaskDto.getOadistributionid())){
|
|
||||||
oaDistribution.setOadistributionid(RandomNumber.getUUid());
|
|
||||||
oaDistribution.setSyschinaname(sysUser.getChinaname());
|
|
||||||
oaDistribution.setSystelephone(sysUser.getMobiletel());
|
|
||||||
oaDistribution.setCreatedby(getUserId());
|
|
||||||
oaDistribution.setCreatedon(new Date());
|
|
||||||
oaDistributionMapper.insert(oaDistribution);
|
|
||||||
}else {
|
|
||||||
oaDistribution.setModifiedby(getUserId());
|
oaDistribution.setModifiedby(getUserId());
|
||||||
oaDistribution.setModifiedon(new Date());
|
oaDistribution.setModifiedon(new Date());
|
||||||
oaDistributionMapper.updateById(oaDistribution);
|
oaDistributionMapper.updateDistriubtion(oaDistribution);
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}*/
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: 发布任务详情
|
* @Description: 发布任务详情
|
||||||
|
|
@ -296,7 +309,7 @@ public class WorkController extends BaseController{
|
||||||
* @Author ZQW
|
* @Author ZQW
|
||||||
* @CreateTime 2022/10/27 15:34
|
* @CreateTime 2022/10/27 15:34
|
||||||
*/
|
*/
|
||||||
@ApiOperation(value = "任务流转",position = 14)
|
@ApiOperation(value = "任务流转",position = 12)
|
||||||
@PostMapping("taskFlow")
|
@PostMapping("taskFlow")
|
||||||
public SingleResult<String> taskFlow(@Valid WorkFlowDto flowDto) throws Exception{
|
public SingleResult<String> taskFlow(@Valid WorkFlowDto flowDto) throws Exception{
|
||||||
SingleResult<String> result = new SingleResult<>();
|
SingleResult<String> result = new SingleResult<>();
|
||||||
|
|
@ -334,4 +347,20 @@ public class WorkController extends BaseController{
|
||||||
System.err.println("插入的内容" + oaDistribution);
|
System.err.println("插入的内容" + oaDistribution);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 查询用户
|
||||||
|
* @Author ZQW
|
||||||
|
* @CreateTime 2022/11/1 13:41
|
||||||
|
*/
|
||||||
|
@ApiOperation(value = "查询用户",position = 13)
|
||||||
|
@GetMapping ("selectUser")
|
||||||
|
@PreAuthorize("hasAnyAuthority('selectUser','selectUser:update')")
|
||||||
|
@MethodAnnotation(authorizations = {"selectUser","selectUser:update"},name = "查询用户")
|
||||||
|
public MultiResult<UserVo> selectUser(){
|
||||||
|
MultiResult<UserVo> result = new MultiResult();
|
||||||
|
List<UserVo> userVoList = sysUserMapper.selectTransferor();
|
||||||
|
result.setData(userVoList);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user