dev_xd
姜玉琦 2025-02-15 14:20:43 +08:00
parent 1c6c543523
commit a5f0802170
14 changed files with 246 additions and 29 deletions

View File

@ -2,6 +2,8 @@ package com.yanzhu.auth.controller;
import com.yanzhu.auth.form.LoginBody; import com.yanzhu.auth.form.LoginBody;
import com.yanzhu.auth.form.RegisterBody; import com.yanzhu.auth.form.RegisterBody;
import com.yanzhu.common.core.exception.ServiceException;
import com.yanzhu.common.redis.service.RedisService;
import com.yanzhu.system.api.domain.vo.WxMaLoginBody; import com.yanzhu.system.api.domain.vo.WxMaLoginBody;
import com.yanzhu.auth.form.WxMaOpenIdBody; import com.yanzhu.auth.form.WxMaOpenIdBody;
import com.yanzhu.auth.service.SysLoginService; import com.yanzhu.auth.service.SysLoginService;
@ -24,6 +26,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.concurrent.TimeUnit;
/** /**
* token * token
@ -33,6 +36,9 @@ import java.util.Objects;
@RestController @RestController
public class TokenController public class TokenController
{ {
@Autowired
private RedisService redisService;
@Autowired @Autowired
private TokenService tokenService; private TokenService tokenService;
@ -93,8 +99,12 @@ public class TokenController
@PostMapping("wxLogin") @PostMapping("wxLogin")
public R<?> wxLogin(@RequestBody LoginBody form) public R<?> wxLogin(@RequestBody LoginBody form)
{ {
String openId = Convert.toStr(redisService.getCacheObject("SysUserPhoneNumber::"+form.getUsername()),null);
if(Objects.isNull(openId)){
throw new ServiceException("登录信息异常!!!");
}
// 用户登录 // 用户登录
LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword()); LoginUser userInfo = sysLoginService.wxLogin(form.getUsername());
// 获取登录token // 获取登录token
return R.ok(tokenService.createMobileToken(userInfo)); return R.ok(tokenService.createMobileToken(userInfo));
} }

View File

@ -146,6 +146,7 @@ public class SysLoginService
public String getMaPhoneNumber(WxMaLoginBody loginBody) public String getMaPhoneNumber(WxMaLoginBody loginBody)
{ {
Map<String,Object> phoneResult = remoteUserService.getMaPhoneNumber(loginBody,SecurityConstants.INNER).getData(); Map<String,Object> phoneResult = remoteUserService.getMaPhoneNumber(loginBody,SecurityConstants.INNER).getData();
redisService.setCacheObject("SysUserPhoneNumber::"+phoneResult.get("phoneNumber"),loginBody.getOpenId(),12L, TimeUnit.HOURS);
return Convert.toStr(phoneResult.get("phoneNumber")); return Convert.toStr(phoneResult.get("phoneNumber"));
} }

View File

@ -4,6 +4,8 @@ import java.util.List;
import com.yanzhu.manage.domain.ProDept; import com.yanzhu.manage.domain.ProDept;
import com.yanzhu.manage.domain.ProProjectInfo; import com.yanzhu.manage.domain.ProProjectInfo;
import com.yanzhu.system.api.domain.SysRole;
import com.yanzhu.system.api.domain.SysRoleDept;
/** /**
* Mapper * Mapper
@ -76,4 +78,17 @@ public interface ProProjectInfoMapper
public int updateDept(ProDept proDept); public int updateDept(ProDept proDept);
List<ProProjectInfo> selectMyProjectList(ProProjectInfo proProjectInfo); List<ProProjectInfo> selectMyProjectList(ProProjectInfo proProjectInfo);
/**
*
* @param sysRole
* @return
*/
public int insertProRole(SysRole sysRole);
/**
*
* @param sysRoleDept
*/
public void insertProRoleDept(SysRoleDept sysRoleDept);
} }

View File

