Commit 3bd84ecf authored by “yiyousong”'s avatar “yiyousong”

pref:修改添加工作人员

parent 88d42727
...@@ -27,6 +27,10 @@ ...@@ -27,6 +27,10 @@
<template slot="num" slot-scope="text, record, index"> <template slot="num" slot-scope="text, record, index">
{{ (current - 1) * size + index + 1 }} {{ (current - 1) * size + index + 1 }}
</template> </template>
<!-- 法规类型 -->
<template slot="policyType" slot-scope="text">
{{ filterType(text.policyType) }}
</template>
<!-- 查看详情 --> <!-- 查看详情 -->
<template slot="more" slot-scope="text"> <template slot="more" slot-scope="text">
<a class="look-more" @click="lookMore(text)">查看详情</a> <a class="look-more" @click="lookMore(text)">查看详情</a>
...@@ -75,7 +79,7 @@ const columns = [ ...@@ -75,7 +79,7 @@ const columns = [
}, },
{ {
title: "法规类型", title: "法规类型",
dataIndex: "policyType", scopedSlots: { customRender: "policyType" },
}, },
{ {
title: "条例", title: "条例",
...@@ -173,15 +177,39 @@ export default { ...@@ -173,15 +177,39 @@ export default {
}, },
// 删除 // 删除
async handleDel(val) { handleDel(id) {
let res = await delMattersetbase({ id: val }); let _this = this;
let { code, msg } = res.data; this.$confirm({
if (code === 1) { title: "系统提示",
this.$message.success(msg); content: "删除不可恢复,确定要删除吗?",
this.getMattersetbaseData(); okText: "确定",
} else { okType: "danger",
this.$message.error(msg); cancelText: "取消",
} centered: true,
icon: "exclamation-circle",
maskClosable: true,
async onOk() {
let res = await delMattersetbase({ id });
let { code, msg } = res.data;
if (code === 1) {
_this.$message.success(msg);
_this.getMattersetbaseData();
}
},
onCancel() {
console.log("Cancel");
},
});
},
// 过滤法规类型
filterType(key) {
let val = "--";
Object.keys(this.dict.policyType).forEach((keys) => {
if (key == keys) {
val = this.dict.policyType[keys];
}
});
return val;
}, },
}, },
}; };
......
...@@ -38,6 +38,23 @@ ...@@ -38,6 +38,23 @@
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="所属部门" prop="deptId"> <a-form-model-item label="所属部门" prop="deptId">
<a-select <a-select
showSearch
v-model="form.deptId"
optionFilterProp="label"
placeholder="请选择部门"
@change="handleDeptSelect"
allowClear
>
<a-select-option
v-for="v in diptData"
:key="v.id"
:value="v.id"
:label="v.name"
>
{{ v.name }}</a-select-option
>
</a-select>
<!-- <a-select
v-model="form.deptId" v-model="form.deptId"
@change="handleDeptSelect" @change="handleDeptSelect"
placeholder="请选择部门" placeholder="请选择部门"
...@@ -48,11 +65,11 @@ ...@@ -48,11 +65,11 @@
:value="v.id" :value="v.id"
>{{ v.name }}</a-select-option >{{ v.name }}</a-select-option
> >
</a-select> </a-select> -->
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="星级"> <a-form-model-item label="星级" prop="starlevel">
<a-select v-model="form.starlevel" placeholder="请选择星级"> <a-select v-model="form.starlevel" placeholder="请选择星级">
<a-select-option :value="5">5星</a-select-option> <a-select-option :value="5">5星</a-select-option>
<a-select-option :value="4">4星</a-select-option> <a-select-option :value="4">4星</a-select-option>
...@@ -93,7 +110,7 @@ ...@@ -93,7 +110,7 @@
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="政治面貌"> <a-form-model-item label="政治面貌" prop="politicalstatus">
<a-select <a-select
allowClear allowClear
v-model="form.politicalstatus" v-model="form.politicalstatus"
...@@ -109,7 +126,7 @@ ...@@ -109,7 +126,7 @@
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="称号"> <a-form-model-item label="称号" prop="dangyuan">
<a-select <a-select
allowClear allowClear
v-model="form.dangyuan" v-model="form.dangyuan"
...@@ -158,11 +175,12 @@ ...@@ -158,11 +175,12 @@
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="个人简介" label="个人简介"
prop="summary"
> >
<a-input <a-textarea
v-model="form.summary"
placeholder="请输入个人简介" placeholder="请输入个人简介"
type="textarea" allow-clear
v-model="form.summary"
/> />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
...@@ -173,6 +191,7 @@ ...@@ -173,6 +191,7 @@
:label-col="{ span: 4 }" :label-col="{ span: 4 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="个人照片" label="个人照片"
prop="photoPath"
> >
<div class="person_image"> <div class="person_image">
<a-upload <a-upload
...@@ -245,8 +264,13 @@ ...@@ -245,8 +264,13 @@
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="办理事项" label="办理事项"
prop="business"
> >
<a-input v-model="form.business" type="textarea" /> <a-textarea
placeholder="请输入办理事项"
allow-clear
v-model="form.business"
/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
...@@ -256,8 +280,13 @@ ...@@ -256,8 +280,13 @@
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="岗位职责" label="岗位职责"
prop="duty"
> >
<a-input v-model="form.duty" type="textarea" /> <a-textarea
placeholder="请输入岗位职责"
allow-clear
v-model="form.duty"
/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
...@@ -267,8 +296,13 @@ ...@@ -267,8 +296,13 @@
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="服务承诺" label="服务承诺"
prop="promise"
> >
<a-input v-model="form.promise" type="textarea" /> <a-textarea
placeholder="请输入服务承诺"
allow-clear
v-model="form.promise"
/>
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
...@@ -435,10 +469,8 @@ export default { ...@@ -435,10 +469,8 @@ export default {
let { code, msg } = res.data; let { code, msg } = res.data;
if (code === 1) { if (code === 1) {
this.$message.success(msg); this.$message.success(msg);
this.$parent.getWorkmanData(); this.$emit("editSuccess");
this.handleClose(); this.handleClose();
} else {
this.$message.error(msg);
} }
} }
}); });
......
...@@ -4,8 +4,7 @@ ...@@ -4,8 +4,7 @@
@cancel="handleClose" @cancel="handleClose"
title="新增工作人员" title="新增工作人员"
ok-text="确认" ok-text="确认"
cancel-text="取消" cancel-text="重置"
@ok="hideModal"
width="820px" width="820px"
:maskClosable="false" :maskClosable="false"
> >
...@@ -38,6 +37,24 @@ ...@@ -38,6 +37,24 @@
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="所属部门" prop="deptId"> <a-form-model-item label="所属部门" prop="deptId">
<a-select <a-select
showSearch
v-model="form.deptId"
optionFilterProp="label"
placeholder="请选择部门"
@change="handleDeptSelect"
allowClear
>
<a-select-option
v-for="v in diptData"
:key="v.id"
:value="v.id"
:label="v.name"
>
{{ v.name }}</a-select-option
>
</a-select>
<!-- <a-select
v-model="form.deptId" v-model="form.deptId"
@change="handleDeptSelect" @change="handleDeptSelect"
allowClear allowClear
...@@ -49,11 +66,11 @@ ...@@ -49,11 +66,11 @@
:value="v.id" :value="v.id"
>{{ v.name }}</a-select-option >{{ v.name }}</a-select-option
> >
</a-select> </a-select> -->
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="星级"> <a-form-model-item label="星级" prop="starlevel">
<a-select <a-select
allowClear allowClear
v-model="form.starlevel" v-model="form.starlevel"
...@@ -98,7 +115,7 @@ ...@@ -98,7 +115,7 @@
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="政治面貌"> <a-form-model-item label="政治面貌" prop="politicalstatus">
<a-select <a-select
allowClear allowClear
v-model="form.politicalstatus" v-model="form.politicalstatus"
...@@ -114,7 +131,7 @@ ...@@ -114,7 +131,7 @@
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
<a-col :span="12"> <a-col :span="12">
<a-form-model-item label="称号"> <a-form-model-item label="称号" prop="dangyuan">
<a-select <a-select
allowClear allowClear
v-model="form.dangyuan" v-model="form.dangyuan"
...@@ -163,11 +180,12 @@ ...@@ -163,11 +180,12 @@
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="个人简介" label="个人简介"
prop="summary"
> >
<a-input <a-textarea
v-model="form.summary"
placeholder="请输入个人简介" placeholder="请输入个人简介"
type="textarea" allow-clear
v-model="form.summary"
/> />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
...@@ -178,6 +196,7 @@ ...@@ -178,6 +196,7 @@
:label-col="{ span: 4 }" :label-col="{ span: 4 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="个人照片" label="个人照片"
prop="photoPath"
> >
<div class="person_image"> <div class="person_image">
<a-upload <a-upload
...@@ -185,9 +204,11 @@ ...@@ -185,9 +204,11 @@
list-type="picture-card" list-type="picture-card"
class="avatar-uploader" class="avatar-uploader"
:show-upload-list="false" :show-upload-list="false"
:customRequest="uploadImg"
:before-upload="beforeUpload" :before-upload="beforeUpload"
:action="api + 'base/file/commonupload'"
:accept="accept" :accept="accept"
@change="handleChange"
:remove="handleRemove"
> >
<img <img
v-if="form.photoPath" v-if="form.photoPath"
...@@ -293,11 +314,12 @@ ...@@ -293,11 +314,12 @@
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="办理事项" label="办理事项"
prop="business"
> >
<a-input <a-textarea
v-model="form.business"
placeholder="请输入办理事项" placeholder="请输入办理事项"
type="textarea" allow-clear
v-model="form.business"
/> />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
...@@ -308,11 +330,12 @@ ...@@ -308,11 +330,12 @@
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="岗位职责" label="岗位职责"
prop="duty"
> >
<a-input <a-textarea
v-model="form.duty"
placeholder="请输入岗位职责" placeholder="请输入岗位职责"
type="textarea" allow-clear
v-model="form.duty"
/> />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
...@@ -323,22 +346,28 @@ ...@@ -323,22 +346,28 @@
:label-col="{ span: 3 }" :label-col="{ span: 3 }"
:wrapper-col="{ span: 19 }" :wrapper-col="{ span: 19 }"
label="服务承诺" label="服务承诺"
prop="promise"
> >
<a-input <a-textarea
v-model="form.promise"
placeholder="请输入服务承诺" placeholder="请输入服务承诺"
type="textarea" allow-clear
v-model="form.promise"
/> />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
</a-form-model> </a-form-model>
<!-- 按钮 -->
<div slot="footer">
<a-button @click="handleReset">重置</a-button>
<a-button type="primary" @click="hideModal">确定</a-button>
</div>
</a-modal> </a-modal>
</template> </template>
<script> <script>
import { changeAccount, changePassWord } from "@/utils/validate"; import { changeAccount, changePassWord } from "@/utils/validate";
import { getWindowList, saveWorkman, uploadFile } from "@/services/dept"; import { getWindowList, saveWorkman } from "@/services/dept";
import { modelList } from "@/services/basicsetFun"; import { modelList } from "@/services/basicsetFun";
import { changePhone, changeLandline } from "@/utils/validate"; import { changePhone, changeLandline } from "@/utils/validate";
import local from "@/utils/local"; import local from "@/utils/local";
...@@ -502,15 +531,16 @@ export default { ...@@ -502,15 +531,16 @@ export default {
let { code, msg } = res.data; let { code, msg } = res.data;
if (code === 1) { if (code === 1) {
this.$message.success(msg); this.$message.success(msg);
this.$parent.getWorkmanData(); this.$emit("addSuccess");
this.handleClose(); this.handleClose();
} else {
this.$message.error(msg);
} }
} }
}); });
}, },
// 重置
handleReset() {
this.$refs.formData.resetFields();
},
// 新增 // 新增
onAdd() { onAdd() {
Object.assign(this.form, this.$options.data().form); Object.assign(this.form, this.$options.data().form);
...@@ -524,21 +554,29 @@ export default { ...@@ -524,21 +554,29 @@ export default {
}, },
// 关闭对话框 // 关闭对话框
handleClose() { handleClose() {
this.Visible = false;
this.$refs.formData.resetFields(); this.$refs.formData.resetFields();
this.Visible = false;
}, },
// 照片上传 // 照片上传
async uploadImg(info) { handleChange({ file }) {
this.loading = true; this.loading = true;
const formData = new FormData(); if (file.type == "done") {
formData.append("file", info.file); this.form.photoPath = file.response.url;
let res = await uploadFile(formData);
let { code, url } = res.data;
if (code === 1) {
this.form.photoPath = url;
this.loading = false; this.loading = false;
} }
}, },
handleRemove() {},
// async uploadImg(info) {
// this.loading = true;
// const formData = new FormData();
// formData.append("file", info.file);
// let res = await uploadFile(formData);
// let { code, url } = res.data;
// if (code === 1) {
// this.form.photoPath = url;
// this.loading = false;
// }
// },
// 照片大小格式限制 // 照片大小格式限制
beforeUpload(file) { beforeUpload(file) {
const isJpgOrPng = const isJpgOrPng =
......
...@@ -265,6 +265,7 @@ ...@@ -265,6 +265,7 @@
:visibleAll.sync="visibleAll" :visibleAll.sync="visibleAll"
:designationDict="designationDict" :designationDict="designationDict"
:politicalDict="politicalDict" :politicalDict="politicalDict"
@addSuccess="getWorkmanData"
></addpersonnel> ></addpersonnel>
<!-- 编辑工作人员 --> <!-- 编辑工作人员 -->
<EditPersonel <EditPersonel
...@@ -273,6 +274,7 @@ ...@@ -273,6 +274,7 @@
:designationDict="designationDict" :designationDict="designationDict"
:politicalDict="politicalDict" :politicalDict="politicalDict"
:diptData="deptData" :diptData="deptData"
@editSuccess="getWorkmanData"
></EditPersonel> ></EditPersonel>
<!-- 修改密码 --> <!-- 修改密码 -->
<EditPwd ref="EditPwd" :visibleEditPwd.sync="visibleEditPwd"></EditPwd> <EditPwd ref="EditPwd" :visibleEditPwd.sync="visibleEditPwd"></EditPwd>
...@@ -537,10 +539,6 @@ export default { ...@@ -537,10 +539,6 @@ export default {
this.size = size; this.size = size;
this.getWorkmanData(); this.getWorkmanData();
}, },
// 导入
// handleUpload() {
// this.importFile();
// },
// 批量导入工作人员模板下载 // 批量导入工作人员模板下载
async handleDownload() { async handleDownload() {
...@@ -558,46 +556,6 @@ export default { ...@@ -558,46 +556,6 @@ export default {
document.body.appendChild(link); document.body.appendChild(link);
}, },
//导入文件
// importFile() {
// let that = this;
// let input = document.createElement("input");
// input.setAttribute("type", "file");
// input.setAttribute(
// "accept",
// "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel"
// );
// input.style.display = "none";
// input.addEventListener("change", () => {
// if (input.files && input.files.length > 0) {
// that.uploadFile(input.files[0]);
// }
// });
// document.body.appendChild(input);
// input.click();
// document.body.removeChild(input);
// },
//上传文件
// async uploadFile(file) {
// let formData = new FormData();
// formData.append("file", file);
// formData.append("siteId", this.siteId);
// formData.append("deptId", this.deptSearch);
// formData.append("windowId", this.windowSearch);
// let config = {
// headers: {
// "Content-Type": "multipart/form-data",
// },
// };
// let res = await importData(formData, config);
// let { code, msg } = res.data;
// if (code === 1) {
// this.$message.success(msg);
// this.page = 1;
// this.getWorkmanData();
// }
// },
// 批量上传工作人员 // 批量上传工作人员
handleChange({ file }) { handleChange({ file }) {
this.spinning = true; this.spinning = true;
...@@ -613,32 +571,6 @@ export default { ...@@ -613,32 +571,6 @@ export default {
} }
}, },
// 批量导入照片 // 批量导入照片
// handleUploadImg() {
// let input = document.createElement("input");
// input.setAttribute("type", "file");
// input.setAttribute("accept", "application/x-zip-compressed");
// input.style.display = "none";
// input.addEventListener("change", async () => {
// if (input.files && input.files.length > 0) {
// let file = input.files[0];
// let formData = new FormData();
// formData.append("file", file);
// let res = await uploadFile(formData);
// if (res.data.code == 1) {
// let result = await uploadAllImg({
// filePath: res.data.url,
// });
// if (result.data.code === 1) {
// this.$message.success(result.data.msg);
// }
// }
// }
// });
// document.body.appendChild(input);
// input.click();
// document.body.removeChild(input);
// },
// 批量导入照片
async handleChangeImg({ file }) { async handleChangeImg({ file }) {
this.spinning = true; this.spinning = true;
if (file.status === "done") { if (file.status === "done") {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment