1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063 |
- <template>
- <el-container class="userInfo">
- <el-aside class="aside">
- <el-card shadow="never" body-style="height:700px">
- <template #header>
- <div class="card-header">
- <span>
- <div class="person-bg">
- <el-icon size="14"><user-filled></user-filled></el-icon>
- </div>
- <label class="person-text">基本信息</label>
- </span>
- </div>
- </template>
- <div class="user-info">
- <div class="user-info-top">
- <el-avatar :size="80" :src="userInfo.photo"></el-avatar>
- <h2>{{ userInfo.name || "-" }}</h2>
- <p>{{ userInfo.sign || "无签名" }}</p>
- <el-button type="primary" round icon="collection-tag">{{
- userInfo.loginName
- }}</el-button>
- </div>
- <div class="user-info-main">
- <el-descriptions :column="1">
- <el-descriptions-item>
- <template #label>
- <el-icon :size="14">
- <Iphone />
- </el-icon>
- </template>
- {{ userInfo.mobile }}
- </el-descriptions-item>
- <el-descriptions-item>
- <template #label>
- <el-icon :size="14">
- <youjian />
- </el-icon>
- </template>
- {{ userInfo.email }}
- </el-descriptions-item>
- <el-descriptions-item>
- <template #label>
- <el-icon :size="14">
- <location />
- </el-icon>
- </template>
- {{ userInfo.companyDTO?.name }}
- </el-descriptions-item>
- <el-descriptions-item>
- <template #label>
- <el-icon :size="14"><office-building /></el-icon>
- </template>
- {{ userInfo.officeDTO?.name }}
- </el-descriptions-item>
- <el-descriptions-item>
- <template #label>
- <el-icon :size="14">
- <coin />
- </el-icon>
- </template>
- {{ userInfo.roleNames }}
- </el-descriptions-item>
- </el-descriptions>
- </div>
- </div>
- </el-card>
- </el-aside>
- <el-main style="padding: 0">
- <el-card shadow="never" body-style="height:700px" v-loading="loading">
- <template #header>
- <div class="card-header">
- <span>
- <div class="person-bg">
- <el-icon size="14">
- <bianji></bianji>
- </el-icon>
- </div>
- <label class="person-text">资料修改</label>
- </span>
- <div style="float: right;display: flex;justify-content: center;align-items: center;">
- <el-button type="primary" @click="submitUserInfo"
- v-if="auditStatus != 2 && auditStatus != 4">提交审批</el-button>
- <el-tag size="large" style="margin-left: 10px;font-size: 12px; " v-if="auditStatus == 5"
- type="success">
- <span>审核通过,修改成功</span>
- </el-tag>
- <el-button type="primary" @click="submitUserInfo"
- v-else-if="auditStatus == 4">重新提交</el-button>
- <el-popover placement="left" :width="400" trigger="hover">
- <template #reference>
- <el-button style="margin-left: 10px;" v-if="auditStatus == 2"
- type="primary">审批中</el-button>
- </template>
- <!-- <el-table :data="flowData" ref="flowRef" style="width: 100%;"
- highlight-current-row="true">
- <el-table-column property="comment.status" label="节点" align="center" />
- <el-table-column property="assigneeName" label="审核人" align="center" />
- </el-table> -->
- <el-timeline style="max-width: 600px" v-if="flowData && flowData.length">
- <el-timeline-item v-for="(activity, index) in flowData" :key="index"
- :color="index === flowData.length - 1 ? '#0bbd87' : '#dcdfe6'"
- :timestamp="activity.histIns.startTime">
- 状态:{{ activity.comment.status }}<br />
- 审批人:{{ activity.assigneeName }}<br />
- </el-timeline-item>
- </el-timeline>
- <el-result v-else icon="info" title="暂未查询到审批信息">
- <template #sub-title>
- <span>请刷新后重试</span>
- </template>
- <template #extra>
- </template>
- </el-result>
- </el-popover>
- <el-button style="margin-left: 10px;" v-if="auditStatus == 2" type="warning"
- @click="handleRevoke">撤回</el-button>
- <el-popover width="300" class="box-item" title="" :content="rejectMessage"
- placement="top-start">
- <template #reference>
- <el-tag size="large" style="margin-left: 10px; max-width: 200px;font-size: 12px;"
- v-if="auditStatus == 4 && this.procInsId" type="danger">
- <span>已驳回,原因:</span>
- <span style="
- display: inline-block;
- vertical-align: bottom;
- max-width: 50px;
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- ">
- {{ rejectMessage }}
- </span>
- </el-tag>
- </template>
- </el-popover>
- </div>
- </div>
- </template>
- <el-tabs tab-position="top" v-model="activeName">
- <el-form :model="generalForm" ref="generalForm" label-width="130px" :disabled="auditStatus == 2">
- <el-tab-pane label="基本信息" name="basicInfo">
- <el-row :gutter="26">
- <el-col :span="12">
- <!-- :style="generalForm.status == 1 ? `--el-input-text-color:red` : ''" -->
- <el-form-item label="姓名" prop="name"
- :rules="[{ required: true, message: '姓名不能为空', trigger: 'blur' }]">
- <el-input v-model="generalForm.name"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="身份证号码" prop="idCard"
- :rules="[{ required: true, validator: validator.isCardId, trigger: 'blur' }]">
- <el-input v-model="generalForm.idCard"
- @blur="idCardOnly(generalForm.idCard, generalForm.id)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="性别" prop="sex" :rules="[
- { required: true, message: '性别不能为空', trigger: 'change' }
- ]">
- <el-radio-group :disabled="true" v-model="generalForm.sex">
- <el-radio v-for="item in $dictUtils.getDictList('sex')" :label="item.value"
- :key="item.value">{{ item.label
- }}</el-radio>
- </el-radio-group>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="年龄" prop="age"
- :rules="[{ required: true, message: '年龄不能为空', trigger: 'change' }]">
- <el-input :disabled="true" v-model="generalForm.age" type="number"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="出生日期" prop="birthday" :rules="[
- { required: true, message: '请填写出生日期', trigger: 'blur' }
- ]">
- <el-date-picker :disabled="true" style="width: 100%"
- v-model="generalForm.birthday" value-format="YYYY-MM-DD" placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="政治面貌" prop="politicalOutlook" :rules="[]">
- <!-- <el-input v-model="generalForm.politicalOutlook"></el-input>-->
- <el-select v-model="generalForm.politicalOutlook" placeholder="请选择政治面貌"
- style="width:100%;">
- <el-option v-for="item in $dictUtils.getDictList('political_outlook')"
- :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <!-- <el-col :span="12">
- <el-form-item label="籍贯" prop="nativePlace" :rules="[]">
- <el-input v-model="generalForm.nativePlace"></el-input>
- </el-form-item>
- </el-col>-->
- <el-col :span="12">
- <el-form-item label="籍贯" prop="nativePlace" :rules="[
- { required: true, message: '籍贯不能为空', trigger: 'change' }
- ]">
- <SelectTree ref="areaTree" :props="{
- value: 'id', // ID字段名
- label: 'name', // 显示名称
- children: 'children' // 子级字段名
- }" url="/system-server/sys/area/treeData" :value="generalForm.nativePlace" :clearable="true" size="large"
- :accordion="true"
- @getValue="(value) => { generalForm.nativePlace = value }" />
- </el-form-item>
- </el-col>
- <!-- <el-col :span="12">
- <el-form-item label="民族" prop="nation" :rules="[]">
- <el-input v-model="generalForm.nation"></el-input>
- </el-form-item>
- </el-col>-->
- <el-col :span="12">
- <el-form-item label="民族" prop="nation" :rules="[]">
- <el-select v-model="generalForm.nation" placeholder="请选择民族" clearable
- style="width: 100%;">
- <el-option v-for="item in $dictUtils.getDictList('sys_nation')"
- :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="婚姻状况" prop="maritalStatus" :rules="[]">
- <el-select v-model="generalForm.maritalStatus" placeholder="请选择婚姻状况" clearable
- style="width: 100%;">
- <el-option v-for="item in $dictUtils.getDictList('marital_status')"
- :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="邮箱" :rules="[
- {
- type: 'email',
- message: '请输入正确的邮箱地址',
- trigger: 'blur',
- },
- ]" prop="email">
- <el-input @blur="checkEmail(concatForm.email)"
- v-model="concatForm.email"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="联系电话" prop="mobilePhone"
- :rules="[{ required: true, message: '联系电话不能为空', trigger: 'change' }]">
- <el-input v-model="generalForm.mobilePhone"
- @blur="mobilePhoneOnly(generalForm.mobilePhone)"></el-input>
- </el-form-item>
- </el-col>
- <!-- <el-col :span="12">
- <el-form-item label="家庭住址" prop="homeAddress" :rules="[]">
- <el-input v-model="generalForm.homeAddress"></el-input>
- </el-form-item>
- </el-col> -->
- <el-col :span="12">
- <el-form-item label="常住住址" prop="permanentAddress" :rules="[]">
- <el-input v-model="generalForm.permanentAddress"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="参加工作日期" prop="joinWorkDate" :rules="[
- ]">
- <el-date-picker style="width: 100%" v-model="generalForm.joinWorkDate"
- value-format="x" placeholder="">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="从事行业日期" prop="joinIndustryDate" :rules="[
- ]">
- <el-date-picker style="width: 100%" v-model="generalForm.joinIndustryDate"
- value-format="x" placeholder="">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <!--
- <el-col :span="24">
- <el-form-item label="个人简介" prop="remarks" :rules="[]">
- <el-input type="textarea" maxlength="200" show-word-limit
- v-model="generalForm.remarks"></el-input>
- </el-form-item>
- </el-col> -->
- </el-row>
- <el-row :gutter="26">
- <el-col :span="12">
- <el-form-item class="star-require" label="身份证人像面" prop="idCardFront" :rules="[]">
- <UpLoadComponent ref="idCardFront"></UpLoadComponent>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item class="star-require" label="身份证国徽面" prop="idCardBack" :rules="[]">
- <UpLoadComponent ref="idCardBack"></UpLoadComponent>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="10" :offset="14" style="display: flex;justify-content: flex-end;">
- <el-tag size="large"
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="generalForm.status == 1" type="warning">
- 暂存中
- </el-tag>
- <el-button type="primary" @click="updateInfoTemporary"
- v-if="auditStatus != 2">暂存</el-button>
- </el-col>
- </el-row>
- </el-tab-pane>
- <!-- <el-tab-pane label="学历信息">
- <el-row :gutter="26">
- <el-col :span="12">
- <el-form-item label="毕业院校" prop="graduatedFrom" :rules="[]">
- <el-input v-model="generalForm.graduatedFrom"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="专业" prop="speciality" :rules="[]">
- <el-input v-model="generalForm.speciality"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="开始时间" prop="startTime" :rules="[
- ]">
- <el-date-picker style="width: 100%" v-model="generalForm.startTime"
- value-format="YYYY-MM-DD" placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="毕业时间" prop="endTime" :rules="[
- ]">
- <el-date-picker style="width: 100%" v-model="generalForm.endTime"
- value-format="YYYY-MM-DD" placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="学历" prop="education" :rules="[]">
- <el-select v-model="generalForm.education" placeholder="请选择学历" clearable
- style="width: 100%;">
- <el-option v-for="item in $dictUtils.getDictList('education')"
- :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="学历性质" prop="educationNature" :rules="[]">
- <el-select v-model="generalForm.educationNature" placeholder="请选择学历性质" clearable
- style="width: 100%;">
- <el-option v-for="item in $dictUtils.getDictList('education_nature')"
- :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="是否毕业" prop="graduatedOrNot" :rules="[]">
- <el-radio-group v-model="generalForm.graduatedOrNot">
- <el-radio v-for="item in $dictUtils.getDictList('graduated_or_not')"
- :label="item.value" :key="item.value">{{ item.label }}</el-radio>
- </el-radio-group>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="英语等级" prop="englishLevel" :rules="[]">
- <el-select v-model="generalForm.englishLevel" placeholder="请选择英语等级" clearable
- style="width: 100%;">
- <el-option v-for="item in $dictUtils.getDictList('english_level')"
- :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="计算机等级" prop="ncre" :rules="[]">
- <el-select v-model="generalForm.ncre" placeholder="请选择英语等级" clearable
- style="width: 100%;">
- <el-option v-for="item in $dictUtils.getDictList('computer_level')"
- :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
- </el-tab-pane> -->
- <el-tab-pane label="部门信息">
- <el-row :gutter="26">
- <el-col :span="24">
- <el-form-item label="所属部门" prop="department" :rules="[
- ]">
- <SelectTree ref="officeTree" :disabled="true" :props="{
- value: 'id', // ID字段名
- label: 'name', // 显示名称
- children: 'children' // 子级字段名
- }" :url="`/system-server/sys/office/treeData?type=2`" :value="generalForm.department" :accordion="true"
- size="default" @getValue="(value) => { generalForm.department = value }" />
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="员工类型" prop="onJobStatus" :rules="[
- ]">
- <!-- <el-input v-model="generalForm.politicalOutlook"></el-input>-->
- <el-select :disabled="true" v-model="generalForm.onJobStatus"
- placeholder="请选择员工类型" style="width:100%;">
- <el-option v-for="item in $dictUtils.getDictList('on_job_status')"
- :key="item.value" :label="item.label" :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <!-- <el-col :span="24">
- <el-form-item label="岗位" prop="postIdList" :rules="[]">
- <el-select :disabled="true" v-model="generalForm.postIdList" style="width: 100%"
- multiple placeholder="请选择">
- <el-option v-for="item in postList" :key="item.id" :label="item.name"
- :value="item.id">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col> -->
- <!-- <el-col :span="24">
- <el-form-item label="角色" prop="roleIdList"
- :rules="[{ required: true, message: '角色不能为空', trigger: 'change' }]">
- <el-select :disabled="true" v-model="generalForm.roleIdList" style="width: 100%"
- multiple placeholder="请选择">
- <el-option v-for="role in roleList" :key="role.id" :label="role.name"
- :value="role.id">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col> -->
- <el-col :span="24">
- <el-form-item label="进所日期" prop="entryDate" :rules="[
- ]">
- <el-date-picker :disabled="true" style="width: 100%"
- v-model="generalForm.entryDate" value-format="YYYY-MM-DD"
- placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同开始日期" prop="contractStartDate" :rules="[
- ]">
- <el-date-picker :disabled="true" style="width: 100%"
- v-model="generalForm.contractStartDate" value-format="YYYY-MM-DD"
- placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同结束日期" prop="contractEndDate" :rules="[
- ]">
- <el-date-picker :disabled="true" style="width: 100%"
- v-model="generalForm.contractEndDate" value-format="YYYY-MM-DD"
- placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- </el-row>
- </el-tab-pane>
- <!-- <el-tab-pane label="社保信息">
- <el-row :gutter="26" v-if="status === 'audit' || status === 'taskFormDetail'">
- <el-col :span="12">
- <el-form-item label="社保编号" prop="socialSecurityNumber" :rules="[]">
- <el-input v-model="generalForm.socialSecurityNumber" maxlength="10"
- @input="validateInput"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="社保银行卡号" prop="socialSecurityBankNumber" :rules="[]">
- <el-input v-model="generalForm.socialSecurityBankNumber"
- @change="checkBankNumber(generalForm.socialSecurityBankNumber)"
- maxlength="19"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="社保卡照片正面" prop="socialSecurityPictureFront" :rules="[]">
- <el-upload
- :action="`${$http.BASE_URL}/public-modules-server/oss/file/webUpload/upload`"
- :limit="limitNum" :disabled="hideUploadEdit" list-type="picture-card"
- :auto-upload="true" :on-success="handleUploadSuccess"
- v-model:file-list="fileList">
- <el-icon>
- <Plus />
- </el-icon>
- <template #file="{ file }">
- <div>
- <img class="el-upload-list__item-thumbnail" :src="file.url"
- alt="" />
- <span class="el-upload-list__item-actions">
- <span class="el-upload-list__item-preview"
- @click="handlePictureCardPreview(file)">
- <el-icon><zoom-in /></el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="handleDownload(file)">
- <el-icon>
- <Download />
- </el-icon>
- </span>
- <span v-if="!disabled" style="display:none;"
- class="el-upload-list__item-delete"
- @click="handleRemove(file, fileList)">
- <el-icon>
- <Delete />
- </el-icon>
- </span>
- </span>
- </div>
- </template>
- </el-upload>
- <el-dialog v-model="dialogVisible">
- <img w-full :src="generalForm.socialSecurityPictureFrontUrl"
- alt="Preview Image" :style="{ maxWidth: '100%', maxHeight: '100%' }" />
- </el-dialog>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="社保卡照片反面" prop="socialSecurityPictureOpposite" :rules="[]">
- <el-upload
- :action="`${$http.BASE_URL}/public-modules-server/oss/file/webUpload/upload`"
- :limit="limitNum" :disabled="hideUploadEdit2" list-type="picture-card"
- :auto-upload="true" :on-success="handleUploadSuccess2"
- v-model:file-list="fileList2">
- <el-icon>
- <Plus />
- </el-icon>
- <template #file="{ file }">
- <div>
- <img class="el-upload-list__item-thumbnail" :src="file.url"
- alt="" />
- <span class="el-upload-list__item-actions">
- <span class="el-upload-list__item-preview"
- @click="handlePictureCardPreview2(file)">
- <el-icon><zoom-in /></el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="handleDownload2(file)">
- <el-icon>
- <Download />
- </el-icon>
- </span>
- <span v-if="!disabled" style="display:none;"
- class="el-upload-list__item-delete"
- @click="handleRemove2(file, fileList2)">
- <el-icon>
- <Delete />
- </el-icon>
- </span>
- </span>
- </div>
- </template>
- </el-upload>
- <el-dialog v-model="dialogVisible2">
- <img w-full :src="generalForm.socialSecurityPictureOppositeUrl"
- alt="Preview Image" :style="{ maxWidth: '100%', maxHeight: '100%' }" />
- </el-dialog>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row :gutter="26" v-else>
- <el-col :span="12">
- <el-form-item label="社保编号" prop="socialSecurityNumber" :rules="[]">
- <el-input v-model="generalForm.socialSecurityNumber" maxlength="10"
- @input="validateInput"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="社保银行卡号" prop="socialSecurityBankNumber" :rules="[]">
- <el-input v-model="generalForm.socialSecurityBankNumber"
- @change="checkBankNumber(generalForm.socialSecurityBankNumber)"
- maxlength="19"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="社保卡照片正面" prop="socialSecurityPictureFront" :rules="[]">
- <el-upload
- :action="`${$http.BASE_URL}/public-modules-server/oss/file/webUpload/upload`"
- :limit="limitNum" :disabled="hideUploadEdit" list-type="picture-card"
- :auto-upload="true" :on-success="handleUploadSuccess" :file-list="fileList">
- <el-icon>
- <Plus />
- </el-icon>
- <template #file="{ file }">
- <div>
- <img class="el-upload-list__item-thumbnail" :src="file.url"
- alt="" />
- <span class="el-upload-list__item-actions">
- <span class="el-upload-list__item-preview"
- @click="handlePictureCardPreview(file)">
- <el-icon><zoom-in /></el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="handleDownload(file)">
- <el-icon>
- <Download />
- </el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="handleRemove(file, fileList)">
- <el-icon>
- <Delete />
- </el-icon>
- </span>
- </span>
- </div>
- </template>
- </el-upload>
- <el-dialog v-model="dialogVisible">
- <img w-full :src="generalForm.socialSecurityPictureFrontUrl"
- alt="Preview Image" :style="{ maxWidth: '100%', maxHeight: '100%' }" />
- </el-dialog>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="社保卡照片反面" prop="socialSecurityPictureOpposite" :rules="[]">
- <el-upload
- :action="`${$http.BASE_URL}/public-modules-server/oss/file/webUpload/upload`"
- :limit="limitNum" :disabled="hideUploadEdit2" list-type="picture-card"
- :auto-upload="true" :on-success="handleUploadSuccess2"
- v-model:file-list="fileList2">
- <el-icon>
- <Plus />
- </el-icon>
- <template #file="{ file }">
- <div>
- <img class="el-upload-list__item-thumbnail" :src="file.url"
- alt="" />
- <span class="el-upload-list__item-actions">
- <span class="el-upload-list__item-preview"
- @click="handlePictureCardPreview2(file)">
- <el-icon><zoom-in /></el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="handleDownload2(file)">
- <el-icon>
- <Download />
- </el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="handleRemove2(file, fileList2)">
- <el-icon>
- <Delete />
- </el-icon>
- </span>
- </span>
- </div>
- </template>
- </el-upload>
- <el-dialog v-model="dialogVisible2">
- <img w-full :src="generalForm.socialSecurityPictureOppositeUrl"
- alt="Preview Image" :style="{ maxWidth: '100%', maxHeight: '100%' }" />
- </el-dialog>
- </el-form-item>
- </el-col>
- </el-row>
- </el-tab-pane>
- <el-tab-pane label="中信银行卡信息">
- <el-row :gutter="26">
- <el-col :span="12">
- <el-form-item label="中信银行卡号" prop="zxBankCardNumber">
- <el-input v-model="generalForm.zxBankCardNumber"
- @change="checkBankNumber(generalForm.zxBankCardNumber, 'zx')"
- maxlength="19"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="开户行" prop="zxAccountHolder">
- <el-input v-model="generalForm.zxAccountHolder"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="银行卡正面" prop="accountHolderFront">
- <el-upload
- :action="`${$http.BASE_URL}/public-modules-server/oss/file/webUpload/upload`"
- :limit="limitNum" :disabled="bankHideUploadEdit" list-type="picture-card"
- :auto-upload="true" :on-success="bankHandleUploadSuccess"
- v-model:file-list="bankFileList">
- <el-icon>
- <Plus />
- </el-icon>
- <template #file="{ file }">
- <div>
- <img class="el-upload-list__item-thumbnail" :src="file.url"
- alt="" />
- <span class="el-upload-list__item-actions">
- <span class="el-upload-list__item-preview"
- @click="bankHandlePictureCardPreview(file)">
- <el-icon><zoom-in /></el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="bankHandleDownload(file)">
- <el-icon>
- <Download />
- </el-icon>
- </span>
- <span v-if="!(method === 'view')"
- class="el-upload-list__item-delete"
- @click="bankHandleRemove(file, fileList)">
- <el-icon>
- <Delete />
- </el-icon>
- </span>
- </span>
- </div>
- </template>
- </el-upload>
- <el-dialog v-model="bankDialogVisible">
- <img w-full :src="generalForm.accountHolderFrontUrl" alt="Preview Image"
- :style="{ maxWidth: '100%', maxHeight: '100%' }" />
- </el-dialog>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="银行卡反面" prop="accountHolderOpposite">
- <el-upload
- :action="`${$http.BASE_URL}/public-modules-server/oss/file/webUpload/upload`"
- :limit="limitNum" :disabled="bankHideUploadEdit2" list-type="picture-card"
- :auto-upload="true" :on-success="bankHandleUploadSuccess2"
- v-model:file-list="bankFileList2">
- <el-icon>
- <Plus />
- </el-icon>
- <template #file="{ file }">
- <div>
- <img class="el-upload-list__item-thumbnail" :src="file.url"
- alt="" />
- <span class="el-upload-list__item-actions">
- <span class="el-upload-list__item-preview"
- @click="bankHandlePictureCardPreview2(file)">
- <el-icon><zoom-in /></el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="bankHandleDownload2(file)">
- <el-icon>
- <Download />
- </el-icon>
- </span>
- <span v-if="!(method === 'view')"
- class="el-upload-list__item-delete"
- @click="bankHandleRemove2(file, fileList)">
- <el-icon>
- <Delete />
- </el-icon>
- </span>
- </span>
- </div>
- </template>
- </el-upload>
- <el-dialog v-model="bankDialogVisible2">
- <img w-full :src="generalForm.accountHolderOppositeUrl" alt="Preview Image"
- :style="{ maxWidth: '100%', maxHeight: '100%' }" />
- </el-dialog>
- </el-form-item>
- </el-col>
- </el-row>
- </el-tab-pane>
- <el-tab-pane label="招商银行卡信息">
- <el-row :gutter="26">
- <el-col :span="12">
- <el-form-item label="招商银行卡号" prop="gsBankCardNumber">
- <el-input v-model="generalForm.gsBankCardNumber"
- @change="checkBankNumber(generalForm.gsBankCardNumber, 'gs')"
- maxlength="19"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="开户行" prop="gsAccountHolder">
- <el-input v-model="generalForm.gsAccountHolder"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="银行卡正面" prop="gsAccountHolderFront">
- <el-upload
- :action="`${$http.BASE_URL}/public-modules-server/oss/file/webUpload/upload`"
- :limit="limitNum" :disabled="gsHideUploadEdit" list-type="picture-card"
- :auto-upload="true" :on-success="gsHandleUploadSuccess"
- v-model:file-list="gsFileList">
- <el-icon>
- <Plus />
- </el-icon>
- <template #file="{ file }">
- <div>
- <img class="el-upload-list__item-thumbnail" :src="file.url"
- alt="" />
- <span class="el-upload-list__item-actions">
- <span class="el-upload-list__item-preview"
- @click="gsHandlePictureCardPreview(file)">
- <el-icon><zoom-in /></el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="gsHandleDownload(file)">
- <el-icon>
- <Download />
- </el-icon>
- </span>
- <span v-if="!(method === 'view')"
- class="el-upload-list__item-delete"
- @click="gsHandleRemove(file, fileList)">
- <el-icon>
- <Delete />
- </el-icon>
- </span>
- </span>
- </div>
- </template>
- </el-upload>
- <el-dialog v-model="gsDialogVisible">
- <img w-full :src="generalForm.gsAccountHolderFrontUrl" alt="Preview Image"
- :style="{ maxWidth: '100%', maxHeight: '100%' }" />
- </el-dialog>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="银行卡反面" prop="gsAccountHolderOpposite">
- <el-upload
- :action="`${$http.BASE_URL}/public-modules-server/oss/file/webUpload/upload`"
- :limit="limitNum" :disabled="gsHideUploadEdit2" list-type="picture-card"
- :auto-upload="true" :on-success="gsHandleUploadSuccess2"
- v-model:file-list="gsFileList2">
- <el-icon>
- <Plus />
- </el-icon>
- <template #file="{ file }">
- <div>
- <img class="el-upload-list__item-thumbnail" :src="file.url"
- alt="" />
- <span class="el-upload-list__item-actions">
- <span class="el-upload-list__item-preview"
- @click="gsHandlePictureCardPreview2(file)">
- <el-icon><zoom-in /></el-icon>
- </span>
- <span v-if="!disabled" class="el-upload-list__item-delete"
- @click="gsHandleDownload2(file)">
- <el-icon>
- <Download />
- </el-icon>
- </span>
- <span v-if="!(method === 'view')"
- class="el-upload-list__item-delete"
- @click="gsHandleRemove2(file, fileList)">
- <el-icon>
- <Delete />
- </el-icon>
- </span>
- </span>
- </div>
- </template>
- </el-upload>
- <el-dialog v-model="gsDialogVisible2">
- <img w-full :src="generalForm.gsAccountHolderOppositeUrl"
- alt="Preview Image" :style="{ maxWidth: '100%', maxHeight: '100%' }" />
- </el-dialog>
- </el-form-item>
- </el-col>
- </el-row>
- </el-tab-pane> -->
- </el-form>
- <el-tab-pane label="教育经历">
- <el-card style="width: 100%;transition: all 0.3s ease;" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">教育经历</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addEdu()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[0] ? 'warning' : 'success'"
- @click="changeInfoList(0)">{{
- changeFlag[0] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[0]">
- <el-col :span="24">
- <el-collapse v-if="eduInfoList && eduInfoList.length > 0"
- v-model="activeNames[0]">
- <div style="padding: 0 30px;" v-for="(item, index) in eduInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{
- $dictUtils.getDictLabel("education",
- item.education, '-') + ' - ' +
- item.graduatedFrom +
- ' - ' + item.cultureMethod }}</span>
- <span
- style="color: #b0b0b0;font-size: 12px;"> | </span>
- <span style="font-size: 14px;"> {{
- handleDateFormatter(item.startDate) }}</span>
- <span :style="{
- fontSize: '12px',
- color: item.status == '1' ? 'red' : '#b0b0b0'
- }"> 至 </span>
- <span style="font-size: 14px;"> {{
- handleDateFormatter(item.endDate) }}</span>
- <el-tag v-if="item.isHighestEducation == 1" size="small"
- style="margin-left: 10px;">最高学历</el-tag>
- <div style="margin-left: auto;">
- <el-button type="text" @click.stop="editEdu(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text" @click.stop="delEdu(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border :column="2">
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="开始日期:">{{
- handleDateFormatter(item.startDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="结束日期:">{{
- handleDateFormatter(item.endDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="毕业院校:">{{
- item.graduatedFrom
- }}</el-descriptions-item>
- <!-- <el-descriptions-item label="其他毕业院校:">{{
- item.otherGraduatedFrom
- }}</el-descriptions-item> -->
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="专业:">{{
- item.speciality
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="学历:">{{
- $dictUtils.getDictLabel("education",
- item.education, '-')
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="学位:">{{
- $dictUtils.getDictLabel("degree", item.degree, '-')
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="是否最高学历:">
- <el-tag v-if="item.isHighestEducation == 1">是</el-tag>
- <el-tag type="warning" v-else>否</el-tag>
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="是否最高学位:">
- <el-tag v-if="item.isHighestDegree == 1">是</el-tag>
- <el-tag type="warning" v-else>否</el-tag>
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="学习形式:">{{
- $dictUtils.getDictLabel("learn_form",
- item.learnForms, '-')
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="毕业类型:">{{
- $dictUtils.getDictLabel("graduation_type",
- item.graduationType, '-')
- }}</el-descriptions-item>
- <!-- <el-descriptions-item label="培养方式:">{{ item.cultureMethod
- }}</el-descriptions-item> -->
- <!-- <el-descriptions-item label="专业描述:">{{
- item.specialityDesc
- }}</el-descriptions-item> -->
- <el-descriptions-item label="学历证明:">
- <AttachmentView :fileList="item.educationFile"
- :key="uploadKey">
- </AttachmentView>
- </el-descriptions-item>
- <el-descriptions-item label="学位证明:">
- <AttachmentView :fileList="item.degreeFile"
- :key="uploadKey">
- </AttachmentView>
- </el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无教育经历"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="工作经历">
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">工作经历</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addWork()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[1] ? 'warning' : 'success'"
- @click="changeInfoList(1)">{{
- changeFlag[1] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[1]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[1]"
- v-if="workInfoList && workInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in workInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{ item.companyName
- + ' - '
- +
- item.position }}</span>
- <span
- style="color: #b0b0b0;font-size: 12px;"> | </span>
- <span style="font-size: 14px;"> {{
- handleDateFormatter(item.startDate) }}</span>
- <span
- style="color: #b0b0b0;font-size: 12px;"> 至 </span>
- <span style="font-size: 14px;"> {{
- handleDateFormatter(item.endDate) }}</span>
- <div style="margin-left: auto;">
- <el-button type="text" @click.stop="editWork(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text" @click.stop="delWork(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="单位名称:">{{
- item.companyName
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="职务:">{{
- item.position
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="证明人:">{{
- item.certifier
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="开始日期:">{{
- handleDateFormatter(item.startDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="结束日期:">{{
- handleDateFormatter(item.endDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="是否本单位工作经历">
- <el-tag
- v-if="item.isCurrentCompanyExperience == 1">是</el-tag>
- <el-tag type="warning" v-else>否</el-tag>
- </el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无工作经历"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="培训经历">
- <!-- 培训经历 -->
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">培训经历</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addTraining()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[2] ? 'warning' : 'success'"
- @click="changeInfoList(2)">{{
- changeFlag[2] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[2]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[2]"
- v-if="trainingInfoList && trainingInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in trainingInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{ item.name + ' - '
- +
- item.trainingInstitution }}</span>
- <div style="margin-left: auto;">
- <el-button type="text" @click.stop="editTraining(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text" @click.stop="delTraining(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="名称:">{{
- item.name
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="培训机构:">{{
- item.trainingInstitution
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="培训成绩:">{{
- item.trainingResult
- }}</el-descriptions-item>
- <el-descriptions-item label="附件:">
- <AttachmentView :key="uploadKey" :fileList="item.files">
- </AttachmentView>
- </el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无培训经历"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="执业资格证书">
- <!-- 执业资格证书 -->
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">执业资格证书</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addCertificate()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[3] ? 'warning' : 'success'"
- @click="changeInfoList(3)">{{
- changeFlag[3] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[3]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[3]"
- v-if="certificateInfoList && certificateInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in certificateInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{
- $dictUtils.getDictLabel('sys_cert_type', item.type, '-')
- }}</span>
- <div style="margin-left: auto;">
- <el-button type="text"
- @click.stop="editCertificate(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text"
- @click.stop="delCertificate(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="证书类型:">
- {{ $dictUtils.getDictLabel('sys_cert_type', item.type, '-')
- }}
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="证书编号:">
- {{ item.no }}
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="发证机关:">
- {{ item.authorities }}
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="发证日期:">
- {{ handleDateFormatter(item.issuedDate) }}
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="注册日期:">
- {{ handleDateFormatter(item.enrollDate) }}
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="到期日期:">
- {{ handleDateFormatter(item.expireDate) }}
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="注册证书编号:">
- {{ item.enrollCertNo }}
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="专业:">
- {{ item.profession }}
- </el-descriptions-item>
- <el-descriptions-item label="附件:">
- <AttachmentView :key="uploadKey"
- :fileList="item.certificateAttachment">
- </AttachmentView>
- </el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无执业资格证书"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="职称证书">
- <!-- 专业技能 -->
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">职称证书</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addSkill()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[4] ? 'warning' : 'success'"
- @click="changeInfoList(4)">{{
- changeFlag[4] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[4]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[4]"
- v-if="skillInfoList && skillInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in skillInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{
- $dictUtils.getDictLabel('professional_certificate',
- item.name, '-')
- }}</span>
- <span style="font-size: 16px;" v-if="item.proficiency"> {{
- '-' +
- item.proficiency }}</span>
- <div style="margin-left: auto;">
- <el-button type="text" @click.stop="editSkill(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text" @click.stop="delSkill(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="职称名称:">{{
- $dictUtils.getDictLabel('professional_certificate',
- item.name, '-')
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="职称等级:">{{
- item.proficiency
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="取得日期:">{{
- handleDateFormatter(item.obtainDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="取得途径:">{{
- item.category
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="审批单位:">{{
- item.usageTime
- }}</el-descriptions-item>
- <el-descriptions-item label="附件:">
- <AttachmentView :fileList="item.files">
- </AttachmentView>
- </el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无职称证书"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="外语语种">
- <!-- 外语语种 -->
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">外语语种</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addLanguage()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[5] ? 'warning' : 'success'"
- @click="changeInfoList(5)">{{
- changeFlag[5] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[5]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[5]"
- v-if="languageInfoList && languageInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in languageInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{
- $dictUtils.getDictLabel("user_info_language",
- item.language, '-')
- }}</span>
- <div style="margin-left: auto;">
- <el-button type="text" @click.stop="editLanguage(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text" @click.stop="delLanguage(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="语种:">{{
- $dictUtils.getDictLabel("user_info_language",
- item.language, '-')
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="是否母语:">
- <el-tag v-if="item.isNative == 1">是</el-tag>
- <el-tag type="warning" v-else>否</el-tag>
- </el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="掌握程度:">{{
- item.proficiency
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="书写能力:">{{
- item.writingAbility
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="阅读能力:">{{
- item.readingAbility
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="口语能力:">{{
- item.speakingAbility
- }}</el-descriptions-item>
- <el-descriptions-item label="附件:">
- <AttachmentView :key="uploadKey" :fileList="item.files">
- </AttachmentView>
- </el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无外语语种信息"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="家庭情况">
- <!-- 家庭情况 -->
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">家庭情况</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addFamily()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[6] ? 'warning' : 'success'"
- @click="changeInfoList(6)">{{
- changeFlag[6] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[6]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[6]"
- v-if="familyInfoList && familyInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in familyInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{ item.relation +
- "-"
- }}</span>
- <span style="font-size: 16px;"> {{ item.name
- }}</span>
- <div style="margin-left: auto;">
- <el-button type="text" @click.stop="editFamily(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text" @click.stop="delFamily(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="姓名:">{{
- item.name
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="出生日期:">{{
- handleDateFormatter(item.birthDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="与本人关系名称:">{{ item.relation
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="性别:">{{
- $dictUtils.getDictLabel("sex",
- item.gender, '-')
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="手机号码:">{{
- item.mobile
- }}</el-descriptions-item>
- <!-- <el-descriptions-item label="工作单位:">{{ item.workUnit
- }}</el-descriptions-item>
- <el-descriptions-item label="联系电话:">{{
- item.contactNumber
- }}</el-descriptions-item> -->
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无家庭情况信息"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="表彰与奖励">
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">表彰与奖励</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addReward()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[7] ? 'warning' : 'success'"
- @click="changeInfoList(7)">{{
- changeFlag[7] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[7]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[7]"
- v-if="rewardInfoList && rewardInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in rewardInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{ item.name
- }}</span>
- <span style="font-size: 16px;"> {{ "-" +
- handleDateFormatter(item.rewardDate)
- }}</span>
- <div style="margin-left: auto;">
- <el-button type="text" @click.stop="editReward(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text" @click.stop="delReward(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border :column="2">
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="奖项:">{{
- item.name
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="获奖日期:">{{
- handleDateFormatter(item.rewardDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- :span="2" label="简述:">{{
- item.description
- }}</el-descriptions-item>
- <el-descriptions-item label="附件:">
- <AttachmentView :key="uploadKey" :fileList="item.files">
- </AttachmentView>
- </el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无表彰与奖励"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="社会及行业职务">
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">社会及行业职务</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addSociety()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[9] ? 'warning' : 'success'"
- @click="changeInfoList(9)">{{
- changeFlag[9] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[9]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[9]"
- v-if="societyInfoList && societyInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in societyInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{ item.name }}</span>
- <div style="margin-left: auto;">
- <el-button type="text" @click.stop="editSociety(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text" @click.stop="delSociety(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="职务名称:">{{
- item.name
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="任职开始日期:">{{
- handleDateFormatter(item.startDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="任职开始日期:">{{
- handleDateFormatter(item.endDate)
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="任职机构:">{{
- item.institution
- }}</el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无社会及行业职务信息"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="工作业绩">
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">工作业绩</span>
- <el-divider direction="vertical" />
- <el-button type="primary" @click="addPerformance()"
- :disabled="auditStatus == 2">新增</el-button>
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[10] ? 'warning' : 'success'"
- @click="changeInfoList(10)">{{
- changeFlag[10] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[10]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[10]"
- v-if="performanceInfoList && performanceInfoList.length > 0">
- <div style="padding: 0 30px;" v-for="(item, index) in performanceInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{ item.name }}</span>
- <div style="margin-left: auto;">
- <el-button type="text"
- @click.stop="editPerformance(item)"
- :disabled="auditStatus == 2">修改</el-button>
- <el-button type="text"
- @click.stop="delPerformance(item)"
- style="color: red;"
- :disabled="auditStatus == 2">删除</el-button>
- </div>
- </div>
- </template>
- <el-descriptions title="" border>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="项目名称:">{{
- item.name
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="委托方:">{{
- item.client
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="工程分类:">{{
- item.type
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="规模类型/单位/数量:">{{ item.info
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="担任职务:">{{
- $dictUtils.getDictLabel("position_held",
- item.position,
- '-')
- }}</el-descriptions-item>
- <el-descriptions-item
- :class-name="item.status == '1' ? 'auditInfo' : ''"
- label="参与内容:">{{
- item.participateContent
- }}</el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无工作业绩信息"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="劳动合同">
- <el-card style="width: 100%" shadow="hover" class="card-info">
- <template #header>
- <el-divider content-position="left"><i class="el-icon-document"></i> <span
- style="font-weight: 900; font-size: 16px; color: #606266;">劳动合同</span>
- <!-- <el-button type="primary" @click="addReward()"
- :disabled="auditStatus == 2">新增</el-button> -->
- <el-divider direction="vertical" />
- <el-button :type="changeFlag[8] ? 'warning' : 'success'"
- @click="changeInfoList(8)">{{
- changeFlag[8] ? "收起" : "展开"
- }}</el-button>
- </el-divider>
- </template>
- <el-collapse-transition>
- <el-row :gutter="26" v-if="changeFlag[8]">
- <el-col :span="24">
- <el-collapse v-model="activeNames[8]"
- v-if="laborContractInfoList && laborContractInfoList.length > 0">
- <div style="padding: 0 30px;"
- v-for="(item, index) in laborContractInfoList">
- <el-collapse-item :name="item.id">
- <template #title="{ isActive }">
- <div :class="{
- collapseTitle: true,
- auditInfo: item.status == '1' ? true : false
- }">
- <el-tag
- style="border-color:#e6a23c;background-color: #e6a23c;color: #fff !important;;margin-right: 10px;"
- v-if="item.status == '1'" type="warning">
- 暂存中
- </el-tag>
- <span style="font-size: 16px;"> {{
- $dictUtils.getDictLabel("labor_contract_type",
- item.type, '-')
- }}</span>
- <span style="font-size: 16px;"> {{ "-" +
- $dictUtils.getDictLabel("labor_contract_term",
- item.term,
- '-')
- }}</span>
- </div>
- </template>
- <el-descriptions title="" border :column="2">
- <el-descriptions-item label="合同类型:">{{
- $dictUtils.getDictLabel("labor_contract_type", item.type,
- '-')
- }}</el-descriptions-item>
- <!-- <el-descriptions-item label="合同编号:">{{ item.code
- }}</el-descriptions-item> -->
- <el-descriptions-item label="合同期限:">{{
- $dictUtils.getDictLabel("labor_contract_term",
- item.term,
- '-')
- }}</el-descriptions-item>
- <el-descriptions-item label="合同起始日期:">{{
- handleDateFormatter(item.startDate)
- }}</el-descriptions-item>
- <el-descriptions-item label="合同终止日期:">{{
- handleDateFormatter(item.endDate)
- }}</el-descriptions-item>
- <el-descriptions-item label="试用期结束日期:">{{
- handleDateFormatter(item.trialEndDate)
- }}</el-descriptions-item>
- <!-- <el-descriptions-item label="办理日期:">{{
- handleDateFormatter(item.processeDate)
- }}</el-descriptions-item> -->
- <el-descriptions-item label="附件:">
- <AttachmentView :fileList="item.files">
- </AttachmentView>
- </el-descriptions-item>
- </el-descriptions>
- </el-collapse-item>
- </div>
- </el-collapse>
- <el-empty image-size="80px"
- style="margin-top: 0 !important;padding: 0 !important;" v-else
- description="暂无表彰与奖励"></el-empty>
- </el-col>
- </el-row>
- </el-collapse-transition>
- </el-card>
- </el-tab-pane>
- <el-tab-pane label="上传头像">
- <el-form :model="photoForm" ref="photoForm" label-width="100px">
- <el-form-item prop="photo">
- <image-select v-model="photoForm.photo" round icon="el-icon-avatar"
- title="头像"></image-select>
- </el-form-item>
- <!-- <el-form-item>
- <el-button style="width: 148px" type="primary" @click="submitPhotoForm()">保存</el-button>
- </el-form-item> -->
- </el-form>
- </el-tab-pane>
- <!-- <el-tab-pane label="联系方式">
- <el-form :model="concatForm" ref="concatForm" label-width="100px">
- <el-form-item label="手机" prop="mobile" :rules="[
- {
- validator: validator.isMobile,
- trigger: 'blur',
- },
- ]">
- <el-input v-model="concatForm.mobile"></el-input>
- </el-form-item>
- <el-form-item label="电话" prop="phone" :rules="[
- {
- validator: validator.isPhone,
- trigger: 'blur',
- },
- ]">
- <el-input v-model="concatForm.phone"></el-input>
- </el-form-item>
- <!– <el-form-item>
- <el-button type="primary" @click="submitConcatForm()">保存</el-button>
- </el-form-item> –>
- </el-form>
- </el-tab-pane>-->
- <!--<el-tab-pane label="修改密码">
- <el-form
- :rules="dataRule"
- :model="pwdForm"
- ref="pwdForm"
- label-width="100px"
- >
- <el-form-item
- label="旧密码"
- :rules="[
- {
- required: true,
- message: '必填项不能为空',
- trigger: 'blur',
- },
- ]"
- prop="oldPassword"
- >
- <el-input
- v-model="pwdForm.oldPassword"
- show-password
- ></el-input>
- </el-form-item>
- <el-form-item
- label="新密码"
- :rules="[
- {
- required: true,
- message: '必填项不能为空',
- trigger: 'blur',
- },
- ]"
- prop="newPassword"
- >
- <el-input
- v-model="pwdForm.newPassword"
- show-password
- ></el-input>
- </el-form-item>
- <el-form-item
- label="确认新密码"
- :rules="rule"
- prop="confirmNewPassword"
- >
- <el-input
- v-model="pwdForm.confirmNewPassword"
- show-password
- ></el-input>
- </el-form-item>
- <el-form-item>
- <el-button
- type="primary"
- @click="submitPwdForm()"
- >保存</el-button
- >
- </el-form-item>
- </el-form>
- </el-tab-pane>-->
- <!--<el-tab-pane label="我的日志">
- <el-menu
- default-active="1"
- mode="horizontal"
- @select="changeLog"
- >
- <el-menu-item index="1">
- <template #title>登陆日志</template>
- </el-menu-item>
- <el-menu-item index="2">
- <template #title>访问日志</template>
- </el-menu-item>
- </el-menu>
- <vxe-table
- auto-resize
- resizable
- height="400px"
- :loading="loading"
- size="mini"
- ref="logTable"
- show-header-overflow
- show-overflow
- highlight-hover-row
- :menu-config="{}"
- :print-config="{}"
- :import-config="{}"
- :export-config="{}"
- @sort-change="sortChangeHandle"
- :sort-config="{ remote: true }"
- :data="dataList"
- :checkbox-config="{}"
- >
- <vxe-column type="seq" width="40"></vxe-column>
- <vxe-column
- title="操作菜单"
- field="title"
- sortable
- ></vxe-column>
- <vxe-column
- title="耗时(毫秒)"
- field="recordTime"
- sortable
- ></vxe-column>
- <vxe-column
- title="请求参数"
- field="params"
- sortable
- ></vxe-column>
- <vxe-column
- title="返回结果"
- field="result"
- sortable
- ></vxe-column>
- <vxe-column
- title="公司"
- field="createBy.companyDTO.name"
- sort-by="c.name"
- sortable
- ></vxe-column>
- <vxe-column
- title="部门"
- field="createBy.officeDTO.name"
- sort-by="o.name"
- sortable
- ></vxe-column>
- <vxe-column
- title="用户"
- field="createBy.name"
- sort-by="u.name"
- sortable
- ></vxe-column>
- <vxe-column
- title="IP地址"
- field="remoteAddr"
- sortable
- ></vxe-column>
- <vxe-column
- title="访问时间"
- field="createTime"
- sort-by="a.create_time"
- sortable
- ></vxe-column>
- </vxe-table>
- <vxe-pager
- background
- size="mini"
- :current-page="tablePage.currentPage"
- :page-size="tablePage.pageSize"
- :total="tablePage.total"
- :page-sizes="[
- 10,
- 20,
- 100,
- 1000,
- { label: '全量数据', value: 1000000 },
- ]"
- :layouts="[
- 'PrevPage',
- 'JumpNumber',
- 'NextPage',
- 'FullJump',
- 'Sizes',
- 'Total',
- ]"
- @page-change="currentChangeHandle"
- >
- </vxe-pager>
- </el-tab-pane>-->
- </el-tabs>
- </el-card>
- </el-main>
- <!-- 教育经历 -->
- <EducationInfo ref="EducationInfo" @addEduInfo="handleAddEduInfo"></EducationInfo>
- <!-- 工作经历 -->
- <WorkInfo ref="WorkInfo" @addWorkInfo="handleAddWorkInfo"></WorkInfo>
- <!-- 培训经历 -->
- <TrainingInfo ref="TrainingInfo" @addTrainingInfo="handleAddTrainingInfo"></TrainingInfo>
- <!-- 执业资格证书 -->
- <CertificateInfo ref="certificateInfo" @addCertificateInfo="handleAddCertificateInfo"></CertificateInfo>
- <!-- 职称证书 -->
- <SkillInfo ref="skillInfo" @addSkillInfo="handleAddSkillInfo"></SkillInfo>
- <!--外语语种 -->
- <LanguageInfo ref="languageInfo" @addLanguageInfo="handleAddLanguageInfo"></LanguageInfo>
- <!-- 家庭情况 -->
- <FamilyInfo ref="familyInfo" @addFamilyInfo="handleAddFamilyInfo"></FamilyInfo>
- <!-- 表彰与奖励 -->
- <RewardInfo ref="rewardInfo" @addRewardInfo="handleAddRewardInfo"></RewardInfo>
- <!-- 社会及行业职务 -->
- <SocietyInfo ref="societyInfo" @addSocietyInfo="handleAddSocietyInfo"></SocietyInfo>
- <!-- 工作业绩 -->
- <PerformanceInfo ref="performanceInfo" @addPerformanceInfo="handleAddPerformanceInfo"></PerformanceInfo>
- </el-container>
- </template>
- <script>
- import colorTool from "@/utils/color";
- import userService from "@/api/sys/userService";
- import logService from "@/api/sys/logService";
- import postService from "@/api/sys/postService";
- import roleService from "@/api/sys/roleService";
- import enrollmentRegistrationService from '@/api/human/enrollment/EnrollmentRegistrationService'
- import SelectTree from '@/components/treeSelect/treeSelect.vue'
- import dayjs from 'dayjs'
- import EducationInfo from "./components/EducationInfo";
- import WorkInfo from "./components/WorkInfo";
- import TrainingInfo from "./components/TrainingInfo";
- import CertificateInfo from "./components/CertificateInfo";
- import SkillInfo from "./components/SkillInfo";
- import LanguageInfo from "./components/LanguageInfo";
- import FamilyInfo from "./components/FamilyInfo";
- import RewardInfo from "./components/RewardInfo";
- import SocietyInfo from "./components/SocietyInfo";
- import PerformanceInfo from "./components/PerformanceInfo";
- import AttachmentView from './components/AttachmentView'
- import UpLoadComponent from '@/views/common/SFZUpLoadComponent'
- import processService from '@/api/flowable/processService'
- import taskService from '@/api/flowable/taskService'
- import OSSSerivce, {
- httpRequest,
- fileName,
- toHref,
- } from '@/api/sys/OSSService'
- import { flow } from "lodash";
- export default {
- components: {
- SelectTree,
- EducationInfo,
- WorkInfo,
- TrainingInfo,
- CertificateInfo,
- SkillInfo,
- LanguageInfo,
- FamilyInfo,
- RewardInfo,
- SocietyInfo,
- PerformanceInfo,
- AttachmentView,
- UpLoadComponent
- },
- data() {
- var validatePass2 = (rule, value, callback) => {
- if (value !== this.pwdForm.newPassword) {
- callback(new Error("两次输入密码不一致!"));
- } else {
- callback();
- }
- };
- return {
- activeName: "basicInfo",
- rejectMessage: "无",
- uploadKey: "",
- fileType: ['jpg', 'jpeg', 'png', 'webp'],
- bankHideUploadEdit: false, //控制上传点击
- bankHideUploadEdit2: false, //控制上传点击
- bankFileList: [],
- bankFileList2: [],
- bankDialogVisible: false,
- bankDialogVisible2: false,
- gsDialogVisible: false,
- gsDialogVisible2: false,
- gsHideUploadEdit: false, //控制上传点击
- gsHideUploadEdit2: false, //控制上传点击
- gsFileList: [],
- gsFileList2: [],
- hideUploadEdit: false, //隐藏上传按钮
- hideUploadEdit2: false, //隐藏上传按钮
- limitNum: 1,
- fileList: [],
- fileList2: [],
- dialogImageUrl: '',
- dialogVisible: false,
- dialogVisible2: false,
- disabled: false,
- ossService: null,
- roleList: [],
- postList: [],
- fileList: [],
- fileList2: [],
- type: "1",
- colorList: [
- "#409EFF",
- "#009688",
- "#536dfe",
- "#ff5c93",
- "#c62f2f",
- "#fd726d",
- ],
- config: {
- lang: this.$TOOL.data.get("APP_LANG") || this.$CONFIG.LANG,
- theme: this.$TOOL.data.get("APP_THEME") || "default",
- colorPrimary:
- this.$TOOL.data.get("APP_COLOR") ||
- this.$CONFIG.COLOR ||
- "#409EFF",
- },
- userInfo: {},
- generalForm: {
- id: "",
- name: "",
- sign: "",
- loginName: "",
- companyDTO: {
- name: "",
- },
- officeDTO: {
- name: "",
- },
- remarks: "",
- wageCardId: '',//银行卡信息id
- zxBankCardNumber: '',//银行卡信息
- zxAccountHolder: '',
- accountHolderFront: '',
- accountHolderFrontUrl: '',
- accountHolderOpposite: '',
- accountHolderOppositeUrl: '',
- gsAccountHolder: '',
- gsBankCardNumber: '',
- gsAccountHolderFront: '',
- gsAccountHolderFrontUrl: '',
- gsAccountHolderOpposite: '',
- gsAccountHolderOppositeUrl: '',
- id: '',
- userId: '',
- name: '', //姓名
- sex: '', // 性别
- age: '',//年龄
- birthday: '',//生日
- joinIndustryDate: null, // 参加工作日期
- joinWorkDate: null, // 参加行业日期
- politicalOutlook: '',//政治面貌
- nativePlace: '',//籍贯
- nation: '', //民族
- maritalStatus: '',//婚姻
- mobilePhone: '',//联系电话
- idCard: '', //身份证
- idCardFront: [],
- idCardBack: [],
- homeAddress: '',//家庭住址
- permanentAddress: '',//常驻地址
- email: "",
- graduatedFrom: '',
- speciality: '',
- startTime: '',
- endTime: '',
- education: '',
- educationNature: '',
- graduatedOrNot: '',
- englishLevel: '',
- ncre: '',
- department: '',
- entryDate: '',
- contractStartDate: '',
- contractEndDate: '',
- remarks: '',
- type: '',
- onJobStatus: '',
- socialSecurityNumber: '',
- socialSecurityBankNumber: '',
- socialSecurityPictureFront: '',
- socialSecurityPictureFrontUrl: '',
- socialSecurityPictureOpposite: '',
- socialSecurityPictureOppositeUrl: '',
- roleIdList: [],
- postIdList: [],
- ddId: '',
- registrationId: "",
- status: ""
- },
- concatForm: {
- id: "",
- email: "",
- phone: "",
- mobile: "",
- },
- photoForm: {
- id: "",
- photo: "",
- },
- pwdForm: {
- id: this.$store.state.user.id,
- oldPassword: "",
- newPassword: "",
- confirmNewPassword: "",
- },
- dataRule: {
- password: [
- { required: true, message: '原密码不能为空', trigger: 'blur' }
- ],
- newPassword: [
- { required: true, message: '新密码不能为空', trigger: 'blur' },
- {
- validator: (rule, value, callback) => {
- const passwordRegex = /^(?=(.*[A-Z]))(?=(.*[a-z]))(?=(.*\d))|(?=(.*[A-Z]))(?=(.*[a-z]))(?=(.*[!@#$%^&*.,]))|(?=(.*[A-Z]))(?=(.*\d))(?=(.*[!@#$%^&*.,]))|(?=(.*[a-z]))(?=(.*\d))(?=(.*[!@#$%^&*.,]))[A-Za-z\d!@#$%^&*.,]{8,20}$/;
- if (!value) {
- callback(new Error('新的密码不能为空'));
- } else if (!passwordRegex.test(value)) {
- callback(new Error('密码必须包含大写字母、小写字母、数字或特殊字符中的三种,且长度为8到20个字符'));
- } else {
- callback(); // 验证通过
- }
- },
- trigger: 'blur'
- }
- ],
- confirmNewPassword: [
- { required: true, message: '确认密码不能为空', trigger: 'blur' },
- { validator: validatePass2, trigger: 'blur' },
- {
- validator: (rule, value, callback) => {
- const passwordRegex = /^(?=(.*[A-Z]))(?=(.*[a-z]))(?=(.*\d))|(?=(.*[A-Z]))(?=(.*[a-z]))(?=(.*[!@#$%^&*.,]))|(?=(.*[A-Z]))(?=(.*\d))(?=(.*[!@#$%^&*.,]))|(?=(.*[a-z]))(?=(.*\d))(?=(.*[!@#$%^&*.,]))[A-Za-z\d!@#$%^&*.,]{8,20}$/;
- if (!value) {
- callback(new Error('确认密码不能为空'));
- } else if (!passwordRegex.test(value)) {
- callback(new Error('密码必须包含大写字母、小写字母、数字或特殊字符中的三种,且长度为8到20个字符'));
- } else {
- callback(); // 验证通过
- }
- },
- trigger: 'blur'
- }
- ]
- },
- dataList: [],
- tablePage: {
- total: 0,
- currentPage: 1,
- pageSize: 10,
- orders: [{ column: "a.create_time", asc: false }],
- },
- loading: false,
- rule: [
- { required: true, message: "必填项不能为空", trigger: "blur" },
- { validator: validatePass2, trigger: "blur" },
- ],
- changeFlag: [
- true, true, true, true, true, true, true, true, true, true, true
- ],
- activeNames: [],
- //教育经历
- eduInfoList: [
- ],
- // 工作经历
- workInfoList: [
- ],
- // 培训经历
- trainingInfoList: [
- ],
- // 资质证书
- certificateInfoList: [
- ],
- // 专业技能
- skillInfoList: [
- ],
- languageInfoList: [
- ],
- familyInfoList: [
- ],
- rewardInfoList: [
- ],
- societyInfoList: [],
- performanceInfoList: [],
- laborContractInfoList: [],
- auditStatus: "0",
- flowData: [],
- procInsId: ""
- };
- },
- created() {
- this.ossService = new OSSSerivce()
- this.userInfo = this.$TOOL.data.get("USER_INFO");
- var userId = this.userInfo.id;
- if (userId) {
- this.getDataInfo(userId)
- // this.refreshList(userId);
- }
- },
- computed: {
- userId() {
- return this.$store.state.user.id
- }
- },
- watch: {
- "config.theme"(val) {
- document.body.setAttribute("data-theme", val);
- this.$TOOL.data.set("APP_THEME", val);
- },
- "config.lang"(val) {
- this.$i18n.locale = val;
- this.$TOOL.data.set("APP_LANG", val);
- },
- "config.colorPrimary"(val) {
- colorTool.setAppColors(val);
- this.$TOOL.data.set("APP_COLOR", val);
- },
- },
- methods: {
- getDataInfo(userId) {
- this.loading = true
- enrollmentRegistrationService.getUserInfoAudit({ userId: userId }).then(res => {
- if (res) {
- this.procInsId = res.procInsId
- if (res.procInsId) {
- taskService.historicTaskList(
- res.procInsId
- ).then(result => {
- if (res.status == 4) {
- let rejectObj = result.find(temp => {
- return temp.comment.status == "驳回"
- })
- if (rejectObj && rejectObj.comment.message != "") {
- this.rejectMessage = rejectObj.comment.message
- }
- } else if (res.status == 2) {
- this.flowData = result
- // this.$refs.flowRef.setCurrentRow(this.flowData[this.flowData.length - 1]);
- }
- })
- }
- //审核中就展示提交审核的信息
- if (res.status == 2 || res.status == 4) {
- this.auditStatus = res.status
- this.initAudit(res.id, res.status)
- // 完成审核或者已经驳回,就展示最终信息
- } else if (res.status == 1) {
- this.auditStatus = "6"
- this.initAudit(res.id, res.status)
- } else {
- this.auditStatus = "5"
- userService.queryById(userId).then((data) => {
- // this.recover(this.generalForm, data);
- this.recover(this.concatForm, data);
- this.recover(this.photoForm, data);
- });
- this.init(userId)
- }
- } else {
- this.auditStatus = "6"
- userService.queryById(userId).then((data) => {
- // this.recover(this.generalForm, data);
- this.recover(this.concatForm, data);
- this.recover(this.photoForm, data);
- });
- this.init(userId)
- }
- }).catch(() => {
- this.loading = false
- })
- },
- init(userId) {
- this.loading = true;
- enrollmentRegistrationService.findInfoByUserId(userId).then(async (data) => {
- this.fileList = []
- this.fileList2 = []
- this.generalForm = this.recover(this.generalForm, data)
- this.generalForm = JSON.parse(JSON.stringify(this.generalForm))
- if (this.commonJS.isEmpty(this.generalForm.roleIdList)) {
- this.generalForm.roleIdList = []
- }
- if (this.commonJS.isEmpty(this.generalForm.postIdList)) {
- this.generalForm.postIdList = []
- }
- // 教育经历
- if (this.commonJS.isNotEmpty(data.eduInfoList)) {
- this.eduInfoList = data.eduInfoList
- }
- // 工作经历
- if (this.commonJS.isNotEmpty(data.workInfoList)) {
- this.workInfoList = data.workInfoList
- }
- // 培训经历
- if (this.commonJS.isNotEmpty(data.trainingInfoList)) {
- this.trainingInfoList = data.trainingInfoList
- }
- // 资质证书
- if (this.commonJS.isNotEmpty(data.certificateInfoList)) {
- this.certificateInfoList = data.certificateInfoList
- }
- // 专业技能
- if (this.commonJS.isNotEmpty(data.skillInfoList)) {
- this.skillInfoList = data.skillInfoList
- }
- // 外语语种
- if (this.commonJS.isNotEmpty(data.languageInfoList)) {
- this.languageInfoList = data.languageInfoList
- }
- // 家庭情况
- if (this.commonJS.isNotEmpty(data.familyInfoList)) {
- this.familyInfoList = data.familyInfoList
- }
- // 表彰与奖励
- if (this.commonJS.isNotEmpty(data.rewardInfoList)) {
- this.rewardInfoList = data.rewardInfoList
- }
- // 劳动合同
- if (this.commonJS.isNotEmpty(data.laborContractInfoList)) {
- this.laborContractInfoList = data.laborContractInfoList
- }
- // 社会及行业职务
- if (this.commonJS.isNotEmpty(data.societyInfoList)) {
- this.societyInfoList = data.societyInfoList
- }
- //工作业绩
- if (this.commonJS.isNotEmpty(data.performanceInfoList)) {
- this.performanceInfoList = data.performanceInfoList
- }
- if (this.commonJS.isEmpty(this.generalForm.idCardFront)) {
- this.generalForm.idCardFront = []
- }
- if (this.commonJS.isEmpty(this.generalForm.idCardBack)) {
- this.generalForm.idCardBack = []
- }
- this.certificateInfoList.forEach(temp => {
- this.changeType(temp.type, temp)
- })
- this.activeNames[0] = this.eduInfoList.map(item => item.id)
- this.activeNames[1] = this.workInfoList.map(item => item.id)
- this.activeNames[2] = this.trainingInfoList.map(item => item.id)
- this.activeNames[3] = this.certificateInfoList.map(item => item.id)
- this.activeNames[4] = this.skillInfoList.map(item => item.id)
- this.activeNames[5] = this.languageInfoList.map(item => item.id)
- this.activeNames[6] = this.familyInfoList.map(item => item.id)
- this.activeNames[7] = this.rewardInfoList.map(item => item.id)
- this.activeNames[8] = this.laborContractInfoList.map(item => item.id)
- this.activeNames[9] = this.societyInfoList.map(item => item.id)
- this.activeNames[10] = this.performanceInfoList.map(item => item.id)
- //后面的fileType是限制上传类型
- this.$refs.idCardBack.clearUpload()
- this.$refs.idCardFront.clearUpload()
- this.$refs.idCardFront.newUpload('edit', this.generalForm.idCardFront, 'idCard', null, null, null, null, null, [...this.fileType])
- this.$refs.idCardBack.newUpload('edit', this.generalForm.idCardBack, 'idCard', null, null, null, null, null, [...this.fileType])
- if (this.commonJS.isNotEmpty(this.generalForm.socialSecurityPictureFront)) {
- await this.ossService.getTemporaryUrl(this.generalForm.socialSecurityPictureFront).then((data) => {
- let file = {
- url: data
- }
- this.fileList.push(file)
- })
- }
- if (this.commonJS.isNotEmpty(this.generalForm.socialSecurityPictureOpposite)) {
- await this.ossService.getTemporaryUrl(this.generalForm.socialSecurityPictureOpposite).then((data) => {
- let file = {
- url: data
- }
- this.fileList2.push(file)
- })
- }
- if (this.commonJS.isNotEmpty(this.generalForm.accountHolderFront)) {
- await this.ossService.getTemporaryUrl(this.generalForm.accountHolderFront).then((data) => {
- console.log('data', data)
- let file = {
- url: data
- }
- this.bankFileList.push(file)
- })
- }
- if (this.commonJS.isNotEmpty(this.generalForm.accountHolderOpposite)) {
- console.log('123')
- await this.ossService.getTemporaryUrl(this.generalForm.accountHolderOpposite).then((data) => {
- let file = {
- url: data
- }
- this.bankFileList2.push(file)
- })
- }
- if (this.commonJS.isNotEmpty(this.generalForm.gsAccountHolderFront)) {
- await this.ossService.getTemporaryUrl(this.generalForm.gsAccountHolderFront).then((data) => {
- let file = {
- url: data
- }
- this.gsFileList.push(file)
- })
- }
- if (this.commonJS.isNotEmpty(this.generalForm.gsAccountHolderOpposite)) {
- await this.ossService.getTemporaryUrl(this.generalForm.gsAccountHolderOpposite).then((data) => {
- let file = {
- url: data
- }
- this.gsFileList2.push(file)
- })
- }
- if (this.generalForm.type == 5) {
- roleService.list2(this.generalForm.department).then((data) => {
- this.roleList = data
- })
- postService.list2(this.generalForm.department).then((data) => {
- this.postList = data
- })
- }
- this.uploadKey = Date.now().toString();
- this.loading = false
- }).catch(err => {
- this.loading = false;
- })
- },
- initAudit(id, status) {
- this.generalForm = {
- id: '',
- userId: '',
- name: '', //姓名
- sex: '', // 性别
- age: '',//年龄
- birthday: '',//生日
- joinIndustryDate: null, // 参加工作日期
- joinWorkDate: null, // 参加行业日期
- politicalOutlook: '',//政治面貌
- nativePlace: '',//籍贯
- nation: '', //民族
- maritalStatus: '',//婚姻
- mobilePhone: '',//联系电话
- idCard: '', //身份证
- idCardFront: [],
- idCardBack: [],
- homeAddress: '',//家庭住址
- permanentAddress: '',//常驻地址
- email: "",
- registrationId: "",
- status: ""
- }
- this.generalForm.id = id
- this.visible = true
- this.loading = false
- this.$nextTick(() => {
- this.loading = true
- enrollmentRegistrationService.findAuditInfoById(
- {
- id: this.generalForm.id,
- status: status
- }
- ).then(async (data) => {
- this.generalForm = this.recover(this.generalForm, data)
- this.generalForm = JSON.parse(JSON.stringify(this.generalForm))
- this.eduInfoList = data.eduInfoList
- this.certificateInfoList = data.certificateInfoList
- this.skillInfoList = data.skillInfoList
- this.familyInfoList = data.familyInfoList
- this.languageInfoList = data.languageInfoList
- this.trainingInfoList = data.trainingInfoList
- this.rewardInfoList = data.rewardInfoList
- this.laborContractInfoList = data.laborContractInfoList
- this.workInfoList = data.workInfoList
- this.societyInfoList = data.societyInfoList
- this.performanceInfoList = data.performanceInfoList
- this.concatForm.email = data.email
- this.activeNames[0] = this.eduInfoList.map(item => item.id)
- this.activeNames[1] = this.workInfoList.map(item => item.id)
- this.activeNames[2] = this.trainingInfoList.map(item => item.id)
- this.activeNames[3] = this.certificateInfoList.map(item => item.id)
- this.activeNames[4] = this.skillInfoList.map(item => item.id)
- this.activeNames[5] = this.languageInfoList.map(item => item.id)
- this.activeNames[6] = this.familyInfoList.map(item => item.id)
- this.activeNames[7] = this.rewardInfoList.map(item => item.id)
- this.activeNames[8] = this.laborContractInfoList.map(item => item.id)
- this.activeNames[9] = this.societyInfoList.map(item => item.id)
- this.activeNames[10] = this.performanceInfoList.map(item => item.id)
- if (this.commonJS.isEmpty(this.generalForm.idCardFront)) {
- this.generalForm.idCardFront = []
- }
- if (this.commonJS.isEmpty(this.generalForm.idCardBack)) {
- this.generalForm.idCardBack = []
- }
- //后面的fileType是限制上传类型
- let method = ""
- if (this.auditStatus == 2) {
- method = "view"
- }
- if (this.auditStatus == 4) {
- method = "edit"
- }
- this.certificateInfoList.forEach(temp => {
- this.changeType(temp.type, temp)
- })
- this.$refs.idCardFront.clearUpload()
- this.$refs.idCardBack.clearUpload()
- this.$refs.idCardFront.newUpload(method, this.generalForm.idCardFront, 'idCard', null, null, null, null, null, [...this.fileType])
- this.$refs.idCardBack.newUpload(method, this.generalForm.idCardBack, 'idCard', null, null, null, null, null, [...this.fileType])
- this.uploadKey = Date.now().toString();
- this.loading = false
- })
- })
- },
- async submitGeneralForm() {
- let valid = await this.$refs["generalForm"].validate();
- if (valid) {
- const loading = this.$loading();
- let data = await userService.saveInfo(this.generalForm);
- let { user } = await userService.info();
- this.userInfo = user;
- this.$TOOL.data.set("USER_INFO", user);
- loading.close();
- this.$message.success(data);
- }
- },
- async submitConcatForm() {
- // let valid = await this.$refs["concatForm"].validate();
- // if (valid) {
- const loading = this.$loading();
- let data = await userService.saveInfo(this.concatForm);
- let { user } = await userService.info();
- this.userInfo = user;
- // this.$TOOL.data.set("USER_INFO", user);
- localStorage.setItem("USER_INFO", JSON.stringify(user))
- loading.close();
- // this.$message.success(data);
- // }
- },
- async submitUserInfo() {
- this.$confirm('确定提交审批吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- if (this.$refs.idCardFront.checkProgress() || this.$refs.idCardBack.checkProgress()) {
- return
- }
- if (this.$refs.idCardFront.getDataList().length == 0 || this.$refs.idCardBack.getDataList().length == 0) {
- this.$message.error("请确保已完整上传身份证正反面照片,再进行提交")
- return
- }
- // if (!this.generalForm.idCard || this.generalForm.idCard == "" || this.generalForm.idCard == null) {
- // this.$message.error("身份证号码未填写")
- // return
- // }
- this.$refs['generalForm'].validate((valid) => {
- if (valid) {
- this.loading = true
- this.submitConcatForm()
- this.submitPhotoForm()
- this.generalForm.idCardFront = this.$refs.idCardFront.getDataList()
- this.generalForm.idCardBack = this.$refs.idCardBack.getDataList()
- this.generalForm.email = this.concatForm.email
- this.generalForm.eduInfoList = this.eduInfoList
- this.generalForm.workInfoList = this.workInfoList
- this.generalForm.certificateInfoList = this.certificateInfoList
- this.generalForm.skillInfoList = this.skillInfoList
- this.generalForm.rewardInfoList = this.rewardInfoList
- this.generalForm.familyInfoList = this.familyInfoList
- this.generalForm.trainingInfoList = this.trainingInfoList
- this.generalForm.languageInfoList = this.languageInfoList
- this.generalForm.societyInfoList = this.societyInfoList
- this.generalForm.performanceInfoList = this.performanceInfoList
- enrollmentRegistrationService.updateInfoAudit(this.generalForm).then((data) => {
- this.close()
- this.$message.success(data.msg)
- this.$refs.idCardBack.clearUpload()
- this.$refs.idCardFront.clearUpload()
- this.getDataInfo(this.userInfo.id)
- this.loading = false
- }).catch(() => {
- this.loading = false
- })
- } else {
- if (!this.generalForm.idCard || this.generalForm.idCard == "" || this.generalForm.idCard == null) {
- this.$message.error("身份证号码未填写")
- }
- this.activeName = "basicInfo"
- }
- })
- }).catch(() => {
- });
- },
- async updateInfoTemporary() {
- this.$confirm('确定暂存信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- this.loading = true
- this.submitConcatForm()
- this.submitPhotoForm()
- this.generalForm.idCardFront = this.$refs.idCardFront.getDataList()
- this.generalForm.idCardBack = this.$refs.idCardBack.getDataList()
- this.generalForm.email = this.concatForm.email
- enrollmentRegistrationService.updateInfoTemporary(this.generalForm).then((data) => {
- this.close()
- this.$message.success(data.msg)
- this.$refs.idCardBack.clearUpload()
- this.$refs.idCardFront.clearUpload()
- this.getDataInfo(this.userInfo.id)
- this.loading = false
- }).catch(() => {
- this.loading = false
- })
- }).catch(() => {
- });
- },
- close() {
- this.$refs.generalForm.resetFields()
- this.fileList = []
- this.fileList2 = []
- this.bankFileList = []
- this.bankFileList2 = []
- this.gsFileList = []
- this.gsFileList2 = []
- this.visible = false
- },
- async submitPhotoForm() {
- const loading = this.$loading();
- let data = await userService.saveInfo(this.photoForm);
- let { user } = await userService.info();
- this.userInfo = user;
- this.$TOOL.data.set("USER_INFO", user);
- loading.close();
- // this.$message.success(data);
- },
- async submitPwdForm() {
- console.log(this.pwdForm)
- let valid = await this.$refs["pwdForm"].validate();
- console.log(valid)
- if (valid) {
- const loading = this.$loading();
- try {
- let data = await userService.saveInfo(this.pwdForm); // 可能抛出错误的请求
- // 更新用户信息
- let { user } = await userService.info();
- this.userInfo = user;
- this.$TOOL.data.set("USER_INFO", user);
- this.$message.success(data); // 成功信息提示
- } catch (error) {
- // 捕获请求中的异常
- /*if (error.response && error.response.status === 400) {
- // 使用后端返回的错误信息提示用户
- this.$message.error(error.response.data); // 比如 "修改密码失败,旧密码错误!"
- } else {
- this.$message.error("请求失败,请稍后重试");
- console.error("请求失败", error);
- }*/
- } finally {
- loading.close(); // 确保 loading 状态关闭
- }
- }
- }
- ,
- // 获取数据列表
- refreshList() {
- this.loading = true;
- logService
- .mine({
- current: this.tablePage.currentPage,
- size: this.tablePage.pageSize,
- orders: this.tablePage.orders,
- })
- .then((data) => {
- this.dataList = data.records;
- this.tablePage.total = data.total;
- this.loading = false;
- });
- },
- changeLog(index) {
- this.type = index;
- this.refreshList();
- },
- // 当前页
- currentChangeHandle({ currentPage, pageSize }) {
- this.tablePage.currentPage = currentPage;
- this.tablePage.pageSize = pageSize;
- this.refreshList();
- },
- // 排序
- sortChangeHandle(obj) {
- this.tablePage.orders = [];
- if (obj.order != null) {
- this.tablePage.orders.push({
- column:
- obj.column.sortBy || this.$utils.toLine(obj.property),
- asc: obj.order === "asc",
- });
- } else {
- this.tablePage.orders = [
- { column: "a.create_time", asc: false },
- ];
- }
- this.refreshList();
- },
- //身份证号码唯一性判断
- idCardOnly(idCard, id) {
- enrollmentRegistrationService.findIdCardOnly(idCard, this.userInfo.id).then((data) => {
- if (data != 0) {
- this.$message.error('身份证号码已存在,请重新确认')
- this.generalForm.idCard = ''
- throw new Error('身份证号码已存在,请重新确认')
- } else {
- let sex = null
- let birth = null
- let myDate = new Date()
- let month = myDate.getMonth() + 1
- let day = myDate.getDate()
- let age = 0
- if (idCard.length === 18) {
- let birthMonth = parseInt(idCard.substring(10, 12))
- let birthDay = parseInt(idCard.substring(12, 14))
- age = myDate.getFullYear() - idCard.substring(6, 10) - 1
- sex = idCard.substring(16, 17)
- birth = idCard.substring(6, 10) + '-' + idCard.substring(10, 12) + '-' + idCard.substring(12, 14)
- // eslint-disable-next-line no-mixed-operators
- if (birthMonth < month ||
- (birthMonth === month && birthDay <= day)) {
- age++;
- }
- }
- if (idCard.length === 15) {
- age = myDate.getFullYear() - idCard.substring(6, 8) - 1901
- sex = idCard.substring(13, 14)
- birth = '19' + idCard.substring(6, 8) + '-' + idCard.substring(8, 10) + '-' + idCard.substring(10, 12)
- // eslint-disable-next-line no-mixed-operators
- if (idCard.substring(8, 10) < month || idCard.substring(8, 10) === month && idCard.substring(10, 12) <= day) age++
- }
- if (sex % 2 === 0) {
- sex = '2' // 性别代码 1代表男,2代表女,暂时不涉及其他类型性别
- } else {
- sex = '1'
- }
- //获取户籍所在地
- const regionCode = idCard.substring(0, 6);
- this.generalForm.nativePlace = regionCode
- this.generalForm.age = age
- this.generalForm.sex = sex
- this.generalForm.birthday = birth
- return { age, sex, birth }
- }
- })
- },
- //联系电话唯一性判断
- mobilePhoneOnly(mobilePhone) {
- if (!this.validateXG.isPhoneOrMobile(mobilePhone)) {
- this.$message.error('”联系电话“填写不正确,请重新填写')
- this.loading = false
- this.generalForm.mobilePhone = ''
- throw new Error('”联系电话“填写不正确,请重新填写')
- }
- enrollmentRegistrationService.findMobilePhoneOnly(mobilePhone).then((data) => {
- if (data !== 0) {
- this.$message.error('联系电话已存在,请重新确认')
- this.generalForm.mobilePhone = ''
- throw new Error('联系电话已存在,请重新确认')
- }
- })
- },
- //邮箱验证
- checkEmail(email) {
- if (!this.validateXG.isEmail(email)) {
- this.$message.error('邮箱格式不正确,请重新填写')
- this.loading = false
- this.concatForm.email = ''
- throw new Error('邮箱格式不正确,请重新填写')
- }
- },
- checkBankNumber(bankNumber, type) {
- if (!this.validateXG.isBankNum(bankNumber)) {
- if (type === 'zx') {
- this.generalForm.zxBankCardNumber = ''
- } else if (type === 'gs') {
- this.generalForm.gsBankCardNumber = ''
- } else {
- this.$message.error('请输入正确的社保银行卡号')
- this.generalForm.socialSecurityBankNumber = ''
- throw new Error('请输入正确的社保银行卡号')
- }
- this.$message.error('请输入正确的银行卡号')
- throw new Error('请输入正确的银行卡号')
- }
- },
- handleAvatarSuccess(res, file, fileList, index, val) {
- console.log('foleList', fileList)
- if (val === 'front') {
- this.generalForm.socialSecurityPictureFront = '/' + res.url
- this.generalForm.socialSecurityPictureFrontUrl = res.lsUrl
- console.log('res.url', res.url)
- console.log('res.lsUrl', res.lsUrl)
- }
- this.hideUploadEdit = true
- this.$forceUpdate()
- },
- handleAvatarSuccess2(res, file, fileList, index, val) {
- console.log('foleList', fileList)
- if (val === 'front') {
- this.generalForm.socialSecurityPictureOpposite = '/' + res.url
- this.generalForm.socialSecurityPictureOppositeUrl = res.lsUrl
- }
- this.hideUploadEdit = true
- this.$forceUpdate()
- },
- onPreview(url) {
- if (url !== '' && url !== undefined && url !== null) {
- this.url = url
- this.showViewer = true
- }
- },
- checkIsPic(file) {
- return this.commonJS.isPic(file)
- },
- validateInput() {
- // 使用正则表达式验证输入内容,禁止中文
- this.generalForm.socialSecurityNumber = this.generalForm.socialSecurityNumber.replace(/[\u4e00-\u9fa5]/g, '');
- },
- handleUploadSuccess(response, file, fileList) {
- return this.handleAvatarSuccess(response, file, fileList, null, 'front')
- },
- handleUploadSuccess2(response, file, fileList) {
- return this.handleAvatarSuccess2(response, file, fileList, null, 'front')
- },
- bankHandleUploadSuccess(response, file, fileList) {
- return this.bankHandleAvatarSuccess(response, file, fileList, null, 'front')
- },
- bankHandleAvatarSuccess(res, file, fileList, index, val) {
- if (val === 'front') {
- this.generalForm.accountHolderFront = '/' + res.url
- this.generalForm.accountHolderFrontUrl = res.lsUrl
- }
- this.bankHideUploadEdit = true
- this.$forceUpdate()
- },
- bankHandlePictureCardPreview(file) {
- this.generalForm.accountHolderFrontUrl = file.url
- this.bankDialogVisible = true;
- },
- bankHandleDownload(file) {
- let file2 = {
- url: this.generalForm.accountHolderFront
- }
- toHref(file2)
- },
- bankHandleRemove(file, fileList) {
- this.bankHideUploadEdit = false
- // 如果需要删除图片信息,可以根据file或其他标识从相应的数据结构中删除信息
- const fileIndex = this.bankFileList.indexOf(file);
- if (fileIndex !== -1) {
- this.bankFileList.splice(fileIndex, 1); // 从fileList中删除该图片信息
- this.generalForm.accountHolderFront = ""
- }
- },
- bankHandleUploadSuccess2(response, file, fileList) {
- return this.bankHandleAvatarSuccess2(response, file, fileList, null, 'front')
- },
- bankHandleAvatarSuccess2(res, file, fileList, index, val) {
- if (val === 'front') {
- this.generalForm.accountHolderOpposite = '/' + res.url
- this.generalForm.accountHolderOppositeUrl = res.lsUrl
- }
- this.bankHideUploadEdit2 = true
- this.$forceUpdate()
- },
- bankHandlePictureCardPreview2(file) {
- this.generalForm.accountHolderOppositeUrl = file.url
- this.bankDialogVisible2 = true;
- },
- bankHandleDownload2(file) {
- let file2 = {
- url: this.generalForm.accountHolderOpposite
- }
- toHref(file2)
- },
- bankHandleRemove2(file, fileList) {
- this.hideUploadEdit2 = false
- // 如果需要删除图片信息,可以根据file或其他标识从相应的数据结构中删除信息
- const fileIndex = this.bankFileList2.indexOf(file);
- if (fileIndex !== -1) {
- this.bankFileList2.splice(fileIndex, 1); // 从fileList中删除该图片信息
- this.generalForm.accountHolderOpposite = ""
- }
- },
- gsHandleUploadSuccess(response, file, fileList) {
- return this.gsHandleAvatarSuccess(response, file, fileList, null, 'front')
- },
- gsHandleUploadSuccess2(response, file, fileList) {
- return this.gsHandleAvatarSuccess2(response, file, fileList, null, 'front')
- },
- gsHandleAvatarSuccess(res, file, fileList, index, val) {
- if (val === 'front') {
- this.generalForm.gsAccountHolderFront = '/' + res.url
- this.generalForm.gsAccountHolderFrontUrl = res.lsUrl
- }
- this.hideUploadEdit = true
- this.$forceUpdate()
- },
- gsHandleAvatarSuccess2(res, file, fileList, index, val) {
- if (val === 'front') {
- this.generalForm.gsAccountHolderOpposite = '/' + res.url
- this.generalForm.gsAccountHolderOppositeUrl = res.lsUrl
- }
- this.hideUploadEdit2 = true
- this.$forceUpdate()
- },
- gsHandlePictureCardPreview(file) {
- this.dialogImageUrl = file.url;
- this.generalForm.gsAccountHolderFrontUrl = file.url
- this.gsDialogVisible = true;
- },
- gsHandlePictureCardPreview2(file) {
- this.generalForm.gsAccountHolderOppositeUrl = file.url
- this.gsDialogVisible2 = true;
- },
- gsHandleDownload(file) {
- let file2 = {
- url: this.generalForm.gsAccountHolderFront
- }
- toHref(file2)
- },
- gsHandleDownload2(file) {
- let file2 = {
- url: this.generalForm.gsAccountHolderOpposite
- }
- toHref(file2)
- },
- gsHandleRemove(file, fileList) {
- this.gsHideUploadEdit = false
- // 如果需要删除图片信息,可以根据file或其他标识从相应的数据结构中删除信息
- const fileIndex = this.gsFileList.indexOf(file);
- if (fileIndex !== -1) {
- this.gsFileList.splice(fileIndex, 1); // 从fileList中删除该图片信息
- this.generalForm.gsAccountHolderFront = ""
- }
- },
- gsHandleRemove2(file, fileList) {
- this.gsHideUploadEdit2 = false
- // 如果需要删除图片信息,可以根据file或其他标识从相应的数据结构中删除信息
- const fileIndex = this.gsFileList2.indexOf(file);
- if (fileIndex !== -1) {
- this.gsFileList2.splice(fileIndex, 1); // 从fileList中删除该图片信息
- this.generalForm.gsAccountHolderOpposite = ""
- }
- },
- // 日期格式化
- handleDateFormatter(dateStr) {
- if (!dateStr) return ''; // 如果为空,返回空字符串
- return dayjs(dateStr).format('YYYY年MM月DD日');
- },
- changeInfoList(index) {
- this.changeFlag[index] = !this.changeFlag[index]
- },
- // 教育经历
- addEdu() {
- this.$refs.EducationInfo.init("add", null, this.userId)
- },
- editEdu(row) {
- this.$refs.EducationInfo.init("edit", row.id, this.userId)
- },
- delEdu(row) {
- this.$confirm('确定删除此条教育经历信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteEduInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetEduInfo()
- })
- } else {
- this.eduInfoList = this.eduInfoList.filter(item => item.id != row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddEduInfo(id) {
- // const { id } = row
- // let index = this.eduInfoList.findIndex(item => item.id === row.id)
- // if (index === -1) {
- // // 不存在就新增
- // this.eduInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.eduInfoList[index] = row
- // this.eduInfoList[index].degreeFile = row.degreeFile
- // this.eduInfoList[index].educationFile = row.educationFile
- // }
- // if (!this.activeNames[0].includes(id)) {
- // this.activeNames[0].push(id);
- // }
- // this.loading = true
- // enrollmentRegistrationService.findEduAuditList({
- // userId: this.userInfo.id
- // }).then(res => {
- // this.eduInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[0] = []
- // res.forEach(item => {
- // this.activeNames[0].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetEduInfo() {
- // this.loading = true
- // enrollmentRegistrationService.findEduAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.eduInfoList = res
- // this.loading = false
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- // 工作经历处理
- addWork() {
- this.$refs.WorkInfo.init("add", null, this.userId)
- },
- editWork(row) {
- this.$refs.WorkInfo.init("edit", row.id, this.userId)
- },
- delWork(row) {
- this.$confirm('确定删除此条工作经历信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteWorkInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetWorkInfo()
- })
- } else {
- this.workInfoList = this.workInfoList.filter(item => item.id != row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddWorkInfo(row) {
- // const { id } = row
- // let index = this.workInfoList.findIndex(item => item.id === row.id)
- // if (index === -1) {
- // // 不存在就新增
- // this.workInfoList.push(row)
- // this.activeNames[1].push(row.id)
- // } else {
- // // 存在就更新
- // this.workInfoList[index] = row
- // }
- // if (!this.activeNames[1].includes(id)) {
- // this.activeNames[1].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- this.loading = true
- // enrollmentRegistrationService.findWorkAuditList({
- // userId: this.userInfo.id,
- // }).then(res => {
- // this.workInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[1] = []
- // res.forEach(item => {
- // this.activeNames[1].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetWorkInfo() {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findWorkAuditList({
- // userId: this.userId,
- // }).then(res => {
- // this.workInfoList = res
- // })
- },
- //培训经历处理
- addTraining() {
- this.$refs.TrainingInfo.init("add", null, this.userId)
- },
- editTraining(row) {
- this.$refs.TrainingInfo.init("edit", row.id, this.userId)
- },
- delTraining(row) {
- this.$confirm('确定删除此条培训经历信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteTrainingInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetTrainingInfo()
- })
- } else {
- this.trainingInfoList = this.trainingInfoList.filter(item => item.id !== row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddTrainingInfo(row) {
- // const { id } = row;
- // let index = this.trainingInfoList.findIndex(item => item.id === row.id)
- // if (index === -1) {
- // // 不存在就新增
- // this.trainingInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.trainingInfoList[index] = row
- // }
- // if (!this.activeNames[2].includes(id)) {
- // this.activeNames[2].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- // this.loading = true
- // enrollmentRegistrationService.findTrainingAuditList({
- // userId: this.userInfo.id
- // }).then(res => {
- // this.trainingInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[2] = []
- // res.forEach(item => {
- // this.activeNames[2].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetTrainingInfo() {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findTrainingAuditList({
- // userId: this.userId
- // }).then(res => {
- // console.log(res);
- // this.trainingInfoList = res
- // })
- },
- //资质证书处理
- addCertificate() {
- this.$refs.certificateInfo.init("add", null, this.userId)
- },
- editCertificate(row) {
- this.$refs.certificateInfo.init("edit", row.id, this.userId)
- },
- delCertificate(row) {
- this.$confirm('确定删除此条执业资格证书信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteCertificateInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetCertificateInfo()
- })
- } else {
- this.certificateInfoList = this.certificateInfoList.filter(item => item.id !== row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddCertificateInfo(row) {
- // const { id } = row
- // let index = this.certificateInfoList.findIndex(item => item.id === row.id)
- // if (index === -1) {
- // // 不存在就新增
- // this.certificateInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.certificateInfoList[index] = row
- // }
- // if (!this.activeNames[3].includes(id)) {
- // this.activeNames[3].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- // this.loading = true
- // enrollmentRegistrationService.findCertificateAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.certificateInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[3] = []
- // res.forEach(item => {
- // this.activeNames[3].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetCertificateInfo() {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findCertificateAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.certificateInfoList = res
- // })
- },
- //职称证书处理
- addSkill() {
- this.$refs.skillInfo.init("add", null, this.userId)
- },
- editSkill(row) {
- this.$refs.skillInfo.init("edit", row.id, this.userId)
- },
- delSkill(row) {
- this.$confirm('确定删除此条职称证书信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteSkillInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetSkillInfo()
- })
- } else {
- this.skillInfoList = this.skillInfoList.filter(item => item.id !== row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddSkillInfo(row) {
- // const { id } = row
- // let index = this.skillInfoList.findIndex(item => item.id === id)
- // if (index === -1) {
- // // 不存在就新增
- // this.skillInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.skillInfoList[index] = row
- // }
- // if (!this.activeNames[4].includes(id)) {
- // this.activeNames[4].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- // this.loading = true
- // enrollmentRegistrationService.findSkillAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.skillInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[4] = []
- // res.forEach(item => {
- // this.activeNames[4].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetSkillInfo() {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findSkillAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.skillInfoList = res
- // })
- },
- //外语语种处理
- addLanguage() {
- this.$refs.languageInfo.init("add", null, this.userId)
- },
- editLanguage(row) {
- this.$refs.languageInfo.init("edit", row.id, this.userId)
- },
- delLanguage(row) {
- this.$confirm('确定删除此条外语语种信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteLanguageInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetLanguageInfo()
- })
- } else {
- this.languageInfoList = this.languageInfoList.filter(item => item.id !== row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddLanguageInfo(row) {
- // const { id } = row
- // let index = this.languageInfoList.findIndex(item => item.id === id)
- // if (index === -1) {
- // // 不存在就新增
- // this.languageInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.languageInfoList[index] = row
- // }
- // if (!this.activeNames[5].includes(id)) {
- // this.activeNames[5].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- // this.loading = true
- // enrollmentRegistrationService.findLanguageAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.languageInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[5] = []
- // res.forEach(item => {
- // this.activeNames[5].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetLanguageInfo() {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findLanguageAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.languageInfoList = res
- // })
- },
- //家庭情况处理
- addFamily() {
- this.$refs.familyInfo.init("add", null, this.userId)
- },
- editFamily(row) {
- this.$refs.familyInfo.init("edit", row.id, this.userId)
- },
- delFamily(row) {
- this.$confirm('确定删除此条家庭情况信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteFamilyInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetFamilyInfo()
- })
- } else {
- this.familyInfoList = this.familyInfoList.filter(item => item.id !== row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddFamilyInfo(row) {
- // const { id } = row
- // let index = this.familyInfoList.findIndex(item => item.id === row.id)
- // if (index === -1) {
- // // 不存在就新增
- // this.familyInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.familyInfoList[index] = row
- // }
- // if (!this.activeNames[6].includes(id)) {
- // this.activeNames[6].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- // this.loading = true
- // enrollmentRegistrationService.findFamilyAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.familyInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[6] = []
- // res.forEach(item => {
- // this.activeNames[6].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetFamilyInfo(row) {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findFamilyAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.familyInfoList = res
- // })
- },
- //表彰与奖励处理
- addReward() {
- this.$refs.rewardInfo.init("add", null, this.userId)
- },
- editReward(row) {
- this.$refs.rewardInfo.init("edit", row.id, this.userId)
- },
- delReward(row) {
- this.$confirm('确定删除此条奖项信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteRewardInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetRewardInfo()
- })
- } else {
- this.rewardInfoList = this.rewardInfoList.filter(item => item.id !== row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddRewardInfo(row) {
- // const { id } = row
- // let index = this.rewardInfoList.findIndex(item => item.id === row.id)
- // if (index === -1) {
- // // 不存在就新增
- // this.rewardInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.rewardInfoList[index] = row
- // }
- // if (!this.activeNames[7].includes(id)) {
- // this.activeNames[7].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- // this.loading = true
- // enrollmentRegistrationService.findRewardAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.rewardInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[7] = []
- // res.forEach(item => {
- // this.activeNames[7].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetRewardInfo() {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findRewardAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.rewardInfoList = res
- // })
- },
- //社会及行业职务
- addSociety() {
- this.$refs.societyInfo.init("add", null, this.userId)
- },
- editSociety(row) {
- this.$refs.societyInfo.init("edit", row.id, this.userId)
- },
- delSociety(row) {
- this.$confirm('确定删除此条社会及行业职务信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deleteSocietyInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetSocietyInfo()
- })
- } else {
- this.societyInfoList = this.societyInfoList.filter(item => item.id !== row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddSocietyInfo(row) {
- // const { id } = row
- // let index = this.societyInfoList.findIndex(item => item.id === row.id)
- // if (index === -1) {
- // // 不存在就新增
- // this.societyInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.societyInfoList[index] = row
- // }
- // if (!this.activeNames[9].includes(id)) {
- // this.activeNames[9].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- // this.loading = true
- // enrollmentRegistrationService.findSocietyAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.societyInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[9] = []
- // res.forEach(item => {
- // this.activeNames[9].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- this.uploadKey = Date.now().toString();
- },
- handleGetSocietyInfo(row) {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findSocietyAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.societyInfoList = res
- // })
- },
- //工作业绩
- addPerformance() {
- this.$refs.performanceInfo.init("add", null, this.userId)
- },
- editPerformance(row) {
- this.$refs.performanceInfo.init("edit", row.id, this.userId)
- },
- delPerformance(row) {
- this.$confirm('确定删除此条工作业绩信息吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- // 暂存数据删除
- if (row.status == "1") {
- this.loading = true
- enrollmentRegistrationService.deletePerformanceInfoById(row.id).then(res => {
- this.$message.success(res)
- this.loading = false
- this.handleGetPerformanceInfo()
- })
- } else {
- this.performanceInfoList = this.performanceInfoList.filter(item => item.id !== row.id)
- this.$message.success("操作成功")
- }
- }).catch(() => {
- });
- },
- handleAddPerformanceInfo(row) {
- // const { id } = row
- // let index = this.performanceInfoList.findIndex(item => item.id === row.id)
- // if (index === -1) {
- // // 不存在就新增
- // this.performanceInfoList.push(row)
- // } else {
- // // 存在就更新
- // this.performanceInfoList[index] = row
- // }
- // if (!this.activeNames[10].includes(id)) {
- // this.activeNames[10].push(id);
- // }
- // this.uploadKey = Date.now().toString();
- // this.loading = true
- // enrollmentRegistrationService.findPerformanceAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.performanceInfoList = res
- // this.loading = false
- // this.uploadKey = Date.now().toString();
- // this.activeNames[10] = []
- // res.forEach(item => {
- // this.activeNames[10].push(item.id);
- // })
- // }).catch(err => {
- // this.loading = false
- // })
- this.getDataInfo(this.userInfo.id)
- },
- handleGetPerformanceInfo(row) {
- this.getDataInfo(this.userInfo.id)
- // enrollmentRegistrationService.findPerformanceAuditList({
- // userId: this.userId
- // }).then(res => {
- // this.performanceInfoList = res
- // })
- },
- changeType(value, row) {
- if (value === '1' || value === '2') {
- let obj = this.$dictUtils.getDictList('sys_cert_profession_build').find(item => {
- return item.value == row.profession
- })
- if (obj) {
- row.profession = obj.label
- }
- } else if (value === '3' || value === '4') {
- let obj = this.$dictUtils.getDictList('sys_cert_profession_cost').find(item => {
- return item.value == row.profession
- })
- if (obj) {
- row.profession = obj.label
- }
- } else if (value === '5') {
- let obj = this.$dictUtils.getDictList('sys_cert_profession_supervision').find(item => {
- return item.value == row.profession
- })
- if (obj) {
- row.profession = obj.label
- }
- } else if (value === '6') {
- let obj = this.$dictUtils.getDictList('sys_cert_profession_accounting').find(item => {
- return item.value == row.profession
- })
- if (obj) {
- row.profession = obj.label
- }
- }
- },
- handleRevoke() {
- this.$confirm('确定要撤回审批吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- this.loading = true
- processService.revokeProcIns(this.procInsId).then(res => {
- this.generalForm.idCardFront = this.$refs.idCardFront.getDataList()
- this.generalForm.idCardBack = this.$refs.idCardBack.getDataList()
- this.generalForm.email = this.concatForm.email
- this.generalForm.eduInfoList = this.eduInfoList
- this.generalForm.workInfoList = this.workInfoList
- this.generalForm.certificateInfoList = this.certificateInfoList
- this.generalForm.skillInfoList = this.skillInfoList
- this.generalForm.rewardInfoList = this.rewardInfoList
- this.generalForm.familyInfoList = this.familyInfoList
- this.generalForm.trainingInfoList = this.trainingInfoList
- this.generalForm.languageInfoList = this.languageInfoList
- enrollmentRegistrationService.updateStatusByIdUserInfo(this.generalForm).then((data) => {
- this.close()
- this.$message.success(data.msg)
- this.$refs.idCardBack.clearUpload()
- this.$refs.idCardFront.clearUpload()
- this.getDataInfo(this.userInfo.id)
- this.loading = false
- }).catch(() => {
- this.loading = false
- })
- })
- }).catch(() => {
- this.loading = false
- });
- }
- },
- };
- </script>
- <style lang="less">
- .userInfo {
- padding: 8px 12px;
- .aside {
- width: 340px;
- margin-right: 20px;
- }
- .el-card__header {
- padding: calc(var(--el-card-padding) - 2px) var(--el-card-padding);
- border-bottom: 1px solid var(--el-card-border-color);
- box-sizing: border-box;
- }
- .person-bg {
- color: rgb(24, 144, 255);
- background-color: rgb(230, 247, 255);
- width: 24px;
- height: 24px;
- border-radius: 50%;
- text-align: center;
- vertical-align: middle;
- display: inline-block;
- }
- .person-text {
- font-size: 15px;
- margin-left: 5px;
- font-weight: 400;
- }
- }
- .adminui-topbar+.userInfo {
- padding: 12px 12px 8px 12px;
- }
- /deep/ .el-collapse-item__header {
- font-size: 16px !important;
- order: -1;
- }
- .collapseTitle {
- width: 100%;
- display: flex;
- align-items: center;
- order: 1;
- }
- .auditInfo {
- color: red !important;
- }
- .card-info {
- margin-bottom: 20px;
- }
- .star-require .el-form-item__label::before {
- content: "*";
- color: red;
- }
- </style>
|