@ -349,6 +349,44 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where dept_id = #{deptId} where dept_id = #{deptId}
</update> </update>
<insert id="insertProRole" parameterType="SysRole" useGeneratedKeys="true" keyProperty="roleId">
insert into sys_role(
<if test="roleId != null and roleId != 0">role_id,</if>
<if test="roleName != null and roleName != ''">role_name,</if>
<if test="roleKey != null and roleKey != ''">role_key,</if>
<if test="roleSort != null">role_sort,</if>
<if test="dataScope != null and dataScope != ''">data_scope,</if>
<if test="menuCheckStrictly != null">menu_check_strictly,</if>
<if test="deptCheckStrictly != null">dept_check_strictly,</if>
<if test="status != null and status != ''">status,</if>
<if test="remark != null and remark != ''">remark,</if>
<if test="createBy != null and createBy != ''">create_by,</if>
create_time
)values(
<if test="roleId != null and roleId != 0">#{roleId},</if>
<if test="roleName != null and roleName != ''">#{roleName},</if>
<if test="roleKey != null and roleKey != ''">#{roleKey},</if>
<if test="roleSort != null">#{roleSort},</if>
<if test="dataScope != null and dataScope != ''">#{dataScope},</if>
<if test="menuCheckStrictly != null">#{menuCheckStrictly},</if>
<if test="deptCheckStrictly != null">#{deptCheckStrictly},</if>
<if test="status != null and status != ''">#{status},</if>
<if test="remark != null and remark != ''">#{remark},</if>
<if test="createBy != null and createBy != ''">#{createBy},</if>
sysdate()
)
</insert>
<insert id="insertProRoleDept" parameterType="SysRoleDept">
insert into sys_role_dept(
<if test="roleId != null">role_id,</if>
<if test="deptId != null">dept_id</if>
)values(
<if test="roleId != null">#{roleId},</if>
<if test="deptId != null">#{deptId}</if>
)
</insert>
<select id="selectMyProjectList" parameterType="ProProjectInfo" resultMap="ProProjectInfoResult"> <select id="selectMyProjectList" parameterType="ProProjectInfo" resultMap="ProProjectInfoResult">
select pi.id, pi.com_id, pi.dis_dept_id, pi.project_name,sd.dept_name com_name, select pi.id, pi.com_id, pi.dis_dept_id, pi.project_name,sd.dept_name com_name,
pi.project_code, pi.simple_name, pi.project_type, sdd1.dict_label as project_type_name, pi.project_level, pi.project_regional, pi.project_package, pi.project_address, pi.project_nature, pi.project_code, pi.simple_name, pi.project_type, sdd1.dict_label as project_type_name, pi.project_level, pi.project_regional, pi.project_package, pi.project_address, pi.project_nature,

View File

