提交代码
parent
d4fb05d7d1
commit
c9104c62e3
|
@ -34,12 +34,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectBusTrainingVideoUserVo">
|
<sql id="selectBusTrainingVideoUserVo">
|
||||||
select btvu.id, btvu.com_id, sd.dept_name as com_name, btvu.project_id, pi.project_name, btvu.user_id, su.nick_name as user_nick, su.user_name, btvu.video_id, btv.train_title,
|
select btvu.id, btvu.com_id, btvu.project_id, pi.project_name, btvu.user_id, su.nick_name as user_nick, su.user_name, btvu.video_id, btv.train_title,
|
||||||
btv.train_type, dic1.dict_label as train_type_name, btv.train_level, dic2.dict_label as train_level_name, btv.train_file_path, btv.train_file_image, btvu.play_times, btvu.play_dates,
|
btv.train_type, dic1.dict_label as train_type_name, btv.train_level, dic2.dict_label as train_level_name, btv.train_file_path, btv.train_file_image, btvu.play_times, btvu.play_dates,
|
||||||
btvu.play_status, btvu.sort_by, btvu.is_del, btvu.create_by, btvu.create_time, btvu.update_by, btvu.update_time, btvu.remark from bus_training_video_user btvu
|
btvu.play_status, btvu.sort_by, btvu.is_del, btvu.create_by, btvu.create_time, btvu.update_by, btvu.update_time, btvu.remark from bus_training_video_user btvu
|
||||||
left join bus_training_video btv on btv.id = btvu.video_id
|
left join bus_training_video btv on btv.id = btvu.video_id
|
||||||
left join pro_project_info pi on pi.id = btvu.project_id
|
left join pro_project_info pi on pi.id = btvu.project_id
|
||||||
left join sys_dept sd on sd.com_id = btvu.com_id
|
|
||||||
left join sys_user su on su.user_id = btvu.user_id
|
left join sys_user su on su.user_id = btvu.user_id
|
||||||
left join sys_dict_data dic1 ON btv.train_type = dic1.`dict_value` AND dic1.`dict_type`='edu_train_type'
|
left join sys_dict_data dic1 ON btv.train_type = dic1.`dict_value` AND dic1.`dict_type`='edu_train_type'
|
||||||
left join sys_dict_data dic2 ON btv.train_level = dic2.`dict_value` AND dic2.`dict_type`='edu_train_level'
|
left join sys_dict_data dic2 ON btv.train_level = dic2.`dict_value` AND dic2.`dict_type`='edu_train_level'
|
||||||
|
@ -48,7 +47,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<select id="selectBusTrainingVideoUserList" parameterType="BusTrainingVideoUser" resultMap="BusTrainingVideoUserResult">
|
<select id="selectBusTrainingVideoUserList" parameterType="BusTrainingVideoUser" resultMap="BusTrainingVideoUserResult">
|
||||||
<include refid="selectBusTrainingVideoUserVo"/>
|
<include refid="selectBusTrainingVideoUserVo"/>
|
||||||
<where>
|
<where>
|
||||||
btvu.is_del!=2
|
|
||||||
<if test="comId != null "> and btvu.com_id = #{comId}</if>
|
<if test="comId != null "> and btvu.com_id = #{comId}</if>
|
||||||
<if test="projectId != null "> and btvu.project_id = #{projectId}</if>
|
<if test="projectId != null "> and btvu.project_id = #{projectId}</if>
|
||||||
<if test="activeComId != null "> and btvu.com_id = #{activeComId}</if>
|
<if test="activeComId != null "> and btvu.com_id = #{activeComId}</if>
|
||||||
|
@ -57,6 +55,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<if test="userName != null and userName != ''"> and (su.nick_name like concat('%', #{userName}, '%') or su.user_name like concat('%', #{userName}, '%') )</if>
|
<if test="userName != null and userName != ''"> and (su.nick_name like concat('%', #{userName}, '%') or su.user_name like concat('%', #{userName}, '%') )</if>
|
||||||
<if test="userId != null "> and btvu.user_id = #{userId}</if>
|
<if test="userId != null "> and btvu.user_id = #{userId}</if>
|
||||||
<if test="isDel != null "> and btvu.is_del = #{isDel}</if>
|
<if test="isDel != null "> and btvu.is_del = #{isDel}</if>
|
||||||
|
and btvu.is_del!=2
|
||||||
</where>
|
</where>
|
||||||
order by btvu.id desc
|
order by btvu.id desc
|
||||||
</select>
|
</select>
|
||||||
|
|
|
@ -10,6 +10,7 @@ import com.yanzhu.common.core.utils.ServletUtils;
|
||||||
import com.yanzhu.common.core.utils.StringUtils;
|
import com.yanzhu.common.core.utils.StringUtils;
|
||||||
import com.yanzhu.system.api.model.LoginUser;
|
import com.yanzhu.system.api.model.LoginUser;
|
||||||
|
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -100,7 +101,7 @@ public class SecurityUtils
|
||||||
*/
|
*/
|
||||||
public static boolean isGSAdmin()
|
public static boolean isGSAdmin()
|
||||||
{
|
{
|
||||||
return getLoginUser().getRoles().contains("gsAdmin");
|
return Objects.nonNull(getLoginUser().getRoles()) && getLoginUser().getRoles().contains("gsAdmin");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -68,12 +68,13 @@ public class BusExamUserController extends BaseController
|
||||||
* 获取用户试卷详细信息
|
* 获取用户试卷详细信息
|
||||||
* @RequiresPermissions("manage:busExamUser:query")
|
* @RequiresPermissions("manage:busExamUser:query")
|
||||||
*/
|
*/
|
||||||
@GetMapping(value = "/last/{userId}")
|
@GetMapping(value = "/last/{proId}")
|
||||||
public AjaxResult findBusExamUserList(@PathVariable("userId") Long userId)
|
public AjaxResult findBusExamUserList(@PathVariable("userId") Long proId,Long userId)
|
||||||
{
|
{
|
||||||
BusExamUser query = new BusExamUser();
|
BusExamUser query = new BusExamUser();
|
||||||
query.setUserId(userId);
|
query.setUserId(userId);
|
||||||
List<BusExamUser> list = busExamUserService.selectBusExamUserList(query);
|
query.setProjectId(proId);
|
||||||
|
List<BusExamUser> list = busExamUserService.selectAllList(query);
|
||||||
if(StringUtils.isNotEmpty(list)){
|
if(StringUtils.isNotEmpty(list)){
|
||||||
return success(busExamUserService.selectBusExamUserById(list.get(0).getId()));
|
return success(busExamUserService.selectBusExamUserById(list.get(0).getId()));
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,12 +67,13 @@ public class BusTrainingVideoUserController extends BaseController
|
||||||
* 获取用户培训视频详细信息
|
* 获取用户培训视频详细信息
|
||||||
* @RequiresPermissions("manage:busTrainingVideoUser:query")
|
* @RequiresPermissions("manage:busTrainingVideoUser:query")
|
||||||
*/
|
*/
|
||||||
@GetMapping(value = "/last/{userId}")
|
@GetMapping(value = "/last/{proId}")
|
||||||
public AjaxResult findBusTrainingVideoUserLast(@PathVariable("userId") Long userId)
|
public AjaxResult findBusTrainingVideoUserLast(@PathVariable("proId") Long proId,Long userId)
|
||||||
{
|
{
|
||||||
BusTrainingVideoUser query = new BusTrainingVideoUser();
|
BusTrainingVideoUser query = new BusTrainingVideoUser();
|
||||||
query.setUserId(userId);
|
query.setUserId(userId);
|
||||||
return success(busTrainingVideoUserService.selectBusTrainingVideoUserList(query));
|
query.setProjectId(proId);
|
||||||
|
return success(busTrainingVideoUserService.selectAllList(query));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,9 +1,6 @@
|
||||||
package com.yanzhu.manage.controller;
|
package com.yanzhu.manage.controller;
|
||||||
|
|
||||||
import com.yanzhu.common.core.constant.Constants;
|
|
||||||
import com.yanzhu.common.core.domain.R;
|
import com.yanzhu.common.core.domain.R;
|
||||||
import com.yanzhu.common.core.utils.PageUtils;
|
|
||||||
import com.yanzhu.common.core.utils.StringUtils;
|
|
||||||
import com.yanzhu.common.core.utils.bean.BeanUtils;
|
import com.yanzhu.common.core.utils.bean.BeanUtils;
|
||||||
import com.yanzhu.common.core.utils.poi.ExcelUtil;
|
import com.yanzhu.common.core.utils.poi.ExcelUtil;
|
||||||
import com.yanzhu.common.core.web.controller.BaseController;
|
import com.yanzhu.common.core.web.controller.BaseController;
|
||||||
|
@ -24,7 +21,6 @@ import org.springframework.web.bind.annotation.*;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目信息Controller
|
* 项目信息Controller
|
||||||
|
@ -148,6 +144,7 @@ public class ProProjectInfoController extends BaseController
|
||||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||||
proProjectInfo.setComId(loginUser.getSysUser().getComId());
|
proProjectInfo.setComId(loginUser.getSysUser().getComId());
|
||||||
if(!SecurityUtils.isAdmin(loginUser.getUserid())){
|
if(!SecurityUtils.isAdmin(loginUser.getUserid())){
|
||||||
|
System.out.println("SecurityUtils.getRoles==>"+SecurityUtils.getLoginUser().getRoles());
|
||||||
if(SecurityUtils.isGSAdmin()){
|
if(SecurityUtils.isGSAdmin()){
|
||||||
proProjectInfo.setActiveComId(SecurityUtils.getLoginUser().getProjectDeptId());
|
proProjectInfo.setActiveComId(SecurityUtils.getLoginUser().getProjectDeptId());
|
||||||
}else{
|
}else{
|
||||||
|
|
|
@ -3,12 +3,13 @@ package com.yanzhu.manage.controller.wechat;
|
||||||
import com.yanzhu.common.core.utils.OcrService;
|
import com.yanzhu.common.core.utils.OcrService;
|
||||||
import com.yanzhu.common.core.web.controller.BaseController;
|
import com.yanzhu.common.core.web.controller.BaseController;
|
||||||
import com.yanzhu.common.core.web.domain.AjaxResult;
|
import com.yanzhu.common.core.web.domain.AjaxResult;
|
||||||
import com.yanzhu.manage.domain.BusExamUser;
|
import com.yanzhu.common.security.utils.SecurityUtils;
|
||||||
import com.yanzhu.manage.domain.ProProjectInfoSubdepts;
|
import com.yanzhu.manage.domain.*;
|
||||||
import com.yanzhu.manage.domain.ProProjectInfoSubdeptsUsers;
|
import com.yanzhu.manage.enums.SubDeptsEnums;
|
||||||
import com.yanzhu.manage.domain.SignetFileVo;
|
import com.yanzhu.manage.enums.UserPostEnums;
|
||||||
import com.yanzhu.manage.service.*;
|
import com.yanzhu.manage.service.*;
|
||||||
import com.yanzhu.security.utils.DictUtils;
|
import com.yanzhu.security.utils.DictUtils;
|
||||||
|
import com.yanzhu.system.api.model.LoginUser;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
@ -97,12 +98,39 @@ public class WxController extends BaseController {
|
||||||
return success(proProjectInfoSubdeptsService.findProSubDeptsInfo(proId,phoneNumber));
|
return success(proProjectInfoSubdeptsService.findProSubDeptsInfo(proId,phoneNumber));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询分包单位信息
|
||||||
|
* @param proId 项目主键
|
||||||
|
*/
|
||||||
|
@GetMapping("/findProSubDeptsUserInfo/{proId}")
|
||||||
|
public AjaxResult findProSubDeptsUserInfo(@PathVariable("proId") Long proId)
|
||||||
|
{
|
||||||
|
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||||
|
if(SecurityUtils.isGSAdmin()){
|
||||||
|
ProProjectInfo projectInfo = proProjectInfoService.selectProProjectInfoById(proId);
|
||||||
|
ProProjectInfoSubdeptsUsers adminUser = new ProProjectInfoSubdeptsUsers();
|
||||||
|
adminUser.setId(0L);
|
||||||
|
adminUser.setComId(projectInfo.getComId());
|
||||||
|
adminUser.setComName(projectInfo.getComName());
|
||||||
|
adminUser.setProjectId(projectInfo.getId());
|
||||||
|
adminUser.setProjectName(projectInfo.getProjectName());
|
||||||
|
adminUser.setSubDeptId(0L);
|
||||||
|
adminUser.setSubDeptType(SubDeptsEnums.JSDW.getCode());
|
||||||
|
adminUser.setUserId(loginUser.getUserid());
|
||||||
|
adminUser.setUserPost(UserPostEnums.JSDWGL.getCode());
|
||||||
|
adminUser.setUserName(loginUser.getSysUser().getNickName());
|
||||||
|
return success(adminUser);
|
||||||
|
}else{
|
||||||
|
return success(proProjectInfoSubdeptsUsersService.findProSubDeptsUserInfo(proId, SecurityUtils.getUserId()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询分包单位人员
|
* 查询分包单位人员
|
||||||
* @param id 人员主键
|
* @param id 人员主键
|
||||||
*/
|
*/
|
||||||
@GetMapping("/findProSubDeptsUser/{id}")
|
@GetMapping("/findProSubDeptsUser/{id}")
|
||||||
public AjaxResult findProSubDeptsUserById(@PathVariable("id")Long id)
|
public AjaxResult findProSubDeptsUserById(@PathVariable("id") Long id)
|
||||||
{
|
{
|
||||||
return success(proProjectInfoSubdeptsUsersService.selectProProjectInfoSubdeptsUsersById(id));
|
return success(proProjectInfoSubdeptsUsersService.selectProProjectInfoSubdeptsUsersById(id));
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,10 +5,10 @@ package com.yanzhu.manage.enums;
|
||||||
*/
|
*/
|
||||||
public enum CraftPostEnums {
|
public enum CraftPostEnums {
|
||||||
|
|
||||||
WTDL("1022", "委托代理人"),
|
WTDL("3022", "委托代理人"),
|
||||||
XMJL("1023", "项目经理"),
|
XMJL("3023", "项目经理"),
|
||||||
AQZY("1024", "安全专员"),
|
AQZY("3024", "安全专员"),
|
||||||
CLZY("1025", "材料专员");
|
CLZY("3025", "材料专员");
|
||||||
|
|
||||||
private final String code;
|
private final String code;
|
||||||
private final String info;
|
private final String info;
|
||||||
|
|
|
@ -20,6 +20,14 @@ public interface IBusExamUserService
|
||||||
*/
|
*/
|
||||||
public BusExamUser selectBusExamUserById(Long id);
|
public BusExamUser selectBusExamUserById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户试卷列表
|
||||||
|
*
|
||||||
|
* @param busExamUser 用户试卷
|
||||||
|
* @return 用户试卷集合
|
||||||
|
*/
|
||||||
|
public List<BusExamUser> selectAllList(BusExamUser busExamUser);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询用户试卷列表
|
* 查询用户试卷列表
|
||||||
*
|
*
|
||||||
|
|
|
@ -20,6 +20,13 @@ public interface IBusTrainingVideoUserService
|
||||||
*/
|
*/
|
||||||
public BusTrainingVideoUser selectBusTrainingVideoUserById(Long id);
|
public BusTrainingVideoUser selectBusTrainingVideoUserById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户培训视频列表
|
||||||
|
* @param busTrainingVideoUser
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<BusTrainingVideoUser> selectAllList(BusTrainingVideoUser busTrainingVideoUser);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询用户培训视频列表
|
* 查询用户培训视频列表
|
||||||
*
|
*
|
||||||
|
|
|
@ -95,6 +95,14 @@ public interface IProProjectInfoSubdeptsUsersService
|
||||||
*/
|
*/
|
||||||
public ProProjectInfoSubdeptsUsers findProSubDeptsUser(Long proId, String phoneNumber);
|
public ProProjectInfoSubdeptsUsers findProSubDeptsUser(Long proId, String phoneNumber);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户在项目中的信息
|
||||||
|
* @param proId 项目主键
|
||||||
|
* @param userId 用户主键
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public ProProjectInfoSubdeptsUsers findProSubDeptsUserInfo(Long proId, Long userId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 提交文件签署
|
* 提交文件签署
|
||||||
* @param signetFileVo
|
* @param signetFileVo
|
||||||
|
|
|
@ -58,6 +58,18 @@ public class BusExamUserServiceImpl implements IBusExamUserService
|
||||||
return busExamUserMapper.selectBusExamUserById(id);
|
return busExamUserMapper.selectBusExamUserById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户试卷列表
|
||||||
|
*
|
||||||
|
* @param busExamUser 用户试卷
|
||||||
|
* @return 用户试卷
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<BusExamUser> selectAllList(BusExamUser busExamUser)
|
||||||
|
{
|
||||||
|
return busExamUserMapper.selectBusExamUserList(busExamUser);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询用户试卷列表
|
* 查询用户试卷列表
|
||||||
*
|
*
|
||||||
|
|
|
@ -47,6 +47,18 @@ public class BusTrainingVideoUserServiceImpl implements IBusTrainingVideoUserSer
|
||||||
return busTrainingVideoUserMapper.selectBusTrainingVideoUserById(id);
|
return busTrainingVideoUserMapper.selectBusTrainingVideoUserById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户培训视频列表
|
||||||
|
*
|
||||||
|
* @param busTrainingVideoUser 用户培训视频
|
||||||
|
* @return 用户培训视频
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<BusTrainingVideoUser> selectAllList(BusTrainingVideoUser busTrainingVideoUser)
|
||||||
|
{
|
||||||
|
return busTrainingVideoUserMapper.selectBusTrainingVideoUserList(busTrainingVideoUser);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询用户培训视频列表
|
* 查询用户培训视频列表
|
||||||
*
|
*
|
||||||
|
|
|
@ -757,6 +757,17 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询用户在项目中的信息
|
||||||
|
* @param proId 项目主键
|
||||||
|
* @param userId 用户主键
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public ProProjectInfoSubdeptsUsers findProSubDeptsUserInfo(Long proId, Long userId){
|
||||||
|
return proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersByParamId(proId,userId);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 提交文件签署
|
* 提交文件签署
|
||||||
* @param signetFileVo
|
* @param signetFileVo
|
||||||
|
@ -890,7 +901,7 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
|
||||||
if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(),UserPostEnums.WTDL.getCode())){
|
if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(),UserPostEnums.WTDL.getCode())){
|
||||||
ProProjectInfoSubdepts proProjectInfoSubdepts = proProjectInfoSubdeptsMapper.selectProProjectInfoSubdeptsById(proProjectInfoSubdeptsUsers.getSubDeptId());
|
ProProjectInfoSubdepts proProjectInfoSubdepts = proProjectInfoSubdeptsMapper.selectProProjectInfoSubdeptsById(proProjectInfoSubdeptsUsers.getSubDeptId());
|
||||||
proProjectInfoSubdepts.setApproveStatus(ApproveStatus.exempt.getCode());
|
proProjectInfoSubdepts.setApproveStatus(ApproveStatus.exempt.getCode());
|
||||||
if(Objects.isNull(proProjectInfoSubdepts.getUseStatus()) && Objects.equals(proProjectInfoSubdepts.getUseStatus(),UseStateEnums.AW.getCode())){
|
if(Objects.nonNull(proProjectInfoSubdepts.getUseStatus()) && Objects.equals(proProjectInfoSubdepts.getUseStatus(),UseStateEnums.AW.getCode())){
|
||||||
proProjectInfoSubdepts.setUseStatus(UseStateEnums.IN.getCode());
|
proProjectInfoSubdepts.setUseStatus(UseStateEnums.IN.getCode());
|
||||||
}
|
}
|
||||||
// 生成二维码
|
// 生成二维码
|
||||||
|
@ -920,7 +931,7 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
|
||||||
if(Objects.nonNull(groups) && groups.size()>0){
|
if(Objects.nonNull(groups) && groups.size()>0){
|
||||||
ProProjectInfoSubdeptsGroup specialGroup = groups.get(0);
|
ProProjectInfoSubdeptsGroup specialGroup = groups.get(0);
|
||||||
specialGroup.setApproveStatus(ApproveStatus.exempt.getCode());
|
specialGroup.setApproveStatus(ApproveStatus.exempt.getCode());
|
||||||
if(Objects.isNull(specialGroup.getUseStatus()) && Objects.equals(specialGroup.getUseStatus(),UseStateEnums.AW.getCode())){
|
if(Objects.nonNull(specialGroup.getUseStatus()) && Objects.equals(specialGroup.getUseStatus(),UseStateEnums.AW.getCode())){
|
||||||
specialGroup.setUseStatus(UseStateEnums.IN.getCode());
|
specialGroup.setUseStatus(UseStateEnums.IN.getCode());
|
||||||
}
|
}
|
||||||
proProjectInfoSubdeptsGroupMapper.updateProProjectInfoSubdeptsGroup(specialGroup);
|
proProjectInfoSubdeptsGroupMapper.updateProProjectInfoSubdeptsGroup(specialGroup);
|
||||||
|
@ -941,7 +952,7 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
|
||||||
}else if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(),UserPostEnums.BZZ.getCode())){
|
}else if(Objects.equals(proProjectInfoSubdeptsUsers.getUserPost(),UserPostEnums.BZZ.getCode())){
|
||||||
ProProjectInfoSubdeptsGroup proProjectInfoSubdeptsGroup = proProjectInfoSubdeptsGroupMapper.selectProProjectInfoSubdeptsGroupById(proProjectInfoSubdeptsUsers.getSubDeptGroup());
|
ProProjectInfoSubdeptsGroup proProjectInfoSubdeptsGroup = proProjectInfoSubdeptsGroupMapper.selectProProjectInfoSubdeptsGroupById(proProjectInfoSubdeptsUsers.getSubDeptGroup());
|
||||||
proProjectInfoSubdeptsGroup.setApproveStatus(ApproveStatus.exempt.getCode());
|
proProjectInfoSubdeptsGroup.setApproveStatus(ApproveStatus.exempt.getCode());
|
||||||
if(Objects.isNull(proProjectInfoSubdeptsGroup.getUseStatus()) && Objects.equals(proProjectInfoSubdeptsGroup.getUseStatus(),UseStateEnums.AW.getCode())){
|
if(Objects.nonNull(proProjectInfoSubdeptsGroup.getUseStatus()) && Objects.equals(proProjectInfoSubdeptsGroup.getUseStatus(),UseStateEnums.AW.getCode())){
|
||||||
proProjectInfoSubdeptsGroup.setUseStatus(UseStateEnums.IN.getCode());
|
proProjectInfoSubdeptsGroup.setUseStatus(UseStateEnums.IN.getCode());
|
||||||
}
|
}
|
||||||
proProjectInfoSubdeptsGroupMapper.updateProProjectInfoSubdeptsGroup(proProjectInfoSubdeptsGroup);
|
proProjectInfoSubdeptsGroupMapper.updateProProjectInfoSubdeptsGroup(proProjectInfoSubdeptsGroup);
|
||||||
|
@ -1069,11 +1080,11 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
|
||||||
ProProjectInfoSubdeptsUsers proProjectInfoSubdeptsUsers = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersById(id);
|
ProProjectInfoSubdeptsUsers proProjectInfoSubdeptsUsers = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersById(id);
|
||||||
ProProjectInfoSubdeptsUsers userQuery = new ProProjectInfoSubdeptsUsers();
|
ProProjectInfoSubdeptsUsers userQuery = new ProProjectInfoSubdeptsUsers();
|
||||||
userQuery.setWorkType(101L);
|
userQuery.setWorkType(101L);
|
||||||
userQuery.setProjectId(proProjectInfoSubdeptsUsers.getProjectId());
|
userQuery.setComId(proProjectInfoSubdeptsUsers.getComId());
|
||||||
List<ProProjectInfoSubdeptsUsers> users = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersList(userQuery);
|
List<ProProjectInfoSubdeptsUsers> users = proProjectInfoSubdeptsUsersMapper.selectProProjectInfoSubdeptsUsersList(userQuery);
|
||||||
if(StringUtils.isNotEmpty(users)){
|
if(StringUtils.isNotEmpty(users)){
|
||||||
BasSignet query = new BasSignet();
|
BasSignet query = new BasSignet();
|
||||||
query.setProjectId(users.get(0).getProjectId());
|
query.setComId(users.get(0).getComId());
|
||||||
query.setUserId(users.get(0).getUserId());
|
query.setUserId(users.get(0).getUserId());
|
||||||
List<BasSignet> signets = basSignetMapper.selectBasSignetList(query);
|
List<BasSignet> signets = basSignetMapper.selectBasSignetList(query);
|
||||||
if(StringUtils.isNotEmpty(signets)){
|
if(StringUtils.isNotEmpty(signets)){
|
||||||
|
|
|
@ -103,10 +103,10 @@ public class SysRoleController extends BaseController
|
||||||
{
|
{
|
||||||
return error("新增角色'" + role.getRoleName() + "'失败,角色名称已存在");
|
return error("新增角色'" + role.getRoleName() + "'失败,角色名称已存在");
|
||||||
}
|
}
|
||||||
else if (!roleService.checkRoleKeyUnique(role))
|
/**else if (!roleService.checkRoleKeyUnique(role))
|
||||||
{
|
{
|
||||||
return error("新增角色'" + role.getRoleName() + "'失败,角色权限已存在");
|
return error("新增角色'" + role.getRoleName() + "'失败,角色权限已存在");
|
||||||
}
|
}*/
|
||||||
role.setCreateBy(SecurityUtils.getUsername());
|
role.setCreateBy(SecurityUtils.getUsername());
|
||||||
return toAjax(roleService.insertRole(role));
|
return toAjax(roleService.insertRole(role));
|
||||||
|
|
||||||
|
|
|
@ -43,6 +43,14 @@ export function findProSubDeptsUser(proId, phoneNumber) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 查询项目参建单位人员
|
||||||
|
export function findProSubDeptsUserInfo(proId) {
|
||||||
|
return request({
|
||||||
|
url: '/manage/wxApi/findProSubDeptsUserInfo/' + proId,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
// 查询项目参建单位人员
|
// 查询项目参建单位人员
|
||||||
export function findProSubDeptsUserById(id) {
|
export function findProSubDeptsUserById(id) {
|
||||||
return request({
|
return request({
|
||||||
|
|
|
@ -15,7 +15,13 @@
|
||||||
"pages/project_list/index",
|
"pages/project_list/index",
|
||||||
"pages/project_more/index",
|
"pages/project_more/index",
|
||||||
"pages/project_qr/index",
|
"pages/project_qr/index",
|
||||||
"pages/sign_mags/index"
|
"pages/sign_mags/index",
|
||||||
|
"pages/project_problemmodify/list/index",
|
||||||
|
"pages/project_problemmodify/info/index",
|
||||||
|
"pages/project_problemmodify/modify/index",
|
||||||
|
"pages/project_problemmodify/check/index",
|
||||||
|
"pages/project_problemmodify/add/index",
|
||||||
|
"pages/project_problemmodify/draft/index"
|
||||||
],
|
],
|
||||||
"usingComponents": {
|
"usingComponents": {
|
||||||
"van-row": "@vant/weapp/row",
|
"van-row": "@vant/weapp/row",
|
||||||
|
|
|
@ -1,209 +1,210 @@
|
||||||
import {
|
import {
|
||||||
removeToken
|
removeToken
|
||||||
} from '../../../utils/auth'
|
} from '../../../utils/auth'
|
||||||
import {
|
import {
|
||||||
loginOut,
|
loginOut,
|
||||||
updatePwd,
|
updatePwd,
|
||||||
findOpenUserMsgId
|
findOpenUserMsgId
|
||||||
} from '../../../api/login'
|
} from '../../../api/login'
|
||||||
|
|
||||||
const app = getApp()
|
const app = getApp()
|
||||||
Component({
|
Component({
|
||||||
/**数据监听 */
|
/**数据监听 */
|
||||||
observers: {},
|
observers: {},
|
||||||
/**
|
/**
|
||||||
* 组件的初始数据
|
* 组件的初始数据
|
||||||
*/
|
*/
|
||||||
data: {
|
data: {
|
||||||
show: false,
|
show: false,
|
||||||
userData: {},
|
userData: {},
|
||||||
resPas: false,
|
resPas: false,
|
||||||
oldPsw: '',
|
oldPsw: '',
|
||||||
newPsw: '',
|
newPsw: '',
|
||||||
password: '',
|
password: '',
|
||||||
showOldPass: true,
|
showOldPass: true,
|
||||||
showNewPass: true,
|
showNewPass: true,
|
||||||
showPassWord: true,
|
showPassWord: true,
|
||||||
binding: false,
|
binding: false,
|
||||||
msgOpenId: "",
|
msgOpenId: "",
|
||||||
},
|
},
|
||||||
|
|
||||||
created() {
|
created() {
|
||||||
this.setData({
|
this.setData({
|
||||||
userData: app.globalData.userData,
|
userData: app.globalData.userData,
|
||||||
loginName: app.globalData.userData.userName,
|
loginName: app.globalData.userData.userName,
|
||||||
msgOpenId: "",
|
msgOpenId: "",
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 组件的方法列表
|
* 组件的方法列表
|
||||||
*/
|
*/
|
||||||
methods: {
|
methods: {
|
||||||
loadUserInfo() {
|
loadUserInfo() {
|
||||||
let that = this;
|
let that = this;
|
||||||
//获取缓存数据
|
//获取缓存数据
|
||||||
wx.getStorage({
|
wx.getStorage({
|
||||||
key: 'userinfo',
|
key: 'userinfo',
|
||||||
success: function (res) {
|
success: function (res) {
|
||||||
findOpenUserMsgId(res.data.openId).then(vo =>{
|
findOpenUserMsgId(res.data.openId).then(vo => {
|
||||||
if(vo.code==200 && vo.data){
|
if (vo.code == 200 && vo.data) {
|
||||||
res.data.msgOpenId=vo.data.msgOpenId;
|
res.data.msgOpenId = vo.data.msgOpenId;
|
||||||
wx.setStorage({
|
wx.setStorage({
|
||||||
key: 'userinfo',
|
key: 'userinfo',
|
||||||
data: res.data
|
data: res.data
|
||||||
});
|
});
|
||||||
that.setData({
|
that.setData({
|
||||||
show:true,
|
show: true,
|
||||||
userData: res.data,
|
userData: res.data,
|
||||||
loginName: res.data.loginName,
|
loginName: res.data.loginName,
|
||||||
msgOpenId: res.data.msgOpenId || "",
|
msgOpenId: res.data.msgOpenId || "",
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
showPopup() {
|
|
||||||
this.setData({
|
|
||||||
show: true
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 关闭用户详情
|
|
||||||
*/
|
|
||||||
closePopup() {
|
|
||||||
this.setData({
|
|
||||||
show: false
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
//修改密码
|
|
||||||
resPassword: function () {
|
|
||||||
this.setData({
|
|
||||||
resPas: true
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
//绑定公众号
|
|
||||||
binding: function () {
|
|
||||||
app.initWxAuth();
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 修改密码返回
|
|
||||||
*/
|
|
||||||
closeResPas: function () {
|
|
||||||
this.setData({
|
|
||||||
resPas: false
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 修改密码返回
|
|
||||||
*/
|
|
||||||
closeBinding: function () {
|
|
||||||
this.setData({
|
|
||||||
binding: false
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
bindingBuild: function () {
|
|
||||||
wx.previewImage({
|
|
||||||
urls: "https://szgcwx.jhncidg.com/staticFiles/qrv1.jpg".split(","),
|
|
||||||
current: 0
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
//退出登录
|
|
||||||
loginOut: function () {
|
|
||||||
loginOut().then(res => {
|
|
||||||
removeToken();
|
|
||||||
wx.clearStorageSync();
|
|
||||||
wx.redirectTo({
|
|
||||||
url: '../login/login'
|
|
||||||
})
|
})
|
||||||
});
|
},
|
||||||
},
|
|
||||||
|
|
||||||
seeTap1() {
|
showPopup() {
|
||||||
let that = this;
|
this.setData({
|
||||||
that.setData({
|
show: true
|
||||||
// 切换图标
|
});
|
||||||
showOldPass: !that.data.showOldPass
|
},
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
seeTap2() {
|
/**
|
||||||
let that = this;
|
* 关闭用户详情
|
||||||
that.setData({
|
*/
|
||||||
// 切换图标
|
closePopup() {
|
||||||
showNewPass: !that.data.showNewPass
|
this.setData({
|
||||||
})
|
show: false
|
||||||
},
|
});
|
||||||
|
},
|
||||||
|
|
||||||
seeTap3() {
|
//修改密码
|
||||||
let that = this;
|
resPassword: function () {
|
||||||
that.setData({
|
this.setData({
|
||||||
// 切换图标
|
resPas: true
|
||||||
showPassWord: !that.data.showPassWord
|
});
|
||||||
})
|
},
|
||||||
if (that.data.newPsw != '' && that.data.newPsw != that.data.password) {
|
|
||||||
app.toast("两次密码输入不一致!");
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
//绑定公众号
|
||||||
* 添加预警信息
|
binding: function () {
|
||||||
*/
|
app.initWxAuth();
|
||||||
submit: function () {
|
},
|
||||||
var that = this;
|
|
||||||
if (false && that.data.oldPsw == '') {
|
/**
|
||||||
app.toast("请输入旧密码!");
|
* 修改密码返回
|
||||||
return;
|
*/
|
||||||
}
|
closeResPas: function () {
|
||||||
if (that.data.password == '') {
|
this.setData({
|
||||||
app.toast("请确认新密码!");
|
resPas: false
|
||||||
return;
|
});
|
||||||
}
|
},
|
||||||
if (that.data.newPsw != '' && that.data.newPsw != that.data.password) {
|
|
||||||
app.toast("两次密码输入不一致!");
|
/**
|
||||||
return;
|
* 修改密码返回
|
||||||
}
|
*/
|
||||||
if (false && that.data.oldPsw.length < 6) {
|
closeBinding: function () {
|
||||||
app.toast("请输入旧密码长度 [6-20]位字符!");
|
this.setData({
|
||||||
return;
|
binding: false
|
||||||
}
|
});
|
||||||
if (that.data.newPsw.length < 6) {
|
},
|
||||||
app.toast("请输入新密码长度 [6-20]位字符!");
|
|
||||||
return;
|
bindingBuild: function () {
|
||||||
}
|
wx.previewImage({
|
||||||
if (that.data.password.length < 6) {
|
urls: "https://szgcwx.jhncidg.com/staticFiles/qrv1.jpg".split(","),
|
||||||
app.toast("请输入确认密码长度 [6-20]位字符!");
|
current: 0
|
||||||
return;
|
})
|
||||||
}
|
},
|
||||||
let data = {
|
|
||||||
loginName: that.data.loginName,
|
//退出登录
|
||||||
oldPass: that.data.oldPsw,
|
loginOut: function () {
|
||||||
password: that.data.newPsw,
|
loginOut().then(res => {
|
||||||
confPass: that.data.password,
|
|
||||||
source:"u"
|
|
||||||
}
|
|
||||||
updatePwd(data).then(res =>{
|
|
||||||
if(res.code==200){
|
|
||||||
app.toast("密码修改成功,请重新登录!",800);
|
|
||||||
loginOut().then(res =>{
|
|
||||||
removeToken();
|
removeToken();
|
||||||
wx.clearStorageSync();
|
wx.clearStorageSync();
|
||||||
setTimeout(()=>{
|
wx.redirectTo({
|
||||||
wx.redirectTo({
|
url: '../login/login'
|
||||||
url: '../login/login'
|
})
|
||||||
});
|
|
||||||
},500)
|
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
});
|
|
||||||
},
|
seeTap1() {
|
||||||
|
let that = this;
|
||||||
|
that.setData({
|
||||||
|
// 切换图标
|
||||||
|
showOldPass: !that.data.showOldPass
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
seeTap2() {
|
||||||
|
let that = this;
|
||||||
|
that.setData({
|
||||||
|
// 切换图标
|
||||||
|
showNewPass: !that.data.showNewPass
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
seeTap3() {
|
||||||
|
let that = this;
|
||||||
|
that.setData({
|
||||||
|
// 切换图标
|
||||||
|
showPassWord: !that.data.showPassWord
|
||||||
|
})
|
||||||
|
if (that.data.newPsw != '' && that.data.newPsw != that.data.password) {
|
||||||
|
app.toast("两次密码输入不一致!");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 添加预警信息
|
||||||
|
*/
|
||||||
|
submit: function () {
|
||||||
|
var that = this;
|
||||||
|
if (false && that.data.oldPsw == '') {
|
||||||
|
app.toast("请输入旧密码!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (that.data.password == '') {
|
||||||
|
app.toast("请确认新密码!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (that.data.newPsw != '' && that.data.newPsw != that.data.password) {
|
||||||
|
app.toast("两次密码输入不一致!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (false && that.data.oldPsw.length < 6) {
|
||||||
|
app.toast("请输入旧密码长度 [6-20]位字符!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (that.data.newPsw.length < 6) {
|
||||||
|
app.toast("请输入新密码长度 [6-20]位字符!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (that.data.password.length < 6) {
|
||||||
|
app.toast("请输入确认密码长度 [6-20]位字符!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let data = {
|
||||||
|
loginName: that.data.loginName,
|
||||||
|
oldPass: that.data.oldPsw,
|
||||||
|
password: that.data.newPsw,
|
||||||
|
confPass: that.data.password,
|
||||||
|
source: "u"
|
||||||
|
}
|
||||||
|
updatePwd(data).then(res => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
app.toast("密码修改成功,请重新登录!", 800);
|
||||||
|
loginOut().then(res => {
|
||||||
|
removeToken();
|
||||||
|
wx.clearStorageSync();
|
||||||
|
setTimeout(() => {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../login/login'
|
||||||
|
});
|
||||||
|
}, 500)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
}
|
}
|
||||||
})
|
})
|
|
@ -4,6 +4,7 @@ import {
|
||||||
getOpenId,
|
getOpenId,
|
||||||
setOpenId,
|
setOpenId,
|
||||||
setUserInfo,
|
setUserInfo,
|
||||||
|
getUserInfo,
|
||||||
getSessionKey,
|
getSessionKey,
|
||||||
setSessionKey,
|
setSessionKey,
|
||||||
} from '../../utils/auth'
|
} from '../../utils/auth'
|
||||||
|
@ -17,6 +18,7 @@ import {
|
||||||
} from '../../api/login'
|
} from '../../api/login'
|
||||||
import {
|
import {
|
||||||
findMyProjectList,
|
findMyProjectList,
|
||||||
|
findProSubDeptsUserInfo,
|
||||||
} from '../../api/project'
|
} from '../../api/project'
|
||||||
const app = getApp();
|
const app = getApp();
|
||||||
Page({
|
Page({
|
||||||
|
@ -178,10 +180,17 @@ Page({
|
||||||
if(res.rows.length==1){
|
if(res.rows.length==1){
|
||||||
app.globalData.useProjectId = res.rows[0].id;
|
app.globalData.useProjectId = res.rows[0].id;
|
||||||
app.globalData.useProjectName = res.rows[0].projectName;
|
app.globalData.useProjectName = res.rows[0].projectName;
|
||||||
//单项目直接进入项目页面
|
findProSubDeptsUserInfo(app.globalData.useProjectId).then(detail=>{
|
||||||
wx.redirectTo({
|
if(detail.code==200){
|
||||||
url: '../project_info/index',
|
let userInfo = getUserInfo();
|
||||||
})
|
userInfo.projectUserInfo = detail.data;
|
||||||
|
setUserInfo(userInfo);
|
||||||
|
//单项目直接进入项目页面
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../project_info/index',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
});
|
||||||
}else{
|
}else{
|
||||||
//多项目进入项目切换页面
|
//多项目进入项目切换页面
|
||||||
wx.redirectTo({
|
wx.redirectTo({
|
||||||
|
|
|
@ -192,7 +192,13 @@
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
|
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
|
||||||
<van-row>
|
<van-row>
|
||||||
<van-col span="8"><text class="color_purple">所属民族</text></van-col>
|
<van-col span="8"><text class="color_purple">民族</text></van-col>
|
||||||
|
<van-col span="16">{{subDeptUserData.userInfos.nation}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="8"><text class="color_purple">籍贯</text></van-col>
|
||||||
<van-col span="16">{{subDeptUserData.userInfos.nativePlace}}</van-col>
|
<van-col span="16">{{subDeptUserData.userInfos.nativePlace}}</van-col>
|
||||||
</van-row>
|
</van-row>
|
||||||
</view>
|
</view>
|
||||||
|
|
|
@ -192,7 +192,13 @@
|
||||||
</view>
|
</view>
|
||||||
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
|
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
|
||||||
<van-row>
|
<van-row>
|
||||||
<van-col span="8"><text class="color_purple">所属民族</text></van-col>
|
<van-col span="8"><text class="color_purple">民族</text></van-col>
|
||||||
|
<van-col span="16">{{subDeptUserData.userInfos.nation}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list" wx:if="{{options.category!='1'}}">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="8"><text class="color_purple">籍贯</text></van-col>
|
||||||
<van-col span="16">{{subDeptUserData.userInfos.nativePlace}}</van-col>
|
<van-col span="16">{{subDeptUserData.userInfos.nativePlace}}</van-col>
|
||||||
</van-row>
|
</van-row>
|
||||||
</view>
|
</view>
|
||||||
|
|
|
@ -162,11 +162,10 @@ Page({
|
||||||
procInsId,
|
procInsId,
|
||||||
deployId,
|
deployId,
|
||||||
category,
|
category,
|
||||||
businessKey,
|
businessKey
|
||||||
finishTime
|
|
||||||
} = e.currentTarget.dataset.set
|
} = e.currentTarget.dataset.set
|
||||||
wx.setStorageSync('nav-types', "users");
|
wx.setStorageSync('nav-types', "users");
|
||||||
if (finishTime) {
|
if (this.data.activeState=="ysh") {
|
||||||
//详情页面
|
//详情页面
|
||||||
wx.redirectTo({
|
wx.redirectTo({
|
||||||
url: `../detailTask/index?taskId=${taskId}&taskName=${taskName}&procInsId=${procInsId}&deployId=${deployId}&category=${category}&businessKey=${businessKey}`
|
url: `../detailTask/index?taskId=${taskId}&taskName=${taskName}&procInsId=${procInsId}&deployId=${deployId}&category=${category}&businessKey=${businessKey}`
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
import config from '../../config'
|
import config from '../../config'
|
||||||
import {
|
import {
|
||||||
getToken
|
getToken,
|
||||||
|
getUserInfo
|
||||||
} from '../../utils/auth'
|
} from '../../utils/auth'
|
||||||
import {
|
import {
|
||||||
findProjectInfo,
|
findProjectInfo,
|
||||||
findProjectDepts,
|
findProjectDepts
|
||||||
findProSubDeptsUserByParams
|
|
||||||
} from '../../api/project'
|
} from '../../api/project'
|
||||||
import {
|
import {
|
||||||
findSubDeptsUsers,
|
findSubDeptsUsers,
|
||||||
|
@ -145,8 +145,8 @@ Page({
|
||||||
//项目基本信息
|
//项目基本信息
|
||||||
this.getProjectInfo(app.globalData.useProjectId);
|
this.getProjectInfo(app.globalData.useProjectId);
|
||||||
//用户项目信息
|
//用户项目信息
|
||||||
this.getProSubDeptsUserInfo(app.globalData.useProjectId);
|
this.getProSubDeptsUserInfo();
|
||||||
//项目单位信息
|
//项目建设单位
|
||||||
this.getProjectDepts(app.globalData.useProjectId);
|
this.getProjectDepts(app.globalData.useProjectId);
|
||||||
} else {
|
} else {
|
||||||
console.log("未查询到Token...{}...准备重新登录")
|
console.log("未查询到Token...{}...准备重新登录")
|
||||||
|
@ -349,29 +349,28 @@ Page({
|
||||||
* 查询单位人员信息
|
* 查询单位人员信息
|
||||||
* @param {*} proId
|
* @param {*} proId
|
||||||
*/
|
*/
|
||||||
getProSubDeptsUserInfo(proId) {
|
getProSubDeptsUserInfo() {
|
||||||
findProSubDeptsUserByParams(proId).then(res => {
|
const proUserInfo = getUserInfo();
|
||||||
app.globalData.subDeptUserData = res.data[0];
|
app.globalData.subDeptUserData = proUserInfo.projectUserInfo;
|
||||||
this.setData({
|
this.setData({
|
||||||
subDeptUserInfo: res.data[0]
|
subDeptUserInfo: proUserInfo.projectUserInfo
|
||||||
});
|
|
||||||
//劳务人员信息
|
|
||||||
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);
|
|
||||||
}
|
|
||||||
this.awaitTask();
|
|
||||||
//今日出勤信息
|
|
||||||
if (app.globalData.subDeptUserData.subDeptType=='1') {
|
|
||||||
this.getSubDeptsAttendanceView(app.globalData.useProjectId);
|
|
||||||
}
|
|
||||||
//人员出勤信息
|
|
||||||
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);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
//劳务人员信息
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
this.awaitTask();
|
||||||
|
//今日出勤信息
|
||||||
|
if (app.globalData.subDeptUserData.subDeptType=='1') {
|
||||||
|
this.getSubDeptsAttendanceView(app.globalData.useProjectId);
|
||||||
|
}
|
||||||
|
//人员出勤信息
|
||||||
|
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);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -467,7 +466,7 @@ Page({
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询
|
* 查询
|
||||||
* 项目参建单位
|
* 项目建设单位
|
||||||
* @param {*} proId
|
* @param {*} proId
|
||||||
*/
|
*/
|
||||||
getProjectDepts: function (proId) {
|
getProjectDepts: function (proId) {
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
import {
|
import {
|
||||||
getToken
|
getToken,
|
||||||
|
setUserInfo,
|
||||||
|
getUserInfo
|
||||||
} from '../../utils/auth'
|
} from '../../utils/auth'
|
||||||
import {
|
import {
|
||||||
findMyProjectList,
|
findMyProjectList,
|
||||||
|
findProSubDeptsUserInfo,
|
||||||
} from '../../api/project'
|
} from '../../api/project'
|
||||||
const app = getApp()
|
const app = getApp()
|
||||||
Page({
|
Page({
|
||||||
|
@ -56,8 +59,16 @@ import {
|
||||||
//赋值到公共参数
|
//赋值到公共参数
|
||||||
app.globalData.useProjectId = even.currentTarget.dataset['id'];
|
app.globalData.useProjectId = even.currentTarget.dataset['id'];
|
||||||
app.globalData.useProjectName = even.currentTarget.dataset['name'];
|
app.globalData.useProjectName = even.currentTarget.dataset['name'];
|
||||||
wx.redirectTo({
|
findProSubDeptsUserInfo(app.globalData.useProjectId).then(detail=>{
|
||||||
url: '../project_info/index',
|
if(detail.code==200){
|
||||||
})
|
let userInfo = getUserInfo();
|
||||||
|
userInfo.projectUserInfo = detail.data;
|
||||||
|
setUserInfo(userInfo);
|
||||||
|
//单项目直接进入项目页面
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../project_info/index',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
})
|
})
|
|
@ -4,9 +4,6 @@ import {
|
||||||
import {
|
import {
|
||||||
findUserMenuList
|
findUserMenuList
|
||||||
} from '../../api/publics'
|
} from '../../api/publics'
|
||||||
import {
|
|
||||||
findProSubDeptsUserByParams
|
|
||||||
} from '../../api/project'
|
|
||||||
import {
|
import {
|
||||||
findMyTask
|
findMyTask
|
||||||
} from '../../api/flowable'
|
} from '../../api/flowable'
|
||||||
|
@ -60,7 +57,7 @@ Page({
|
||||||
//用户权限菜单
|
//用户权限菜单
|
||||||
this.getUserMenuList(app.globalData.useProjectId);
|
this.getUserMenuList(app.globalData.useProjectId);
|
||||||
//用户项目信息
|
//用户项目信息
|
||||||
this.getProSubDeptsUserInfo(app.globalData.useProjectId);
|
this.getProSubDeptsUserInfo();
|
||||||
this.awaitTask();
|
this.awaitTask();
|
||||||
} else {
|
} else {
|
||||||
console.log("未查询到Token...{}...准备重新登录")
|
console.log("未查询到Token...{}...准备重新登录")
|
||||||
|
@ -86,15 +83,12 @@ Page({
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询单位人员信息
|
* 查询单位人员信息
|
||||||
* @param {*} proId
|
|
||||||
*/
|
*/
|
||||||
getProSubDeptsUserInfo(proId) {
|
getProSubDeptsUserInfo() {
|
||||||
findProSubDeptsUserByParams(proId).then(res => {
|
const proUserInfo = getUserInfo();
|
||||||
app.globalData.subDeptUserData = res.data;
|
this.setData({
|
||||||
this.setData({
|
subDeptUserInfo: proUserInfo.projectUserInfo
|
||||||
subDeptUserInfo: res.data[0]
|
});
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
|
|
||||||
goMenu: function (event) {
|
goMenu: function (event) {
|
||||||
|
|
|
@ -0,0 +1,543 @@
|
||||||
|
const app = getApp()
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
maxDate: new Date(2088, 1, 1).getTime(),
|
||||||
|
minDate: new Date().getTime() + (3600 * 48 * 1000),
|
||||||
|
projectId: "",
|
||||||
|
projectName: "",
|
||||||
|
loginName: "",
|
||||||
|
userName: "",
|
||||||
|
rectifierData: [],
|
||||||
|
rectifierData2: [],
|
||||||
|
rectifierData3: [],
|
||||||
|
imageInfoData: [],
|
||||||
|
//验收时间
|
||||||
|
nickedTime: '',
|
||||||
|
loadShow: false,
|
||||||
|
lordSent: "",
|
||||||
|
lordSentUser: "",
|
||||||
|
copySend: "",
|
||||||
|
copySendUser: "",
|
||||||
|
recheckSend: "",
|
||||||
|
recheckSendUser: "",
|
||||||
|
workParts: "",
|
||||||
|
changeInfo: "",
|
||||||
|
dangerType: "1",
|
||||||
|
dangerTypeList: [],
|
||||||
|
selectValue: "",
|
||||||
|
selectIndex: "",
|
||||||
|
problemType: "1",
|
||||||
|
showHis: false,
|
||||||
|
problemTypeList: [{
|
||||||
|
id: "1",
|
||||||
|
text: "常规检查"
|
||||||
|
}, {
|
||||||
|
id: "2",
|
||||||
|
text: "专项检查"
|
||||||
|
}],
|
||||||
|
flowNodes:[{text:'开始'},{text:'提交隐患'},{text:'隐患整改'},{text:'隐患复检'},{text:'结束'}],
|
||||||
|
active: 0
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
onLoad(options) {
|
||||||
|
let {
|
||||||
|
ts
|
||||||
|
} = options
|
||||||
|
this.setData({
|
||||||
|
projectId: app.globalData.projectId,
|
||||||
|
projectName: app.globalData.projectName,
|
||||||
|
loginName: res.data.loginName,
|
||||||
|
userName: res.data.nickName,
|
||||||
|
recheckSend: res.data.nickName,
|
||||||
|
recheckSendUser: res.data.loginName
|
||||||
|
});
|
||||||
|
//获取缓存数据
|
||||||
|
wx.getStorage({
|
||||||
|
key: 'YanZhu-XD-App-UserInfoKey',
|
||||||
|
success: res => {
|
||||||
|
this.setData({
|
||||||
|
projectId: app.globalData.projectId,
|
||||||
|
projectName: app.globalData.projectName,
|
||||||
|
loginName: res.data.loginName,
|
||||||
|
userName: res.data.nickName,
|
||||||
|
recheckSend: res.data.nickName,
|
||||||
|
recheckSendUser: res.data.loginName
|
||||||
|
});
|
||||||
|
this.getAllProjectUserData();
|
||||||
|
this.getDangerTypeList();
|
||||||
|
this.getHisInfo();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//查询项目人员数据
|
||||||
|
getAllProjectUserData() {
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectuserinfo/queryAllProjectUserByParams',
|
||||||
|
method: "get",
|
||||||
|
data: {
|
||||||
|
projectId: that.data.projectId,
|
||||||
|
loginName: that.data.loginName
|
||||||
|
},
|
||||||
|
header: {
|
||||||
|
'content-type': 'application/x-www-form-urlencoded'
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200) {
|
||||||
|
that.setData({
|
||||||
|
rectifierData: res.data,
|
||||||
|
rectifierData3: res.data,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectuserinfo/queryAllProjectUserByParams',
|
||||||
|
method: "get",
|
||||||
|
data: {
|
||||||
|
projectId: that.data.projectId,
|
||||||
|
loginName: that.data.loginName,
|
||||||
|
selectMy: 'Y'
|
||||||
|
},
|
||||||
|
header: {
|
||||||
|
'content-type': 'application/x-www-form-urlencoded'
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
res = res.data;
|
||||||
|
if (res.code == 200) {
|
||||||
|
let findMy = false;
|
||||||
|
res.data.forEach(it => {
|
||||||
|
if (it.userinfoList.length > 0) {
|
||||||
|
it.userinfoList.forEach(u => {
|
||||||
|
if (that.data.loginName == u.phonenumber) {
|
||||||
|
findMy = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
if(!findMy){
|
||||||
|
res.data[0].userinfoList.push({state:false,nickName:that.data.userName,jobTypeName:'集团公司',phonenumber:that.data.loginName});
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
rectifierData2: res.data,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
getHisInfo() {
|
||||||
|
//这里查询当前登录人上次提交隐患,自动填充整改人,复检人,抄送人
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/findLastDataByParams',
|
||||||
|
method: "get",
|
||||||
|
data: {
|
||||||
|
projectId: that.data.projectId,
|
||||||
|
createUser: that.data.loginName,
|
||||||
|
infoType: 1
|
||||||
|
},
|
||||||
|
header: {
|
||||||
|
'content-type': 'application/x-www-form-urlencoded'
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200 && res.data) {
|
||||||
|
that.setData({
|
||||||
|
showHis: true,
|
||||||
|
lordSent: res.data.lordSent,
|
||||||
|
lordSentUser: res.data.lordSentUser,
|
||||||
|
recheckSend: res.data.recheckSend,
|
||||||
|
recheckSendUser: res.data.recheckSendUser,
|
||||||
|
copySend: res.data.copySend,
|
||||||
|
copySendUser: res.data.copySendUser
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
getDangerTypeList() {
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/queryDangerType',
|
||||||
|
method: "get",
|
||||||
|
data: {
|
||||||
|
type: 'ssp_zlyhlx'
|
||||||
|
},
|
||||||
|
header: {
|
||||||
|
'content-type': 'application/x-www-form-urlencoded'
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200) {
|
||||||
|
let list = [];
|
||||||
|
res.data.forEach(it => {
|
||||||
|
list.push({
|
||||||
|
"id": it.dictValue,
|
||||||
|
"text": it.dictLabel
|
||||||
|
});
|
||||||
|
})
|
||||||
|
that.setData({
|
||||||
|
dangerTypeList: list
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//隐患描述
|
||||||
|
onInputWorkParts(e) {
|
||||||
|
let workParts = e.detail.value
|
||||||
|
this.setData({
|
||||||
|
workParts
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//整改要求
|
||||||
|
onInputChangeInfoValue(e) {
|
||||||
|
let changeInfo = e.detail.value
|
||||||
|
this.setData({
|
||||||
|
changeInfo
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//验收时间
|
||||||
|
onInputTime(e) {
|
||||||
|
let nickedTime = e.detail
|
||||||
|
this.setData({
|
||||||
|
nickedTime
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// list 上传图片
|
||||||
|
onImagesArr(e) {
|
||||||
|
var data = this.data.imageInfoData
|
||||||
|
data = e.detail
|
||||||
|
this.setData({
|
||||||
|
imageInfoData: data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//添加整改人
|
||||||
|
onAddLordSent(e) {
|
||||||
|
if (e.detail.length > 0) {
|
||||||
|
this.setData({
|
||||||
|
lordSent: e.detail[0].userName,
|
||||||
|
lordSentUser: e.detail[0].phoneNumber
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
//添加抄送人
|
||||||
|
onAddCopySend(e) {
|
||||||
|
if (e.detail.length > 0) {
|
||||||
|
let phoneNumbers = "";
|
||||||
|
let userNames = "";
|
||||||
|
e.detail.forEach(it => {
|
||||||
|
phoneNumbers += "," + it.phoneNumber;
|
||||||
|
userNames += "," + it.userName;
|
||||||
|
});
|
||||||
|
this.setData({
|
||||||
|
copySend: userNames.substring(1),
|
||||||
|
copySendUser: phoneNumbers.substring(1)
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.setData({
|
||||||
|
copySend: "",
|
||||||
|
copySendUser: ""
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
//添加复检人
|
||||||
|
onAddRecheckSend(e) {
|
||||||
|
if (e.detail.length > 0) {
|
||||||
|
this.setData({
|
||||||
|
recheckSend: e.detail[0].userName,
|
||||||
|
recheckSendUser: e.detail[0].phoneNumber
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
//取消页面
|
||||||
|
cancelSaveView() {
|
||||||
|
this.returnToPage()
|
||||||
|
},
|
||||||
|
|
||||||
|
//保存
|
||||||
|
onProblemSubmitSave() {
|
||||||
|
this.setData({
|
||||||
|
loadShow: true
|
||||||
|
})
|
||||||
|
let that = this
|
||||||
|
let {
|
||||||
|
projectId,
|
||||||
|
projectName,
|
||||||
|
dangerType,
|
||||||
|
lordSent,
|
||||||
|
lordSentUser,
|
||||||
|
copySend,
|
||||||
|
copySendUser,
|
||||||
|
workParts,
|
||||||
|
changeInfo,
|
||||||
|
nickedTime,
|
||||||
|
recheckSend,
|
||||||
|
recheckSendUser,
|
||||||
|
imageInfoData,
|
||||||
|
loginName,
|
||||||
|
problemType,
|
||||||
|
userName
|
||||||
|
} = that.data;
|
||||||
|
//数据效验
|
||||||
|
if (projectId == "" || loginName == "") {
|
||||||
|
app.toast("数据异常,请刷新页面重试!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (imageInfoData.length == 0) {
|
||||||
|
app.toast("请上传隐患现场图片!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (problemType == "") {
|
||||||
|
app.toast("请选择检查类型!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (dangerType == "") {
|
||||||
|
app.toast("请选择隐患类型!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (workParts == "") {
|
||||||
|
app.toast("请填写隐患描述!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (changeInfo == "") {
|
||||||
|
app.toast("请填写隐患整改要求!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (nickedTime == "") {
|
||||||
|
app.toast("请选择整改截至时间!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (lordSent == "" || lordSentUser == "") {
|
||||||
|
app.toast("请选择整改人!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (recheckSend == "" || recheckSendUser == "") {
|
||||||
|
app.toast("请选择复检人!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (copySend == "" || copySendUser == "") {
|
||||||
|
app.toast("请选择抄送人!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let pos = copySend.split(",");
|
||||||
|
pos.forEach(it => {
|
||||||
|
if (it == lordSent) {
|
||||||
|
app.toast("抄送人中不能包含整改人!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
let fileUrls = [];
|
||||||
|
imageInfoData.forEach(async (item) => {
|
||||||
|
let uploadUrl = app.globalData.uploadUrl + '/common/upload'
|
||||||
|
let name = "file"
|
||||||
|
//这里复杂的图片上传,改为同步上传,因为小程序只能上传一张图片
|
||||||
|
let obj = await that.syncUploadImage(uploadUrl, item, name);
|
||||||
|
fileUrls.push(obj.data.fileName);
|
||||||
|
//验证图片上传完毕
|
||||||
|
if (fileUrls.length == imageInfoData.length) {
|
||||||
|
let params = {
|
||||||
|
projectId,
|
||||||
|
infoType: "1",
|
||||||
|
problemArea: projectName,
|
||||||
|
problemType,
|
||||||
|
workParts,
|
||||||
|
changeInfo,
|
||||||
|
lordSent,
|
||||||
|
lordSentUser,
|
||||||
|
copySend,
|
||||||
|
copySendUser,
|
||||||
|
checkState: 0,
|
||||||
|
nickedTime: nickedTime + " 23:59:59",
|
||||||
|
smarkUrl: fileUrls.toString(),
|
||||||
|
createUser: loginName,
|
||||||
|
dangerType,
|
||||||
|
recheckSend,
|
||||||
|
recheckSendUser
|
||||||
|
}
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/addQuality',
|
||||||
|
method: "POST",
|
||||||
|
data: params,
|
||||||
|
header: {
|
||||||
|
"Username": loginName,
|
||||||
|
"Content-Type": "application/json"
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200) {
|
||||||
|
app.toast("添加成功!")
|
||||||
|
setTimeout(() => {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
}, 200)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 这里考虑上传图片异步问题,封装为同步
|
||||||
|
*/
|
||||||
|
syncUploadImage(url, uploadFile, name) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
wx.uploadFile({
|
||||||
|
url, // 上传的服务器接口地址
|
||||||
|
filePath: uploadFile,
|
||||||
|
header: {
|
||||||
|
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8"
|
||||||
|
},
|
||||||
|
name, //上传的所需字段,后端提供
|
||||||
|
formData: {
|
||||||
|
user: 'test'
|
||||||
|
},
|
||||||
|
success: (res) => {
|
||||||
|
// 上传完成操作
|
||||||
|
const data = JSON.parse(res.data)
|
||||||
|
resolve({
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
fail: (err) => {
|
||||||
|
//上传失败:修改pedding为reject
|
||||||
|
console.log("访问接口失败", err);
|
||||||
|
wx.showToast({
|
||||||
|
title: "网络出错,上传失败",
|
||||||
|
icon: 'none',
|
||||||
|
duration: 1000
|
||||||
|
});
|
||||||
|
reject(err)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//选择检查类型
|
||||||
|
onSelectProblemType(e) {
|
||||||
|
this.setData({
|
||||||
|
problemType: e.detail.id
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//选择隐患类型
|
||||||
|
onSelectDangerType(e) {
|
||||||
|
this.setData({
|
||||||
|
dangerType: e.detail.id
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
returnToPage: function () {
|
||||||
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户点击右上角分享
|
||||||
|
*/
|
||||||
|
onShareAppMessage() {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
"usingComponents": {
|
||||||
|
"van-steps": "@vant/weapp/steps/index",
|
||||||
|
"van-overlay": "@vant/weapp/overlay/index"
|
||||||
|
},
|
||||||
|
"navigationStyle":"custom"
|
||||||
|
}
|
|
@ -0,0 +1,141 @@
|
||||||
|
<view class="header_title">
|
||||||
|
<view class="header_title_row">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="4">
|
||||||
|
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
|
||||||
|
</van-col>
|
||||||
|
<van-col span="15">
|
||||||
|
<view class="header_name">新增质量隐患</view>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="max_content">
|
||||||
|
<van-steps steps="{{ flowNodes }}" active="{{ active }}" />
|
||||||
|
<view class="inspect_info ">
|
||||||
|
<view class="module_title module_title_flex">
|
||||||
|
<view>{{projectName}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">隐患图片</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<file-uploader bindimages="onImagesArr"></file-uploader>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">检查类型</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<voucher-select columns="{{problemTypeList}}" placeholder="请选择检查类型" bindchange="onSelectProblemType"></voucher-select>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">隐患类型</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<voucher-select columns="{{dangerTypeList}}" placeholder="请选择隐患类型" bindchange="onSelectDangerType" selectValue="{{activeName}}" selectIndex="{{activeIndex}}"></voucher-select>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list" >
|
||||||
|
<view class="inspect_info_title">隐患描述</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<textarea class="add_textarea" placeholder="请填写质量隐患描述"
|
||||||
|
placeholder-style="color:#6777aa;" bindinput="onInputWorkParts" maxlength="200"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list" >
|
||||||
|
<view class="inspect_info_title">整改要求</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<textarea class="add_textarea" placeholder="请填写隐患整改要求"
|
||||||
|
placeholder-style="color:#6777aa;" bindinput="onInputChangeInfoValue" maxlength="200"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title">整改截至时间</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<voucher-date counts="5" placeholder="请选择整改截至时间" minDate="{{minDate}}" maxDate="{{maxDate}}" bindchange="onInputTime"></voucher-date>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">整改人</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<select-group-person rectifierData="{{rectifierData}}" multiple="{{fales}}" bindselected="onAddLordSent" index="1" title="请选择整改人" choose="{{lordSent}}">
|
||||||
|
</select-group-person>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">复检人</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<select-group-person rectifierData="{{rectifierData2}}" multiple="{{fales}}" bindselected="onAddRecheckSend" index="2" title="请选择复检人" choose="{{recheckSend}}">
|
||||||
|
</select-group-person>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">抄送人</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<select-group-person rectifierData="{{rectifierData3}}" multiple="{{true}}" bindselected="onAddCopySend" index="3" title="请选择抄送人" choose="{{copySend}}">
|
||||||
|
</select-group-person>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="safety_inspect_title module_title_flex" wx:if="{{showHis}}">
|
||||||
|
<text class="color_orange">已自动填充上次隐患的整改人,复检人,抄送人。</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="problem_submit_to">
|
||||||
|
<view class="problem_submit_to_btn" bindtap="cancelSaveView">取消</view>
|
||||||
|
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onProblemSubmitSave">提交隐患</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<van-overlay show="{{loadShow}}">
|
||||||
|
<view class="gif">
|
||||||
|
<image src="/../images/loding2.gif"></image>
|
||||||
|
<view>数据加载中!请稍后...</view>
|
||||||
|
</view>
|
||||||
|
</van-overlay>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
.van-popup{
|
||||||
|
background: none !important;
|
||||||
|
}
|
||||||
|
.van-image__img{
|
||||||
|
border-radius: 10rpx !important;
|
||||||
|
}
|
|
@ -0,0 +1,304 @@
|
||||||
|
const app = getApp()
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
id:"",
|
||||||
|
infoData:{},
|
||||||
|
loadShow:false,
|
||||||
|
auditInfo:{},
|
||||||
|
reject:false,
|
||||||
|
rejectOpinion:"",
|
||||||
|
loadShow:false,
|
||||||
|
loginName:"",
|
||||||
|
imageList:[],
|
||||||
|
minImageList:[],
|
||||||
|
auditImageList:[],
|
||||||
|
auditMinImageList:[],
|
||||||
|
request:app.globalData.reqUrl,
|
||||||
|
flowNodes:[{text:'开始'},{text:'提交隐患'},{text:'隐患整改'},{text:'隐患复检'},{text:'结束'}],
|
||||||
|
active: 3
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
onLoad(options) {
|
||||||
|
let {id} = options
|
||||||
|
//获取缓存数据
|
||||||
|
wx.getStorage({
|
||||||
|
key: 'userinfo',
|
||||||
|
success:res=>{
|
||||||
|
this.setData({
|
||||||
|
id,
|
||||||
|
loginName:res.data.loginName
|
||||||
|
})
|
||||||
|
this.getInfo();
|
||||||
|
this.getAuditinfo();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取安全检查详情信息
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
getInfo(){
|
||||||
|
let {id} = this.data
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl+'/wechat/projectProblemmodify/info',
|
||||||
|
method:"get",
|
||||||
|
data:{
|
||||||
|
id:id
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
res = res.data
|
||||||
|
if(res.code == 200){
|
||||||
|
let urls = [];
|
||||||
|
let minUrls = [];
|
||||||
|
if(res.data.smarkUrl){
|
||||||
|
res.data.smarkUrl.split(',').forEach(element => {
|
||||||
|
urls.push(that.data.request+element);
|
||||||
|
minUrls.push(that.data.request+element+'.min.jpg');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
infoData:res.data,
|
||||||
|
imageList:urls,
|
||||||
|
minImageList:minUrls,
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
getAuditinfo(){
|
||||||
|
let {id} = this.data
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl+'/wechat/projectProblemmodify/queryAuditInfo',
|
||||||
|
method:"get",
|
||||||
|
data:{
|
||||||
|
id:id
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
res = res.data
|
||||||
|
if(res.code == 200 && res.data){
|
||||||
|
let urls = [];
|
||||||
|
let minUrls = [];
|
||||||
|
if(res.data.fileUrls){
|
||||||
|
res.data.fileUrls.split(',').forEach(element => {
|
||||||
|
urls.push(that.data.request+element);
|
||||||
|
minUrls.push(that.data.request+element+'.min.jpg');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
auditInfo:res.data,
|
||||||
|
auditImageList:urls,
|
||||||
|
auditMinImageList:minUrls
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//取消页面
|
||||||
|
cancelSaveView(){
|
||||||
|
this.returnToPage()
|
||||||
|
},
|
||||||
|
|
||||||
|
//保存
|
||||||
|
onSubmitSave(status){
|
||||||
|
this.setData({
|
||||||
|
loadShow:true
|
||||||
|
})
|
||||||
|
let that = this
|
||||||
|
let {id,reject,rejectOpinion,loginName} = that.data;
|
||||||
|
//数据效验
|
||||||
|
if(id==""){
|
||||||
|
app.toast("数据异常,请刷新页面重试!")
|
||||||
|
that.setData({
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(reject && rejectOpinion==""){
|
||||||
|
app.toast("请填写整改驳回意见!")
|
||||||
|
that.setData({
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let params = {
|
||||||
|
mainId:id,
|
||||||
|
processState:status,
|
||||||
|
opinion:rejectOpinion,
|
||||||
|
createUser:loginName
|
||||||
|
}
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/modifyProblem',
|
||||||
|
method:"POST",
|
||||||
|
data:params,
|
||||||
|
header: {
|
||||||
|
"Username": loginName,
|
||||||
|
"Content-Type": "application/json"
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
that.setData({
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
res =res.data
|
||||||
|
if(res.code == 200){
|
||||||
|
app.toast("操作成功!")
|
||||||
|
setTimeout(()=>{
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
},200)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
//审核驳回
|
||||||
|
onRejectSave(){
|
||||||
|
let that = this;
|
||||||
|
if(that.data.rejectOpinion!=""){
|
||||||
|
//弹出确认
|
||||||
|
wx.showModal({
|
||||||
|
title: '提示',
|
||||||
|
content: '是否确认复检驳回?',
|
||||||
|
success: function (sm) {
|
||||||
|
if (sm.confirm) {
|
||||||
|
// 用户点击了确定 可以调用了
|
||||||
|
that.onSubmitSave(2);
|
||||||
|
} else if (sm.cancel) {
|
||||||
|
console.log('用户点击取消');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
app.toast("请填写整改驳回意见!")
|
||||||
|
that.setData({
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//审核通过
|
||||||
|
onPassSave(){
|
||||||
|
let that = this;
|
||||||
|
//弹出确认
|
||||||
|
wx.showModal({
|
||||||
|
title: '提示',
|
||||||
|
content: '是否确定确认复检通过?',
|
||||||
|
success: function (sm) {
|
||||||
|
if (sm.confirm) {
|
||||||
|
// 用户点击了确定 可以调用了
|
||||||
|
that.setData({
|
||||||
|
reject:false
|
||||||
|
});
|
||||||
|
that.onSubmitSave(4);
|
||||||
|
} else if (sm.cancel) {
|
||||||
|
console.log('用户点击取消');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//展示图片
|
||||||
|
showImg:function(e){
|
||||||
|
var that=this;
|
||||||
|
wx.previewImage({
|
||||||
|
urls: that.data.imageList,
|
||||||
|
current: that.data.imageList[e.currentTarget.dataset.index]
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//展示图片
|
||||||
|
showAuditinfoImg:function(e){
|
||||||
|
var that=this;
|
||||||
|
wx.previewImage({
|
||||||
|
urls: that.data.auditImageList,
|
||||||
|
current: that.data.auditImageList[e.currentTarget.dataset.index]
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
returnToPage: function () {
|
||||||
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
//驳回意见
|
||||||
|
onInputOpinion(e){
|
||||||
|
let rejectOpinion = e.detail.value
|
||||||
|
this.setData({
|
||||||
|
rejectOpinion
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// list 上传图片
|
||||||
|
onImagesArr(e){
|
||||||
|
var data = this.data.imageInfoData
|
||||||
|
data = e.detail
|
||||||
|
this.setData({
|
||||||
|
imageInfoData:data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户点击右上角分享
|
||||||
|
*/
|
||||||
|
onShareAppMessage() {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"usingComponents": {
|
||||||
|
"van-popup": "@vant/weapp/popup/index",
|
||||||
|
"van-collapse": "@vant/weapp/collapse",
|
||||||
|
"van-steps": "@vant/weapp/steps/index",
|
||||||
|
"van-collapse-item": "@vant/weapp/collapse-item",
|
||||||
|
"van-overlay": "@vant/weapp/overlay/index"
|
||||||
|
},
|
||||||
|
"navigationStyle":"custom"
|
||||||
|
}
|
|
@ -0,0 +1,211 @@
|
||||||
|
<view class="header_title">
|
||||||
|
<view class="header_title_row">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="4">
|
||||||
|
<view class="header_img" bindtap="returnToPage">
|
||||||
|
<image src="/images/left.png"></image>
|
||||||
|
</view>
|
||||||
|
</van-col>
|
||||||
|
<van-col span="15">
|
||||||
|
<view class="header_name">质量隐患复检</view>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="max_content">
|
||||||
|
<van-steps steps="{{ flowNodes }}" active="{{ active }}" rejectNode="{{ active<100 && infoData.checkState=='3' ? active+1:0 }}" />
|
||||||
|
<view class="inspect_overview_max">
|
||||||
|
<view class="inspect_overview">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>{{infoData.problemArea}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="gk_open" style="margin-top: 20rpx;border: 1px solid transparent;">
|
||||||
|
<van-collapse value="{{activeName}}" bind:change="onChange">
|
||||||
|
<!-- <van-collapse-item title="申请流程" name="1">
|
||||||
|
<view class="left_manage2" wx:for="{{flowNodes}}" wx:key="index">
|
||||||
|
<text class="safety_issue_number {{item.state}}">{{item.name}}</text>
|
||||||
|
</view>
|
||||||
|
</van-collapse-item> -->
|
||||||
|
<van-collapse-item title="审批日志" name="2">
|
||||||
|
<view class="inspect_list">
|
||||||
|
<view class="inspect_for" wx:for="{{flowRecordList}}" wx:key="index">
|
||||||
|
<view class="inspect_for_bgd">
|
||||||
|
<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}}
|
||||||
|
<text wx:if="{{item.commentResult=='通过'}}" class="timeline_for_state_1 color_green">{{item.commentResult}}</text>
|
||||||
|
<text wx:if="{{item.commentResult=='驳回'}}" class="timeline_for_state_2 color_purple">{{item.commentResult}}</text>
|
||||||
|
<text wx:if="{{item.commentResult=='退回'}}" class="timeline_for_state_2 color_purple">{{item.commentResult}}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_list_info gk_open_con">
|
||||||
|
<view wx:if="{{item.assigneeName}}">
|
||||||
|
<image src="/images/lw_3.png"></image>办理用户:<text>{{item.assigneeName}}</text>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{item.assigneeName}}">
|
||||||
|
<image src="/images/s_1.png"></image>办理单位:<text class="color_blue">{{item.deptName}}</text>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{item.candidate}}">
|
||||||
|
<image src="/images/s_2.png"></image>候选办理:<text>{{item.candidate}}</text>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{item.deleteReason}}">
|
||||||
|
<image src="/images/s_18.png"></image>驳回节点:<text>{{item.deleteReason}}</text>
|
||||||
|
</view>
|
||||||
|
<view>
|
||||||
|
<image src="/images/s_6.png"></image>接收时间:<text>{{item.startTime}}</text>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{item.endTime}}">
|
||||||
|
<image src="/images/lw_8.png"></image>处理时间:<text>{{item.endTime}}</text>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{item.duration}}">
|
||||||
|
<image src="/images/img_11.png"></image>处理耗时:<text>{{item.duration}}</text>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{item.message}}">
|
||||||
|
<image src="/images/s_7.png"></image>处理意见:<text>{{item.message}}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</van-collapse-item>
|
||||||
|
</van-collapse>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患图片</text></van-col>
|
||||||
|
<view class="problem_list_info_con in-img-max">
|
||||||
|
<view class="in-img-div" wx:for="{{minImageList}}" wx:key="index">
|
||||||
|
<image bindtap='showImg' data-index="{{index}}" src='{{item}}'></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">问题类型</text></van-col>
|
||||||
|
<van-col span="18">
|
||||||
|
<text class="timeline_for_state_1" wx:if="{{infoData.problemType=='1'}}">常规检查</text>
|
||||||
|
<text class="timeline_for_state_2" wx:if="{{infoData.problemType=='2'}}">专项检查</text>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患类型</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.dangerTypeName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患描述</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.workParts}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改要求</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.changeInfo}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查单位</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.deptName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查人</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.createUserName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查时间</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.createTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改人</text></van-col>
|
||||||
|
<van-col span="18" class="color_blue">{{infoData.lordSent}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">抄送人</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.copySend}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">复检人</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.recheckSend}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">截至时间</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.nickedTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view class="inspect_overview" wx:if="{{infoData.checkState==1 || infoData.checkState==4}}">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>问题整改</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改说明</text></van-col>
|
||||||
|
<van-col span="18">{{auditInfo.opinion}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改后图片</text></van-col>
|
||||||
|
<view class="problem_list_info_con in-img-max">
|
||||||
|
<view class="in-img-div" wx:for="{{auditMinImageList}}" wx:key="index">
|
||||||
|
<image bindtap='showAuditinfoImg' data-index="{{index}}" src='{{item}}'></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list" wx:if="{{infoData.checkState==4}}">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">完成时间</text></van-col>
|
||||||
|
<van-col span="18" class="color_green">{{infoData.nickedTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview" wx:if="true">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>整改复检意见</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<textarea class="add_textarea" placeholder="请填写整改复检意见" placeholder-style="color:#6777aa;" bindinput="onInputOpinion" maxlength="200" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="problem_submit_to">
|
||||||
|
<view class="problem_submit_to_btn" bindtap="onRejectSave">整改驳回</view>
|
||||||
|
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onPassSave">整改通过</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<van-overlay show="{{loadShow}}">
|
||||||
|
<view class="gif">
|
||||||
|
<image src="/../images/loding2.gif"></image>
|
||||||
|
<view>数据加载中!请稍后...</view>
|
||||||
|
</view>
|
||||||
|
</van-overlay>
|
|
@ -0,0 +1,22 @@
|
||||||
|
.in-img-max:after{
|
||||||
|
display:block;
|
||||||
|
clear:both;
|
||||||
|
content:"";
|
||||||
|
visibility:hidden;
|
||||||
|
height:0
|
||||||
|
}
|
||||||
|
.in-img-max{
|
||||||
|
width: auto;
|
||||||
|
zoom:1
|
||||||
|
}
|
||||||
|
.in-img-div{
|
||||||
|
position: relative;
|
||||||
|
margin: 0 8px 8px 0;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.in-img-div image{
|
||||||
|
width: 180rpx;
|
||||||
|
height: 180rpx;
|
||||||
|
border-radius: 15rpx;
|
||||||
|
position: relative;
|
||||||
|
}
|
|
@ -0,0 +1,368 @@
|
||||||
|
const app = getApp()
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
maxDate: new Date(2088, 1, 1).getTime(),
|
||||||
|
minDate: new Date().getTime() + (3600 * 48 * 1000),
|
||||||
|
projectId: "",
|
||||||
|
projectName: "",
|
||||||
|
loginName: "",
|
||||||
|
userName: "",
|
||||||
|
rectifierData: [],
|
||||||
|
loadShow: false,
|
||||||
|
showHis: false,
|
||||||
|
inspectInfoData: [{
|
||||||
|
image_upload: []
|
||||||
|
}],
|
||||||
|
lordSent: "",
|
||||||
|
lordSentUser: "",
|
||||||
|
flowNodes: [{
|
||||||
|
text: '开始'
|
||||||
|
}, {
|
||||||
|
text: '提交隐患'
|
||||||
|
}, {
|
||||||
|
text: '隐患整改'
|
||||||
|
}, {
|
||||||
|
text: '隐患复检'
|
||||||
|
}, {
|
||||||
|
text: '结束'
|
||||||
|
}],
|
||||||
|
active: 0,
|
||||||
|
problemType: "1",
|
||||||
|
problemTypeList: [{
|
||||||
|
id: 1,
|
||||||
|
text: '常规检查'
|
||||||
|
}, {
|
||||||
|
id: 2,
|
||||||
|
text: '专项检查'
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
onLoad(options) {
|
||||||
|
//获取缓存数据
|
||||||
|
wx.getStorage({
|
||||||
|
key: 'userinfo',
|
||||||
|
success: res => {
|
||||||
|
this.setData({
|
||||||
|
projectId: app.globalData.projectId,
|
||||||
|
projectName: app.globalData.projectName,
|
||||||
|
loginName: res.data.loginName,
|
||||||
|
userName: res.data.nickName
|
||||||
|
})
|
||||||
|
this.getAllProjectUserData();
|
||||||
|
this.getHisInfo();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//查询项目人员数据
|
||||||
|
getAllProjectUserData() {
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectuserinfo/selectProjectUnitUser',
|
||||||
|
method: "get",
|
||||||
|
data: {
|
||||||
|
projectId: that.data.projectId,
|
||||||
|
loginName: that.data.loginName
|
||||||
|
},
|
||||||
|
header: {
|
||||||
|
'content-type': 'application/x-www-form-urlencoded'
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200) {
|
||||||
|
that.setData({
|
||||||
|
rectifierData: res.data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
getHisInfo() {
|
||||||
|
//这里查询当前登录人上次提交隐患,自动填充整改人,复检人,抄送人
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/findDraftLastDataByParams',
|
||||||
|
method: "get",
|
||||||
|
data: {
|
||||||
|
projectId: that.data.projectId,
|
||||||
|
createUser: that.data.loginName,
|
||||||
|
infoType: 1
|
||||||
|
},
|
||||||
|
header: {
|
||||||
|
'content-type': 'application/x-www-form-urlencoded'
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200 && res.data) {
|
||||||
|
that.setData({
|
||||||
|
showHis: true,
|
||||||
|
lordSent: res.data.lordSent,
|
||||||
|
lordSentUser: res.data.lordSentUser
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// list 上传图片
|
||||||
|
onImagesArr(e) {
|
||||||
|
var index = e.currentTarget.dataset.index
|
||||||
|
var data = this.data.inspectInfoData
|
||||||
|
data[index].image_upload = e.detail
|
||||||
|
this.setData({
|
||||||
|
inspectInfoData: data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//添加整改人
|
||||||
|
onAddLordSent(e) {
|
||||||
|
if (e.detail.length > 0) {
|
||||||
|
this.setData({
|
||||||
|
lordSent: e.detail[0].userName,
|
||||||
|
lordSentUser: e.detail[0].phoneNumber
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
//取消页面
|
||||||
|
cancelSaveView() {
|
||||||
|
this.returnToPage()
|
||||||
|
},
|
||||||
|
|
||||||
|
//保存
|
||||||
|
onProblemSubmitSave() {
|
||||||
|
this.setData({
|
||||||
|
loadShow: true
|
||||||
|
})
|
||||||
|
let that = this
|
||||||
|
let {
|
||||||
|
projectId,
|
||||||
|
projectName,
|
||||||
|
problemType,
|
||||||
|
lordSent,
|
||||||
|
lordSentUser,
|
||||||
|
loginName,
|
||||||
|
inspectInfoData
|
||||||
|
} = that.data;
|
||||||
|
//数据效验
|
||||||
|
if (projectId == "" || loginName == "") {
|
||||||
|
app.toast("数据异常,请刷新页面重试!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (problemType == "") {
|
||||||
|
app.toast("请选择问题类型!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (lordSent == "" || lordSentUser == "") {
|
||||||
|
app.toast("请选择整改人!")
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let fileUrls = [];
|
||||||
|
inspectInfoData.forEach(async (item) => {
|
||||||
|
let beforeCheckUrl = [];
|
||||||
|
item.image_upload.forEach(async (it) => {
|
||||||
|
let uploadUrl = app.globalData.uploadUrl + '/common/upload'
|
||||||
|
let name = "file";
|
||||||
|
//这里复杂的图片上传,改为同步上传,因为小程序只能上传一张图片
|
||||||
|
let obj = await that.syncUploadImage(uploadUrl, it, name);
|
||||||
|
beforeCheckUrl.push(obj.data.fileName);
|
||||||
|
if (beforeCheckUrl.length >= item.image_upload.length) {
|
||||||
|
fileUrls.push(beforeCheckUrl);
|
||||||
|
}
|
||||||
|
//验证图片上传完毕
|
||||||
|
if (fileUrls.length >= inspectInfoData.length) {
|
||||||
|
let params = {
|
||||||
|
projectId,
|
||||||
|
infoType: "1",
|
||||||
|
problemArea: projectName,
|
||||||
|
problemType,
|
||||||
|
lordSent,
|
||||||
|
lordSentUser,
|
||||||
|
checkState: 0,
|
||||||
|
fileUrls: fileUrls,
|
||||||
|
createUser: loginName
|
||||||
|
}
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/addQualityDraft',
|
||||||
|
method: "POST",
|
||||||
|
data: params,
|
||||||
|
header: {
|
||||||
|
"Username": loginName,
|
||||||
|
"Content-Type": "application/json"
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
that.setData({
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200) {
|
||||||
|
app.toast("添加成功!")
|
||||||
|
setTimeout(() => {
|
||||||
|
if (wx.getStorageSync('nav-menu') == "list") {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../../../../pages/quality_manage/index',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}, 200);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 这里考虑上传图片异步问题,封装为同步
|
||||||
|
*/
|
||||||
|
syncUploadImage(url, uploadFile, name) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
wx.uploadFile({
|
||||||
|
url, // 上传的服务器接口地址
|
||||||
|
filePath: uploadFile,
|
||||||
|
header: {
|
||||||
|
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8"
|
||||||
|
},
|
||||||
|
name, //上传的所需字段,后端提供
|
||||||
|
formData: {
|
||||||
|
user: 'test'
|
||||||
|
},
|
||||||
|
success: (res) => {
|
||||||
|
// 上传完成操作
|
||||||
|
const data = JSON.parse(res.data)
|
||||||
|
resolve({
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
fail: (err) => {
|
||||||
|
//上传失败:修改pedding为reject
|
||||||
|
console.log("访问接口失败", err);
|
||||||
|
wx.showToast({
|
||||||
|
title: "网络出错,上传失败",
|
||||||
|
icon: 'none',
|
||||||
|
duration: 1000
|
||||||
|
});
|
||||||
|
reject(err)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 选择问题类型
|
||||||
|
* @param {*} e
|
||||||
|
*/
|
||||||
|
onSelectProblemType(e) {
|
||||||
|
this.setData({
|
||||||
|
problemType: e.detail.id,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
returnToPage: function () {
|
||||||
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
|
if (wx.getStorageSync('nav-menu') == "list") {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../../../../pages/quality_manage/index',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
//新增问题
|
||||||
|
onNewIssues() {
|
||||||
|
var data = this.data.inspectInfoData
|
||||||
|
if (data.length == 5) {
|
||||||
|
app.toast("一次最多只能提交5个问题!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
data.push({
|
||||||
|
image_upload: []
|
||||||
|
})
|
||||||
|
this.setData({
|
||||||
|
inspectInfoData: data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//删除
|
||||||
|
onNewIssuesDelete(e) {
|
||||||
|
var index = e.currentTarget.dataset.index
|
||||||
|
var data = this.data.inspectInfoData
|
||||||
|
data.splice(index, 1)
|
||||||
|
this.setData({
|
||||||
|
inspectInfoData: data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户点击右上角分享
|
||||||
|
*/
|
||||||
|
onShareAppMessage() {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
"usingComponents": {
|
||||||
|
"van-steps": "@vant/weapp/steps/index",
|
||||||
|
"van-overlay": "@vant/weapp/overlay/index"
|
||||||
|
},
|
||||||
|
"navigationStyle":"custom"
|
||||||
|
}
|
|
@ -0,0 +1,113 @@
|
||||||
|
<view class="header_title">
|
||||||
|
<view class="header_title_row">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="4">
|
||||||
|
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
|
||||||
|
</van-col>
|
||||||
|
<van-col span="15">
|
||||||
|
<view class="header_name">新增质量隐患草稿</view>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="max_content">
|
||||||
|
<van-steps steps="{{ flowNodes }}" active="{{ active }}" />
|
||||||
|
<view class="inspect_info ">
|
||||||
|
<view class="module_title_2 module_title_flex">
|
||||||
|
<view>{{projectName}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">问题类型</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<voucher-select columns="{{problemTypeList}}" placeholder="请选择问题类型" bindchange="onSelectProblemType" selectValue="{{problemType}}"></voucher-select>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">整改人员</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<select-group-person rectifierData="{{rectifierData}}" multiple="{{fales}}" bindselected="onAddLordSent" index="1" title="请选择整改人员" choose="{{lordSent}}">
|
||||||
|
</select-group-person>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="safety_inspect_title module_title_flex" wx:if="{{showHis}}">
|
||||||
|
<text class="color_orange">已自动填充上次选择的隐患整改人员。</text>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list" wx:for="{{inspectInfoData}}" wx:key="index">
|
||||||
|
<view class="module_title module_title_flex">
|
||||||
|
<view>问题 {{index + 1}}</view>
|
||||||
|
<view class="module_see_info_delete" wx:if="{{index != 0}}" bindtap="onNewIssuesDelete" data-index="{{index}}"><van-icon name="delete" /> 删除</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 20rpx;">检查图片</view>
|
||||||
|
<view class="problem_list_info_con">
|
||||||
|
<file-uploader bindimages="onImagesArr" data-index="{{index}}" fileUrlArray="{{item.image_upload}}"></file-uploader>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_new_issues_max">
|
||||||
|
<view class="inspect_new_issues" bindtap="onNewIssues"><van-icon name="add-o" style="position: relative;top:5rpx"/> 新增问题</view>
|
||||||
|
</view>
|
||||||
|
<view class="safety_prop module_title_flex" wx:if="{{showHis}}">
|
||||||
|
<text class="color_orange">草稿添加的数据在电脑端提交后生效!</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="problem_submit_to">
|
||||||
|
<view class="problem_submit_to_btn" bindtap="cancelSaveView">取消</view>
|
||||||
|
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onProblemSubmitSave">保存草稿</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<van-overlay show="{{loadShow}}">
|
||||||
|
<view class="gif">
|
||||||
|
<image src="/../images/loding2.gif"></image>
|
||||||
|
<view>数据加载中!请稍后...</view>
|
||||||
|
</view>
|
||||||
|
</van-overlay>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
.van-popup{
|
||||||
|
background: none !important;
|
||||||
|
}
|
||||||
|
.van-image__img{
|
||||||
|
border-radius: 10rpx !important;
|
||||||
|
}
|
|
@ -0,0 +1,252 @@
|
||||||
|
const app = getApp()
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
id: "",
|
||||||
|
infoData: {},
|
||||||
|
loadShow: false,
|
||||||
|
auditInfo: {},
|
||||||
|
loginName: "",
|
||||||
|
showDel: false,
|
||||||
|
imageList: [],
|
||||||
|
minImageList: [],
|
||||||
|
auditImageList: [],
|
||||||
|
auditMinImageList: [],
|
||||||
|
request: app.globalData.reqUrl,
|
||||||
|
flowNodes: [{
|
||||||
|
text: '开始'
|
||||||
|
}, {
|
||||||
|
text: '提交隐患'
|
||||||
|
}, {
|
||||||
|
text: '隐患整改'
|
||||||
|
}, {
|
||||||
|
text: '隐患复检'
|
||||||
|
}, {
|
||||||
|
text: '结束'
|
||||||
|
}],
|
||||||
|
active: 100
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
onLoad(options) {
|
||||||
|
let {
|
||||||
|
id
|
||||||
|
} = options
|
||||||
|
//获取缓存数据
|
||||||
|
wx.getStorage({
|
||||||
|
key: 'userinfo',
|
||||||
|
success: res => {
|
||||||
|
this.setData({
|
||||||
|
id,
|
||||||
|
loginName: res.data.loginName
|
||||||
|
})
|
||||||
|
this.getInfo();
|
||||||
|
this.getAuditinfo();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取安全检查详情信息
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
getInfo() {
|
||||||
|
let {
|
||||||
|
id
|
||||||
|
} = this.data
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/info',
|
||||||
|
method: "get",
|
||||||
|
data: {
|
||||||
|
id: id
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200) {
|
||||||
|
let state = that.data.active;
|
||||||
|
if (res.data.checkState == "0") {
|
||||||
|
state = 2;
|
||||||
|
} else if (res.data.checkState == "1") {
|
||||||
|
state = 3;
|
||||||
|
} else if (res.data.checkState == "3") {
|
||||||
|
state = 1;
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
active: state
|
||||||
|
})
|
||||||
|
let urls = [];
|
||||||
|
let minUrls = [];
|
||||||
|
if (res.data.smarkUrl) {
|
||||||
|
res.data.smarkUrl.split(',').forEach(element => {
|
||||||
|
urls.push(that.data.request + element);
|
||||||
|
minUrls.push(that.data.request + element + '.min.jpg');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
infoData: res.data,
|
||||||
|
imageList: urls,
|
||||||
|
minImageList: minUrls,
|
||||||
|
loadShow: false
|
||||||
|
})
|
||||||
|
//判断当前能否删除
|
||||||
|
if (res.data.checkState != 4 && res.data.createUser == that.data.loginName) {
|
||||||
|
that.setData({
|
||||||
|
showDel: true
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
getAuditinfo() {
|
||||||
|
let {
|
||||||
|
id
|
||||||
|
} = this.data
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/queryAuditInfo',
|
||||||
|
method: "get",
|
||||||
|
data: {
|
||||||
|
id: id
|
||||||
|
},
|
||||||
|
success(res) {
|
||||||
|
res = res.data
|
||||||
|
if (res.code == 200 && res.data) {
|
||||||
|
let urls = [];
|
||||||
|
let minUrls = [];
|
||||||
|
if (res.data.fileUrls) {
|
||||||
|
res.data.fileUrls.split(',').forEach(element => {
|
||||||
|
urls.push(that.data.request + element);
|
||||||
|
minUrls.push(that.data.request + element + '.min.jpg');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
auditInfo: res.data,
|
||||||
|
auditImageList: urls,
|
||||||
|
auditMinImageList: minUrls
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
onDelete() {
|
||||||
|
//弹出确认
|
||||||
|
let that = this
|
||||||
|
wx.showModal({
|
||||||
|
title: '提示',
|
||||||
|
content: '是否确定删除此条数据?',
|
||||||
|
success: function (sm) {
|
||||||
|
if (sm.confirm) {
|
||||||
|
// 用户点击了确定 可以调用了
|
||||||
|
that.deleteData();
|
||||||
|
} else if (sm.cancel) {
|
||||||
|
console.log('用户点击取消');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
deleteData() {
|
||||||
|
let {
|
||||||
|
id
|
||||||
|
} = this.data
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/removeQuality',
|
||||||
|
header: {
|
||||||
|
"Username": this.data.loginName,
|
||||||
|
},
|
||||||
|
data: {
|
||||||
|
id: id
|
||||||
|
},
|
||||||
|
method: "get",
|
||||||
|
success(res) {
|
||||||
|
app.toast("删除成功!")
|
||||||
|
wx.redirectTo({
|
||||||
|
url: `../list/index`,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//展示图片
|
||||||
|
showImg: function (e) {
|
||||||
|
var that = this;
|
||||||
|
wx.previewImage({
|
||||||
|
urls: that.data.imageList,
|
||||||
|
current: that.data.imageList[e.currentTarget.dataset.index]
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//展示图片
|
||||||
|
showAuditinfoImg: function (e) {
|
||||||
|
var that = this;
|
||||||
|
wx.previewImage({
|
||||||
|
urls: that.data.auditImageList,
|
||||||
|
current: that.data.auditImageList[e.currentTarget.dataset.index]
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
returnToPage: function () {
|
||||||
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户点击右上角分享
|
||||||
|
*/
|
||||||
|
onShareAppMessage() {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"usingComponents": {
|
||||||
|
"van-collapse": "@vant/weapp/collapse",
|
||||||
|
"van-steps": "@vant/weapp/steps/index",
|
||||||
|
"van-collapse-item": "@vant/weapp/collapse-item"
|
||||||
|
},
|
||||||
|
"navigationStyle":"custom"
|
||||||
|
}
|
|
@ -0,0 +1,169 @@
|
||||||
|
<view class="header_title">
|
||||||
|
<view class="header_title_row">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="4">
|
||||||
|
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
|
||||||
|
</van-col>
|
||||||
|
<van-col span="15">
|
||||||
|
<view class="header_name">质量隐患详情</view>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="max_content">
|
||||||
|
<van-steps steps="{{ flowNodes }}" active="{{ active }}" rejectNode="{{ active<100 && infoData.checkState=='3' ? active+1:0 }}" />
|
||||||
|
<view class="inspect_overview_max">
|
||||||
|
<view class="inspect_overview">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>{{infoData.problemArea}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患图片</text></van-col>
|
||||||
|
<view class="problem_list_info_con in-img-max">
|
||||||
|
<view class="in-img-div" wx:for="{{minImageList}}" wx:key="index">
|
||||||
|
<image bindtap='showImg' data-index="{{index}}" src='{{item}}'></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">问题类型</text></van-col>
|
||||||
|
<van-col span="18">
|
||||||
|
<text class="timeline_for_state_1" wx:if="{{infoData.problemType=='1'}}">常规检查</text>
|
||||||
|
<text class="timeline_for_state_2" wx:if="{{infoData.problemType=='2'}}">专项检查</text>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患类型</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.dangerTypeName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患描述</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.workParts}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改要求</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.changeInfo}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查单位</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.deptName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查人</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.createUserName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查时间</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.createTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改人</text></van-col>
|
||||||
|
<van-col span="18" class="color_blue">
|
||||||
|
{{infoData.lordSent}}
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.zgDeptType=='1'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">集团公司</text>
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.zgDeptType=='11'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">子公司</text>
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.zgDeptType=='2'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">总包单位</text>
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.zgDeptType=='3'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">分包单位</text>
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.zgDeptType=='4'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">监理单位</text>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">抄送人</text></van-col>
|
||||||
|
<van-col span="18"> {{infoData.copySend}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">复检人</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.recheckSend}}
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.fjDeptType=='1'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">集团公司</text>
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.fjDeptType=='11'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">子公司</text>
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.fjDeptType=='2'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">总包单位</text>
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.fjDeptType=='3'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">分包单位</text>
|
||||||
|
<text class="code_label_2 code_label_green" wx:if="{{infoData.fjDeptType=='4'}}" style="padding: 5rpx 50rpx;font-size: 25rpx;">监理单位</text>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">截至时间</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.nickedTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview" wx:if="{{infoData.checkState=='1' || infoData.checkState=='4'}}">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>问题整改</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改说明</text></van-col>
|
||||||
|
<van-col span="18">{{auditInfo.opinion}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改后图片</text></van-col>
|
||||||
|
<view class="problem_list_info_con in-img-max">
|
||||||
|
<view class="in-img-div" wx:for="{{auditMinImageList}}" wx:key="index">
|
||||||
|
<image bindtap='showAuditinfoImg' data-index="{{index}}" src='{{item}}'></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list" wx:if="{{infoData.checkState==4}}">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">完成时间</text></van-col>
|
||||||
|
<van-col span="18" class="color_green">{{infoData.nickedTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview" wx:if="{{infoData.checkState==3}}">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>问题整改驳回</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">驳回意见</text></van-col>
|
||||||
|
<van-col span="18">{{auditInfo.opinion}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">驳回时间</text></van-col>
|
||||||
|
<van-col span="18" class="color_orange">{{auditInfo.createTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="problem_submit_to" wx:if="{{showDel}}">
|
||||||
|
<view class="problem_submit_to_btn problem_submit_to_delete" bindtap="onDelete">删除</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
.in-img-max:after{
|
||||||
|
display:block;
|
||||||
|
clear:both;
|
||||||
|
content:"";
|
||||||
|
visibility:hidden;
|
||||||
|
height:0
|
||||||
|
}
|
||||||
|
.in-img-max{
|
||||||
|
width: auto;
|
||||||
|
zoom:1
|
||||||
|
}
|
||||||
|
.in-img-div{
|
||||||
|
position: relative;
|
||||||
|
margin: 0 8px 8px 0;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.in-img-div image{
|
||||||
|
width: 180rpx;
|
||||||
|
height: 180rpx;
|
||||||
|
border-radius: 15rpx;
|
||||||
|
position: relative;
|
||||||
|
}
|
|
@ -0,0 +1,293 @@
|
||||||
|
import {
|
||||||
|
getToken
|
||||||
|
} from '../../../utils/auth'
|
||||||
|
const app = getApp()
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
type:"",
|
||||||
|
typeName:"",
|
||||||
|
addFlag:false,
|
||||||
|
addDraftFlag:false,
|
||||||
|
deptId:"",
|
||||||
|
loginName:"",
|
||||||
|
userName:"",
|
||||||
|
projectId:"",
|
||||||
|
projectData:{},
|
||||||
|
projectNameArgs:"",
|
||||||
|
initData: {},
|
||||||
|
show:false,
|
||||||
|
listData:[],
|
||||||
|
activeState:"zg",
|
||||||
|
dzgCount:0,
|
||||||
|
dfjCount:0,
|
||||||
|
yclCount:0,
|
||||||
|
zgcsCOunt:0,
|
||||||
|
request:app.globalData.reqUrl,
|
||||||
|
pageNum:1,
|
||||||
|
pageSize:10,
|
||||||
|
lastDataSize:10,
|
||||||
|
minRoleId:"",
|
||||||
|
list:[],
|
||||||
|
},
|
||||||
|
|
||||||
|
skipAdd(){
|
||||||
|
wx.redirectTo({
|
||||||
|
url: `../add/index?projectId=${this.data.initData.id}&projectName=`+this.data.initData.text,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
skipAddDarft(){
|
||||||
|
wx.setStorageSync('nav-menu', "list");
|
||||||
|
wx.redirectTo({
|
||||||
|
url: `../draft/index`,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
getInfo(e){
|
||||||
|
let {id,checkState,lordSentUser,recheckSendUser} = e.currentTarget.dataset.set
|
||||||
|
if((checkState==0 || checkState==3) && lordSentUser==this.data.loginName){
|
||||||
|
//整改页面(状态时待整改&&整改人是当前登录人)
|
||||||
|
wx.redirectTo({
|
||||||
|
url: `../modify/index?id=${id}`,
|
||||||
|
})
|
||||||
|
}else if(checkState==1 && recheckSendUser==this.data.loginName){
|
||||||
|
//复检页面 (状态时待复检&&复检人是当前登录人)
|
||||||
|
wx.redirectTo({
|
||||||
|
url: `../check/index?id=${id}`,
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
wx.redirectTo({
|
||||||
|
url: `../info/index?id=${id}`,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
onLoad(options) {
|
||||||
|
if(!getToken()){
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../../login/index',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
//获取缓存数据
|
||||||
|
wx.getStorage({
|
||||||
|
key: 'YanZhu-XD-App-UserInfoKey',
|
||||||
|
success:res=>{
|
||||||
|
console.log("YanZhu-XD-App-UserInfoKey");
|
||||||
|
this.setData({
|
||||||
|
type:options.type,
|
||||||
|
typeName:options.type==1?"质量":"安全",
|
||||||
|
deptId:res.data.deptId,
|
||||||
|
loginName:res.data.loginName,
|
||||||
|
userName:res.data.userName,
|
||||||
|
minRoleId:res.data.minRoleId,
|
||||||
|
projectId:app.globalData.projectId,
|
||||||
|
projectNameArgs:app.globalData.projectName,
|
||||||
|
initData:{id:app.globalData.useProjectId,text:app.globalData.useProjectName},
|
||||||
|
pageNum:1,
|
||||||
|
pageSize:10,
|
||||||
|
lastDataSize:10,
|
||||||
|
listData:[]
|
||||||
|
});
|
||||||
|
//this.getListData();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目质量隐患排查数据
|
||||||
|
*/
|
||||||
|
getListData() {
|
||||||
|
//进入这里说明数据加载完毕
|
||||||
|
if(this.data.lastDataSize<this.data.pageSize){
|
||||||
|
//app.toast("已经到底了,暂无可继续加载数据!")
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let nowRole = "99";
|
||||||
|
//判断角色,
|
||||||
|
if(this.data.minRoleId==2||this.data.minRoleId==3||this.data.minRoleId==4){
|
||||||
|
nowRole="-1";
|
||||||
|
}
|
||||||
|
let param = {
|
||||||
|
"infoType":"1",//1质量类,0安全类
|
||||||
|
"projectId": this.data.projectId,
|
||||||
|
"nowRole":nowRole,//默认传普通角色,真实角色查看的数据量太大,这里只查看自己相关的数据
|
||||||
|
"nowUser":this.data.loginName,
|
||||||
|
"activeName":this.data.activeState
|
||||||
|
}
|
||||||
|
var that = this;
|
||||||
|
that.queryCount(param);
|
||||||
|
param.pageNum=that.data.pageNum;
|
||||||
|
param.pageSize=that.data.pageSize;
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/list',
|
||||||
|
data:param,
|
||||||
|
method: "get",
|
||||||
|
success: function (res) {
|
||||||
|
res = res.data;
|
||||||
|
if(res.code=="200"){
|
||||||
|
//这里处理this.data.lastDataSize=this.data.pageSize
|
||||||
|
if(that.data.list.length>0 && res.data.length>0 && that.data.list[0].id==res.data[0].id){
|
||||||
|
that.setData({
|
||||||
|
lastDataSize:0,
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
that.setData({
|
||||||
|
pageNum:that.data.pageNum+1,
|
||||||
|
lastDataSize:res.data.length,
|
||||||
|
list:res.data,
|
||||||
|
listData:that.data.listData.concat(res.data)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
queryCount(param){
|
||||||
|
let that = this;
|
||||||
|
//查询统计数量
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/queryCount',
|
||||||
|
data: param,
|
||||||
|
method: "get",
|
||||||
|
success: function (res) {
|
||||||
|
let sum1=0;
|
||||||
|
let sumfj=0;
|
||||||
|
if(res.data.data.check0){
|
||||||
|
sum1+=res.data.data.check0;
|
||||||
|
}
|
||||||
|
if(res.data.data.check1){
|
||||||
|
sumfj+=res.data.data.check1;
|
||||||
|
}
|
||||||
|
if(res.data.data.check3){
|
||||||
|
sum1+=res.data.data.check3;
|
||||||
|
}
|
||||||
|
let sum4=0;
|
||||||
|
let sum99=0;
|
||||||
|
if(res.data.data.check4){
|
||||||
|
sum4+=res.data.data.check4;
|
||||||
|
}
|
||||||
|
if(res.data.data.check99){
|
||||||
|
sum99+=res.data.data.check99;
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
dzgCount:sum1,
|
||||||
|
dfjCount:sumfj,
|
||||||
|
yclCount:sum4,
|
||||||
|
zgcsCount:sum99
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 标签切换
|
||||||
|
*/
|
||||||
|
trainingTypeJump(e){
|
||||||
|
let index = e.currentTarget.dataset.index;
|
||||||
|
let nav = "";
|
||||||
|
if(index == 1){
|
||||||
|
nav = 'zg';
|
||||||
|
}if(index == 2){
|
||||||
|
nav = 'fj';
|
||||||
|
}else if(index == 3){
|
||||||
|
nav = 'ycl';
|
||||||
|
}else if(index == 4){
|
||||||
|
nav = 'zgcs';
|
||||||
|
}
|
||||||
|
|
||||||
|
this.setData({
|
||||||
|
activeState:nav,
|
||||||
|
pageNum:1,
|
||||||
|
pageSize:10,
|
||||||
|
lastDataSize:10,
|
||||||
|
listData:[],
|
||||||
|
list:[]
|
||||||
|
});
|
||||||
|
this.getListData();
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
returnToPage: function () {
|
||||||
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
|
if(wx.getStorageSync('nav-menu')=="gd"){
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../../../../pages/gengduogongneng/index',
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../../../../pages/quality_manage/index',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
//项目切换 返回值
|
||||||
|
onProjectSelect(e){
|
||||||
|
let projectId = e.detail.id;
|
||||||
|
let projectName = e.detail.text;
|
||||||
|
app.globalData.projectId = projectId;
|
||||||
|
app.globalData.projectName = projectName;
|
||||||
|
this.onLoad();
|
||||||
|
},
|
||||||
|
|
||||||
|
onScrollToLower(){
|
||||||
|
console.log("滚动条到底了,开始加载新数据");
|
||||||
|
this.getListData();
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户点击右上角分享
|
||||||
|
*/
|
||||||
|
onShareAppMessage() {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
"usingComponents": {
|
||||||
|
"van-overlay": "@vant/weapp/overlay/index" ,
|
||||||
|
"van-popup": "@vant/weapp/popup/index"
|
||||||
|
},
|
||||||
|
"navigationStyle":"custom"
|
||||||
|
}
|
|
@ -0,0 +1,77 @@
|
||||||
|
<view class="header_title">
|
||||||
|
<view class="header_title_row">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="4">
|
||||||
|
<view class="header_img" bindtap="returnToPage">
|
||||||
|
<image src="/images/left.png"></image>
|
||||||
|
</view>
|
||||||
|
</van-col>
|
||||||
|
<van-col span="15">
|
||||||
|
<view class="header_name">{{typeName}}隐患排查</view>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<scroll-view class="max_content_scroll" type="list" scroll-y bindscrolltolower="onScrollToLower">
|
||||||
|
<project-select init="{{initData}}" bindchange="onProjectSelect" id="projectSel"></project-select>
|
||||||
|
<view class="modify_video_nav" style="margin-top: 5rpx;">
|
||||||
|
<view class="{{activeState=='zg'?'active':''}}" bindtap="trainingTypeJump" data-index="1"><text>整改({{dzgCount}})</text></view>
|
||||||
|
<view class="{{activeState=='fj'?'active':''}}" bindtap="trainingTypeJump" data-index="2"><text>复检({{dfjCount}})</text></view>
|
||||||
|
<view class="{{activeState=='ycl'?'active':''}}" bindtap="trainingTypeJump" data-index="3"><text>完成({{yclCount}})</text></view>
|
||||||
|
<view class="{{activeState=='zgcs'?'active':''}}" bindtap="trainingTypeJump" data-index="4"><text>超时({{zgcsCount}})</text></view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_max_scroll">
|
||||||
|
<!--专项检查样式zxjc-->
|
||||||
|
<view class="inspect_for_scroll {{item.problemType=='2'?'':''}}" v-if="{{ listData.length>0 }}" wx:for="{{listData}}" wx:key="index" data-set="{{item}}" bindtap="getInfo">
|
||||||
|
<view class="inspect_for_bgd">
|
||||||
|
<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 inspect_list_title_text_2">
|
||||||
|
<view wx:if="{{item.checkState==0}}" class="code_label code_label_yellow">待整改</view>
|
||||||
|
<view wx:if="{{item.checkState==1}}" class="code_label code_label_blueviolet">待复检</view>
|
||||||
|
<view wx:if="{{item.checkState==3}}" class="code_label code_label_red">复检驳回</view>
|
||||||
|
<view wx:if="{{item.checkState==4}}" class="code_label code_label_green">整改完成</view>
|
||||||
|
</view>
|
||||||
|
<text class="timeline_for_state_1" wx:if="{{item.problemType=='1'}}">常规检查</text>
|
||||||
|
<text class="timeline_for_state_2" wx:if="{{item.problemType=='2'}}">专项检查</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_list_info">
|
||||||
|
<view class="inspect_list_info_details">
|
||||||
|
<view class="inspect_list_info_img">
|
||||||
|
<van-image width="120rpx" height="120rpx" fit="cover" src="{{request+item.marksPicture+'.min.jpg'}}" />
|
||||||
|
</view>
|
||||||
|
<view class="inspect_list_info_data">
|
||||||
|
<view class="inspect_list_info_data_prop color_blue">隐患类型:<text>{{item.dangerTypeName}}</text></view>
|
||||||
|
<view class="inspect_list_info_data_prop">隐患描述:<text>{{item.workParts}}</text></view>
|
||||||
|
<view class="inspect_list_info_data_prop">检查单位:<text>{{item.deptName}}</text></view>
|
||||||
|
<view class="inspect_list_info_data_prop">检查时间:<text class="color_blue">{{item.createTime}}</text></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_list_info_position">
|
||||||
|
整改要求:<text class="color_purple">{{item.changeInfo}}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</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 style="color: #a5abbb;">暂无数据</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{addDraftFlag}}" class="inspect_add_to_darft" bindtap="skipAddDarft">
|
||||||
|
<view style="padding-top: 22rpx;">
|
||||||
|
<image src="/images/new_add.png"></image>
|
||||||
|
<view>草稿</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view wx:if="{{addFlag}}" class="inspect_add_to" bindtap="skipAdd">
|
||||||
|
<view style="padding-top: 22rpx;">
|
||||||
|
<image src="/images/new_add.png"></image>
|
||||||
|
<view>新增</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
|
@ -0,0 +1 @@
|
||||||
|
/* pages/project_problemmodify/list/index.wxss */
|
|
@ -0,0 +1,299 @@
|
||||||
|
const app = getApp()
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
id:"",
|
||||||
|
infoData:{},
|
||||||
|
loadShow:false,
|
||||||
|
auditInfo:{},
|
||||||
|
opinion:"",
|
||||||
|
imageInfoData:[],
|
||||||
|
loadShow:false,
|
||||||
|
loginName:"",
|
||||||
|
status:"0",
|
||||||
|
imageList:[],
|
||||||
|
minImageList:[],
|
||||||
|
request:app.globalData.reqUrl,
|
||||||
|
flowNodes:[{text:'开始'},{text:'提交隐患'},{text:'隐患整改'},{text:'隐患复检'},{text:'结束'}],
|
||||||
|
active: 2
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
onLoad(options) {
|
||||||
|
let {id} = options
|
||||||
|
//获取缓存数据
|
||||||
|
wx.getStorage({
|
||||||
|
key: 'userinfo',
|
||||||
|
success:res=>{
|
||||||
|
this.setData({
|
||||||
|
id,
|
||||||
|
loginName:res.data.loginName
|
||||||
|
})
|
||||||
|
this.getInfo();
|
||||||
|
this.getAuditinfo();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取安全检查详情信息
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
getInfo(){
|
||||||
|
let {id} = this.data
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl+'/wechat/projectProblemmodify/info',
|
||||||
|
method:"get",
|
||||||
|
data:{
|
||||||
|
id:id
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
res = res.data
|
||||||
|
if(res.code == 200){
|
||||||
|
let urls = [];
|
||||||
|
let minUrls = [];
|
||||||
|
if(res.data.smarkUrl){
|
||||||
|
res.data.smarkUrl.split(',').forEach(element => {
|
||||||
|
urls.push(that.data.request+element);
|
||||||
|
minUrls.push(that.data.request+element+'.min.jpg');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
infoData:res.data,
|
||||||
|
imageList:urls,
|
||||||
|
minImageList:minUrls,
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
getAuditinfo(){
|
||||||
|
let {id} = this.data
|
||||||
|
let that = this
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl+'/wechat/projectProblemmodify/queryAuditInfo',
|
||||||
|
method:"get",
|
||||||
|
data:{
|
||||||
|
id:id
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
res = res.data
|
||||||
|
if(res.code == 200 && res.data){
|
||||||
|
let urls = [];
|
||||||
|
if(res.data.fileUrls){
|
||||||
|
res.data.fileUrls.split(',').forEach(element => {
|
||||||
|
urls.push(element+'.min.jpg');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
that.setData({
|
||||||
|
auditInfo:res.data,
|
||||||
|
auditImgs:urls
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//取消页面
|
||||||
|
cancelSaveView(){
|
||||||
|
this.returnToPage()
|
||||||
|
},
|
||||||
|
|
||||||
|
//保存
|
||||||
|
onSubmitSave(){
|
||||||
|
this.setData({
|
||||||
|
loadShow:true
|
||||||
|
})
|
||||||
|
let that = this
|
||||||
|
let {id,opinion,status,imageInfoData,loginName} = that.data;
|
||||||
|
//数据效验
|
||||||
|
if(id==""){
|
||||||
|
app.toast("数据异常,请刷新页面重试!")
|
||||||
|
that.setData({
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(opinion==""){
|
||||||
|
app.toast("请填写整改说明!")
|
||||||
|
that.setData({
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(imageInfoData.length==0){
|
||||||
|
app.toast("请上传整改后图片!")
|
||||||
|
that.setData({
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let fileUrls = [];
|
||||||
|
imageInfoData.forEach(async (item)=>{
|
||||||
|
let uploadUrl = app.globalData.uploadUrl+'/common/upload'
|
||||||
|
let name = "file"
|
||||||
|
//这里复杂的图片上传,改为同步上传,因为小程序只能上传一张图片
|
||||||
|
let obj = await that.syncUploadImage(uploadUrl,item,name);
|
||||||
|
fileUrls.push(obj.data.fileName);
|
||||||
|
//验证图片上传完毕
|
||||||
|
if(fileUrls.length == imageInfoData.length){
|
||||||
|
let params = {
|
||||||
|
mainId:id,
|
||||||
|
processState:status,
|
||||||
|
opinion,
|
||||||
|
createUser:loginName,
|
||||||
|
fileUrls:fileUrls.toString()
|
||||||
|
}
|
||||||
|
wx.request({
|
||||||
|
url: app.globalData.reqUrl + '/wechat/projectProblemmodify/modifyProblem',
|
||||||
|
method:"POST",
|
||||||
|
data:params,
|
||||||
|
header: {
|
||||||
|
"Username": loginName,
|
||||||
|
"Content-Type": "application/json"
|
||||||
|
},
|
||||||
|
success(res){
|
||||||
|
that.setData({
|
||||||
|
loadShow:false
|
||||||
|
})
|
||||||
|
res =res.data
|
||||||
|
if(res.code == 200){
|
||||||
|
app.toast("提交成功!")
|
||||||
|
setTimeout(()=>{
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
},200)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 这里考虑上传图片异步问题,封装为同步
|
||||||
|
*/
|
||||||
|
syncUploadImage(url,uploadFile,name) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
wx.uploadFile({
|
||||||
|
url, // 上传的服务器接口地址
|
||||||
|
filePath: uploadFile,
|
||||||
|
header: {
|
||||||
|
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8"
|
||||||
|
},
|
||||||
|
name, //上传的所需字段,后端提供
|
||||||
|
formData: { user: 'test' },
|
||||||
|
success: (res) => {
|
||||||
|
// 上传完成操作
|
||||||
|
const data = JSON.parse(res.data)
|
||||||
|
resolve({
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
fail: (err) => {
|
||||||
|
//上传失败:修改pedding为reject
|
||||||
|
console.log("访问接口失败", err);
|
||||||
|
wx.showToast({
|
||||||
|
title: "网络出错,上传失败",
|
||||||
|
icon: 'none',
|
||||||
|
duration: 1000
|
||||||
|
});
|
||||||
|
reject(err)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
//展示图片
|
||||||
|
showImg:function(e){
|
||||||
|
var that=this;
|
||||||
|
wx.previewImage({
|
||||||
|
urls: that.data.imageList,
|
||||||
|
current: that.data.imageList[e.currentTarget.dataset.index]
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
returnToPage: function () {
|
||||||
|
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../list/index',
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
//验收描述
|
||||||
|
onInputOpinion(e){
|
||||||
|
let opinion = e.detail.value
|
||||||
|
this.setData({
|
||||||
|
opinion
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// list 上传图片
|
||||||
|
onImagesArr(e){
|
||||||
|
var data = this.data.imageInfoData
|
||||||
|
data = e.detail
|
||||||
|
this.setData({
|
||||||
|
imageInfoData:data
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户点击右上角分享
|
||||||
|
*/
|
||||||
|
onShareAppMessage() {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"usingComponents": {
|
||||||
|
"van-popup": "@vant/weapp/popup/index",
|
||||||
|
"van-collapse": "@vant/weapp/collapse",
|
||||||
|
"van-steps": "@vant/weapp/steps/index",
|
||||||
|
"van-collapse-item": "@vant/weapp/collapse-item",
|
||||||
|
"van-overlay": "@vant/weapp/overlay/index"
|
||||||
|
},
|
||||||
|
"navigationStyle":"custom"
|
||||||
|
}
|
|
@ -0,0 +1,154 @@
|
||||||
|
<view class="header_title">
|
||||||
|
<view class="header_title_row">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="4">
|
||||||
|
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
|
||||||
|
</van-col>
|
||||||
|
<van-col span="15">
|
||||||
|
<view class="header_name">质量隐患整改</view>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="max_content">
|
||||||
|
<van-steps steps="{{ flowNodes }}" active="{{ active }}" rejectNode="{{ active<100 && infoData.checkState=='3' ? active+1:0 }}" />
|
||||||
|
<view class="inspect_overview_max">
|
||||||
|
<view class="inspect_overview">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>{{infoData.problemArea}}</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患图片</text></van-col>
|
||||||
|
<view class="problem_list_info_con in-img-max">
|
||||||
|
<view class="in-img-div" wx:for="{{minImageList}}" wx:key="index">
|
||||||
|
<image bindtap='showImg' data-index="{{index}}" src='{{item}}'></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">问题类型</text></van-col>
|
||||||
|
<van-col span="18">
|
||||||
|
<text class="timeline_for_state_1" wx:if="{{infoData.problemType=='1'}}">常规检查</text>
|
||||||
|
<text class="timeline_for_state_2" wx:if="{{infoData.problemType=='2'}}">专项检查</text>
|
||||||
|
</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患类型</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.dangerTypeName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">隐患描述</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.workParts}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改要求</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.changeInfo}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查单位</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.deptName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查人</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.createUserName}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">检查时间</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.createTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">整改人</text></van-col>
|
||||||
|
<van-col span="18" class="color_blue">{{infoData.lordSent}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">抄送人</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.copySend}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">复检人</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.recheckSend}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">截至时间</text></van-col>
|
||||||
|
<van-col span="18">{{infoData.nickedTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview" wx:if="{{infoData.checkState==3}}">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>问题整改驳回</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">驳回意见</text></van-col>
|
||||||
|
<van-col span="18">{{auditInfo.opinion}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list">
|
||||||
|
<van-row>
|
||||||
|
<van-col span="6"><text class="color_purple">驳回时间</text></van-col>
|
||||||
|
<van-col span="18" class="color_orange">{{auditInfo.createTime}}</van-col>
|
||||||
|
</van-row>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview">
|
||||||
|
<view class="module_title module_title_padding">
|
||||||
|
<view>问题整改</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_overview_list_max">
|
||||||
|
<view class="inspect_info_list" >
|
||||||
|
<view class="inspect_info_title">整改说明</view>
|
||||||
|
<view class="inspect_info_content">
|
||||||
|
<textarea class="add_textarea" placeholder="请填写整改说明"
|
||||||
|
placeholder-style="color:#6777aa;" bindinput="onInputOpinion" maxlength="200"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="inspect_info_list">
|
||||||
|
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">整改后图片</view>
|
||||||
|
<view class="problem_list_info_con">
|
||||||
|
<file-uploader bindimages="onImagesArr"></file-uploader>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="problem_submit_to">
|
||||||
|
<view class="problem_submit_to_btn" bindtap="cancelSaveView">取消</view>
|
||||||
|
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onSubmitSave">保存</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<van-overlay show="{{loadShow}}">
|
||||||
|
<view class="gif">
|
||||||
|
<image src="/../images/loding2.gif"></image>
|
||||||
|
<view>数据加载中!请稍后...</view>
|
||||||
|
</view>
|
||||||
|
</van-overlay>
|
|
@ -0,0 +1,22 @@
|
||||||
|
.in-img-max:after{
|
||||||
|
display:block;
|
||||||
|
clear:both;
|
||||||
|
content:"";
|
||||||
|
visibility:hidden;
|
||||||
|
height:0
|
||||||
|
}
|
||||||
|
.in-img-max{
|
||||||
|
width: auto;
|
||||||
|
zoom:1
|
||||||
|
}
|
||||||
|
.in-img-div{
|
||||||
|
position: relative;
|
||||||
|
margin: 0 8px 8px 0;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.in-img-div image{
|
||||||
|
width: 180rpx;
|
||||||
|
height: 180rpx;
|
||||||
|
border-radius: 15rpx;
|
||||||
|
position: relative;
|
||||||
|
}
|
|
@ -2,6 +2,7 @@ import config from '../../config'
|
||||||
import {
|
import {
|
||||||
setToken,
|
setToken,
|
||||||
setUserInfo,
|
setUserInfo,
|
||||||
|
getUserInfo,
|
||||||
getOpenId,
|
getOpenId,
|
||||||
setOpenId,
|
setOpenId,
|
||||||
getSessionKey,
|
getSessionKey,
|
||||||
|
@ -20,7 +21,8 @@ import {
|
||||||
registerSubDeptsUsers,
|
registerSubDeptsUsers,
|
||||||
findProSubDeptsUser,
|
findProSubDeptsUser,
|
||||||
findProSubDeptsInfo,
|
findProSubDeptsInfo,
|
||||||
findProSubDeptsUserById
|
findProSubDeptsUserById,
|
||||||
|
findProSubDeptsUserInfo
|
||||||
} from '../../api/project'
|
} from '../../api/project'
|
||||||
import {
|
import {
|
||||||
findBusExamInfos,
|
findBusExamInfos,
|
||||||
|
@ -2026,10 +2028,17 @@ if (this.data.userPost == "1") {
|
||||||
if(res.rows.length==1){
|
if(res.rows.length==1){
|
||||||
app.globalData.useProjectId = res.rows[0].id;
|
app.globalData.useProjectId = res.rows[0].id;
|
||||||
app.globalData.useProjectName = res.rows[0].projectName;
|
app.globalData.useProjectName = res.rows[0].projectName;
|
||||||
//单项目直接进入项目页面
|
findProSubDeptsUserInfo(app.globalData.useProjectId).then(detail=>{
|
||||||
wx.redirectTo({
|
if(detail.code==200){
|
||||||
url: '../project_info/index',
|
let userInfo = getUserInfo();
|
||||||
})
|
userInfo.projectUserInfo = detail.data;
|
||||||
|
setUserInfo(userInfo);
|
||||||
|
//单项目直接进入项目页面
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '../project_info/index',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
});
|
||||||
}else{
|
}else{
|
||||||
//多项目进入项目切换页面
|
//多项目进入项目切换页面
|
||||||
wx.redirectTo({
|
wx.redirectTo({
|
||||||
|
|
|
@ -18,9 +18,9 @@ export function getBusExamUser(id) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询用户试卷详细
|
// 查询用户试卷详细
|
||||||
export function getBusExamUserLast(userId) {
|
export function getBusExamUserLast(proId, userId) {
|
||||||
return request({
|
return request({
|
||||||
url: '/manage/busExamUser/last/' + userId,
|
url: '/manage/busExamUser/last/' + proId+'?userId='+userId,
|
||||||
method: 'get'
|
method: 'get'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,9 +18,9 @@ export function getBusTrainingVideoUser(id) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询用户培训视频详细
|
// 查询用户培训视频详细
|
||||||
export function getBusTrainingVideoUserLast(userId) {
|
export function getBusTrainingVideoUserLast(proId, userId) {
|
||||||
return request({
|
return request({
|
||||||
url: '/manage/busTrainingVideoUser/last/' + userId,
|
url: '/manage/busTrainingVideoUser/last/' + proId+'?userId='+userId,
|
||||||
method: 'get'
|
method: 'get'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -159,7 +159,10 @@
|
||||||
<el-form-item label="工种班组" v-if="dataOptions.category!='1' && dataOptions.category!='2'">
|
<el-form-item label="工种班组" v-if="dataOptions.category!='1' && dataOptions.category!='2'">
|
||||||
{{ initData.subDeptGroupName }}
|
{{ initData.subDeptGroupName }}
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="所属民族" v-if="dataOptions.category!='1'">
|
<el-form-item label="民族" v-if="dataOptions.category!='1'">
|
||||||
|
{{ initData.userInfos.nation }}
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="籍贯" v-if="dataOptions.category!='1'">
|
||||||
{{ initData.userInfos.nativePlace }}
|
{{ initData.userInfos.nativePlace }}
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="详细地址" v-if="dataOptions.category!='1'">
|
<el-form-item label="详细地址" v-if="dataOptions.category!='1'">
|
||||||
|
@ -374,7 +377,7 @@
|
||||||
subDeptInfos:{}
|
subDeptInfos:{}
|
||||||
},
|
},
|
||||||
initData: {
|
initData: {
|
||||||
user: {}
|
userInfos: {}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -433,7 +436,7 @@
|
||||||
} else {
|
} else {
|
||||||
jdtitle.value = "已完成";
|
jdtitle.value = "已完成";
|
||||||
}
|
}
|
||||||
activeName.value = "base";
|
activeName.value = "users";
|
||||||
initFormValues();
|
initFormValues();
|
||||||
getFlowRecordList(options.procInsId, options.deployId);
|
getFlowRecordList(options.procInsId, options.deployId);
|
||||||
flowXmlAndNode({ procInsId: options.procInsId, deployId: options.deployId }).then(
|
flowXmlAndNode({ procInsId: options.procInsId, deployId: options.deployId }).then(
|
||||||
|
@ -498,14 +501,14 @@
|
||||||
|
|
||||||
/** 用户视频培训 */
|
/** 用户视频培训 */
|
||||||
function findEduVideos(){
|
function findEduVideos(){
|
||||||
getBusTrainingVideoUserLast(dataOptions.value.startUserId).then(res =>{
|
getBusTrainingVideoUserLast(dataOptions.value.startProId, dataOptions.value.startUserId).then(res =>{
|
||||||
userEduVideoList.value = res.data||[]
|
userEduVideoList.value = res.data||[]
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 用户考试情况 */
|
/** 用户考试情况 */
|
||||||
function findEduExams(){
|
function findEduExams(){
|
||||||
getBusExamUserLast(dataOptions.value.startUserId).then(res =>{
|
getBusExamUserLast(dataOptions.value.startProId, dataOptions.value.startUserId).then(res =>{
|
||||||
if(res.code==200 && res.data){
|
if(res.code==200 && res.data){
|
||||||
userEduExamInfos.value = res.data;
|
userEduExamInfos.value = res.data;
|
||||||
let list = res.data.busExamUserResultList;
|
let list = res.data.busExamUserResultList;
|
||||||
|
|
|
@ -159,7 +159,10 @@
|
||||||
<el-form-item label="工种班组" v-if="dataOptions.category!='1' && dataOptions.category!='2'">
|
<el-form-item label="工种班组" v-if="dataOptions.category!='1' && dataOptions.category!='2'">
|
||||||
{{ initData.subDeptGroupName }}
|
{{ initData.subDeptGroupName }}
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="所属民族" v-if="dataOptions.category!='1'">
|
<el-form-item label="民族" v-if="dataOptions.category!='1'">
|
||||||
|
{{ initData.userInfos.nation }}
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="籍贯" v-if="dataOptions.category!='1'">
|
||||||
{{ initData.userInfos.nativePlace }}
|
{{ initData.userInfos.nativePlace }}
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="详细地址" v-if="dataOptions.category!='1'">
|
<el-form-item label="详细地址" v-if="dataOptions.category!='1'">
|
||||||
|
@ -427,7 +430,7 @@
|
||||||
subDeptInfos:{}
|
subDeptInfos:{}
|
||||||
},
|
},
|
||||||
initData: {
|
initData: {
|
||||||
user: {}
|
userInfos: {}
|
||||||
},
|
},
|
||||||
form: {
|
form: {
|
||||||
|
|
||||||
|
@ -548,7 +551,7 @@
|
||||||
} else {
|
} else {
|
||||||
jdtitle.value = "已完成";
|
jdtitle.value = "已完成";
|
||||||
}
|
}
|
||||||
activeName.value = "base";
|
activeName.value = "users";
|
||||||
initFormDate();
|
initFormDate();
|
||||||
initFormValues();
|
initFormValues();
|
||||||
getFlowRecordList(options.procInsId, options.deployId);
|
getFlowRecordList(options.procInsId, options.deployId);
|
||||||
|
@ -641,14 +644,14 @@
|
||||||
|
|
||||||
/** 用户视频培训 */
|
/** 用户视频培训 */
|
||||||
function findEduVideos(){
|
function findEduVideos(){
|
||||||
getBusTrainingVideoUserLast(dataOptions.value.startUserId).then(res =>{
|
getBusTrainingVideoUserLast(dataOptions.value.startProId, dataOptions.value.startUserId).then(res =>{
|
||||||
userEduVideoList.value = res.data||[]
|
userEduVideoList.value = res.data||[]
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 用户考试情况 */
|
/** 用户考试情况 */
|
||||||
function findEduExams(){
|
function findEduExams(){
|
||||||
getBusExamUserLast(dataOptions.value.startUserId).then(res =>{
|
getBusExamUserLast(dataOptions.value.startProId, dataOptions.value.startUserId).then(res =>{
|
||||||
if(res.code==200 && res.data){
|
if(res.code==200 && res.data){
|
||||||
userEduExamInfos.value = res.data;
|
userEduExamInfos.value = res.data;
|
||||||
let list = res.data.busExamUserResultList;
|
let list = res.data.busExamUserResultList;
|
||||||
|
|
Loading…
Reference in New Issue