dev_xd
parent
25e1882b4c
commit
849401501a
|
@ -55,6 +55,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="craftType != null and craftType != ''"> and psg.craft_type = #{craftType}</if>
|
||||
<if test="craftPost != null and craftPost != ''"> and psg.craft_post = #{craftPost}</if>
|
||||
<if test="useStatus != null and useStatus != ''"> and psg.use_status = #{useStatus}</if>
|
||||
<if test='activeTags == "finished"'> and ps.approve_status <![CDATA[ >= ]]> 100</if>
|
||||
and psg.is_del != 2
|
||||
</where>
|
||||
order by psg.id desc
|
||||
|
|
|
@ -56,6 +56,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="useStatus != null and useStatus != ''"> and ps.use_status = #{useStatus}</if>
|
||||
<if test="approveStatus != null "> and ps.approve_status = #{approveStatus}</if>
|
||||
<if test="subDeptLeaderPhone != null and subDeptLeaderPhone != ''"> and ps.sub_dept_leader_phone = #{subDeptLeaderPhone}</if>
|
||||
<if test='activeTags == "finished"'> and ps.approve_status <![CDATA[ >= ]]> 100</if>
|
||||
and ps.is_del = 0
|
||||
</where>
|
||||
order by ps.id desc
|
||||
|
|
|
@ -197,6 +197,7 @@ public class ProProjectInfoServiceImpl implements IProProjectInfoService
|
|||
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();
|
||||
|
||||
return res;
|
||||
}else{
|
||||
throw new ServiceException("项目信息保存失败!!!");
|
||||
|
|
|
@ -340,7 +340,7 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
|
|||
GroupQuery.setGroupCode(DeptGroupEnums.SPECIAL.getCode());
|
||||
List<ProProjectInfoSubdeptsGroup> specialGroups = proProjectInfoSubdeptsGroupMapper.selectProProjectInfoSubdeptsGroupList(query);
|
||||
|
||||
if(Objects.nonNull(specialGroups) && specialGroups.size()>0){
|
||||
if(StringUtils.isNotEmpty(specialGroups)){
|
||||
ProProjectInfoSubdeptsGroup specialGroup = specialGroups.get(0);
|
||||
specialGroup.setGroupLeaderName(proProjectInfoSubdeptsUsers.getUserName());
|
||||
specialGroup.setGroupLeaderCode(proProjectInfoSubdeptsUsers.getCardCode());
|
||||
|
@ -504,8 +504,6 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
|
|||
if(Objects.isNull(parUsers)){
|
||||
throw new ServiceException("用户信息异常...请重新扫码");
|
||||
}
|
||||
|
||||
|
||||
proProjectInfoSubdeptsUsers.setComId(parUsers.getComId());
|
||||
proProjectInfoSubdeptsUsers.setProjectId(parUsers.getProjectId());
|
||||
proProjectInfoSubdeptsUsers.setSubDeptId(parUsers.getSubDeptId());
|
||||
|
@ -548,7 +546,7 @@ public class ProProjectInfoSubdeptsUsersServiceImpl implements IProProjectInfoSu
|
|||
GroupQuery.setGroupCode(DeptGroupEnums.SPECIAL.getCode());
|
||||
List<ProProjectInfoSubdeptsGroup> specialGroups = proProjectInfoSubdeptsGroupMapper.selectProProjectInfoSubdeptsGroupList(query);
|
||||
|
||||
if(Objects.nonNull(specialGroups) && specialGroups.size()>0){
|
||||
if(StringUtils.isNotEmpty(specialGroups)){
|
||||
ProProjectInfoSubdeptsGroup specialGroup = specialGroups.get(0);
|
||||
specialGroup.setGroupLeaderName(proProjectInfoSubdeptsUsers.getUserName());
|
||||
specialGroup.setGroupLeaderCode(proProjectInfoSubdeptsUsers.getCardCode());
|
||||
|
|
|
@ -370,7 +370,7 @@ Page({
|
|||
},
|
||||
success: function (res) {
|
||||
const filePath = res.tempFilePath
|
||||
let fpt = filePath.split(".");
|
||||
let fpt = path.split(".");
|
||||
wx.openDocument({
|
||||
filePath: filePath,
|
||||
fileType: fpt[fpt.length - 1],
|
||||
|
|
|
@ -299,7 +299,7 @@
|
|||
<van-col span="8"><text class="color_purple">安全承诺书</text></van-col>
|
||||
<van-col span="16" class="color_blue">
|
||||
<view class="files">
|
||||
<text data-set="{{subDeptUserData.eduFilePath}}" style="word-wrap: break-word;" bindtap='downFile'>点击下载安全承诺书</text>
|
||||
<text data-set="{{subDeptUserData.eduFilePath}}" style="word-wrap: break-word;" bindtap='downFile'>点击查看安全承诺书</text>
|
||||
</view>
|
||||
</van-col>
|
||||
</van-row>
|
||||
|
|
|
@ -293,7 +293,7 @@ Page({
|
|||
},
|
||||
success: function (res) {
|
||||
const filePath = res.tempFilePath
|
||||
let fpt = filePath.split(".");
|
||||
let fpt = path.split(".");
|
||||
wx.openDocument({
|
||||
filePath: filePath,
|
||||
fileType: fpt[fpt.length - 1],
|
||||
|
|
|
@ -826,8 +826,8 @@ if (this.data.userPost == "1") {
|
|||
// 示例 url,并非真实存在
|
||||
url: _baseUrl + '/file/NoSecurity/download?fileName=' + _eduFilePath,
|
||||
success: function (res) {
|
||||
const filePath = res.tempFilePath
|
||||
const fileTypes = filePath.split(".");
|
||||
const filePath = res.tempFilePath;
|
||||
const fileTypes = _eduFilePath.split(".");
|
||||
wx.openDocument({
|
||||
filePath: filePath,
|
||||
fileType: fileTypes[fileTypes.length - 1],
|
||||
|
@ -1203,10 +1203,14 @@ if (this.data.userPost == "1") {
|
|||
let obj = await this.syncUploadImage(item);
|
||||
findCardOcrFront(obj.data.data.url).then(res =>{
|
||||
if(res.code==200){
|
||||
if(res.data.nation.indexOf("族")<0){
|
||||
res.data.nation = res.data.nation+"族";
|
||||
}
|
||||
this.setData({
|
||||
"form.userName": res.data.name,
|
||||
"form.cardCode": res.data.cardId,
|
||||
"form.nativePlace": res.data.nation,
|
||||
"form.nation": res.data.nation,
|
||||
"form.nativePlace": res.data.native,
|
||||
"form.address": res.data.address
|
||||
})
|
||||
if(!res.data.name || !res.data.cardId){
|
||||
|
|
|
@ -262,7 +262,7 @@
|
|||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">地址</view>
|
||||
<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>
|
||||
<view class="inspect_info_list">
|
||||
|
@ -404,7 +404,7 @@
|
|||
<view class="inspect_info_list">
|
||||
<view class="inspect_info_title" style="padding: 20rpx 0 10rpx;">地址</view>
|
||||
<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>
|
||||
<view class="inspect_info_list">
|
||||
|
@ -526,15 +526,21 @@
|
|||
</view>
|
||||
</view>
|
||||
<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}}" />
|
||||
<input placeholder="请填写民族" placeholder-style="color:#6777aa;" bindinput="inputOriginNation" class="inspect_input_fill_in" disabled maxlength="30" model:value="{{form.nation}}" />
|
||||
</view>
|
||||
</view>
|
||||
<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">
|
||||
<textarea class="add_textarea" placeholder="请填写籍贯地址" placeholder-style="color:#6777aa;" maxlength="64" disabled bindblur="inputOriginAddress" model:value="{{form.address}}" />
|
||||
<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">
|
||||
<textarea class="add_textarea" placeholder="请填写地址" placeholder-style="color:#6777aa;" maxlength="64" disabled bindblur="inputOriginAddress" model:value="{{form.address}}" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="inspect_info_list">
|
||||
|
|
|
@ -224,6 +224,7 @@ const data = reactive({
|
|||
craftType: null,
|
||||
craftPost: null,
|
||||
approveStatus: null,
|
||||
activeTags: "finished"
|
||||
},
|
||||
rules: {
|
||||
subDeptId: [{ required: true, message: "所属单位不能为空", trigger: "change" }],
|
||||
|
|
|
@ -92,6 +92,12 @@
|
|||
<dict-tag :options="pro_craft_post" :value="scope.row.craftPost" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="二维码" align="center" prop="qrCode" width="80">
|
||||
<template #default="scope">
|
||||
<image-preview v-if="scope.row.qrCode" :src="scope.row.qrCode" :width="50" :height="50" />
|
||||
<span v-if="!scope.row.qrCode"> - </span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="三级安全教育" align="center" class-name="small-padding fixed-width" width="100">
|
||||
<template #default="scope">
|
||||
<div v-if="scope.row.subDeptType == '4' || scope.row.subDeptType == '5'">
|
||||
|
@ -115,7 +121,7 @@
|
|||
</el-table-column>
|
||||
<!-- <el-table-column label="出生日期" align="center" prop="info.birthDayStr" v-if="false" />
|
||||
<el-table-column label="籍贯" align="center" prop="info.nativePlace" v-if="false" /> -->
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" width="150">
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" width="200">
|
||||
<template #default="scope">
|
||||
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['manage:proProjectInfoSubdeptsUsers:edit']">修改</el-button>
|
||||
|
@ -125,8 +131,10 @@
|
|||
v-hasPermi="['manage:proProjectInfoSubdeptsUsers:remove']">离场</el-button>
|
||||
<el-button link type="primary" icon="Delete" @click="handleEnter(scope.row)" v-else
|
||||
v-hasPermi="['manage:proProjectInfoSubdeptsUsers:remove']">进场</el-button>
|
||||
<el-button link type="primary" icon="Refresh" @click="handleFileSign_0(scope.row)"
|
||||
v-hasPermi="['manage:proProjectInfoSubdeptsUsers:edit']">重新生成文件</el-button>
|
||||
<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>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
@ -494,8 +502,8 @@ function getList() {
|
|||
loading.value = true;
|
||||
queryParams.value.comId = userStore.currentComId;
|
||||
queryParams.value.projectId = userStore.currentPrjId;
|
||||
queryParams.value.activeTags = "finished";
|
||||
listProProjectInfoSubdeptsUsers(queryParams.value).then(response => {
|
||||
|
||||
proProjectInfoSubdeptsUsersList.value = (response.rows || []).map(d => {
|
||||
d.info = tryToJson(d.userInfos || "{}")
|
||||
d.user = d.user || {};
|
||||
|
@ -504,7 +512,6 @@ function getList() {
|
|||
d.info.birthDayStr = birthDay;
|
||||
d.info.age = dayjs(new Date()).diff(d.info.birthDay, 'year');
|
||||
}
|
||||
|
||||
return d;
|
||||
});
|
||||
total.value = response.total;
|
||||
|
@ -575,7 +582,7 @@ function doSubDeptChange(type) {
|
|||
return;
|
||||
}
|
||||
}
|
||||
listProProjectInfoSubdeptsGroup({ subDeptId: type == "query" ? queryParams.value.subDeptId : form.value.subDeptId, pageNum: 1, pageSize: 100 }).then(d => {
|
||||
listProProjectInfoSubdeptsGroup({ subDeptId: type == "query" ? queryParams.value.subDeptId : form.value.subDeptId, pageNum: 1, pageSize: 100, activeTags: "finished" }).then(d => {
|
||||
if (type == "query") {
|
||||
data.queryDeptGroups = d.rows || [];
|
||||
} else {
|
||||
|
@ -658,7 +665,7 @@ function handleSelectionChange(selection) {
|
|||
}
|
||||
|
||||
function loadSubDepts(cb) {
|
||||
listProProjectInfoSubdepts({ projectId: userStore.currentPrjId, pageNum: 1, pageSize: 100 }).then(d => {
|
||||
listProProjectInfoSubdepts({ projectId: userStore.currentPrjId, pageNum: 1, pageSize: 100, activeTags: "finished" }).then(d => {
|
||||
data.subdepts = d.rows || [];
|
||||
if (data.subdepts.length > 0) {
|
||||
setTimeout(() => {
|
||||
|
@ -785,6 +792,15 @@ function handleFileSign(row){
|
|||
});
|
||||
}
|
||||
|
||||
function handleFileSign_0(row){
|
||||
fileSign(row.id).then(res =>{
|
||||
if(res.code==200){
|
||||
proxy.$modal.msgSuccess("重新生成文件成功");
|
||||
getList();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function getWorkType(wt) {
|
||||
if (wt) {
|
||||
let tmps = user_work_type.value.filter(d => d.value == wt);
|
||||
|
|
Loading…
Reference in New Issue