From f38739bab374a2b45b4214edb7f1d17001d69f91 Mon Sep 17 00:00:00 2001 From: 79493 <794930212@qq.com> Date: Thu, 29 Dec 2022 18:02:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=BC=E5=85=A5=E4=BC=81=E4=B8=9A=20?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E4=BC=81=E4=B8=9A=E6=B3=95=E4=BA=BA=E5=B2=97?= =?UTF-8?q?=E4=BD=8D=E5=8F=8A=E7=94=A8=E6=88=B7=20=E5=B2=97=E4=BD=8D?= =?UTF-8?q?=E6=B8=85=E5=8D=95=20=E5=B2=97=E4=BD=8D=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/rzyc/mapper/EntPostDutyMapper.java | 24 ++++++ .../com/rzyc/mapper/ent/EntPostMapper.java | 7 ++ .../rzyc/model/dto/EntUserPostDutyDto.java | 79 +++++++++++++++++++ .../java/com/rzyc/model/dto/InListDto.java | 7 +- .../resources/mapper/EntPostDutyMapper.xml | 24 ++++++ .../resources/mapper/ent/EntPostMapper.xml | 5 ++ .../resources/mapper/ent/InEntListMapper.xml | 2 +- .../mapper/ent/SysEnterpriseMapper.xml | 40 +++++++++- .../rzyc/controller/PersonalController.java | 26 +++++- .../rzyc/service/AssignmentTaskThread.java | 4 + .../com/rzyc/service/EntPostDutyThread.java | 58 ++++++++++++++ .../com/rzyc/service/PcBusinessService.java | 50 +++++++++++- .../service/SaveEntPostAndUserThread.java | 11 ++- 13 files changed, 329 insertions(+), 8 deletions(-) create mode 100644 inventory-ent/src/main/java/com/rzyc/service/EntPostDutyThread.java diff --git a/inventory-dao/src/main/java/com/rzyc/mapper/EntPostDutyMapper.java b/inventory-dao/src/main/java/com/rzyc/mapper/EntPostDutyMapper.java index b52e32d..ad41958 100644 --- a/inventory-dao/src/main/java/com/rzyc/mapper/EntPostDutyMapper.java +++ b/inventory-dao/src/main/java/com/rzyc/mapper/EntPostDutyMapper.java @@ -27,4 +27,28 @@ public interface EntPostDutyMapper extends BaseMapper { * */ ListselectEntUserPostDuty(@Param("enterpriseId") String enterpriseId, @Param("postId")String postId); + + /** + * 企业岗位职责List插入 + * @param list + * @return list + * */ + int insertList(@Param("list") Listlist); + + + /** + * 删除企业清单 + * @param postId + * @return int + * */ + int deleteByPostId(String postId); + + + /** + * 修改企业岗位职责 + * @param entPostDuty + * @return int + * */ + int updatePostDuty(EntPostDuty entPostDuty); + } diff --git a/inventory-dao/src/main/java/com/rzyc/mapper/ent/EntPostMapper.java b/inventory-dao/src/main/java/com/rzyc/mapper/ent/EntPostMapper.java index 8f867ea..5119e38 100644 --- a/inventory-dao/src/main/java/com/rzyc/mapper/ent/EntPostMapper.java +++ b/inventory-dao/src/main/java/com/rzyc/mapper/ent/EntPostMapper.java @@ -61,4 +61,11 @@ public interface EntPostMapper extends BaseMapper { * */ int deletePostOfLegalPerson(@Param("legalPerson") String legalPerson,@Param("enterpriseId")String enterpriseId); + + /** + * 查询没有岗位职责的岗位 + * @return list + * */ + ListselectNoDutyPost(); + } diff --git a/inventory-dao/src/main/java/com/rzyc/model/dto/EntUserPostDutyDto.java b/inventory-dao/src/main/java/com/rzyc/model/dto/EntUserPostDutyDto.java index 6a3456f..ee1c904 100644 --- a/inventory-dao/src/main/java/com/rzyc/model/dto/EntUserPostDutyDto.java +++ b/inventory-dao/src/main/java/com/rzyc/model/dto/EntUserPostDutyDto.java @@ -1,10 +1,13 @@ package com.rzyc.model.dto; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import javax.validation.constraints.NotNull; +import java.util.Date; /** * 企业用户证件照Dto @@ -18,9 +21,85 @@ public class EntUserPostDutyDto { @ApiModelProperty(value = "企业id",required = true) private String enterpriseId; + @ApiModelProperty(value = "主键") + @TableId + private String dutyId; + + @TableField("post_id") @ApiModelProperty(value = "岗位id") private String postId; + @TableField("duty_item") + @ApiModelProperty(value = "职责内容") + private String dutyItem; + + @TableField("sort_id") + @ApiModelProperty(value = "排序") + private Integer sortId; + + private String createBy; + + private String modifyBy; + + private Date createTime; + + private Date modifyTime; + + public String getDutyId() { + return dutyId; + } + + public void setDutyId(String dutyId) { + this.dutyId = dutyId; + } + + public String getDutyItem() { + return dutyItem; + } + + public void setDutyItem(String dutyItem) { + this.dutyItem = dutyItem; + } + + public Integer getSortId() { + return sortId; + } + + public void setSortId(Integer sortId) { + this.sortId = sortId; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public String getModifyBy() { + return modifyBy; + } + + public void setModifyBy(String modifyBy) { + this.modifyBy = modifyBy; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public Date getModifyTime() { + return modifyTime; + } + + public void setModifyTime(Date modifyTime) { + this.modifyTime = modifyTime; + } @ApiModelProperty(value = "页码") private Integer page; diff --git a/inventory-dao/src/main/java/com/rzyc/model/dto/InListDto.java b/inventory-dao/src/main/java/com/rzyc/model/dto/InListDto.java index c081588..e0f1c93 100644 --- a/inventory-dao/src/main/java/com/rzyc/model/dto/InListDto.java +++ b/inventory-dao/src/main/java/com/rzyc/model/dto/InListDto.java @@ -1,6 +1,7 @@ package com.rzyc.model.dto; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; @@ -16,15 +17,15 @@ public class InListDto { private String listId; @ApiModelProperty(value = "清单名") - @TableId("name") + @TableField("name") private String name; @ApiModelProperty(value = "清单排序") - @TableId("sort_id") + @TableField("sort_id") private Integer sortId; @ApiModelProperty(value = "删除状态 1:正常 2:已删除") - @TableId("del_state") + @TableField("del_state") private Integer delState; public String getListId() { diff --git a/inventory-dao/src/main/resources/mapper/EntPostDutyMapper.xml b/inventory-dao/src/main/resources/mapper/EntPostDutyMapper.xml index 3a6e1f3..4515d16 100644 --- a/inventory-dao/src/main/resources/mapper/EntPostDutyMapper.xml +++ b/inventory-dao/src/main/resources/mapper/EntPostDutyMapper.xml @@ -20,8 +20,32 @@ duty_id, post_id, duty_item, sort_id, enterprise_id, create_time, create_by, modify_time, modify_by + + update ent_post_duty set post_id = #{postId},dutyItem = #{dutyItem},sort_id = #{sortId},enterprise_id = #{enterpriseId},modify_by = #{modifyBy},modify_time = #{modifyTime} + where duty_id = #{dutyId} + + + + + insert into ent_post_duty (duty_id,post_id,duty_item,sort_id,enterprise_id,create_time,create_by) values + + (#{list.dutyId}, + #{list.postId}, + #{list.dutyItem}, + #{list.sortId}, + #{list.enterpriseId}, + #{list.createTime}, + #{list.createBy}) + + + + + delete from ent_post_duty where post_id = #{postId} + + + diff --git a/inventory-dao/src/main/resources/mapper/ent/EntPostMapper.xml b/inventory-dao/src/main/resources/mapper/ent/EntPostMapper.xml index e2d9437..7b00cb8 100644 --- a/inventory-dao/src/main/resources/mapper/ent/EntPostMapper.xml +++ b/inventory-dao/src/main/resources/mapper/ent/EntPostMapper.xml @@ -50,8 +50,13 @@ select ep2.* from ent_post ep inner join ent_post ep2 on ep2.post_id = ep.parent_id where ep.post_id = #{postId} + delete from ent_post where `name` = #{legalPerson} and enterprise_id = #{enterpriseId} + + diff --git a/inventory-dao/src/main/resources/mapper/ent/InEntListMapper.xml b/inventory-dao/src/main/resources/mapper/ent/InEntListMapper.xml index 366b566..220d232 100644 --- a/inventory-dao/src/main/resources/mapper/ent/InEntListMapper.xml +++ b/inventory-dao/src/main/resources/mapper/ent/InEntListMapper.xml @@ -33,7 +33,7 @@ diff --git a/inventory-dao/src/main/resources/mapper/ent/SysEnterpriseMapper.xml b/inventory-dao/src/main/resources/mapper/ent/SysEnterpriseMapper.xml index f4eac94..0cd41e8 100644 --- a/inventory-dao/src/main/resources/mapper/ent/SysEnterpriseMapper.xml +++ b/inventory-dao/src/main/resources/mapper/ent/SysEnterpriseMapper.xml @@ -438,7 +438,8 @@ - + + update SysEnterprise @@ -2584,5 +2585,42 @@ select sysent.EntName,sysent.state,sysent.SysEnterpriseId,sysent.EntName from ent_user eu left join sysenterprise sysent on eu.enterprise_id = sysent.SysEnterpriseId where eu.mobile = #{entUserPhone} + + insert into sysenterprise (SysEnterpriseId,EntName,OrgPassNo,area_code,area_path,area_name,SysAddress,work_class_id,LegalRepre,LRLinkTel, + SafeManager,SafeTelephone,PersonCount,EstablishDate,ManageType,IsHide,`State`,CreatedOn,CreatedBy)values + + (#{list.SysEnterpriseId}, + #{list.EntName}, + #{list.OrgPassNo}, + #{list.areaCode}, + #{list.areaPath}, + #{list.areaName}, + #{list.address}, + #{list.industryId}, + #{list.legalPerson}, + #{list.legalPersonPhone}, + #{list.safeChangePerson}, + #{list.safeChangePersonPhone}, + #{list.staffNumber}, + #{list.establishTime}, + #{list.businessScope}, + '否', + '启用', + #{list.CreatedOn}, + #{list.CreatedBy}) + + + + + + + diff --git a/inventory-ent/src/main/java/com/rzyc/controller/PersonalController.java b/inventory-ent/src/main/java/com/rzyc/controller/PersonalController.java index a9c65d4..2b5e6a5 100644 --- a/inventory-ent/src/main/java/com/rzyc/controller/PersonalController.java +++ b/inventory-ent/src/main/java/com/rzyc/controller/PersonalController.java @@ -562,9 +562,33 @@ public class PersonalController extends BaseController{ return pcBusinessService.generatePostListAndListTask(); } + /** + * 生成企业岗位职责 + * @return list + * @throws Exception + */ + @ApiOperation(value = "生成企业岗位职责", notes = "生成企业岗位职责") + @GetMapping(value = "/generatePostDuty") + @ResponseBody + public SingleResult generatePostDuty()throws Exception{ + return pcBusinessService.generatePostDuty(); + } - + /** + * 新增企业岗位职责 + * @return + * @throws Exception + * */ + @ApiOperation(value = "新增企业岗位职责", notes = "新增企业岗位职责") + @PostMapping(value = "/addEntPostDuty") + @ApiImplicitParams({ + @ApiImplicitParam(name = "dutyId", value = "岗位职责id",required = false, dataType = "string") + }) + @ResponseBody + public SingleResult addOrUpdateEntPostDuty(EntUserPostDutyDto duty)throws Exception{ + return pcBusinessService.addOrUpdateEntPostDuty(duty); + } diff --git a/inventory-ent/src/main/java/com/rzyc/service/AssignmentTaskThread.java b/inventory-ent/src/main/java/com/rzyc/service/AssignmentTaskThread.java index bb7b19c..94e7b38 100644 --- a/inventory-ent/src/main/java/com/rzyc/service/AssignmentTaskThread.java +++ b/inventory-ent/src/main/java/com/rzyc/service/AssignmentTaskThread.java @@ -63,7 +63,10 @@ public class AssignmentTaskThread implements Runnable{ public void run() { //插入清单和任务 try { + //公共的企业清单 autoAssignmentTask(entUserId,enterpriseId,postId,createByUserId); + //对应岗位的履职清单 +// autoAssignmentTaskOfPost(entUserId,enterpriseId,postId,createByUserId); } catch (Exception e) { e.printStackTrace(); } @@ -73,6 +76,7 @@ public class AssignmentTaskThread implements Runnable{ public void autoAssignmentTask(String userId,String enterpriseId,String postId,String createByUserId) throws Exception { entPostListMapper.deleteEntPostList(userId); entPostTaskMapper.deleteEntPostTaskList(userId); + //企业公共的清单 List inEntLists = inEntListMapper.selectByEnterpriseId(enterpriseId); for (InEntList ie:inEntLists) { AddOrUpdateEntUserPostListDto addOrUpdateEntUserPostTaskDto = new AddOrUpdateEntUserPostListDto(); diff --git a/inventory-ent/src/main/java/com/rzyc/service/EntPostDutyThread.java b/inventory-ent/src/main/java/com/rzyc/service/EntPostDutyThread.java new file mode 100644 index 0000000..9658a71 --- /dev/null +++ b/inventory-ent/src/main/java/com/rzyc/service/EntPostDutyThread.java @@ -0,0 +1,58 @@ +package com.rzyc.service; + + +import com.common.utils.RandomNumber; +import com.rzyc.mapper.EntPostDutyMapper; +import com.rzyc.mapper.ent.InEntListMapper; +import com.rzyc.model.EntPostDuty; +import com.rzyc.model.ent.EntPost; +import com.rzyc.model.ent.InEntList; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * 插入企业岗位职责 + * @author xuwanxin + * @date 2022/12/22 + * */ +public class EntPostDutyThread implements Runnable{ + + private InEntListMapper inEntListMapper; + + private EntPostDutyMapper entPostDutyMapper; + + private Listposts; + + public EntPostDutyThread(InEntListMapper inEntListMapper, EntPostDutyMapper entPostDutyMapper,Listposts) { + this.inEntListMapper = inEntListMapper; + this.entPostDutyMapper = entPostDutyMapper; + this.posts = posts; + } + + @Override + public void run() { + List duties = new ArrayList<>(); + for (EntPost e:posts) { + List list = inEntListMapper.selectByEnterpriseId(e.getEnterpriseId()); + for (InEntList s:list) { + EntPostDuty entPostDuty = new EntPostDuty(); + entPostDuty.setDutyId(RandomNumber.getUUid()); + entPostDuty.setPostId(e.getPostId()); + entPostDuty.setDutyItem(s.getItemContent()); + entPostDuty.setSortId(s.getSortId()); + entPostDuty.setEnterpriseId(s.getEnterpriseId()); + entPostDuty.setCreateBy("系统导入"); + entPostDuty.setCreateTime(new Date()); + duties.add(entPostDuty); + } + if (duties.size() > 0){ + entPostDutyMapper.insertList(duties); + duties.clear(); + }else { + System.out.println("err"); + } + } + } +} diff --git a/inventory-ent/src/main/java/com/rzyc/service/PcBusinessService.java b/inventory-ent/src/main/java/com/rzyc/service/PcBusinessService.java index 0d4f3b4..d641266 100644 --- a/inventory-ent/src/main/java/com/rzyc/service/PcBusinessService.java +++ b/inventory-ent/src/main/java/com/rzyc/service/PcBusinessService.java @@ -415,6 +415,23 @@ public class PcBusinessService extends BaseController { singleResult.setData(posts); //存redis boolean insertRedisResult = redisUtil.set(redisUtil.appendSymbol(RedisKeys.DEVICE.getKey(),addOrUpdateEntPostDto.getEnterpriseId()),posts,0); + + //生成岗位职责(企业全体员工都涉及的) + Listlist = inEntListMapper.selectByEnterpriseId(entPost.getEnterpriseId()); + List duties = new ArrayList<>(); + for (InEntList s:list) { + EntPostDuty entPostDuty = new EntPostDuty(); + entPostDuty.setDutyId(RandomNumber.getUUid()); + entPostDuty.setPostId(entPost.getPostId()); + entPostDuty.setDutyItem(s.getItemContent()); + entPostDuty.setSortId(s.getSortId()); + entPostDuty.setEnterpriseId(s.getEnterpriseId()); + entPostDuty.setCreateBy(getUserId()); + entPostDuty.setCreateTime(new Date()); + duties.add(entPostDuty); + } + entPostDutyMapper.deleteByPostId(entPost.getPostId()); + entPostDutyMapper.insertList(duties); return singleResult; } @@ -1232,7 +1249,9 @@ public class PcBusinessService extends BaseController { //创建或者修改企业用户 String userId = RandomNumber.getUUid(); String postId = RandomNumber.getUUid(); - SaveEntPostAndUserThread SaveEntPostAndUserThread = new SaveEntPostAndUserThread(s.getSysenterpriseid(),getUserId(),entPostMapper,entUserMapper,constantsConfigure,s.getLegalrepre(),s.getLrlinktel(),s.getEntname(),copyOnWriteArrayList,postId,userId); + + SaveEntPostAndUserThread SaveEntPostAndUserThread = new SaveEntPostAndUserThread(s.getSysenterpriseid(),getUserId(),entPostMapper,entUserMapper,constantsConfigure,s.getLegalrepre(), + s.getLrlinktel(),s.getEntname(),copyOnWriteArrayList,postId,userId); executor.execute(SaveEntPostAndUserThread); } return singleResult; @@ -1248,4 +1267,33 @@ public class PcBusinessService extends BaseController { return singleResult; } + public SingleResult generatePostDuty(){ + SingleResult singleResult = new SingleResult(); + Listposts = entPostMapper.selectNoDutyPost(); + EntPostDutyThread entPostDutyThread = new EntPostDutyThread(inEntListMapper,entPostDutyMapper,posts); + executor.execute(entPostDutyThread); + return singleResult; + } + + public SingleResult addOrUpdateEntPostDuty(EntUserPostDutyDto duty) throws Exception { + EntPostDuty entPostDuty = new EntPostDuty(); + BeanUtils.copyProperties(duty,entPostDuty); + SingleResult singleResult = new SingleResult(); + int result = 0; + if (null == duty){ + entPostDuty.setCreateTime(new Date()); + entPostDuty.setCreateBy(getUserId()); + result = entPostDutyMapper.insert(entPostDuty); + }else { + entPostDuty.setModifyBy(getUserId()); + entPostDuty.setModifyTime(new Date()); + result = entPostDutyMapper.updatePostDuty(entPostDuty); + } + if (result <= 0){ + singleResult.setCode(Code.ERROR.getCode()); + singleResult.setMessage(Message.ERROR); + } + return singleResult; + } + } diff --git a/inventory-ent/src/main/java/com/rzyc/service/SaveEntPostAndUserThread.java b/inventory-ent/src/main/java/com/rzyc/service/SaveEntPostAndUserThread.java index 2c1e549..ceeca9f 100644 --- a/inventory-ent/src/main/java/com/rzyc/service/SaveEntPostAndUserThread.java +++ b/inventory-ent/src/main/java/com/rzyc/service/SaveEntPostAndUserThread.java @@ -3,12 +3,18 @@ package com.rzyc.service; import com.common.utils.RandomNumber; import com.common.utils.encryption.MD5; import com.rzyc.config.ConstantsConfigure; +import com.rzyc.mapper.EntPostDutyMapper; import com.rzyc.mapper.ent.EntPostMapper; import com.rzyc.mapper.ent.EntUserMapper; +import com.rzyc.mapper.ent.InEntListMapper; +import com.rzyc.model.EntPostDuty; import com.rzyc.model.ent.EntPost; import com.rzyc.model.ent.EntUser; +import com.rzyc.model.ent.InEntList; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; /** @@ -46,8 +52,10 @@ public class SaveEntPostAndUserThread implements Runnable { private String postId; + + public SaveEntPostAndUserThread(String enterpriseId, String createBy, EntPostMapper entPostMapper, EntUserMapper entUserMapper, ConstantsConfigure constantsConfigure, - String name, String phone, String entName, CopyOnWriteArrayList copyOnWriteArrayList,String postId,String userId) { + String name, String phone, String entName, CopyOnWriteArrayList copyOnWriteArrayList, String postId, String userId) { this.enterpriseId = enterpriseId; if (null != createBy){ this.createBy = createBy; @@ -85,6 +93,7 @@ public class SaveEntPostAndUserThread implements Runnable { entPostMapper.deletePostOfLegalPerson(legalPerson,enterpriseId); entPostMapper.insertEntPost(entPost); + //存企业用户 EntUser entUser = new EntUser(); entUser.setEntUserId(userId);