提交代码

dev_xd
姜玉琦 2025-02-22 18:09:44 +08:00
parent 98abe2de96
commit 76d3f1513b
23 changed files with 250 additions and 61 deletions

View File

@ -19,6 +19,9 @@ public class SysDept extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 项目单位... */
public static final String XMDW = "4";
/** 部门ID */
private Long deptId;

View File

@ -5,8 +5,9 @@ package com.yanzhu.common.core.enums;
*/
public enum UserTypeEnums {
ZSRY("00", "正式人员","key"),
LSRY("08", "临时人员","key"),
XTRY("00", "正式人员","key"),
XMRY("08", "项目人员","key"),
QTRY("99", "其它人员","key"),
FBWTDL("80", "分包代理人","fbwtdl"),
FBXMJL("79", "分包项目经理","fbxmjl"),
FBBZZZ("78", "分包班组组长","fbbzzz"),

View File

@ -20,6 +20,9 @@ public class FlowTaskVo {
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("任务Id")
private List<String> taskIds;
@ApiModelProperty("用户Id")
private String userId;
@ -29,6 +32,9 @@ public class FlowTaskVo {
@ApiModelProperty("流程实例Id")
private String instanceId;
@ApiModelProperty("流程实例Id")
private List<String> instanceIds;
@ApiModelProperty("节点")
private String targetKey;

View File

@ -5,6 +5,7 @@ import com.yanzhu.common.core.annotation.Excel;
import com.yanzhu.common.core.web.domain.BaseEntity;
import java.util.Date;
import java.util.List;
/**
* pro_project_info_subdepts_users

View File

@ -96,6 +96,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="userPhone != null and userPhone != ''"> and psu.user_phone = #{userPhone}</if>
<if test='activeTags == "finished"'> and psu.approve_status <![CDATA[ >= ]]> 100 </if>
<if test="isDel != null "> and psu.is_del = #{isDel}</if>
<if test='searchValue == "active1"'> and psu.user_post != '66' </if>
<if test="params.beginTime != null and params.beginTime != '' and params.endTime != null and params.endTime != ''"> and date(psu.use_date) between #{params.beginTime} and #{params.endTime}</if>
and psu.is_del != 2
</where>

View File

@ -81,7 +81,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' and u.remark is null
where u.del_flag = '0' and ex.user_type != '99'
<if test="userId != null and userId != 0">
AND u.user_id = #{userId}
</if>

View File

@ -107,6 +107,20 @@ public class FlowTaskController extends BaseController {
return flowTaskService.complete(flowTaskVo);
}
@ApiOperation(value = "批量审批任务")
@Log(title = "批量审批任务", businessType = BusinessType.UPDATE)
@PostMapping(value = "/batchComplete")
public AjaxResult batchComplete(@RequestBody FlowTaskVo flowTaskVo) {
for(int i=0;i<flowTaskVo.getInstanceIds().size();i++){
FlowTaskVo taskVo = new FlowTaskVo();
taskVo.setTaskId(flowTaskVo.getTaskIds().get(i));
taskVo.setInstanceId(flowTaskVo.getInstanceIds().get(i));
taskVo.setComment("审核通过");
flowTaskService.complete(taskVo);
}
return success();
}
@ApiOperation(value = "驳回任务")
@Log(title = "驳回任务", businessType = BusinessType.UPDATE)
@PostMapping(value = "/reject")

View File

@ -1025,9 +1025,16 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
if(StringUtils.isNotEmpty(signets)){
String newFilePath = filePath.replace(".pdf","-g.pdf");
String signPath = signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath);
PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath, SignetKeyEnums.GROUP_SIGN.getCode());
proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
boolean flag = false;
try {
flag = PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath, SignetKeyEnums.GROUP_SIGN.getCode());
}catch (Exception e){
e.printStackTrace();
}
if(flag){
proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
}
}
}
}
@ -1054,9 +1061,16 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
if(StringUtils.isNotEmpty(signets)){
String newFilePath = filePath.replace(".pdf","-p.pdf");
String signPath = signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath);
PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath,SignetKeyEnums.PROJECT_SIGN.getCode());
proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
boolean flag = false;
try {
flag = PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath,SignetKeyEnums.PROJECT_SIGN.getCode());
}catch (Exception e){
e.printStackTrace();
}
if(flag){
proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
}
}
}
}
@ -1082,9 +1096,16 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
if(StringUtils.isNotEmpty(signets)){
String newFilePath = filePath.replace(".pdf","-c.pdf");
String signPath = signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath);
PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath, SignetKeyEnums.COMPANY_SIGN.getCode());
proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
boolean flag = false;
try {
flag = PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath, SignetKeyEnums.COMPANY_SIGN.getCode());
}catch (Exception e){
e.printStackTrace();
}
if(flag){
proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
}
}
}
}
@ -1292,7 +1313,12 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
if(StringUtils.isNotEmpty(signets)){
String newFilePath = filePath.replace(".pdf","-g.pdf");
String signPath = signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath);
boolean flag = PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath, SignetKeyEnums.GROUP_SIGN.getCode());
boolean flag = false;
try {
flag = PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath, SignetKeyEnums.GROUP_SIGN.getCode());
}catch (Exception e){
e.printStackTrace();
}
if(flag){
filePath = newFilePath;
}
@ -1322,7 +1348,12 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
if(StringUtils.isNotEmpty(signets)){
String newFilePath = filePath.replace(".pdf","-p.pdf");
String signPath = signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath);
boolean flag = PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath,SignetKeyEnums.PROJECT_SIGN.getCode());
boolean flag = false;
try {
flag = PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath,SignetKeyEnums.PROJECT_SIGN.getCode());
}catch (Exception e){
e.printStackTrace();
}
if(flag){
filePath = newFilePath;
}
@ -1345,9 +1376,16 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
if(StringUtils.isNotEmpty(signets)){
String newFilePath = filePath.replace(".pdf","-c.pdf");
String signPath = signets.get(0).getSignetPath().replace(ProfileConfig.profile, ProfileConfig.profilePath);
PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath, SignetKeyEnums.COMPANY_SIGN.getCode());
proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
boolean flag = false;
try {
flag = PdfImageSignetUtil.imageWaterMark(filePath, newFilePath, signPath, SignetKeyEnums.COMPANY_SIGN.getCode());
}catch (Exception e){
e.printStackTrace();
}
if(flag){
proProjectInfoSubdeptsUsers.setEduFilePath(newFilePath.replace(ProfileConfig.profilePath,ProfileConfig.profile));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(proProjectInfoSubdeptsUsers);
}
}else{
throw new ServiceException("未查询三级安全教育主管签名信息...");
}

View File

@ -238,7 +238,7 @@ public class SysUserController extends BaseController {
@PostMapping("/register")
public R<Long> register(@RequestBody SysUser sysUser) {
String username = sysUser.getUserName();
if (Objects.isNull(sysUser.getUserType()) || Objects.equals(UserTypeEnums.ZSRY.getCode(), sysUser.getUserType())) {
if (Objects.isNull(sysUser.getUserType()) || Objects.equals(UserTypeEnums.XTRY.getCode(), sysUser.getUserType()) || Objects.equals(UserTypeEnums.XMRY.getCode(), sysUser.getUserType())) {
if (!("true".equals(configService.selectConfigByKey("sys.account.registerUser")))) {
return R.fail("当前系统没有开启注册功能!");
}

View File

@ -1,28 +1,31 @@
package com.yanzhu.system.service.impl;
import java.util.*;
import java.util.stream.Collectors;
import javax.validation.Validator;
import com.yanzhu.common.core.constant.SecurityConstants;
import com.yanzhu.common.core.constant.UserConstants;
import com.yanzhu.common.core.domain.R;
import com.yanzhu.common.core.enums.ShiFouEnums;
import com.yanzhu.common.core.enums.UserTypeEnums;
import com.yanzhu.common.core.exception.ServiceException;
import com.yanzhu.common.core.text.Convert;
import com.yanzhu.common.core.utils.DateUtils;
import com.yanzhu.common.core.utils.SpringUtils;
import com.yanzhu.common.core.utils.StringUtils;
import com.yanzhu.common.core.utils.bean.BeanValidators;
import com.yanzhu.common.core.web.domain.AjaxResult;
import com.yanzhu.common.datascope.annotation.DataScope;
import com.yanzhu.common.redis.service.RedisService;
import com.yanzhu.common.security.service.TokenService;
import com.yanzhu.common.security.utils.SecurityUtils;
import com.yanzhu.manage.domain.ProProjectInfo;
import com.yanzhu.manage.mapper.ProProjectInfoMapper;
import com.yanzhu.manage.mapper.ProProjectInfoSubdeptsUsersMapper;
import com.yanzhu.system.api.RemoteProService;
import com.yanzhu.system.api.RemoteUserService;
import com.yanzhu.system.api.domain.*;
import com.yanzhu.system.api.model.LoginUser;
import com.yanzhu.system.domain.*;
import com.yanzhu.system.mapper.*;
import com.yanzhu.system.service.ISysConfigService;
import com.yanzhu.system.service.ISysUserExtService;
import com.yanzhu.system.service.ISysUserService;
import com.yanzhu.system.vo.AlertUserPassVo;
import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
@ -33,15 +36,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import com.yanzhu.common.core.constant.UserConstants;
import com.yanzhu.common.core.exception.ServiceException;
import com.yanzhu.common.core.utils.SpringUtils;
import com.yanzhu.common.core.utils.StringUtils;
import com.yanzhu.common.core.utils.bean.BeanValidators;
import com.yanzhu.common.datascope.annotation.DataScope;
import com.yanzhu.common.security.utils.SecurityUtils;
import com.yanzhu.system.service.ISysConfigService;
import com.yanzhu.system.service.ISysUserService;
import javax.validation.Validator;
import java.util.*;
import java.util.stream.Collectors;
/**
*
@ -88,6 +86,7 @@ public class SysUserServiceImpl implements ISysUserService
@Autowired
private ISysUserExtService userExtService;
@Autowired
private SysUserComMapper userComMapper;
@ -366,7 +365,7 @@ public class SysUserServiceImpl implements ISysUserService
SysUserExt where=new SysUserExt();
where.setUserId(sysUser.getUserId());
where.setProjectId(user.getDeptId());
List<SysUserExt> userExts=userExtService.selectSysUserExtList(where);
userExtService.selectSysUserExtList(where);
user.setUserId(sysUser.getUserId());
user.setIsActive(0l);
@ -392,7 +391,7 @@ public class SysUserServiceImpl implements ISysUserService
user.setCreateBy(user.getUpdateBy());
user.setCreateTime(user.getUpdateTime());
if(StringUtils.isBlank(user.getUserType())) {
user.setUserType("99");
user.setUserType(UserTypeEnums.XTRY.getCode());
}
rows=userMapper.insertUser(user);
user.setIsActive(1l);
@ -457,6 +456,7 @@ public class SysUserServiceImpl implements ISysUserService
if(Objects.nonNull(sysUser)){
user.setUserId(sysUser.getUserId());
sysUser.setUserName(user.getUserName());
sysUser.setUserType(UserTypeEnums.QTRY.getCode());
sysUser.setPhonenumber(user.getUserName());
sysUser.setNickName(user.getNickName());
sysUser.setUpdateBy(user.getUpdateBy());
@ -464,9 +464,9 @@ public class SysUserServiceImpl implements ISysUserService
sysUser.setPassword(user.getPassword());
userMapper.updateUser(sysUser);
}else{
user.setUserType(UserTypeEnums.QTRY.getCode());
user.setCreateBy(user.getUpdateBy());
user.setCreateTime(user.getUpdateTime());
user.setUserType("99");
user.setWorkType(user.getWorkType());
userMapper.insertUser(user);
try {
@ -497,14 +497,14 @@ public class SysUserServiceImpl implements ISysUserService
SysUserExt where=new SysUserExt();
where.setUserId(user.getUserId());
where.setComId(user.getComId());
where.setWorkType(user.getWorkType());
where.setUserType(UserTypeEnums.QTRY.getCode());
List<SysUserExt> userExts=userExtService.selectSysUserExtList(where);
if(userExts.size()==0){
where.setIsActive(1l);
where.setProjectId(user.getDeptId());
userExtService.insertSysUserExt(where);
}else{
long cnt= userExts.stream().filter(d->d.getProjectId().equals(user.getDeptId())).count();
long cnt = userExts.stream().filter(d->d.getProjectId().equals(user.getDeptId())).count();
if(cnt==0){
where.setIsActive(0l);
where.setProjectId(user.getDeptId());
@ -689,11 +689,11 @@ public class SysUserServiceImpl implements ISysUserService
userExtService.updateSysUserExt(oldExt);
}
try {
if(Objects.equals(user.getUserType(),"99")){
if(Objects.equals(user.getUserType(),UserTypeEnums.XMRY.getCode())){
// 根据单位递归查询项目信息
SysDept sysDept = deptMapper.selectDeptById(user.getDeptId());
// 是项目单位时,将人员信息加入到花名册
if(StringUtils.isNotEmpty(sysDept.getDeptType()) && Objects.equals(sysDept.getDeptType(),"4")){
if(StringUtils.isNotEmpty(sysDept.getDeptType()) && Objects.equals(sysDept.getDeptType(),SysDept.XMDW)){
Map<String, Object> data = packageSubDeptUsers(user,sysDept);
remoteProService.syspushSubDeptsUser(data, SecurityConstants.INNER);
}

View File

@ -61,6 +61,15 @@ export function complete(data) {
})
}
// 批量审批任务
export function batchComplete(data) {
return request({
url: '/flowable/task/batchComplete',
method: 'post',
data: data
})
}
// 驳回任务流程
export function reject(data) {
return request({

View File

@ -26,7 +26,7 @@
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}{{item.commentResult}}
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}
<text wx:if="{{item.commentResult=='通过'}}" class="timeline_for_state_1 color_green">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='委派'}}" class="timeline_for_state_1 color_blue">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='转办'}}" class="timeline_for_state_1 color_blue">{{item.commentResult}}</text>
@ -236,7 +236,7 @@
</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='3' && options.category!='4' && options.category!='5'}}">
<view class="inspect_overview_list" wx:if="{{options.category!='3' && options.category!='4' && options.category!='5' && options.category!='8'}}">
<van-row>
<van-col span="8"><text class="color_purple">单位委托书</text></van-col>
<van-col span="16">

View File

@ -26,7 +26,7 @@
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}{{item.commentResult}}
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}
<text wx:if="{{item.commentResult=='通过'}}" class="timeline_for_state_1 color_green">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='委派'}}" class="timeline_for_state_1 color_blue">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='转办'}}" class="timeline_for_state_1 color_blue">{{item.commentResult}}</text>
@ -236,7 +236,7 @@
</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{options.category!='3' && options.category!='4' && options.category!='5'}}">
<view class="inspect_overview_list" wx:if="{{options.category!='3' && options.category!='4' && options.category!='5' && options.category!='8'}}">
<van-row>
<van-col span="8"><text class="color_purple">单位委托书</text></van-col>
<van-col span="16">

View File

@ -26,7 +26,7 @@
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}{{item.commentResult}}
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}
<text wx:if="{{item.commentResult=='通过'}}" class="timeline_for_state_1 color_green">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='委派'}}" class="timeline_for_state_1 color_blue">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='转办'}}" class="timeline_for_state_1 color_blue">{{item.commentResult}}</text>

View File

@ -26,7 +26,7 @@
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{index < 9 ?'0'+(index+1):(index+1)}}</view>
<view class="module_title_3 module_title_flex">
<view class="module_title module_title_flex">
<text wx:if="{{!item.endTime}}" class="color_purple">申请时间 {{item.createTime}}</text>
<text wx:if="{{item.endTime}}" class="color_purple">办结时间 {{item.endTime}}</text>
</view>

View File

@ -1,9 +1,11 @@
import config from '../../../config'
import {
getToken
getToken,
getUserInfo
} from '../../../utils/auth'
import {
quueryCount,
batchComplete,
myAwaitFlowTaskList,
myFinishedFlowTaskList,
} from '../../../api/flowable'
@ -24,6 +26,8 @@ Page({
pageNum: 1,
pageSize: 10,
total: 0,
checkedAll:false,
showChecked:false,
imgBaseUrl: config.baseImgUrl
},
@ -57,12 +61,18 @@ Page({
text: app.globalData.useProjectName,
}
});
let userInfo = getUserInfo();
if(userInfo && userInfo.projectUserInfo && userInfo.projectUserInfo.subDeptType=="1"){
this.setData({
showChecked:true
});
}
this.getListData();
this.getFlowableCount();
} else {
console.log("未查询到Token...{}...准备重新登录")
wx.redirectTo({
url: '../login/login',
url: '../../login/login',
})
}
},
@ -178,6 +188,91 @@ Page({
}
},
/**
* 选中节点
* @param {*} e
*/
selectItem: function(event){
let procInsId = event.currentTarget.dataset.set;
console.log("procInsId==>",procInsId)
let _listData = this.data.listData;
_listData.forEach(item =>{
if(procInsId==item.procInsId){
item.selected=!item.selected;
}
})
this.setData({
listData: _listData
});
},
/**
* 全选
*/
onCheckedAll(){
let _checked = !this.data.checkedAll;
let _listData = this.data.listData;
_listData.forEach(item =>{
item.selected=_checked;
});
this.setData({
listData: _listData,
checkedAll: _checked
});
},
/**
* 批量
* 审核通过
*/
onBatchPass(){
let taskIds = [];
let _listData = this.data.listData;
_listData.forEach(item =>{
if(item.selected){
taskIds.push(item.taskId);
}
});
if(taskIds.length==0){
app.toast("请选择要审批的数据项!","none",1500);
return false;
}
let that = this;
//弹出确认
wx.showModal({
title: '提示',
content: '是否确认批量审批通过?',
success: function (sm) {
if (sm.confirm) {
that.submitBatchPass();
}
}
})
},
/**
* 提交审批
*/
submitBatchPass(){
let taskIds = [];
let instanceIds = [];
let _listData = this.data.listData;
_listData.forEach(item =>{
if(item.selected){
taskIds.push(item.taskId);
instanceIds.push(item.procInsId);
}
});
let _data = {
'taskIds':taskIds,
'instanceIds':instanceIds
}
batchComplete(_data).then(res =>{
app.toast("批量审批通过成功!");
this.onLoad();
});
},
/**
* 办理时间计算
* @param {*} val

View File

@ -26,10 +26,13 @@
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{index < 9 ?'0'+(index+1):(index+1)}}</view>
<view class="module_title_3 module_title_flex">
<view class="module_title module_title_flex">
<text wx:if="{{!item.endTime}}" class="color_purple">申请时间 {{item.createTime}}</text>
<text wx:if="{{item.endTime}}" class="color_purple">办结时间 {{item.endTime}}</text>
</view>
<view wx:if="{{showChecked && activeState=='dsh'}}" class="myIcon" data-set="{{item.procInsId}}" catchtap="selectItem">
<image src="{{item.selected ? '/images/radio-selected.png' : '/images/radio.png'}}" />
</view>
</view>
</view>
<view class="inspect_list_info">
@ -47,6 +50,10 @@
</view>
</view>
</view>
<view wx:if="{{listData.length>0 && showChecked && activeState=='dsh'}}" class="problem_submit_to">
<view class="problem_submit_to_btn problem_submit_to_blue" bindtap="onCheckedAll">{{checkedAll?"全不选":"全选"}}</view>
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onBatchPass">审批通过</view>
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="https://szgcwx.jhncidg.com/staticFiles/nodata.png" style="width: 130px;height: 105px;"></image>

View File

@ -1 +1,10 @@
/* pages/project_flowable/subDeptsUsers/index.wxss */
/* pages/project_flowable/subDeptsUsers/index.wxss */
.myIcon{
position: fixed;
right: 25px;
}
.myIcon image {
width: 22px;
height: 22px;
background-color: #eeeeee;
}

View File

@ -32,6 +32,7 @@
</van-row>
</view>
</view>
<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

View File

@ -187,7 +187,7 @@
<view class="inspect_info_list">
<view class="markers inspect_info_title">紧急联系人电话</view>
<view class="inspect_info_content">
<input placeholder="请填写紧急联系人电话" placeholder-style="color:#6777aa;" bindinput="inputUrgentUserPhone" class="inspect_input_fill_in" model:value="{{form.contactPhone}}" maxlength="30" />
<input placeholder="请填写紧急联系人电话" placeholder-style="color:#6777aa;" bindinput="inputUrgentUserPhone" class="inspect_input_fill_in" model:value="{{form.contactPhone}}" maxlength="11" />
</view>
</view>
<view class="inspect_info_list">
@ -305,7 +305,7 @@
<view class="inspect_info_list">
<view class="markers inspect_info_title">紧急联系人电话</view>
<view class="inspect_info_content">
<input placeholder="请填写紧急联系人电话" placeholder-style="color:#6777aa;" bindinput="inputUrgentUserPhone" class="inspect_input_fill_in" model:value="{{form.contactPhone}}" maxlength="30" />
<input placeholder="请填写紧急联系人电话" placeholder-style="color:#6777aa;" bindinput="inputUrgentUserPhone" class="inspect_input_fill_in" model:value="{{form.contactPhone}}" maxlength="11" />
</view>
</view>
<view class="inspect_info_list">
@ -448,7 +448,7 @@
<view class="inspect_info_list">
<view class="markers inspect_info_title">紧急联系人电话</view>
<view class="inspect_info_content">
<input placeholder="请填写紧急联系人电话" placeholder-style="color:#6777aa;" bindinput="inputUrgentUserPhone" class="inspect_input_fill_in" maxlength="30" model:value="{{form.contactPhone}}" />
<input placeholder="请填写紧急联系人电话" placeholder-style="color:#6777aa;" bindinput="inputUrgentUserPhone" class="inspect_input_fill_in" maxlength="11" model:value="{{form.contactPhone}}" />
</view>
</view>
<view class="inspect_info_list" wx:if="{{userPost=='5'}}">
@ -700,7 +700,7 @@
<view class="inspect_list_info_details">
<view class="inspect_list_info_data_2">
<view class="inspect_list_info_data_prop bs">{{item.questionTitle}}</view>
<view wx:if="{{item.questionType==1}}" class="question_body">
<view wx:if="{{item.questionType!=2}}" class="question_body">
<view wx:for="{{item.questionOption}}" wx:key="pancan" wx:for-item="pancan" wx:for-index="innerIndex" bindtap="toggleRadio" class="option" data-id="{{index+'_'+innerIndex}}">
<view class="icon">
<image src="{{pancan.selected ? '/images/radio-selected.png' : '/images/radio.png'}}" />
@ -766,7 +766,7 @@
<view class="inspect_list_info_details">
<view class="inspect_list_info_data_2">
<view class="inspect_list_info_data_prop bs">{{item.questionTitle}}</view>
<view wx:if="{{item.questionType==1}}" class="question_body">
<view wx:if="{{item.questionType!=2}}" class="question_body">
<view wx:for="{{item.questionOption}}" wx:key="pancan" wx:for-item="pancan" wx:for-index="innerIndex" bindtap="toggleRadio" class="option" data-id="{{index+'_'+innerIndex}}">
<view class="icon">
<image src="{{pancan.selected ? '/images/radio-selected.png' : '/images/radio.png'}}" />

View File

@ -123,10 +123,10 @@ onMounted(() => {
modelerStore.setModules('selection', markRaw(modeler.get('selection')));
modelerStore.setModules('canvas', markRaw(modeler.get('canvas')));
// ,
if (StrUtil.isBlank(props.xml.value)) {
if (StrUtil.isBlank(props.xml)) {
newDiagram()
} else {
createNewDiagram(props.xml.value)
createNewDiagram(props.xml)
}
})

View File

@ -3,12 +3,12 @@
<!--流程的基础属性-->
<template v-if="bpmnFormData.$type === 'bpmn:Process'">
<el-form-item label="项目单位" prop="proId">
<el-select v-model="bpmnFormData.proId" placeholder="请选择项目单位" @change="updateElementPro" style="width:100%">
<el-select v-model="bpmnFormData.proId" placeholder="请选择项目单位" @change="updateElementPro" disabled style="width:100%">
<el-option
v-for="opt in proOptions"
:key="opt.id"
:key="opt.id+''"
:label="opt.projectName"
:value="opt.id"
:value="opt.id+''"
></el-option>
</el-select>
</el-form-item>
@ -121,4 +121,7 @@ function initDatas(){
}
initDatas();
console.log("bpmnFormData.proId==1>",bpmnFormData.value.proId);
bpmnFormData.value.proId = userStore.currentPrjId+'';
console.log("bpmnFormData.proId==2>",bpmnFormData.value.proId);
</script>

View File

@ -384,7 +384,8 @@ const data = reactive({
isDel: null,
userWorkType: null,
workType: null,
activeTags:"finished"
activeTags:"finished",
searchValue:"pt1"
},
rules: {
subDeptId: [{ required: true, trigger: ['blur', 'change'], message: "请选择所属单位" }],