提交代码

dev_xd
姜玉琦 2025-01-06 23:44:40 +08:00
parent 111be9687a
commit 0d4b0152d3
9 changed files with 81 additions and 86 deletions

View File

@ -52,10 +52,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectBusExamInfoVo"/> <include refid="selectBusExamInfoVo"/>
<where> <where>
bei.is_del != 2 bei.is_del != 2
<if test="comId != null "> and bei.com_id = #{comId}</if> <if test="comId != null "> and (bei.com_id = #{comId} or bei.com_id is null)</if>
<if test="projectId != null "> and bei.project_id = #{projectId}</if> <if test="projectId != null "> and (bei.project_id = #{projectId} or bei.project_id is null)</if>
<if test="activeComId != null "> and bei.com_id = #{activeComId}</if> <if test="activeComId != null "> and (bei.com_id = #{activeComId} or bei.com_id is null)</if>
<if test="activeProjectId != null "> and bei.project_id = #{activeProjectId}</if> <if test="activeProjectId != null "> and (bei.project_id = #{activeProjectId} or bei.project_id is null)</if>
<if test="projectName != null and projectName != ''"> and pi.project_name like concat('%', #{projectName}, '%')</if> <if test="projectName != null and projectName != ''"> and pi.project_name like concat('%', #{projectName}, '%')</if>
<if test="examTitle != null and examTitle != ''"> and bei.exam_title = #{examTitle}</if> <if test="examTitle != null and examTitle != ''"> and bei.exam_title = #{examTitle}</if>
<if test="examType != null and examType != ''"> and bei.exam_type = #{examType}</if> <if test="examType != null and examType != ''"> and bei.exam_type = #{examType}</if>

View File

@ -152,52 +152,54 @@ public class ProProjectInfoSubdeptsServiceImpl implements IProProjectInfoSubdept
if(res>0 && (Objects.equals(proProjectInfoSubdepts.getSubDeptType(), SubDeptsEnums.ZYFB.getCode()) || Objects.equals(proProjectInfoSubdepts.getSubDeptType(),SubDeptsEnums.LWFB.getCode()))){ if(res>0 && (Objects.equals(proProjectInfoSubdepts.getSubDeptType(), SubDeptsEnums.ZYFB.getCode()) || Objects.equals(proProjectInfoSubdepts.getSubDeptType(),SubDeptsEnums.LWFB.getCode()))){
// 保存单位人员信息 // 保存单位人员信息
ProProjectInfoSubdeptsUsers subdeptsUser = new ProProjectInfoSubdeptsUsers(); if(StringUtils.isNotEmpty(proProjectInfoSubdepts.getSubDeptLeaderName()) && StringUtils.isNotEmpty(proProjectInfoSubdepts.getSubDeptLeaderPhone()) && StringUtils.isNotEmpty(proProjectInfoSubdepts.getSubDeptLeaderPhone())){
subdeptsUser.setComId(info.getComId()); ProProjectInfoSubdeptsUsers subdeptsUser = new ProProjectInfoSubdeptsUsers();
subdeptsUser.setProjectId(info.getId()); subdeptsUser.setComId(info.getComId());
subdeptsUser.setSubDeptId(proProjectInfoSubdepts.getId()); subdeptsUser.setProjectId(info.getId());
subdeptsUser.setSubDeptName(proProjectInfoSubdepts.getSubDeptName()); subdeptsUser.setSubDeptId(proProjectInfoSubdepts.getId());
subdeptsUser.setSubDeptType(proProjectInfoSubdepts.getSubDeptType()); subdeptsUser.setSubDeptName(proProjectInfoSubdepts.getSubDeptName());
subdeptsUser.setSubDeptGroup(proProjectInfoSubdeptsGroup.getId()); subdeptsUser.setSubDeptType(proProjectInfoSubdepts.getSubDeptType());
subdeptsUser.setSubDeptGroupName(proProjectInfoSubdeptsGroup.getGroupName()); subdeptsUser.setSubDeptGroup(proProjectInfoSubdeptsGroup.getId());
subdeptsUser.setSubDeptPowerPath(proProjectInfoSubdepts.getSubDeptLeaderPowerPath()); subdeptsUser.setSubDeptGroupName(proProjectInfoSubdeptsGroup.getGroupName());
subdeptsUser.setUserId(proProjectInfoSubdepts.getSubDeptLeaderId()); subdeptsUser.setSubDeptPowerPath(proProjectInfoSubdepts.getSubDeptLeaderPowerPath());
subdeptsUser.setUserPost(UserPostEnums.WTDL.getCode()); subdeptsUser.setUserId(proProjectInfoSubdepts.getSubDeptLeaderId());
subdeptsUser.setUserName(proProjectInfoSubdepts.getSubDeptLeaderPhone()); subdeptsUser.setUserPost(UserPostEnums.WTDL.getCode());
subdeptsUser.setCardType(CardTypeEnums.SFZ.getCode()); subdeptsUser.setUserName(proProjectInfoSubdepts.getSubDeptLeaderName());
subdeptsUser.setCardCode(proProjectInfoSubdepts.getSubDeptLeaderCode()); subdeptsUser.setCardType(CardTypeEnums.SFZ.getCode());
subdeptsUser.setUserPhone(proProjectInfoSubdepts.getSubDeptLeaderPhone()); subdeptsUser.setCardCode(proProjectInfoSubdepts.getSubDeptLeaderCode());
subdeptsUser.setUserPicture(proProjectInfoSubdepts.getLeaderUserPicture()); subdeptsUser.setUserPhone(proProjectInfoSubdepts.getSubDeptLeaderPhone());
subdeptsUser.setUserSex(StringUtils.judgeGender(proProjectInfoSubdepts.getSubDeptLeaderCode())); subdeptsUser.setUserPicture(proProjectInfoSubdepts.getLeaderUserPicture());
subdeptsUser.setDegreeGrade(proProjectInfoSubdepts.getLeaderDegreeGrade()); subdeptsUser.setUserSex(StringUtils.judgeGender(proProjectInfoSubdepts.getSubDeptLeaderCode()));
subdeptsUser.setUserInfos(proProjectInfoSubdepts.getLeaderUserInfos()); subdeptsUser.setDegreeGrade(proProjectInfoSubdepts.getLeaderDegreeGrade());
subdeptsUser.setCraftType(CraftTypeEnums.GLRY.getCode()); subdeptsUser.setUserInfos(proProjectInfoSubdepts.getLeaderUserInfos());
subdeptsUser.setCraftPost(CraftPostEnums.WTDL.getCode()); subdeptsUser.setCraftType(CraftTypeEnums.GLRY.getCode());
subdeptsUser.setEduStatus(ShiFouEnums.FOU.getCodeStr()); subdeptsUser.setCraftPost(CraftPostEnums.WTDL.getCode());
subdeptsUser.setSubStep(2L); subdeptsUser.setEduStatus(ShiFouEnums.FOU.getCodeStr());
subdeptsUser.setCreateBy(SecurityUtils.getUsername()); subdeptsUser.setSubStep(2L);
subdeptsUser.setApproveStatus(ApproveStatus.passed.getCode()); subdeptsUser.setCreateBy(SecurityUtils.getUsername());
subdeptsUser.setCreateTime(DateUtils.getNowDate()); subdeptsUser.setApproveStatus(ApproveStatus.passed.getCode());
int r = proProjectInfoSubdeptsUsersMapper.insertProProjectInfoSubdeptsUsers(subdeptsUser); subdeptsUser.setCreateTime(DateUtils.getNowDate());
// 系统添加的人员默认增加入场信息 int r = proProjectInfoSubdeptsUsersMapper.insertProProjectInfoSubdeptsUsers(subdeptsUser);
uniService.syncUniUser(subdeptsUser); // 系统添加的人员默认增加入场信息
try { uniService.syncUniUser(subdeptsUser);
if(r>0){ try {
String accessToken = wxMaService.getAccessToken(); if(r>0){
String filePath = DateUtils.datePath()+"/"+System.currentTimeMillis()+".png"; String accessToken = wxMaService.getAccessToken();
String savePath = ProfileConfig.profilePath+"/"+filePath; String filePath = DateUtils.datePath()+"/"+System.currentTimeMillis()+".png";
String profilePath = ProfileConfig.profile+"/"+filePath; String savePath = ProfileConfig.profilePath+"/"+filePath;
log.info("accessToken...{}",accessToken); String profilePath = ProfileConfig.profile+"/"+filePath;
// 生成二维码 log.info("accessToken...{}",accessToken);
File file = wxMaService.getQrcodeService().createQrcode("pages/project_qr/index?SIGID=2&QRPID="+subdeptsUser.getProjectId()+"&PARID="+subdeptsUser.getId(),280); // 生成二维码
FileUtil.copyFile(file,new File(savePath)); File file = wxMaService.getQrcodeService().createQrcode("pages/project_qr/index?SIGID=2&QRPID="+subdeptsUser.getProjectId()+"&PARID="+subdeptsUser.getId(),280);
subdeptsUser.setQrCode(profilePath); FileUtil.copyFile(file,new File(savePath));
proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(subdeptsUser); subdeptsUser.setQrCode(profilePath);
proProjectInfoSubdepts.setQrCode(profilePath); proProjectInfoSubdeptsUsersMapper.updateProProjectInfoSubdeptsUsers(subdeptsUser);
proProjectInfoSubdeptsMapper.updateProProjectInfoSubdepts(proProjectInfoSubdepts); proProjectInfoSubdepts.setQrCode(profilePath);
proProjectInfoSubdeptsMapper.updateProProjectInfoSubdepts(proProjectInfoSubdepts);
}
}catch (Exception e){
log.error(e.getMessage());
} }
}catch (Exception e){
log.error(e.getMessage());
} }
} }
return res; return res;

View File

@ -473,7 +473,12 @@ public class UniServiceImpl implements IUniService{
//public Long syncUniUser(Long userId, Long projectId) { //public Long syncUniUser(Long userId, Long projectId) {
public Long syncUniUser(ProProjectInfoSubdeptsUsers puser) { public Long syncUniUser(ProProjectInfoSubdeptsUsers puser) {
//SysUser user=remoteUserService.getSysUserInfo(userId, SecurityConstants.INNER).getData(); //SysUser user=remoteUserService.getSysUserInfo(userId, SecurityConstants.INNER).getData();
JSONObject jo=JSON.parseObject(puser.getUserInfos()); JSONObject jo;
if(StringUtils.isNotEmpty(puser.getUserInfos())){
jo = JSON.parseObject(puser.getUserInfos());
}else{
jo = new JSONObject();
}
Long projectId=puser.getProjectId(); Long projectId=puser.getProjectId();
String admitGuid=puser.getAdmitGuid(); //jo.getString("admitGuid"); String admitGuid=puser.getAdmitGuid(); //jo.getString("admitGuid");
String faceGuid=puser.getFaceGuid(); //jo.getString("faceGuid"); String faceGuid=puser.getFaceGuid(); //jo.getString("faceGuid");

View File

@ -144,16 +144,11 @@ public class SysUserController extends BaseController {
if(Objects.nonNull(sysUser.getRoles()) && sysUser.getRoles().size()>0){ if(Objects.nonNull(sysUser.getRoles()) && sysUser.getRoles().size()>0){
// 权限集合 // 权限集合
if(StringUtils.isNotEmpty(sysUser.getUserType())){ if(StringUtils.isNotEmpty(sysUser.getUserType())){
if(Objects.equals(UserTypeEnums.ZSRY.getCode(),sysUser.getUserType()) || Objects.equals(UserTypeEnums.LSRY.getCode(),sysUser.getUserType())){ // 角色集合
// 角色集合 Set<String> roles = permissionService.getRolePermission(sysUser);
Set<String> roles = permissionService.getRolePermission(sysUser); sysUserVo.setRoles(roles);
sysUserVo.setRoles(roles); Set<String> permissions = permissionService.getMenuPermission(sysUser);
Set<String> permissions = permissionService.getMenuPermission(sysUser); sysUserVo.setPermissions(permissions);
sysUserVo.setPermissions(permissions);
}else{
Set<String> roles = sysUser.getRoles().stream().map(SysRole::getRoleKey).collect(Collectors.toSet());
sysUserVo.setRoles(roles);
}
} }
}else{ }else{
Set<String> roles = new HashSet<String>(); Set<String> roles = new HashSet<String>();
@ -238,20 +233,12 @@ public class SysUserController extends BaseController {
AjaxResult ajax = AjaxResult.success(); AjaxResult ajax = AjaxResult.success();
ajax.put("user", user); ajax.put("user", user);
if(Objects.nonNull(user.getRoles()) && user.getRoles().size()>0){ if(Objects.nonNull(user.getRoles()) && user.getRoles().size()>0){
// 角色集合
Set<String> roles = permissionService.getRolePermission(user);
ajax.put("roles", roles);
// 权限集合 // 权限集合
if(StringUtils.isNotEmpty(user.getUserType())){ Set<String> permissions = permissionService.getMenuPermission(user);
if(Objects.equals(UserTypeEnums.ZSRY.getCode(),user.getUserType()) || Objects.equals(UserTypeEnums.LSRY.getCode(),user.getUserType())){ ajax.put("permissions", permissions);
// 角色集合
Set<String> roles = permissionService.getRolePermission(user);
ajax.put("roles", roles);
// 权限集合
Set<String> permissions = permissionService.getMenuPermission(user);
ajax.put("permissions", permissions);
}else{
Set<String> roles = user.getRoles().stream().map(SysRole::getRoleKey).collect(Collectors.toSet());
ajax.put("roles", roles);
}
}
}else{ }else{
Set<String> roles = new HashSet<String>(); Set<String> roles = new HashSet<String>();
roles.add("visitors"); roles.add("visitors");

View File

@ -363,8 +363,9 @@ function handleAdd() {
return false; return false;
} }
reset(); reset();
form.value.projectId = userStore.currentPrjId; form.value.comId = userStore.currentComId;
form.value.projectName = userStore.currentProName; // form.value.projectId = userStore.currentPrjId;
// form.value.projectName = userStore.currentProName;
open.value = true; open.value = true;
title.value = "添加基础试卷"; title.value = "添加基础试卷";
} }

View File

@ -79,14 +79,14 @@
</el-col> </el-col>
<el-col v-if="FirRoles=='admin' || FirRoles=='gsAdmin'" :span="1.5"> <el-col v-if="FirRoles=='admin' || FirRoles=='gsAdmin'" :span="1.5">
<el-button <el-button
type="info" type="primary"
plain plain
icon="Plus" icon="Plus"
@click="handleAddCom" @click="handleAddCom"
v-hasPermi="['manage:busExamQuestion:add']" v-hasPermi="['manage:busExamQuestion:add']"
>新增公司试题</el-button> >新增公司试题</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5" v-if="false">
<el-button <el-button
type="primary" type="primary"
plain plain

View File

@ -167,6 +167,7 @@
<el-form-item label="班组名称"> <el-form-item label="班组名称">
{{leaderForm.groupName}} {{leaderForm.groupName}}
</el-form-item> </el-form-item>
<el-alert title="只能选择当前工种下的人员" type="warning" show-icon style="margin-bottom:20px;"/>
<el-form-item label="班组组长" prop="groupLeaderPhone"> <el-form-item label="班组组长" prop="groupLeaderPhone">
<el-select v-model="leaderForm.groupLeaderPhone" placeholder="请选择班组组长" style="width:100%"> <el-select v-model="leaderForm.groupLeaderPhone" placeholder="请选择班组组长" style="width:100%">
<el-option v-for="option in groupLeaderOptions" :key="option.userPhone" :label="option.userName" <el-option v-for="option in groupLeaderOptions" :key="option.userPhone" :label="option.userName"

View File

@ -111,7 +111,7 @@
<el-select v-model="form.deptType" placeholder="请选择部门类型" style="width: 100%"> <el-select v-model="form.deptType" placeholder="请选择部门类型" style="width: 100%">
<el-option <el-option
v-for="dict in sys_dept_type" v-for="dict in sys_dept_type"
v-if="dict.value!='4'" v-show="dict.value!='4'"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"
@ -122,7 +122,7 @@
<el-select v-model="form.deptType" placeholder="请选择部门类型" style="width: 100%"> <el-select v-model="form.deptType" placeholder="请选择部门类型" style="width: 100%">
<el-option <el-option
v-for="dict in sys_dept_type" v-for="dict in sys_dept_type"
v-if="dict.value!='4' && dict.value!='2'" v-show="dict.value!='4' && dict.value!='2'"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value" :value="dict.value"

View File

@ -178,7 +178,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="用户角色"> <el-form-item label="用户角色" prop="roleIds">
<el-select v-model="form.roleIds" multiple placeholder="请选择用户角色" style="width:100%"> <el-select v-model="form.roleIds" multiple placeholder="请选择用户角色" style="width:100%">
<el-option v-for="item in roleOptions" :key="item.roleId" :label="item.roleName" <el-option v-for="item in roleOptions" :key="item.roleId" :label="item.roleName"
:value="item.roleId" :disabled="item.status == 1"></el-option> :value="item.roleId" :disabled="item.status == 1"></el-option>
@ -187,7 +187,7 @@
</el-col> </el-col>
<el-col :span="24" v-if="form.userType=='99'"> <el-col :span="24" v-if="form.userType=='99'">
<el-form-item label="证件号码" prop="cardCode"> <el-form-item label="证件号码" prop="cardCode">
<el-input v-model="form.cardCode" placeholder="请输入手机号码" maxlength="18" /> <el-input v-model="form.cardCode" placeholder="请输入证件号码" maxlength="18" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24" v-if="form.userType=='99'"> <el-col :span="24" v-if="form.userType=='99'">
@ -301,12 +301,13 @@ const data = reactive({
rules: { rules: {
deptId: [{ required: true, message: "所属单位不能为空", trigger: "change" }], deptId: [{ required: true, message: "所属单位不能为空", trigger: "change" }],
userName: [{ required: true, message: "用户名称不能为空", trigger: "blur" }, { min: 2, max: 20, message: "用户名称长度必须介于 2 和 20 之间", trigger: "blur" }], userName: [{ required: true, message: "用户名称不能为空", trigger: "blur" }, { min: 2, max: 20, message: "用户名称长度必须介于 2 和 20 之间", trigger: "blur" }],
nickName: [{ required: true, message: "用户不能为空", trigger: "blur" }], nickName: [{ required: true, message: "用户名不能为空", trigger: "blur" }],
userType: [{ required: true, message: "用户类型不能为空", trigger: "change" }], userType: [{ required: true, message: "用户类型不能为空", trigger: "change" }],
cardCode: [{ required: true, message: "证件号码不能为空", trigger: "blur" }],
avatar: [{ required: true, message: "入场近照不能为空", trigger: "change" }],
roleIds: [{ required: true, message: "用户角色不能为空", trigger: "change" }],
password: [{ required: true, message: "用户密码不能为空", trigger: "blur" }, { min: 5, max: 20, message: "用户密码长度必须介于 5 和 20 之间", trigger: "blur" }], password: [{ required: true, message: "用户密码不能为空", trigger: "blur" }, { min: 5, max: 20, message: "用户密码长度必须介于 5 和 20 之间", trigger: "blur" }],
phonenumber: [{ required: true, message: "手机号码不能为空", trigger: "blur" }, { pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: "请输入正确的手机号码", trigger: "blur" }] phonenumber: [{ required: true, message: "手机号码不能为空", trigger: "blur" }, { pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: "请输入正确的手机号码", trigger: "blur" }]
cardCode: [{ required: true, message: "用户名称不能为空", trigger: "blur" }],
avatar: [{ required: true, message: "入场近照不能为空", trigger: "change" }],
} }
}); });
@ -539,8 +540,6 @@ const getCompId=()=>{
/** 提交按钮 */ /** 提交按钮 */
function submitForm() { function submitForm() {
proxy.$refs["userRef"].validate(valid => { proxy.$refs["userRef"].validate(valid => {
form.comId=getCompId();
if (valid) { if (valid) {
form.value.userName = form.value.nickName; form.value.userName = form.value.nickName;
if (form.value.userId != undefined) { if (form.value.userId != undefined) {