| | |
| | | 注:仅支持选择 【{{ companyType === 0 ? '相关方组织' : '内部组织' }}】 |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item label="选择岗位:" prop="positionId" > |
| | | <el-form-item label="选择岗位:" prop="positionId"> |
| | | <el-select v-model="form.positionId" clearable filterable placeholder="请选择"> |
| | | <el-option v-for="item in positionList" :key="item.id" :label="item.name" :value="item.id"> |
| | | </el-option> |
| | |
| | | <el-input v-model="form.code" placeholder="请输入员工工号" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="入职日期" prop="jobDate"> |
| | | <el-date-picker |
| | | v-model="form.jobDate" |
| | | value-format="yyyy-MM-dd" |
| | | type="date"> |
| | | <el-date-picker v-model="form.jobDate" value-format="yyyy-MM-dd" type="date"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="是否党员" prop="isDangyuan"> |
| | | <el-radio-group v-model="form.isDangyuan" > |
| | | <el-radio :label="0">非党员</el-radio> |
| | | <el-radio :label="1">党员</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="是否党员" prop="isDangyuan"> |
| | | <el-radio-group v-model="form.isDangyuan"> |
| | | <el-radio :label="0">非党员</el-radio> |
| | | <el-radio :label="1">党员</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="人脸照片" prop="faceImgFull"> |
| | | <div class="upload_wrap"> |
| | | <UploadFaceImg :file="{ 'imgurlfull': form.faceImgFull, 'imgurl': form.faceImg }" :uploadData="uploadData" |
| | |
| | | import UploadAvatarImage from '@/components/common/UploadAvatarImage' |
| | | import UploadFaceImg from '@/components/common/UploadFaceImg' |
| | | import { checkMobile, validIdCardNo, validIdCardNoNew } from '@/utils/form' |
| | | import { allList } from '@/api/business/position' |
| | | import { allList } from '@/api/business/position' |
| | | export default { |
| | | name: 'OperaCompanyWindow', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow, UploadAvatarImage, UploadFaceImg }, |
| | | data () { |
| | | data() { |
| | | return { |
| | | uploadData: { |
| | | folder: 'member' |
| | |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | created() { |
| | | this.config({ |
| | | api: '/business/member.js', |
| | | 'field.id': 'id' |
| | | }) |
| | | }, |
| | | methods: { |
| | | handleChangeCompany (value) { |
| | | handleChangeCompany(value) { |
| | | if (this.form.company && this.form.company.length > 1) { |
| | | this.form.companyId = this.form.company[this.form.company.length - 1] |
| | | } |
| | |
| | | * @title 窗口标题 |
| | | * @target 编辑的对象 |
| | | */ |
| | | open (title, target, depart, companyType) { |
| | | open(title, target, depart, companyType) { |
| | | this.title = title |
| | | this.department = depart |
| | | this.visible = true |
| | | this.form = { |
| | | id: null, |
| | | name: '', |
| | | type: '', |
| | | company: [], |
| | | code: '', |
| | | idcardNo: '', |
| | | idcardNoNew: '', |
| | | linkName: '', |
| | | idcardDecode: '', |
| | | companyId: null, |
| | | idcardType: 0, |
| | | phone: '', |
| | | faceImg: '', |
| | | jobDate: null, |
| | | isDangyuan: 0, |
| | | positionId: null, |
| | | faceImgFull: '' |
| | | } |
| | | this.companyType = companyType |
| | | this.getPositionList() |
| | | // 新建 |
| | |
| | | } |
| | | }) |
| | | }, |
| | | getPositionList () { |
| | | getPositionList() { |
| | | allList({}) |
| | | .then(res => { |
| | | this.positionList = res |
| | | }) |
| | | }, |
| | | // 上传图片 |
| | | uploadAvatarSuccess (file) { |
| | | uploadAvatarSuccess(file) { |
| | | this.form.faceImg = file.imgurl |
| | | this.form.faceImgFull = file.imgurlfull |
| | | } |
| | |
| | | } |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .upload_wrap{ |
| | | .upload_wrap { |
| | | display: flex; |
| | | align-items: center; |
| | | .avatar-uploader{ |
| | | |
| | | .avatar-uploader { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | ::v-deep .avatar{ |
| | | |
| | | ::v-deep .avatar { |
| | | max-width: 90px; |
| | | max-height: 90px; |
| | | } |
| | | .content{ |
| | | |
| | | .content { |
| | | display: flex; |
| | | flex-direction: column; |
| | | justify-content: center; |