@ -27,6 +27,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="projectId != null "> and project_id = #{projectId}</if> <if test="projectId != null "> and project_id = #{projectId}</if>
<if test="menuName != null and menuName != ''"> and menu_name like concat('%', #{menuName}, '%')</if> <if test="menuName != null and menuName != ''"> and menu_name like concat('%', #{menuName}, '%')</if>
<if test="menuType != null and menuType != ''"> and menu_type = #{menuType}</if> <if test="menuType != null and menuType != ''"> and menu_type = #{menuType}</if>
<if test='activeTags == "sys"'> and project_id is null </if>
</where> </where>
</select> </select>

View File

@ -5,23 +5,22 @@ import com.yanzhu.common.core.constant.CacheConstants;
import com.yanzhu.common.core.constant.SecurityConstants; import com.yanzhu.common.core.constant.SecurityConstants;
import com.yanzhu.common.core.context.SecurityContextHolder; import com.yanzhu.common.core.context.SecurityContextHolder;
import com.yanzhu.common.core.domain.R; import com.yanzhu.common.core.domain.R;
import com.yanzhu.common.core.enums.ShiFouEnums;
import com.yanzhu.common.core.enums.UserTypeEnums;
import com.yanzhu.common.core.exception.ServiceException; import com.yanzhu.common.core.exception.ServiceException;
import com.yanzhu.common.core.utils.DateUtils; import com.yanzhu.common.core.utils.DateUtils;
import com.yanzhu.common.core.utils.StringUtils; import com.yanzhu.common.core.utils.StringUtils;
import com.yanzhu.common.redis.service.RedisService; import com.yanzhu.common.redis.service.RedisService;
import com.yanzhu.common.security.utils.SecurityUtils; import com.yanzhu.common.security.utils.SecurityUtils;
import com.yanzhu.manage.config.ProfileConfig; import com.yanzhu.manage.config.ProfileConfig;
import com.yanzhu.manage.domain.ProDept; import com.yanzhu.manage.domain.*;
import com.yanzhu.manage.domain.ProProjectInfo; import com.yanzhu.manage.mapper.*;
import com.yanzhu.manage.domain.ProProjectInfoDepts;
import com.yanzhu.manage.domain.ProProjectInfoSetting;
import com.yanzhu.manage.mapper.ProProjectInfoDeptsMapper;
import com.yanzhu.manage.mapper.ProProjectInfoMapper;
import com.yanzhu.manage.mapper.ProProjectInfoSettingMapper;
import com.yanzhu.manage.service.IProProjectInfoService; import com.yanzhu.manage.service.IProProjectInfoService;
import com.yanzhu.manage.utils.pdf.FileUtil; import com.yanzhu.manage.utils.pdf.FileUtil;
import com.yanzhu.system.api.RemoteDeptService; import com.yanzhu.system.api.RemoteDeptService;
import com.yanzhu.system.api.domain.SysDept; import com.yanzhu.system.api.domain.SysDept;
import com.yanzhu.system.api.domain.SysRole;
import com.yanzhu.system.api.domain.SysRoleDept;
import com.yanzhu.system.api.domain.SysUser; import com.yanzhu.system.api.domain.SysUser;
import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat; import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
@ -33,6 +32,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct; import javax.annotation.PostConstruct;
import java.io.File; import java.io.File;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -65,6 +65,12 @@ public class ProProjectInfoServiceImpl implements IProProjectInfoService
@Autowired @Autowired
private RemoteDeptService remoteDeptService; private RemoteDeptService remoteDeptService;
@Autowired
private WxMenuConfigMapper wxMenuConfigMapper;
@Autowired
private WxMenuConfigRoleMapper wxMenuConfigRoleMapper;
private static final Logger log = LoggerFactory.getLogger(ProProjectInfoServiceImpl.class); private static final Logger log = LoggerFactory.getLogger(ProProjectInfoServiceImpl.class);
/** /**
@ -168,6 +174,28 @@ public class ProProjectInfoServiceImpl implements IProProjectInfoService
}catch (Exception e){ }catch (Exception e){
log.error(e.getMessage()); log.error(e.getMessage());
} }
//初始化小程序菜单信息
WxMenuConfig wxMenuConfigQuery = new WxMenuConfig();
wxMenuConfigQuery.setActiveTags("sys");
List<WxMenuConfig> wxMenuConfigList = wxMenuConfigMapper.selectWxMenuConfigList(wxMenuConfigQuery);
//初始化项目角色信息...
this.insertProRole(UserTypeEnums.FBWTDL.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.FBWTDL.getInfo(),proProjectInfo.getId(),wxMenuConfigList);
this.insertProRole(UserTypeEnums.FBXMJL.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.FBXMJL.getInfo(),proProjectInfo.getId(),wxMenuConfigList);
this.insertProRole(UserTypeEnums.FBBZZZ.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.FBBZZZ.getInfo(),proProjectInfo.getId(),wxMenuConfigList);
this.insertProRole(UserTypeEnums.FBLWRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.FBLWRY.getInfo(),proProjectInfo.getId(),wxMenuConfigList);
this.insertProRole(UserTypeEnums.FBCLRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.FBCLRY.getInfo(),proProjectInfo.getId(),wxMenuConfigList);
this.insertProRole(UserTypeEnums.FBAQRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.FBAQRY.getInfo(),proProjectInfo.getId(),wxMenuConfigList);
this.insertProRole(UserTypeEnums.JSDWRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.JSDWRY.getInfo(),proProjectInfo.getId(),wxMenuConfigList);
this.insertProRole(UserTypeEnums.JLDWRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.JLDWRY.getInfo(),proProjectInfo.getId(),null);
this.insertProRole(UserTypeEnums.SGDWRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.SGDWRY.getInfo(),proProjectInfo.getId(),null);
this.insertProRole(UserTypeEnums.CLFBRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.CLFBRY.getInfo(),proProjectInfo.getId(),null);
this.insertProRole(UserTypeEnums.HQFBRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.HQFBRY.getInfo(),proProjectInfo.getId(),null);
this.insertProRole(UserTypeEnums.TSSBRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.TSSBRY.getInfo(),proProjectInfo.getId(),null);
this.insertProRole(UserTypeEnums.KTDWRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.KTDWRY.getInfo(),proProjectInfo.getId(),null);
this.insertProRole(UserTypeEnums.SJDWRY.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.SJDWRY.getInfo(),proProjectInfo.getId(),null);
this.insertProRole(UserTypeEnums.OTHERS.getKeys()+"_"+proProjectInfo.getId(),UserTypeEnums.OTHERS.getInfo(),proProjectInfo.getId(),null);
loadingProjectsCache(); loadingProjectsCache();
return res; return res;
}else{ }else{
@ -175,6 +203,35 @@ public class ProProjectInfoServiceImpl implements IProProjectInfoService
} }
} }
/**
*
* @param roleName
* @param roleKey
* @param deptId
*/
private void insertProRole(String roleKey,String roleName,Long deptId,List<WxMenuConfig> wxMenuConfigList){
SysRole sysRole = new SysRole();
sysRole.setRoleName(roleName);
sysRole.setRoleKey(roleKey);
sysRole.setRoleSort(100);
sysRole.setStatus(ShiFouEnums.FOU.getCodeStr());
sysRole.setCreateBy("SYSTEM");
sysRole.setCreateTime(DateUtils.getNowDate());
proProjectInfoMapper.insertProRole(sysRole);
SysRoleDept sysRoleDept = new SysRoleDept();
sysRoleDept.setRoleId(sysRole.getRoleId());
sysRoleDept.setDeptId(deptId);
proProjectInfoMapper.insertProRoleDept(sysRoleDept);
if(StringUtils.isNotEmpty(wxMenuConfigList)){
for(WxMenuConfig wxMenuConfig:wxMenuConfigList){
WxMenuConfigRole wxMenuConfigRole = new WxMenuConfigRole();
wxMenuConfigRole.setSmcid(wxMenuConfig.getId());
wxMenuConfigRole.setRoleId(sysRole.getRoleId());
wxMenuConfigRoleMapper.insertWxMenuConfigRole(wxMenuConfigRole);
}
}
}
/** /**
* *
* *

View File

@ -643,7 +643,6 @@ public class SysUserServiceImpl implements ISysUserService
sysRole.setCreateBy("SYSTEM"); sysRole.setCreateBy("SYSTEM");
sysRole.setCreateTime(DateUtils.getNowDate()); sysRole.setCreateTime(DateUtils.getNowDate());
int r1 = roleMapper.insertRole(sysRole); int r1 = roleMapper.insertRole(sysRole);
System.out.println("insertDeptSysRole.insertRole==>"+r1);
List<SysRoleDept> sysRoleDeptList = new ArrayList<>(); List<SysRoleDept> sysRoleDeptList = new ArrayList<>();
SysRoleDept sysRoleDept = new SysRoleDept(); SysRoleDept sysRoleDept = new SysRoleDept();
sysRoleDept.setRoleId(sysRole.getRoleId()); sysRoleDept.setRoleId(sysRole.getRoleId());

View File

@ -10,10 +10,11 @@ Component({
}, },
title: { title: {
type: String, type: String,
value: '默认标题', value: '',
}, },
description: { description: {
type: String, type: String,
value: '',
}, },
actionText: { actionText: {
type: String, type: String,

View File

@ -1,8 +1,8 @@
<!-- components/my-result/my-result.wxml --> <!-- components/my-result/my-result.wxml -->
<view class="my-result"> <view class="my-result">
<image class="icon" src="{{iconPath}}" mode="aspectFit"></image> <image class="icon" src="{{iconPath}}" wx:if="{{iconPath}}" mode="aspectFit"></image>
<text class="title">{{title}}</text> <text class="title" wx:if="{{title}}">{{title}}</text>
<text class="desc">{{description}}</text> <text class="desc" wx:if="{{description}}">{{description}}</text>
<button wx:if="{{actionText}}" class="action-btn" bindtap="handleAction"> {{actionText}} </button> <button wx:if="{{actionText}}" class="action-btn" bindtap="handleAction"> {{actionText}} </button>
<button wx:if="{{descActionText}}" class="desc-action-btn" bindtap="handleDescAction"> {{descActionText}} </button> <button wx:if="{{descActionText}}" class="desc-action-btn" bindtap="handleDescAction"> {{descActionText}} </button>
</view> </view>

View File

@ -34,8 +34,8 @@
} }
.desc-action-btn { .desc-action-btn {
background-color: #999999; background-color: #eeeeee;
color: white; color: #000000;
padding: 10rpx 20rpx; padding: 10rpx 20rpx;
border-radius: 8rpx; border-radius: 8rpx;
margin-top: 20rpx; margin-top: 20rpx;

View File

@ -77,7 +77,6 @@
</van-collapse-item> </van-collapse-item>
</van-collapse> </van-collapse>
</view> </view>
<view class="echarts_max" wx:if="{{(subDeptUserInfo.subDeptType=='1' || subDeptUserInfo.subDeptType=='4' || subDeptUserInfo.subDeptType=='5') && subDeptUserInfo.userPost!='4' && subDeptUserInfo.userPost!='6' && subDeptUserInfo.userPost!='8'}}"> <view class="echarts_max" wx:if="{{(subDeptUserInfo.subDeptType=='1' || subDeptUserInfo.subDeptType=='4' || subDeptUserInfo.subDeptType=='5') && subDeptUserInfo.userPost!='4' && subDeptUserInfo.userPost!='6' && subDeptUserInfo.userPost!='8'}}">
<view class="echarts_min"> <view class="echarts_min">
<view class="eharts_title module_title_flex"> <view class="eharts_title module_title_flex">

View File

@ -1,17 +1,22 @@
import config from '../../config' import config from '../../config'
import { import {
setToken,
setUserInfo,
getOpenId, getOpenId,
setOpenId, setOpenId,
getSessionKey, getSessionKey,
setSessionKey, setSessionKey,
} from '../../utils/auth' } from '../../utils/auth'
import { import {
wxLogin,
getMaOpenId, getMaOpenId,
getMaPhoneNumber, getMaPhoneNumber,
findUserInfoByCache,
} from '../../api/login' } from '../../api/login'
import { import {
findProjectInfo, findProjectInfo,
registerSubDepts, registerSubDepts,
findMyProjectList,
registerSubDeptsUsers, registerSubDeptsUsers,
findProSubDeptsUser, findProSubDeptsUser,
findProSubDeptsInfo, findProSubDeptsInfo,
@ -378,6 +383,7 @@ if (this.data.userPost == "1") {
if (userRes.data.userInfos) { if (userRes.data.userInfos) {
let userInfosJSON = JSON.parse(userRes.data.userInfos); let userInfosJSON = JSON.parse(userRes.data.userInfos);
userRes.data.nativePlace = userInfosJSON.nativePlace; userRes.data.nativePlace = userInfosJSON.nativePlace;
userRes.data.nation = userInfosJSON.nation;
userRes.data.address = userInfosJSON.address; userRes.data.address = userInfosJSON.address;
userRes.data.emergencyContact = userInfosJSON.emergencyContact; userRes.data.emergencyContact = userInfosJSON.emergencyContact;
userRes.data.contactPhone = userInfosJSON.contactPhone; userRes.data.contactPhone = userInfosJSON.contactPhone;
@ -1268,7 +1274,7 @@ if (this.data.userPost == "1") {
}, },
/** /**
* 个人籍贯民族 * 个人籍贯
* @param {*} e * @param {*} e
*/ */
inputOriginNative(e) { inputOriginNative(e) {
@ -1276,6 +1282,17 @@ if (this.data.userPost == "1") {
"form.nativePlace": e.detail.value "form.nativePlace": e.detail.value
}) })
}, },
/**
* 个人民族
* @param {*} e
*/
inputOriginNation(e){
this.setData({
"form.nation": e.detail.value
})
},
/** /**
* 个人籍贯地址 * 个人籍贯地址
* @param {*} e * @param {*} e
@ -1560,7 +1577,7 @@ if (this.data.userPost == "1") {
} }
wx.showLoading({mask: true,title: '正在处理'}); wx.showLoading({mask: true,title: '正在处理'});
registerSubDepts(_form).then(res => { registerSubDepts(_form).then(res => {
wx.hideLoading({success: (res) => {}}); wx.hideLoading({success: (r) => {}});
if (res.code == 200) { if (res.code == 200) {
this.setData({ this.setData({
"form.id": res.data.id, "form.id": res.data.id,
@ -1626,17 +1643,20 @@ if (this.data.userPost == "1") {
return false; return false;
} }
} }
if (!form.userPhone) { if (!form.userPhone) {
app.toast("请填写联系电话!"); app.toast("请填写联系电话!");
return false; return false;
} }
if (!form.nativePlace) { if (!form.nativePlace) {
app.toast("请填写籍贯民族!"); app.toast("请填写籍贯!");
return false;
}
if (!form.nation) {
app.toast("请填写民族!");
return false; return false;
} }
if (!form.address) { if (!form.address) {
app.toast("请填写籍贯地址!"); app.toast("请填写地址!");
return false; return false;
} }
if (!form.emergencyContact) { if (!form.emergencyContact) {
@ -1646,6 +1666,12 @@ if (this.data.userPost == "1") {
if (!form.contactPhone) { if (!form.contactPhone) {
app.toast("请填写紧急联系人电话!"); app.toast("请填写紧急联系人电话!");
return false; return false;
}else{
const phonePattern = /^1[3|4|5|6|7|8|9][0-9]\d{8}$/;
if(phonePattern.test(form.contactPhone)){
app.toast("紧急联系人电话不正确!");
return false;
}
} }
if (!form.degreeGrade) { if (!form.degreeGrade) {
app.toast("请选择文化程度!"); app.toast("请选择文化程度!");
@ -1742,6 +1768,7 @@ if (this.data.userPost == "1") {
//验证图片上传完毕 //验证图片上传完毕
if (uploads.length == uploadFiles.length) { if (uploads.length == uploadFiles.length) {
let userInfos = {}; let userInfos = {};
userInfos.nation = _form.nation;
userInfos.nativePlace = _form.nativePlace; userInfos.nativePlace = _form.nativePlace;
userInfos.address = _form.address; userInfos.address = _form.address;
userInfos.emergencyContact = _form.emergencyContact; userInfos.emergencyContact = _form.emergencyContact;
@ -1958,6 +1985,62 @@ if (this.data.userPost == "1") {
}) })
}, },
/**
* 立即登录
*/
wxSignLogin(){
wxLogin({'username':this.data.userPhoneNumber}).then(res =>{
setToken(res.data.access_token);
this.getUserInfoByCache();
})
},
/**
* 查询
* 用户详细信息
* @param {*} e
*/
getUserInfoByCache: function () {
findUserInfoByCache().then(res=>{
if(res.code==200){
setUserInfo(res.user);
app.globalData.userData = res.user;
this.getMyProjectList();
}
});
},
/**
* 查询
* 用户项目信息
* 根据项目配置进入不同页面...
*/
getMyProjectList: function () {
findMyProjectList().then(res=>{
if(res.code==200){
app.globalData.projectInfoList = res.rows;
if(res.rows.length>0){
if(res.rows.length==1){
app.globalData.useProjectId = res.rows[0].id;
app.globalData.useProjectName = res.rows[0].projectName;
//单项目直接进入项目页面
wx.redirectTo({
url: '../project_info/index',
})
}else{
//多项目进入项目切换页面
wx.redirectTo({
url: '../project_list/index',
})
}
}else{
app.toast("未查询到当前用户项目,信息审核中或人员已离场");
return false;
}
}
});
},
/** /**
* 生命周期函数--监听页面卸载 * 生命周期函数--监听页面卸载
*/ */

