diff --git a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteProService.java b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteProService.java index 81064a49..3416af3f 100644 --- a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteProService.java +++ b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/RemoteProService.java @@ -41,6 +41,16 @@ public interface RemoteProService @GetMapping("/proProjectInfoSubdeptsUsers/approveSubDeptsUser/{busKey}") public R<AjaxResult> approveSubDeptsUser(@PathVariable("busKey") Long busKey, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + /** + * 公司安全承诺书文件签名章 + * + * @param busKey 业务主键 + * @param source 请求来源 + * @return 结果 + */ + @GetMapping("/proProjectInfoSubdeptsUsers/subDeptsUserComSign/{busKey}") + public R<AjaxResult> subDeptsUserComSign(@PathVariable("busKey") Long busKey, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + /** * 项目安全承诺书文件签名章 * diff --git a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteProFallbackFactory.java b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteProFallbackFactory.java index 79abcff8..a4e674a6 100644 --- a/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteProFallbackFactory.java +++ b/yanzhu-api/yanzhu-api-system/src/main/java/com/yanzhu/system/api/factory/RemoteProFallbackFactory.java @@ -38,6 +38,12 @@ public class RemoteProFallbackFactory implements FallbackFactory<RemoteProServic return R.fail("审批通过信息同步失败:" + throwable.getMessage()); } + @Override + public R<AjaxResult> subDeptsUserComSign(Long busKey, String source) + { + return R.fail("公司承诺书签名章失败:" + throwable.getMessage()); + } + @Override public R<AjaxResult> subDeptsUserProSign(Long busKey, String source) { diff --git a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/BasTemplateMapper.xml b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/BasTemplateMapper.xml index 978986e0..0d9d5c6b 100644 --- a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/BasTemplateMapper.xml +++ b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/BasTemplateMapper.xml @@ -32,6 +32,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" <where> <if test="comId != null "> and bt.com_id = #{comId}</if> <if test="projectId != null "> and bt.project_id = #{projectId}</if> + <if test="activeComId != null "> and bt.com_id = #{activeComId}</if> + <if test="activeProjectId != null "> and bt.project_id = #{activeProjectId}</if> <if test="temName != null and temName != ''"> and bt.tem_name like concat('%', #{temName}, '%')</if> <if test="temType != null and temType != ''"> and bt.tem_type = #{temType}</if> <if test="isDel != null "> and bt.is_del = #{isDel}</if> diff --git a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/system/SysUserMapper.xml b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/system/SysUserMapper.xml index 7c8e26f4..8f4d9d86 100644 --- a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/system/SysUserMapper.xml +++ b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/system/SysUserMapper.xml @@ -80,7 +80,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from sys_user u left join sys_dept d on u.dept_id = d.dept_id left join sys_user_ext ex on u.user_id=ex.user_id - where u.del_flag = '0' + where u.del_flag = '0' and u.user_type= '00' <if test="userId != null and userId != 0"> AND u.user_id = #{userId} </if> diff --git a/yanzhu-modules/yanzhu-flowable/src/main/java/com/yanzhu/flowable/listener/FlowComSignListener.java b/yanzhu-modules/yanzhu-flowable/src/main/java/com/yanzhu/flowable/listener/FlowComSignListener.java new file mode 100644 index 00000000..c769fe9a --- /dev/null +++ b/yanzhu-modules/yanzhu-flowable/src/main/java/com/yanzhu/flowable/listener/FlowComSignListener.java @@ -0,0 +1,41 @@ +package com.yanzhu.flowable.listener; + +import com.yanzhu.common.core.constant.SecurityConstants; +import com.yanzhu.common.core.text.Convert; +import com.yanzhu.system.api.RemoteProService; +import lombok.extern.slf4j.Slf4j; +import org.flowable.engine.delegate.DelegateExecution; +import org.flowable.engine.delegate.ExecutionListener; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; +import org.springframework.stereotype.Component; + +/** + * 公司审批签名执行监听器 + * + * 执行监听器允许在执行过程中执行Java代码。 + * 执行监听器可以捕获事件的类型: + * 流程实例启动,结束 + * 输出流捕获 + * 获取启动,结束 + * 路由开始,结束 + * 中间事件开始,结束 + * 触发开始事件,触发结束事件 + * + * @author JiangYuQi + * @date 2024/12/16 + */ +@Slf4j +@Component +public class FlowComSignListener implements ExecutionListener { + + @Lazy + @Autowired + private RemoteProService remoteProService; + + @Override + public void notify(DelegateExecution execution) { + log.info("公司审批签名执行监听器:{}", execution.getProcessInstanceBusinessKey()); + remoteProService.subDeptsUserComSign(Convert.toLong(execution.getProcessInstanceBusinessKey(),null), SecurityConstants.INNER); + } +} diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProProjectInfoSubdeptsUsersController.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProProjectInfoSubdeptsUsersController.java index 5ae7d451..42492fbe 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProProjectInfoSubdeptsUsersController.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProProjectInfoSubdeptsUsersController.java @@ -160,13 +160,13 @@ public class ProProjectInfoSubdeptsUsersController extends BaseController } /** - * 班组安全承诺书文件签名章 + * 公司安全承诺书文件签名章 */ @InnerAuth - @GetMapping("/subDeptsUserGroSign/{busKey}") - public R<AjaxResult> subDeptsUserGroSign(@PathVariable("busKey") Long busKey) + @GetMapping("/subDeptsUserComSign/{busKey}") + public R<AjaxResult> subDeptsUserComSign(@PathVariable("busKey") Long busKey) { - proProjectInfoSubdeptsUsersService.approveSubDeptsUserGroSign(busKey); + proProjectInfoSubdeptsUsersService.approveSubDeptsUserComSign(busKey); return R.ok(AjaxResult.success()); } @@ -181,6 +181,17 @@ public class ProProjectInfoSubdeptsUsersController extends BaseController return R.ok(AjaxResult.success()); } + /** + * 班组安全承诺书文件签名章 + */ + @InnerAuth + @GetMapping("/subDeptsUserGroSign/{busKey}") + public R<AjaxResult> subDeptsUserGroSign(@PathVariable("busKey") Long busKey) + { + proProjectInfoSubdeptsUsersService.approveSubDeptsUserGroSign(busKey); + return R.ok(AjaxResult.success()); + } + /** * 修改人员进场状态 * @param ids diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/CraftPostEnums.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/CraftPostEnums.java index 9a9a7329..6dde05aa 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/CraftPostEnums.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/CraftPostEnums.java @@ -6,7 +6,9 @@ package com.yanzhu.manage.enums; public enum CraftPostEnums { WTDL("1022", "委托代理人"), - XMJL("1023", "项目经理"); + XMJL("1023", "项目经理"), + AQZY("1024", "安全专员"), + CLZY("1025", "材料专员"); private final String code; private final String info; diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/DeptGroupEnums.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/DeptGroupEnums.java index c4fd28f7..7ebf73d9 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/DeptGroupEnums.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/DeptGroupEnums.java @@ -5,7 +5,8 @@ package com.yanzhu.manage.enums; */ public enum DeptGroupEnums { - MANAGE("DEFAULT", "管理班组"); + MANAGE("DEFAULT", "管理班组"), + SPECIAL("SPECIAL", "特殊工种班组"); private final String code; private final String info; diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/UserPostEnums.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/UserPostEnums.java index 389266e3..30e493f8 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/UserPostEnums.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/enums/UserPostEnums.java @@ -9,6 +9,7 @@ public enum UserPostEnums { XMJL("2", "项目经理"), BZZ("3", "班组长"), LWGR("4", "劳务工人"), + TSGZ("5", "特殊工种"), CLRY("6", "材料员"), AQRY("8", "安全员"), JSDWGL("66", "建设单位管理"), diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProProjectInfoSubdeptsUsersService.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProProjectInfoSubdeptsUsersService.java index 641b9fd8..c73bdb33 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProProjectInfoSubdeptsUsersService.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProProjectInfoSubdeptsUsersService.java @@ -124,6 +124,12 @@ public interface IProProjectInfoSubdeptsUsersService */ public void approveSubDeptsUserProSign(Long id); + /** + * 公司安全承诺书文件签名章 + * @param id + */ + public void approveSubDeptsUserComSign(Long id); + /** * 新增建设单位人员 * diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProProjectInfoSubdeptsUsersServiceImpl.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProProjectInfoSubdeptsUsersServiceImpl.java index d14424ef..822a2bee 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProProjectInfoSubdeptsUsersServiceImpl.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProProjectInfoSubdeptsUsersServiceImpl.java @@ -318,7 +318,7 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu // 班组信息处理 if(Objects.nonNull(proProjectInfoSubdeptsUsers.getUserPost())){ if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(), UserPostEnums.XMJL.getCode())){ - //查询管理班组 + // 查询管理班组 ProProjectInfoSubdeptsGroup query = new ProProjectInfoSubdeptsGroup(); query.setProjectId(parUsers.getProjectId()); query.setSubDeptId(parUsers.getSubDeptId()); @@ -332,6 +332,39 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu proProjectInfoSubdeptsUsers.setCraftType(CraftTypeEnums.GLRY.getCode()); proProjectInfoSubdeptsUsers.setCraftPost(CraftPostEnums.XMJL.getCode()); sysUser.setUserType(UserTypeEnums.FBXMJL.getCode()); + + // 设置特殊工种班组 + ProProjectInfoSubdeptsGroup GroupQuery = new ProProjectInfoSubdeptsGroup(); + GroupQuery.setProjectId(parUsers.getProjectId()); + GroupQuery.setSubDeptId(parUsers.getSubDeptId()); + GroupQuery.setGroupCode(DeptGroupEnums.SPECIAL.getCode()); + List<ProProjectInfoSubdeptsGroup> specialGroups = proProjectInfoSubdeptsGroupMapper.selectProProjectInfoSubdeptsGroupList(query); + + if(Objects.nonNull(specialGroups) && specialGroups.size()>0){ + ProProjectInfoSubdeptsGroup specialGroup = specialGroups.get(0); + specialGroup.setGroupLeaderName(proProjectInfoSubdeptsUsers.getUserName()); + specialGroup.setGroupLeaderCode(proProjectInfoSubdeptsUsers.getCardCode()); + specialGroup.setGroupLeaderPhone(proProjectInfoSubdeptsUsers.getUserPhone()); + proProjectInfoSubdeptsGroupMapper.updateProProjectInfoSubdeptsGroup(specialGroup); + }else{ + ProProjectInfoSubdeptsGroup specialGroup = new ProProjectInfoSubdeptsGroup(); + specialGroup.setComId(proProjectInfoSubdeptsUsers.getComId()); + specialGroup.setProjectId(proProjectInfoSubdeptsUsers.getProjectId()); + specialGroup.setSubDeptId(proProjectInfoSubdeptsUsers.getSubDeptId()); + specialGroup.setSubDeptName(proProjectInfoSubdeptsUsers.getSubDeptName()); + specialGroup.setSubDeptType(proProjectInfoSubdeptsUsers.getSubDeptType()); + specialGroup.setGroupCode(DeptGroupEnums.SPECIAL.getCode()); + specialGroup.setGroupName(DeptGroupEnums.SPECIAL.getInfo()); + specialGroup.setCraftType(CraftTypeEnums.TSGZ.getCode()); + specialGroup.setGroupLeaderName(proProjectInfoSubdeptsUsers.getUserName()); + specialGroup.setGroupLeaderCode(proProjectInfoSubdeptsUsers.getCardCode()); + specialGroup.setGroupLeaderPhone(proProjectInfoSubdeptsUsers.getUserPhone()); + specialGroup.setUseStatus(UseStateEnums.AW.getCode()); + specialGroup.setApproveStatus(ApproveStatus.await.getCode()); + specialGroup.setCreateBy(DataSourceEnuns.APP.getInfo()); + specialGroup.setCreateTime(DateUtils.getNowDate()); + proProjectInfoSubdeptsGroupMapper.insertProProjectInfoSubdeptsGroup(specialGroup); + } }else if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(), UserPostEnums.BZZ.getCode())){ // 班组长新增班组 ProProjectInfoSubdeptsGroup query = new ProProjectInfoSubdeptsGroup(); @@ -364,7 +397,7 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu sysUser.setUserType(UserTypeEnums.FBBZZZ.getCode()); }else if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(), UserPostEnums.CLRY.getCode())){ - //查询管理班组 + // 查询管理班组 ProProjectInfoSubdeptsGroup query = new ProProjectInfoSubdeptsGroup(); query.setProjectId(parUsers.getProjectId()); query.setSubDeptId(parUsers.getSubDeptId()); @@ -375,10 +408,11 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu proProjectInfoSubdeptsUsers.setSubDeptGroup(groups.get(0).getId()); proProjectInfoSubdeptsUsers.setSubDeptGroupName(groups.get(0).getGroupName()); } - + proProjectInfoSubdeptsUsers.setCraftType(CraftTypeEnums.GLRY.getCode()); + proProjectInfoSubdeptsUsers.setCraftPost(CraftPostEnums.CLZY.getCode()); sysUser.setUserType(UserTypeEnums.FBCLRY.getCode()); }else if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(), UserPostEnums.AQRY.getCode())){ - //查询管理班组 + // 查询管理班组 ProProjectInfoSubdeptsGroup query = new ProProjectInfoSubdeptsGroup(); query.setProjectId(parUsers.getProjectId()); query.setSubDeptId(parUsers.getSubDeptId()); @@ -389,8 +423,22 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu proProjectInfoSubdeptsUsers.setSubDeptGroup(groups.get(0).getId()); proProjectInfoSubdeptsUsers.setSubDeptGroupName(groups.get(0).getGroupName()); } - + proProjectInfoSubdeptsUsers.setCraftType(CraftTypeEnums.GLRY.getCode()); + proProjectInfoSubdeptsUsers.setCraftPost(CraftPostEnums.AQZY.getCode()); sysUser.setUserType(UserTypeEnums.FBAQRY.getCode()); + }else if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(), UserPostEnums.TSGZ.getCode())){ + // 查询特殊工种绑定班组信息 + ProProjectInfoSubdeptsGroup query = new ProProjectInfoSubdeptsGroup(); + query.setProjectId(parUsers.getProjectId()); + query.setSubDeptId(parUsers.getSubDeptId()); + query.setGroupCode(DeptGroupEnums.SPECIAL.getCode()); + List<ProProjectInfoSubdeptsGroup> groups = proProjectInfoSubdeptsGroupMapper.selectProProjectInfoSubdeptsGroupList(query); + + if(Objects.nonNull(groups) && groups.size()>0){ + proProjectInfoSubdeptsUsers.setSubDeptGroup(groups.get(0).getId()); + proProjectInfoSubdeptsUsers.setSubDeptGroupName(groups.get(0).getGroupName()); + } + sysUser.setUserType(UserTypeEnums.FBLWRY.getCode()); }else if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(), UserPostEnums.LWGR.getCode())){ // 劳务人员绑定班组信息 proProjectInfoSubdeptsUsers.setSubDeptGroup(parUsers.getSubDeptGroup()); @@ -839,24 +887,6 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu } } - // 审核文件签名 - String filePath = proProjectInfoSubdeptsUsers.getEduFilePath().replace(ProfileConfig.profile, ProfileConfig.profilePath); - BasSignet query = new BasSignet(); - query.setProjectId(proProjectInfoSubdeptsUsers.getProjectId()); - query.setUserId(SecurityUtils.getUserId()); - List<BasSignet> signets = basSignetMapper.selectBasSignetList(query); - if(StringUtils.isEmpty(signets)){ - throw new ServiceException("获取签名异常"); - } - File pdfFile = org.apache.commons.io.FileUtils.getFile(filePath); - if (!pdfFile.getParentFile().exists()) { - boolean mkdirs = pdfFile.getParentFile().mkdirs(); - log.info("创建目录...{}...{}",mkdirs,filePath); - } - String newFilePath = filePath.replace(".pdf","-c.pdf"); - PdfImageSignetUtil.imageWaterMark(filePath, filePath, signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath),SignetKeyEnums.COMPANY_SIGN.getCode()); - proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath); - proProjectInfoSubdeptsUsers.setUseStatus(UseStateEnums.IN.getCode()); proProjectInfoSubdeptsUsers.setApproveStatus(ApproveStatus.exempt.getCode()); proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers); @@ -872,22 +902,29 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu public void approveSubDeptsUserGroSign(Long id){ ProProjectInfoSubdeptsUsers proProjectInfoSubdeptsUsers = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersById(id); String filePath = proProjectInfoSubdeptsUsers.getEduFilePath().replace(ProfileConfig.profile, ProfileConfig.profilePath); - BasSignet query = new BasSignet(); - query.setProjectId(proProjectInfoSubdeptsUsers.getProjectId()); - query.setUserId(SecurityUtils.getUserId()); - List<BasSignet> signets = basSignetMapper.selectBasSignetList(query); - if(StringUtils.isEmpty(signets)){ - throw new ServiceException("获取签名异常"); + + // 查询班组长签名 + if(proProjectInfoSubdeptsUsers.getSubDeptGroup()!=null){ + ProProjectInfoSubdeptsGroup group = proProjectInfoSubdeptsGroupMapper.selectProProjectInfoSubdeptsGroupById(proProjectInfoSubdeptsUsers.getSubDeptGroup()); + if(group!=null && StringUtils.isNotEmpty(group.getGroupLeaderPhone())){ + ProProjectInfoSubdeptsUsers userQuery = new ProProjectInfoSubdeptsUsers(); + userQuery.setUserPhone(group.getGroupLeaderPhone()); + userQuery.setProjectId(group.getProjectId()); + List<ProProjectInfoSubdeptsUsers> users = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersList(userQuery); + if(StringUtils.isNotEmpty(users)){ + BasSignet query = new BasSignet(); + query.setProjectId(users.get(0).getProjectId()); + query.setUserId(users.get(0).getUserId()); + List<BasSignet> signets = basSignetMapper.selectBasSignetList(query); + if(StringUtils.isNotEmpty(signets)){ + String newFilePath = filePath.replace(".pdf","-g.pdf"); + PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath),SignetKeyEnums.GROUP_SIGN.getCode()); + proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile)); + proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers); + } + } + } } - File pdfFile = org.apache.commons.io.FileUtils.getFile(filePath); - if (!pdfFile.getParentFile().exists()) { - boolean mkdirs = pdfFile.getParentFile().mkdirs(); - log.info("创建目录...{}...{}",mkdirs,filePath); - } - String newFilePath = filePath.replace(".pdf","-g.pdf"); - PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath),SignetKeyEnums.GROUP_SIGN.getCode()); - proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath); - proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers); } /** @@ -898,22 +935,56 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu public void approveSubDeptsUserProSign(Long id){ ProProjectInfoSubdeptsUsers proProjectInfoSubdeptsUsers = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersById(id); String filePath = proProjectInfoSubdeptsUsers.getEduFilePath().replace(ProfileConfig.profile, ProfileConfig.profilePath); - BasSignet query = new BasSignet(); - query.setProjectId(proProjectInfoSubdeptsUsers.getProjectId()); - query.setUserId(SecurityUtils.getUserId()); - List<BasSignet> signets = basSignetMapper.selectBasSignetList(query); - if(StringUtils.isEmpty(signets)){ - throw new ServiceException("获取签名异常"); + ProProjectInfoSubdeptsUsers userQuery = new ProProjectInfoSubdeptsUsers(); + userQuery.setWorkType(18L); + userQuery.setProjectId(proProjectInfoSubdeptsUsers.getProjectId()); + List<ProProjectInfoSubdeptsUsers> users = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersList(userQuery); + if(StringUtils.isNotEmpty(users)){ + BasSignet query = new BasSignet(); + query.setProjectId(users.get(0).getProjectId()); + query.setUserId(users.get(0).getUserId()); + List<BasSignet> signets = basSignetMapper.selectBasSignetList(query); + if(StringUtils.isNotEmpty(signets)){ + String newFilePath = filePath.replace(".pdf","-p.pdf"); + PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath),SignetKeyEnums.PROJECT_SIGN.getCode()); + proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile)); + proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers); + } } - File pdfFile = org.apache.commons.io.FileUtils.getFile(filePath); - if (!pdfFile.getParentFile().exists()) { - boolean mkdirs = pdfFile.getParentFile().mkdirs(); - log.info("创建目录...{}...{}",mkdirs,filePath); + } + + /** + * 公司安全承诺书文件签名章 + * @param id + */ + @Override + public void approveSubDeptsUserComSign(Long id){ + // 审核文件签名 + ProProjectInfoSubdeptsUsers proProjectInfoSubdeptsUsers = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersById(id); + String filePath = proProjectInfoSubdeptsUsers.getEduFilePath().replace(ProfileConfig.profile, ProfileConfig.profilePath); + ProProjectInfoSubdeptsUsers userQuery = new ProProjectInfoSubdeptsUsers(); + userQuery.setWorkType(18L); + userQuery.setProjectId(proProjectInfoSubdeptsUsers.getProjectId()); + List<ProProjectInfoSubdeptsUsers> users = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersList(userQuery); + if(StringUtils.isNotEmpty(users)){ + BasSignet query = new BasSignet(); + query.setProjectId(users.get(0).getProjectId()); + query.setUserId(users.get(0).getUserId()); + List<BasSignet> signets = basSignetMapper.selectBasSignetList(query); + if(StringUtils.isNotEmpty(signets)){ + String newFilePath = filePath.replace(".pdf","-c.pdf"); + PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath),SignetKeyEnums.PROJECT_SIGN.getCode()); + proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile)); + proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers); + } } - String newFilePath = filePath.replace(".pdf","-p.pdf"); - PdfImageSignetUtil.imageWaterMark(filePath, filePath, signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath),SignetKeyEnums.PROJECT_SIGN.getCode()); - proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath); - proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers); + } + + public static void main(String[] args) { + String path = "D:\\meta\\test.pdf"; + String newPath = path.replace(".pdf","-c.pdf");; + String signPath = "D:\\meta\\sign.png.v1.png"; + PdfImageSignetUtil.imageWaterMark(path, newPath, signPath, SignetKeyEnums.PROJECT_SIGN.getCode()); } /** diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/utils/pdf/PdfImageSignetUtil.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/utils/pdf/PdfImageSignetUtil.java index a57b58d3..59d27247 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/utils/pdf/PdfImageSignetUtil.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/utils/pdf/PdfImageSignetUtil.java @@ -127,26 +127,7 @@ public class PdfImageSignetUtil { pdfReader = new PdfReader(srcPdfPath); FileOutputStream out = org.apache.commons.io.FileUtils.openOutputStream(org.apache.commons.io.FileUtils.getFile(newPdfPath)); pdfStamper = new PdfStamper(pdfReader, out); - BufferedImage bufferedImage = ImageIO.read(org.apache.commons.io.FileUtils.getFile(imagePath)); - // 这里裁剪图片可能报错,报错用原图 - int[] array = bufferedImageToIntArray(bufferedImage,bufferedImage.getWidth(),bufferedImage.getHeight()); - // blank是作为四周边距留白 - int blank = 20; - boolean cutResult = false; - try { - // 图片裁剪 - ImgUtil.cut(FileUtil.file(imagePath), - FileUtil.file(imagePath + ".v1.png"), new Rectangle(array[0]-blank,array[1]-blank,array[2]+blank*2, array[3]+blank*2)); - cutResult = true; - }catch (Exception ex){ - log.error("图片裁剪发生未知异常:" + ex); - } - // 图片压缩 - // ImgUtil.scale(FileUtil.file(cutResult?(imagePath + ".v0.png"):imagePath), - // FileUtil.file(imagePath + ".v1.png"), (float) (60.0/bufferedImage.getWidth())); - // 图片旋转 - ImgUtil.rotate(FileUtil.file(cutResult?(imagePath + ".v1.png"):imagePath),270,FileUtil.file(imagePath + ".v2.png")); - Image qrcodeImage = Image.getInstance(imagePath+".v2.png"); + Image qrcodeImage = Image.getInstance(imagePath); //设置图片宽高 qrcodeImage.scaleToFit(qrcodeImage.getWidth()/20, qrcodeImage.getHeight()/20); for(int i=0;i<list.size();i++){ diff --git a/yanzhu-ui-app/miniprogram/pages/login/login.wxml b/yanzhu-ui-app/miniprogram/pages/login/login.wxml index 5bb7b31f..18bda77e 100644 --- a/yanzhu-ui-app/miniprogram/pages/login/login.wxml +++ b/yanzhu-ui-app/miniprogram/pages/login/login.wxml @@ -1,6 +1,6 @@ <!--pages/login/login.wxml--> <view class="login_logo"> - <image src="https://xiangguan.sxyanzhu.com/profile/xmgl/static/sys_logo.png"></image> + <image wx:if="false" src="https://xiangguan.sxyanzhu.com/profile/xmgl/static/sys_logo.png"></image> </view> <view class="login_title"> <text>数字工程项目管理系统</text> diff --git a/yanzhu-ui-app/miniprogram/pages/login/login.wxss b/yanzhu-ui-app/miniprogram/pages/login/login.wxss index 23e6cb5e..1e4c84bd 100644 --- a/yanzhu-ui-app/miniprogram/pages/login/login.wxss +++ b/yanzhu-ui-app/miniprogram/pages/login/login.wxss @@ -6,6 +6,7 @@ page { .login_logo { text-align: center; padding: 50rpx 0rpx; + height: 120rpx; } .login_logo image { diff --git a/yanzhu-ui-app/miniprogram/pages/project_flowable/approveTask/index.wxml b/yanzhu-ui-app/miniprogram/pages/project_flowable/approveTask/index.wxml index d4d215b1..1fd7ea9c 100644 --- a/yanzhu-ui-app/miniprogram/pages/project_flowable/approveTask/index.wxml +++ b/yanzhu-ui-app/miniprogram/pages/project_flowable/approveTask/index.wxml @@ -70,7 +70,7 @@ <view class="module_title module_title_padding"> <view>{{subDeptData.projectName}}</view> </view> - <view class="inspect_info" wx:if="{{options.category=='1' || options.category=='2' || options.category=='3' || options.category=='4' || options.category=='6' || options.category=='8'}}"> + <view class="inspect_info" wx:if="{{options.category=='1' || options.category=='2' || options.category=='3' || options.category=='4' || options.category=='5' || options.category=='6' || options.category=='8'}}"> <view class="inspect_overview_list"> <van-row> <van-col span="8"><text class="color_purple">项目单位</text></van-col> @@ -230,7 +230,7 @@ </van-col> </van-row> </view> - <view class="inspect_overview_list" wx:if="{{options.category!='4'}}"> + <view class="inspect_overview_list" wx:if="{{options.category!='3' && options.category!='4' && options.category!='5'}}"> <van-row> <van-col span="8"><text class="color_purple">单位委托书</text></van-col> <van-col span="16"> @@ -260,19 +260,19 @@ <van-col span="16">{{subDeptUserData.userInfos.contactPhone}}</van-col> </van-row> </view> - <view class="inspect_overview_list" wx:if="{{options.category=='4'}}"> + <view class="inspect_overview_list" wx:if="{{options.category=='3' || options.category=='4' || options.category=='5'}}"> <van-row> <van-col span="8"><text class="color_purple">开户行名称</text></van-col> <van-col span="16">{{subDeptUserData.userInfos.bankName}}</van-col> </van-row> </view> - <view class="inspect_overview_list" wx:if="{{options.category=='4'}}"> + <view class="inspect_overview_list" wx:if="{{options.category=='3' || options.category=='4' || options.category=='5'}}"> <van-row> <van-col span="8"><text class="color_purple">开户行网点</text></van-col> <van-col span="16">{{subDeptUserData.userInfos.bankOffice}}</van-col> </van-row> </view> - <view class="inspect_overview_list" wx:if="{{options.category=='4'}}"> + <view class="inspect_overview_list" wx:if="{{options.category=='3' || options.category=='4' || options.category=='5'}}"> <van-row> <van-col span="8"><text class="color_purple">工资银行卡号</text></van-col> <van-col span="16">{{subDeptUserData.userInfos.bankCardNo}}</van-col> diff --git a/yanzhu-ui-app/miniprogram/pages/project_flowable/detailTask/index.wxml b/yanzhu-ui-app/miniprogram/pages/project_flowable/detailTask/index.wxml index 11973afc..5c50e6b9 100644 --- a/yanzhu-ui-app/miniprogram/pages/project_flowable/detailTask/index.wxml +++ b/yanzhu-ui-app/miniprogram/pages/project_flowable/detailTask/index.wxml @@ -70,7 +70,7 @@ <view class="module_title module_title_padding"> <view>{{subDeptData.projectName}}</view> </view> - <view class="inspect_info" wx:if="{{options.category=='1' || options.category=='2' || options.category=='3' || options.category=='4' || options.category=='6' || options.category=='8'}}"> + <view class="inspect_info" wx:if="{{options.category=='1' || options.category=='2' || options.category=='3' || options.category=='4' || options.category=='5' || options.category=='6' || options.category=='8'}}"> <view class="inspect_overview_list"> <van-row> <van-col span="8"><text class="color_purple">项目单位</text></van-col> @@ -230,7 +230,7 @@ </van-col> </van-row> </view> - <view class="inspect_overview_list" wx:if="{{options.category!='4'}}"> + <view class="inspect_overview_list" wx:if="{{options.category!='3' && options.category!='4' && options.category!='5'}}"> <van-row> <van-col span="8"><text class="color_purple">单位委托书</text></van-col> <van-col span="16"> @@ -260,19 +260,19 @@ <van-col span="16">{{subDeptUserData.userInfos.contactPhone}}</van-col> </van-row> </view> - <view class="inspect_overview_list" wx:if="{{options.category=='4'}}"> + <view class="inspect_overview_list" wx:if="{{options.category=='3' || options.category=='4' || options.category=='5'}}"> <van-row> <van-col span="8"><text class="color_purple">开户行名称</text></van-col> <van-col span="16">{{subDeptUserData.userInfos.bankName}}</van-col> </van-row> </view> - <view class="inspect_overview_list" wx:if="{{options.category=='4'}}"> + <view class="inspect_overview_list" wx:if="{{options.category=='3' || options.category=='4' || options.category=='5'}}"> <van-row> <van-col span="8"><text class="color_purple">开户行网点</text></van-col> <van-col span="16">{{subDeptUserData.userInfos.bankOffice}}</van-col> </van-row> </view> - <view class="inspect_overview_list" wx:if="{{options.category=='4'}}"> + <view class="inspect_overview_list" wx:if="{{options.category=='3' || options.category=='4' || options.category=='5'}}"> <van-row> <van-col span="8"><text class="color_purple">工资银行卡号</text></van-col> <van-col span="16">{{subDeptUserData.userInfos.bankCardNo}}</van-col> diff --git a/yanzhu-ui-app/miniprogram/pages/project_info/index.js b/yanzhu-ui-app/miniprogram/pages/project_info/index.js index f19e7f75..2631e2f5 100644 --- a/yanzhu-ui-app/miniprogram/pages/project_info/index.js +++ b/yanzhu-ui-app/miniprogram/pages/project_info/index.js @@ -356,7 +356,7 @@ Page({ subDeptUserInfo: res.data[0] }); //劳务人员信息 - if ((app.globalData.subDeptUserData.subDeptType=='1' || app.globalData.subDeptUserData.subDeptType=='4' || app.globalData.subDeptUserData.subDeptType=='5') && app.globalData.subDeptUserData.userPost != '4' && app.globalData.subDeptUserData.userPost != '6' && app.globalData.subDeptUserData.userPost != '8') { + if ((app.globalData.subDeptUserData.subDeptType=='1' || app.globalData.subDeptUserData.subDeptType=='4' || app.globalData.subDeptUserData.subDeptType=='5') && app.globalData.subDeptUserData.userPost != '4' && app.globalData.subDeptUserData.userPost != '5' && app.globalData.subDeptUserData.userPost != '6' && app.globalData.subDeptUserData.userPost != '8') { //统计劳务人员信息 this.getSubDeptsUsers(app.globalData.useProjectId); this.initSubDeptDaysCharts(app.globalData.useProjectId); @@ -367,7 +367,7 @@ Page({ this.getSubDeptsAttendanceView(app.globalData.useProjectId); } //人员出勤信息 - if (app.globalData.subDeptUserData.userPost == '4' || app.globalData.subDeptUserData.userPost == '6' || app.globalData.subDeptUserData.userPost == '8') { + if (app.globalData.subDeptUserData.userPost == '4' || app.globalData.subDeptUserData.userPost == '5' || app.globalData.subDeptUserData.userPost == '6' || app.globalData.subDeptUserData.userPost == '8') { //统计劳务人员信息 this.getUsersAttendanceView(app.globalData.useProjectId); } diff --git a/yanzhu-ui-app/miniprogram/pages/project_info/index.wxml b/yanzhu-ui-app/miniprogram/pages/project_info/index.wxml index d99cd4f7..70205925 100644 --- a/yanzhu-ui-app/miniprogram/pages/project_info/index.wxml +++ b/yanzhu-ui-app/miniprogram/pages/project_info/index.wxml @@ -143,7 +143,7 @@ </view> </view> </view> - <view class="echarts_max bt30" wx:if="{{(subDeptUserInfo.subDeptType=='4' || subDeptUserInfo.subDeptType=='5') && subDeptUserInfo.userPost!='4' && subDeptUserInfo.userPost!='6' && subDeptUserInfo.userPost!='8'}}"> + <view class="echarts_max bt30" wx:if="{{(subDeptUserInfo.subDeptType=='4' || subDeptUserInfo.subDeptType=='5') && subDeptUserInfo.userPost!='4' && subDeptUserInfo.userPost!='5' && subDeptUserInfo.userPost!='6' && subDeptUserInfo.userPost!='8'}}"> <view class="echarts_min"> <view class="eharts_title module_title_flex"> 我的二维码 @@ -177,7 +177,7 @@ </view> </view> - <view class="echarts_max" wx:if="{{subDeptUserInfo.userPost=='4' || subDeptUserInfo.userPost=='6' || subDeptUserInfo.userPost=='8'}}"> + <view class="echarts_max" wx:if="{{subDeptUserInfo.userPost=='4' || subDeptUserInfo.userPost=='5' || subDeptUserInfo.userPost=='6' || subDeptUserInfo.userPost=='8'}}"> <view class="echarts_min"> <view class="eharts_title module_title_flex"> 最近出勤 @@ -235,7 +235,7 @@ </view> <!-- 底部导航 --> -<van-tabbar wx:if="{{subDeptUserInfo.userPost!='4' && subDeptUserInfo.userPost!='6' && subDeptUserInfo.userPost!='8'}}" active="{{ active }}" bind:change="onChange" active-color="#ffffff" inactive-color="#7d95d6"> +<van-tabbar wx:if="{{subDeptUserInfo.userPost!='4' && subDeptUserInfo.userPost!='5' && subDeptUserInfo.userPost!='6' && subDeptUserInfo.userPost!='8'}}" active="{{ active }}" bind:change="onChange" active-color="#ffffff" inactive-color="#7d95d6"> <van-tabbar-item> <image slot="icon" src="/images/footer_5.png" mode="aspectFit" style="width:40rpx; height: 40rpx;" /> <image slot="icon-active" src="/images/foot_5.png" mode="aspectFit" style="width:40rpx; height: 40rpx;" /> diff --git a/yanzhu-ui-app/miniprogram/pages/project_more/index.wxml b/yanzhu-ui-app/miniprogram/pages/project_more/index.wxml index bf63bb4c..7c665c39 100644 --- a/yanzhu-ui-app/miniprogram/pages/project_more/index.wxml +++ b/yanzhu-ui-app/miniprogram/pages/project_more/index.wxml @@ -33,7 +33,7 @@ </view> </view> -<van-tabbar wx:if="{{subDeptUserInfo.userPost!='4'}}" active="{{ active }}" bind:change="onChange" active-color="#ffffff" inactive-color="#7d95d6"> +<van-tabbar wx:if="{{subDeptUserInfo.userPost!='3' && subDeptUserInfo.userPost!='4' && subDeptUserInfo.userPost!='5'}}" active="{{ active }}" bind:change="onChange" active-color="#ffffff" inactive-color="#7d95d6"> <van-tabbar-item bindtap="XMGK"> <image slot="icon" diff --git a/yanzhu-ui-app/miniprogram/pages/project_qr/index.js b/yanzhu-ui-app/miniprogram/pages/project_qr/index.js index 44de4db6..40fee9b3 100644 --- a/yanzhu-ui-app/miniprogram/pages/project_qr/index.js +++ b/yanzhu-ui-app/miniprogram/pages/project_qr/index.js @@ -164,6 +164,10 @@ Page({ "id": "3", "text": "班组长" }); + _userPostList.push({ + "id": "5", + "text": "特殊工种" + }); _userPostList.push({ "id": "6", "text": "材料员" @@ -204,26 +208,36 @@ Page({ getDictCache(signId) { if (signId == '3') { // 初始化工种类型 - findDictCache("pro_craft_type").then(res => { + // findDictCache("pro_craft_type").then(res => { + // if (res.code == 200) { + // let craftTypeList = []; + // res.data.forEach(item => { + // if (item.dictValue != "3") { + // craftTypeList.push({ + // "id": item.dictValue, + // "text": item.dictLabel + // }); + // } + // }) + // this.setData({ + // craftTypeList + // }); + // } + // }) + // 初始化工种岗位 + findDictCache("pro_craft_post").then(res => { if (res.code == 200) { - let craftTypeList = []; + let list = []; res.data.forEach(item => { - if (item.dictValue != "3") { - craftTypeList.push({ + if (item.cssClass == '1') { + list.push({ "id": item.dictValue, "text": item.dictLabel }); } - }) - this.setData({ - craftTypeList }); - } - }) - // 初始化工种岗位 - findDictCache("pro_craft_post").then(res => { - if (res.code == 200) { this.setData({ + craftPostList:list, craftPostAllOrginList: res.data }); } @@ -1110,8 +1124,41 @@ Page({ */ onChageUserPost(e) { this.setData({ - "form.userPost": e.detail.id + userPost:e.detail.id, + "form.userPost": e.detail.id, + "form.craftPost": null }) + if(e.detail.id=='3'){ + let craftPostList = []; + this.data.craftPostAllOrginList.forEach(item => { + if (item.cssClass == '1') { + craftPostList.push({ + "id": item.dictValue, + "text": item.dictLabel + }); + } + }) + this.setData({ + craftPostList, + "form.craftType": '1', + "form.craftPost": null + }) + } else if(e.detail.id=='5'){ + let craftPostList = []; + this.data.craftPostAllOrginList.forEach(item => { + if (item.cssClass == '2') { + craftPostList.push({ + "id": item.dictValue, + "text": item.dictLabel + }); + } + }) + this.setData({ + craftPostList, + "form.craftType": '2', + "form.craftPost": null + }) + } }, /** @@ -1546,11 +1593,11 @@ Page({ userPost } = this.data; //数据效验 - if (userPost == '3' || userPost == '6' || userPost == '8') { - if (!form.craftType) { - app.toast("请选择工种类型!"); - return false; - } + if (userPost == '3' || userPost == '5') { + // if (!form.craftType) { + // app.toast("请选择工种类型!"); + // return false; + // } if (!form.craftPost) { app.toast("请选择工种岗位!"); return false; diff --git a/yanzhu-ui-app/miniprogram/pages/project_qr/index.wxml b/yanzhu-ui-app/miniprogram/pages/project_qr/index.wxml index 470d39c6..bdffb60b 100644 --- a/yanzhu-ui-app/miniprogram/pages/project_qr/index.wxml +++ b/yanzhu-ui-app/miniprogram/pages/project_qr/index.wxml @@ -1,7 +1,7 @@ <!-- 游客一键登录 --> <view wx:if="{{!userPhoneNumber}}" class="page"> <view class="login_logo"> - <image src="https://xiangguan.sxyanzhu.com/profile/xmgl/static/sys_logo.png"></image> + <image wx:if="{{false}}" src="https://xiangguan.sxyanzhu.com/profile/xmgl/static/sys_logo.png"></image> </view> <view class="login_title"> <text>数字工程项目管理系统</text> @@ -284,7 +284,7 @@ </view> </view> - <view wx:if="{{userPost=='3' || userPost=='6' || userPost=='8'}}"> + <view wx:if="{{userPost=='3' || userPost=='5' || userPost=='6' || userPost=='8'}}"> <view class="header_title"> <view class="header_title_row"> <view class="header_name">{{title}}</view> @@ -306,17 +306,17 @@ <voucher-select columns="{{userPostList}}" placeholder="请选择岗位级别" bindchange="onChageUserPost" selectValue="{{form.userPost}}"></voucher-select> </view> </view> - <view class="inspect_info_list"> - <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">班组工种</view> + <view class="inspect_info_list" wx:if="{{ userPost=='3' || userPost=='5' }}"> + <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">岗位工种</view> <view class="inspect_info_content"> - <van-row> + <!-- <van-row> <van-col span="8"> <voucher-select columns="{{craftTypeList}}" bindchange="onChageCraftType" placeholder="请选择工种类型" selectValue="{{form.craftType}}"></voucher-select> </van-col> - <van-col span="16"> + <van-col span="16"> --> <voucher-select columns="{{craftPostList}}" bindchange="onChageCraftPost" placeholder="请选择工种岗位" selectValue="{{form.craftPost}}"></voucher-select> - </van-col> - </van-row> + <!-- </van-col> + </van-row> --> </view> </view> <view class="inspect_info_list" wx:if="{{false}}"> @@ -357,7 +357,7 @@ <file-uploader bindimages="fileUploadUserPicture" limit="{{limit}}" fileUrlArray="{{form.userPicture}}"></file-uploader> </view> </view> - <view class="inspect_info_list" wx:if="userPost=='6'"> + <view class="inspect_info_list" wx:if="{{userPost=='6'}}"> <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">劳务单位委托书 <text style="font-size: small; color: antiquewhite;">[需加盖劳务单位的公章委托书照片]</text> </view> @@ -407,6 +407,26 @@ <input placeholder="请填写紧急联系人电话" placeholder-style="color:#6777aa;" bindinput="inputUrgentUserPhone" class="inspect_input_fill_in" maxlength="30" model:value="{{form.contactPhone}}" /> </view> </view> + <view class="inspect_info_list" wx:if="{{userPost=='5'}}"> + <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">开户银行名称</view> + <view class="inspect_info_content"> + <input placeholder="请填写开户银行名称" placeholder-style="color:#6777aa;" bindinput="inputBankName" class="inspect_input_fill_in" maxlength="30" model:value="{{form.bankName}}" /> + </view> + </view> + <view class="inspect_info_list" wx:if="{{userPost=='5'}}"> + <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">开户银行网点 + <text style="font-size: small; color: antiquewhite;">[开户银行地址]</text> + </view> + <view class="inspect_info_content"> + <input placeholder="请填写开户银行网点" placeholder-style="color:#6777aa;" bindinput="inputBankOffice" class="inspect_input_fill_in" maxlength="30" model:value="{{form.bankOffice}}" /> + </view> + </view> + <view class="inspect_info_list" wx:if="{{userPost=='5'}}"> + <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">工资银行卡号</view> + <view class="inspect_info_content"> + <input placeholder="请填写工资银行卡号" placeholder-style="color:#6777aa;" bindinput="inputBankCardNo" class="inspect_input_fill_in" maxlength="30" model:value="{{form.bankCardNo}}" /> + </view> + </view> <view class="inspect_info_list"> <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">文化程度</view> <view class="inspect_info_content"> diff --git a/yanzhu-ui-app/miniprogram/pages/project_qr/index.wxss b/yanzhu-ui-app/miniprogram/pages/project_qr/index.wxss index f5f46cc1..6e0cebb8 100644 --- a/yanzhu-ui-app/miniprogram/pages/project_qr/index.wxss +++ b/yanzhu-ui-app/miniprogram/pages/project_qr/index.wxss @@ -7,6 +7,7 @@ .login_logo { text-align: center; padding: 50rpx 0rpx; + height: 120rpx; } .login_logo image { diff --git a/yanzhu-ui-app/miniprogram/project.private.config.json b/yanzhu-ui-app/miniprogram/project.private.config.json index eec34099..cef99850 100644 --- a/yanzhu-ui-app/miniprogram/project.private.config.json +++ b/yanzhu-ui-app/miniprogram/project.private.config.json @@ -11,7 +11,7 @@ { "name": "pages/project_qr/index", "pathName": "pages/project_qr/index", - "query": "QRPID=132&SIGID=4&PARID=40", + "query": "QRPID=132&SIGID=1", "launchMode": "default", "scene": null }, diff --git a/yanzhu-ui-vue3/src/views/flowable/task/myProcess/detail/indexDrawer.vue b/yanzhu-ui-vue3/src/views/flowable/task/myProcess/detail/indexDrawer.vue index 5cdec0a0..e0fefe1b 100644 --- a/yanzhu-ui-vue3/src/views/flowable/task/myProcess/detail/indexDrawer.vue +++ b/yanzhu-ui-vue3/src/views/flowable/task/myProcess/detail/indexDrawer.vue @@ -135,7 +135,7 @@ </el-form-item> </el-form> </el-tab-pane> - <el-tab-pane label="人员信息" name="users" v-if="dataOptions.category=='1' || dataOptions.category=='2' || dataOptions.category=='3' || dataOptions.category=='4'"> + <el-tab-pane label="人员信息" name="users" v-if="dataOptions.category=='1' || dataOptions.category=='2' || dataOptions.category=='3' || dataOptions.category=='4' || dataOptions.category=='5' || dataOptions.category=='6' || dataOptions.category=='8'"> <el-form label-width="100px" size="small" > <el-form-item label="代理人身份证" v-if="dataOptions.category=='1'"> <ImagePreview :src="initData.userInfos.cardImgPos" :width="120" :height="70"/> @@ -144,7 +144,7 @@ <el-form-item label="入场肖像近照" v-if="dataOptions.category=='1'"> <ImagePreview :src="initData.userPicture" :width="120" :height="70"/> </el-form-item> - <el-form-item label="单位委托证明" v-if="dataOptions.category!='4'"> + <el-form-item label="单位委托证明" v-if="dataOptions.category!='3' && dataOptions.category!='4' && dataOptions.category!='5' && dataOptions.category!='8'"> <ImagePreview :src="initData.subDeptPowerPath" :width="120" :height="70"/> </el-form-item> <el-form-item label="委托人姓名" v-if="dataOptions.category=='1'"> @@ -478,7 +478,7 @@ /** 获取表单数据 */ const initFormValues = () => { let category = parseInt(dataOptions.value.category); - if(category==1 || category==2 || category==3 || category==4){ + if(category==1 || category==2 || category==3 || category==4 || category==5 || category==6 || category==8){ getProProjectInfoSubdeptsUsers(dataOptions.value.businessKey).then(res =>{ if(res.data.userInfos){ res.data.userInfos = JSON.parse(res.data.userInfos); diff --git a/yanzhu-ui-vue3/src/views/flowable/task/todo/detail/indexDrawer.vue b/yanzhu-ui-vue3/src/views/flowable/task/todo/detail/indexDrawer.vue index 9643a980..0234e93a 100644 --- a/yanzhu-ui-vue3/src/views/flowable/task/todo/detail/indexDrawer.vue +++ b/yanzhu-ui-vue3/src/views/flowable/task/todo/detail/indexDrawer.vue @@ -135,7 +135,7 @@ </el-form-item> </el-form> </el-tab-pane> - <el-tab-pane label="人员信息" name="users" v-if="dataOptions.category=='1' || dataOptions.category=='2' || dataOptions.category=='3' || dataOptions.category=='4'"> + <el-tab-pane label="人员信息" name="users" v-if="dataOptions.category=='1' || dataOptions.category=='2' || dataOptions.category=='3' || dataOptions.category=='4' || dataOptions.category=='5' || dataOptions.category=='6' || dataOptions.category=='8'"> <el-form label-width="100px" size="small" > <el-form-item label="代理人身份证" v-if="dataOptions.category=='1'"> <ImagePreview :src="initData.userInfos.cardImgPos" :width="120" :height="70"/> @@ -144,7 +144,7 @@ <el-form-item label="入场肖像近照" v-if="dataOptions.category=='1'"> <ImagePreview :src="initData.userPicture" :width="120" :height="70"/> </el-form-item> - <el-form-item label="单位委托证明" v-if="dataOptions.category!='4'"> + <el-form-item label="单位委托证明" v-if="dataOptions.category!='3' && dataOptions.category!='4' && dataOptions.category!='5' && dataOptions.category!='8'"> <ImagePreview :src="initData.subDeptPowerPath" :width="120" :height="70"/> </el-form-item> <el-form-item label="委托人姓名" v-if="dataOptions.category=='1'"> @@ -207,7 +207,7 @@ </el-form-item> </el-form> </el-tab-pane> - <el-tab-pane label="视频培训" name="video" v-if="dataOptions.category=='1' || dataOptions.category=='2' || dataOptions.category=='3' || dataOptions.category=='4'"> + <el-tab-pane label="视频培训" name="video" v-if="dataOptions.category=='1' || dataOptions.category=='2' || dataOptions.category=='3' || dataOptions.category=='4' || dataOptions.category=='5' || dataOptions.category=='46' || dataOptions.category=='8'"> <el-table :data="userEduVideoList"> <el-table-column label="播放时间" align="center" prop="playDates" width="180"> <template #default="scope"> @@ -224,7 +224,7 @@ <el-table-column label="培训级别" align="center" prop="trainLevelName"/> </el-table> </el-tab-pane> - <el-tab-pane label="考试情况" name="exams" v-if="dataOptions.category=='1' || dataOptions.category=='2' || dataOptions.category=='3' || dataOptions.category=='4'"> + <el-tab-pane label="考试情况" name="exams" v-if="dataOptions.category=='1' || dataOptions.category=='2' || dataOptions.category=='3' || dataOptions.category=='4' || dataOptions.category=='5' || dataOptions.category=='6' || dataOptions.category=='8'"> <el-row class="task_panel"> <el-col :span="6"> <el-statistic class="statistic_div"> @@ -621,7 +621,7 @@ /** 获取表单数据 */ const initFormValues = () => { let category = parseInt(dataOptions.value.category); - if(category==1 || category==2 || category==3 || category==4){ + if(category==1 || category==2 || category==3 || category==4 || category==5 || category==6 || category==8){ getProProjectInfoSubdeptsUsers(dataOptions.value.businessKey).then(res =>{ if(res.data.userInfos){ res.data.userInfos = JSON.parse(res.data.userInfos);