流程相关-分公司项目部新增

This commit is contained in:
lSun 2024-10-17 19:38:09 +08:00
parent a31b89d2ae
commit 119fbfc8bd
6 changed files with 105 additions and 45 deletions

View File

@ -72,8 +72,8 @@ export default {
return {
codeUrl: "",
loginForm: {
username: "admin",
password: "admin123",
username: "15240004260",
password: "YNsbd@123456",
rememberMe: false,
code: "",
uuid: ""

View File

@ -35,7 +35,7 @@
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['dept:org:add']"
>新增
</el-button>
</el-col>
@ -46,6 +46,7 @@
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['dept:org:export']"
>导出
</el-button>
</el-col>
@ -56,6 +57,7 @@
icon="el-icon-s-custom"
size="mini"
@click="allocation"
v-hasPermi="['dept:org:all']"
>权限分配
</el-button>
</el-col>
@ -91,6 +93,7 @@
type="text"
icon="el-icon-search"
@click="detailsUpdate(scope.row)"
v-hasPermi="['dept:org:query']"
>详情
</el-button>
<el-button
@ -99,6 +102,7 @@
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-if="scope.row.reviewerStatus != 1 "
v-hasPermi="['dept:org:query']"
>修改
</el-button>
<el-button
@ -107,6 +111,7 @@
icon="el-icon-refresh-left"
@click="handleWithdraw(scope.row)"
v-if="scope.row.reviewerStatus == 0"
v-hasPermi="['dept:org:edit']"
>撤回
</el-button>
<el-button
@ -115,6 +120,7 @@
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-if="scope.row.reviewerStatus == 3 "
v-hasPermi="['dept:org:remove']"
>删除
</el-button>
</template>
@ -148,17 +154,29 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="部门负责人" prop="orgHeadUserId">
<treeselect v-model="form.orgHeadUserId" :flat="true" :options="personOptions" :normalizer="normalizer2"
placeholder="选择部门负责人" @select="handleSelect1"/>
<el-form-item label="部门负责人" prop="orgHeadUserIdList">
<el-select v-model="form.orgHeadUserIdList" multiple placeholder="部门负责人" clearable style="width: 100%;">
<el-option
v-for="item in personOptions"
:key="item.userIds"
:label="item.userName"
:value="item.userIds"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="考勤员" prop="attendanceUserId">
<treeselect v-model="form.attendanceUserId" :flat="true" :options="personOptions"
:normalizer="normalizer2" placeholder="选择考勤员" @select="handleSelect2"/>
<el-select v-model="form.attendanceUserId" placeholder="考勤员" clearable style="width: 100%;">
<el-option
v-for="item in personOptions"
:key="item.userIds"
:label="item.userName"
:value="item.userIds"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
@ -285,6 +303,7 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import {treeselect as staffTreeselect} from "@/api/process/tree";
import {exportSubOrg} from "@/api/process/branchProExamine";
import {downloadFile} from "@/utils/download";
import {getPersonSelect} from "@/api/system/userInfo";
export default {
name: "BranchPro",
@ -321,7 +340,7 @@ export default {
orgName: [
{required: true, message: "部门名称不能为空", trigger: "blur"}
],
orgHeadUserId: [
orgHeadUserIdList: [
{required: true, message: "部门负责人不能为空", trigger: "blur"}
],
attendanceUserId: [
@ -414,10 +433,17 @@ export default {
oldOrgName: [],
};
},
created() {
mounted() {
this.getList();
this.getPersonSelect();
},
methods: {
/** 人员选择下拉 */
getPersonSelect() {
getPersonSelect().then(response => {
this.personOptions=response.data
});
},
/** 查询列表 */
getList() {
this.loading = true;
@ -442,6 +468,7 @@ export default {
attendanceUserId: undefined,
attendanceUserName: undefined,
orgHeadUserId: undefined,
orgHeadUserIdList: [],
orgHeadUserName: undefined,
province: undefined,
isProvince: "1",
@ -479,12 +506,7 @@ export default {
await listDept().then(response => {
this.deptOptions = this.handleTree(response.data, "id");
});
/**
* 项目部负责人
*/
await orgPersonSelect().then(response => {
this.personOptions = this.changeData(response.data);
});
/** 人员 */
this.getStaffTreeselect("-1", "1", "", "manager");
@ -526,14 +548,18 @@ export default {
this.form = response.data;
this.oldOrgName = row.orgName
if(!this.form.parentId){
this.form.parentId=0
}
if(this.form.orgHeadUserId!=null){
let arr = this.form.orgHeadUserId.split(',')
this.$set(this.form,"orgHeadUserIdList",arr)
}
listDept().then(response => {
this.deptOptions = this.handleTree(response.data, "id");
});
orgPersonSelect().then(response => {
this.personOptions = this.changeData(response.data);
});
/** 人员 */
this.getStaffTreeselect(ids, "1", "", "manager");
this.getStaffTreeselect(ids, "2", "", "safety");
@ -592,12 +618,16 @@ export default {
const ids = row.id
getType(ids).then(response => {
this.form = response.data;
if(!this.form.parentId){
this.form.parentId=0
}
if(this.form.orgHeadUserId!=null){
let arr = this.form.orgHeadUserId.split(',')
this.$set(this.form,"orgHeadUserIdList",arr)
}
listDept().then(response => {
this.deptOptions = this.handleTree(response.data, "id");
});
orgPersonSelect().then(response => {
this.personOptions = this.changeData(response.data);
});
/** 人员 */
this.getStaffTreeselect(ids, "1", "", "manager");
@ -653,6 +683,7 @@ export default {
this.$refs["form"].validate(valid => {
console.log(this.form);
if (valid) {
this.form.orgHeadUserId=this.form.orgHeadUserIdList.join(',');
let managerIds = this.form.managerId;
let safetyIds = this.form.safetyId;

View File

@ -41,6 +41,7 @@
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['dept:org:export']"
>导出
</el-button>
</el-form-item>
@ -77,6 +78,7 @@
type="text"
icon="el-icon-search"
@click="detailsUpdate(scope.row)"
v-hasPermi="['dept:org:query']"
>详情
</el-button>
<el-button
@ -84,6 +86,7 @@
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['dept:org:edit']"
>审核
</el-button>
</template>
@ -117,16 +120,28 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="部门负责人" prop="orgHeadUserId">
<treeselect v-model="form.orgHeadUserId" :flat="true" :options="personOptions" :normalizer="normalizer2"
placeholder="选择部门负责人" @select="handleSelect1" :disabled="true"/>
<el-form-item label="部门负责人" prop="orgHeadUserIdList">
<el-select v-model="form.orgHeadUserIdList" multiple placeholder="部门负责人" clearable style="width: 100%;">
<el-option
v-for="item in personOptions"
:key="item.userIds"
:label="item.userName"
:value="item.userIds"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="考勤员" prop="attendanceUserId">
<treeselect v-model="form.attendanceUserId" :flat="true" :options="personOptions"
:normalizer="normalizer2" placeholder="选择考勤员" :disabled="true"/>
<el-select v-model="form.attendanceUserId" placeholder="考勤员" clearable style="width: 100%;">
<el-option
v-for="item in personOptions"
:key="item.userIds"
:label="item.userName"
:value="item.userIds"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
@ -253,6 +268,7 @@ import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import {treeselect as staffTreeselect} from "@/api/process/tree";
import {downloadFile} from "@/utils/download";
import {getPersonSelect} from "@/api/system/userInfo";
export default {
name: "BranchPro",
@ -291,7 +307,7 @@ export default {
orgName: [
{required: true, message: "部门名称不能为空", trigger: "blur"}
],
orgHeadUserId: [
orgHeadUserIdList: [
{required: true, message: "部门负责人不能为空", trigger: "blur"}
],
attendanceUserId: [
@ -386,8 +402,17 @@ export default {
this.queryParams.applyName=this.$route.query.param
}
this.getList();
this.getPersonSelect();
},
methods: {
/** 人员选择下拉 */
getPersonSelect() {
getPersonSelect().then(response => {
this.personOptions=response.data
});
},
/** 查询列表 */
getList() {
this.loading = true;
@ -412,6 +437,7 @@ export default {
attendanceUserId: undefined,
attendanceUserName: undefined,
orgHeadUserId: undefined,
orgHeadUserIdList: [],
orgHeadUserName: undefined,
province: undefined,
applyName: undefined,
@ -463,17 +489,18 @@ export default {
await getType(ids).then(response => {
this.form = response.data;
if(!this.form.parentId){
this.form.parentId=0
}
if(this.form.orgHeadUserId!=null){
let arr = this.form.orgHeadUserId.split(',')
this.$set(this.form,"orgHeadUserIdList",arr)
}
listDept().then(response => {
this.deptOptions = this.handleTree(response.data, "id");
});
/**
* 项目部负责人
*/
orgPersonSelect().then(response => {
this.personOptions = this.changeData(response.data);
});
/** 人员 */
this.getStaffTreeselect(ids, "1", "", "manager");
this.getStaffTreeselect(ids, "2", "", "safety");
@ -530,17 +557,17 @@ export default {
const ids = row.id
getType(ids).then(response => {
this.form = response.data;
if(!this.form.parentId){
this.form.parentId=0
}
if(this.form.orgHeadUserId!=null){
let arr = this.form.orgHeadUserId.split(',')
this.$set(this.form,"orgHeadUserIdList",arr)
}
listDept().then(response => {
this.deptOptions = this.handleTree(response.data, "id");
});
/**
* 项目部负责人
*/
orgPersonSelect().then(response => {
this.personOptions = this.changeData(response.data);
});
/** 人员 */
this.getStaffTreeselect(ids, "1", "", "manager");
this.getStaffTreeselect(ids, "2", "", "safety");

View File

@ -66,7 +66,7 @@
icon="el-icon-edit"
v-if="scope.row.reviewerStatus == null"
@click="handleAllocation(scope.row)"
v-hasPermi="['dept:role:edit']"
>分配人员
</el-button>
<el-button
@ -75,7 +75,7 @@
icon="el-icon-edit"
v-if="scope.row.reviewerStatus == 1 || scope.row.reviewerStatus == 2"
@click="handleChange(scope.row)"
v-hasPermi="['dept:role:edit']"
>人员变更
</el-button>
</template>

View File

@ -65,6 +65,7 @@
type="text"
icon="el-icon-edit"
@click="handleAllocation(scope.row)"
v-hasPermi="['dept:check:edit']"
>审核</el-button>
</template>
</el-table-column>

View File

@ -58,6 +58,7 @@
icon="el-icon-edit"
v-if="scope.row.reviewerStatus == null"
@click="handleAllocation(scope.row)"
v-hasPermi="['dept:role:edit']"
>分配人员</el-button>
</template>
</el-table-column>