View File

@ -248,13 +248,19 @@
</view> </view>
</view> </view>
<view class="inspect_info_list"> <view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">籍贯民族</view> <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">民族</view>
<view class="inspect_info_content"> <view class="inspect_info_content">
<input placeholder="请填写籍贯民族" placeholder-style="color:#6777aa;" bindinput="inputOriginNative" class="inspect_input_fill_in" disabled maxlength="30" model:value="{{form.nativePlace}}" /> <input placeholder="请填写民族" placeholder-style="color:#6777aa;" bindinput="inputOriginNation" class="inspect_input_fill_in" disabled maxlength="30" model:value="{{form.nation}}" />
</view> </view>
</view> </view>
<view class="inspect_info_list"> <view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">籍贯地址</view> <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">籍贯</view>
<view class="inspect_info_content">
<input placeholder="请填写籍贯" placeholder-style="color:#6777aa;" bindinput="inputOriginNative" class="inspect_input_fill_in" disabled maxlength="30" model:value="{{form.nativePlace}}" />
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">地址</view>
<view class="inspect_info_content"> <view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写籍贯地址" placeholder-style="color:#6777aa;" maxlength="64" disabled bindblur="inputOriginAddress" model:value="{{form.address}}" /> <textarea class="add_textarea" placeholder="请填写籍贯地址" placeholder-style="color:#6777aa;" maxlength="64" disabled bindblur="inputOriginAddress" model:value="{{form.address}}" />
</view> </view>
@ -384,13 +390,19 @@
</view> </view>
</view> </view>
<view class="inspect_info_list"> <view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">籍贯民族</view> <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">民族</view>
<view class="inspect_info_content"> <view class="inspect_info_content">
<input placeholder="请填写籍贯民族" placeholder-style="color:#6777aa;" bindinput="inputOriginNative" class="inspect_input_fill_in" disabled maxlength="30" model:value="{{form.nativePlace}}" /> <input placeholder="请填写民族" placeholder-style="color:#6777aa;" bindinput="inputOriginNation" class="inspect_input_fill_in" disabled maxlength="30" model:value="{{form.nation}}" />
</view> </view>
</view> </view>
<view class="inspect_info_list"> <view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">籍贯地址</view> <view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">籍贯</view>
<view class="inspect_info_content">
<input placeholder="请填写籍贯" placeholder-style="color:#6777aa;" bindinput="inputOriginNative" class="inspect_input_fill_in" disabled maxlength="30" model:value="{{form.nativePlace}}" />
</view>
</view>
<view class="inspect_info_list">
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">地址</view>
<view class="inspect_info_content"> <view class="inspect_info_content">
<textarea class="add_textarea" placeholder="请填写籍贯地址" placeholder-style="color:#6777aa;" maxlength="64" disabled bindblur="inputOriginAddress" model:value="{{form.address}}" /> <textarea class="add_textarea" placeholder="请填写籍贯地址" placeholder-style="color:#6777aa;" maxlength="64" disabled bindblur="inputOriginAddress" model:value="{{form.address}}" />
</view> </view>
@ -883,7 +895,7 @@
<view class="kaoshimianban_8"> <view class="kaoshimianban_8">
<view class="kaoshimianban_9"> <view class="kaoshimianban_9">
<jyq-result wx:if="{{form.approveStatus!='100' && form.approveStatus!='11'}}" iconPath="https://xiangguan.sxyanzhu.com/profile/icon/dd.png" title="信息审核中" description="您的信息已登记完成,相关人员正在审核您的信息,请耐心等待。" actionText="下 载 承 诺 书" bind:action="downloadSignetFiles" /> <jyq-result wx:if="{{form.approveStatus!='100' && form.approveStatus!='11'}}" iconPath="https://xiangguan.sxyanzhu.com/profile/icon/dd.png" title="信息审核中" description="您的信息已登记完成,相关人员正在审核您的信息,请耐心等待。" actionText="下 载 承 诺 书" bind:action="downloadSignetFiles" />
<jyq-result wx:if="{{form.approveStatus=='100'}}" iconPath="https://xiangguan.sxyanzhu.com/profile/icon/cg.png" title="恭喜,审核通过" description="您的信息已登记完成。" actionText="下 载 承 诺 书" bind:action="downloadSignetFiles" /> <jyq-result wx:if="{{form.approveStatus=='100'}}" iconPath="https://xiangguan.sxyanzhu.com/profile/icon/cg.png" title="恭喜,审核通过" description="您的信息已登记完成。" actionText="下 载 承 诺 书" bind:action="downloadSignetFiles" descActionText="立 即 登 录" bind:descAction="wxSignLogin" />
<jyq-result wx:if="{{busExamInfos.passMark>busExamInfos.userMark}}" iconPath="https://xiangguan.sxyanzhu.com/profile/icon/sb.png" title="很遗憾!审核未通过" description="您的信息已登记完成,但未审核通过。"/> <jyq-result wx:if="{{busExamInfos.passMark>busExamInfos.userMark}}" iconPath="https://xiangguan.sxyanzhu.com/profile/icon/sb.png" title="很遗憾!审核未通过" description="您的信息已登记完成,但未审核通过。"/>
</view> </view>
</view> </view>

View File

@ -126,7 +126,7 @@
<el-button link type="primary" icon="Delete" @click="handleEnter(scope.row)" v-else <el-button link type="primary" icon="Delete" @click="handleEnter(scope.row)" v-else
v-hasPermi="['manage:proProjectInfoSubdeptsUsers:remove']">进场</el-button> v-hasPermi="['manage:proProjectInfoSubdeptsUsers:remove']">进场</el-button>
<el-button v-if="isSign(scope.row)" link type="primary" icon="StarFilled" @click="handleFileSign(scope.row)" <el-button v-if="isSign(scope.row)" link type="primary" icon="StarFilled" @click="handleFileSign(scope.row)"
v-hasPermi="['manage:proProjectInfoSubdeptsUsers:edit']">签名</el-button> v-hasPermi="['manage:proProjectInfoSubdeptsUsers:edit']">重新签名</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -779,6 +779,7 @@ function isSign(row){
function handleFileSign(row){ function handleFileSign(row){
fileSign(row.id).then(res =>{ fileSign(row.id).then(res =>{
if(res.code==200){ if(res.code==200){
proxy.$modal.msgSuccess("重新签名成功");
getList(); getList();
} }
}); });