personMangement.vue 144 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276
  1. <!-- 人员管理页面 -->
  2. <template>
  3. <div class="resource">
  4. <div class="zy-head-search">
  5. <span>人员姓名</span>
  6. <el-input
  7. v-model="search.empName"
  8. size="small"
  9. placeholder="请输入员工姓名"
  10. style="width: 200px"
  11. ></el-input>
  12. <span>人员编号</span>
  13. <el-input
  14. v-model="search.empNo"
  15. size="small"
  16. placeholder="请输入员工编号"
  17. style="width: 200px"
  18. ></el-input>
  19. <el-button
  20. icon="el-icon-search"
  21. type="goon"
  22. size="mini"
  23. @click="searchData"
  24. >查询</el-button>
  25. <el-button
  26. icon="el-icon-refresh"
  27. type="info"
  28. plain
  29. size="mini"
  30. @click="reset"
  31. >重置</el-button>
  32. </div>
  33. <!--人员信息表表头-->
  34. <div class="zy-title-div">
  35. <div class="zy-title-name">
  36. <img
  37. style="width: 25px; height: 25px"
  38. src='../../../../assets/img/imgScreen/logo.png'
  39. />
  40. 人员信息表
  41. </div>
  42. <div>
  43. <el-button
  44. icon="el-icon-circle-plus-outline"
  45. type="goon"
  46. size="mini"
  47. @click="addData"
  48. >新增</el-button>
  49. <el-button
  50. icon="el-icon-edit"
  51. type="goon"
  52. size="mini"
  53. @click="modifyData"
  54. >修改</el-button>
  55. <el-button
  56. icon="el-icon-circle-close"
  57. type="danger"
  58. size="mini"
  59. @click="deleteData"
  60. >停用</el-button>
  61. <el-button
  62. icon="el-icon-check"
  63. type="goon"
  64. size="mini"
  65. @click="recoverData"
  66. >启用</el-button>
  67. </div>
  68. </div>
  69. <!-- 人员信息表表格:height="height_top" -->
  70. <div class="common-table-div" style="margin-bottom:0;margin-top:0">
  71. <el-table
  72. v-loading="dataLoading"
  73. ref="dataTable"
  74. border
  75. highlight-current-row
  76. @selection-change="handleSelectionChange"
  77. :data="table.list"
  78. :icore-filter-flag="icoreFilterFlag"
  79. :header-cell-style="tableHeaderCellStyle"
  80. @row-click="getAllListByEmpNo"
  81. :cell-class-name="tableRowClassName"
  82. :summary-method="getSummaries"
  83. show-summary
  84. :exchangeFilterMap="{'validFlag':{'0':'已停用','1':'已启用'}}"
  85. >
  86. <el-table-column
  87. type="index"
  88. label="NO"
  89. align="center"
  90. ></el-table-column>
  91. <el-table-column
  92. type="selection"
  93. width="55"
  94. align="center"
  95. ></el-table-column>
  96. <el-table-column
  97. sortable
  98. :show-overflow-tooltip="true"
  99. min-width="80px"
  100. prop="empNo"
  101. label="职工编号"
  102. align="center"
  103. ></el-table-column>
  104. <el-table-column
  105. sortable
  106. :show-overflow-tooltip="true"
  107. min-width="80px"
  108. prop="empName"
  109. label="职工姓名"
  110. align="center"
  111. ></el-table-column>
  112. <el-table-column
  113. sortable
  114. :show-overflow-tooltip="true"
  115. min-width="90px"
  116. prop="birthday"
  117. label="出生日期"
  118. align="center"
  119. ></el-table-column>
  120. <el-table-column
  121. sortable
  122. :show-overflow-tooltip="true"
  123. min-width="80px"
  124. prop='gender'
  125. label="性别"
  126. align="center"
  127. ></el-table-column>
  128. <el-table-column
  129. sortable
  130. :show-overflow-tooltip="true"
  131. min-width="80px"
  132. prop="people"
  133. label="民族"
  134. align="center"
  135. ></el-table-column>
  136. <el-table-column
  137. sortable
  138. :show-overflow-tooltip="true"
  139. min-width="80px"
  140. prop="politics"
  141. label="政治面貌"
  142. align="center"
  143. ></el-table-column>
  144. <el-table-column
  145. sortable
  146. :show-overflow-tooltip="true"
  147. min-width="80px"
  148. prop="validFlag"
  149. label="数据状态"
  150. align="center"
  151. >
  152. <template slot-scope="scope">
  153. <span v-if="scope.row.validFlag == 1">已启用</span>
  154. <span v-else-if="scope.row.validFlag == 0">已停用</span>
  155. </template>
  156. </el-table-column>
  157. <el-table-column
  158. sortable
  159. :show-overflow-tooltip="true"
  160. min-width="120px"
  161. prop="companyName"
  162. label="公司"
  163. align="center"
  164. ></el-table-column>
  165. <el-table-column
  166. sortable
  167. :show-overflow-tooltip="true"
  168. min-width="120px"
  169. prop="deptName"
  170. label="部门"
  171. align="center"
  172. ></el-table-column>
  173. <el-table-column
  174. sortable
  175. :show-overflow-tooltip="true"
  176. min-width="120px"
  177. prop="sectionName"
  178. label="班组"
  179. align="center"
  180. ></el-table-column>
  181. <el-table-column
  182. sortable
  183. :show-overflow-tooltip="true"
  184. min-width="120px"
  185. prop="wrkGrpName"
  186. label="班值"
  187. align="center"
  188. ></el-table-column>
  189. <el-table-column
  190. sortable
  191. :show-overflow-tooltip="true"
  192. min-width="100px"
  193. prop="postName"
  194. label="岗位"
  195. align="center"
  196. ></el-table-column>
  197. <el-table-column
  198. sortable
  199. :show-overflow-tooltip="true"
  200. min-width="80px"
  201. prop="marriage"
  202. label="婚姻状况"
  203. align="center"
  204. ></el-table-column>
  205. <el-table-column
  206. sortable
  207. :show-overflow-tooltip="true"
  208. min-width="80px"
  209. prop="birthPlace"
  210. label="籍贯"
  211. align="center"
  212. ></el-table-column>
  213. <el-table-column
  214. sortable
  215. :show-overflow-tooltip="true"
  216. min-width="150px"
  217. prop="idCard"
  218. label="身份证号码"
  219. align="center"
  220. ></el-table-column>
  221. <el-table-column
  222. sortable
  223. :show-overflow-tooltip="true"
  224. min-width="120px"
  225. prop="permanentAddr"
  226. label="户籍地址"
  227. align="center"
  228. ></el-table-column>
  229. <el-table-column
  230. sortable
  231. :show-overflow-tooltip="true"
  232. min-width="120px"
  233. prop="contactNumber"
  234. label="联系电话"
  235. align="center"
  236. ></el-table-column>
  237. <el-table-column
  238. sortable
  239. :show-overflow-tooltip="true"
  240. min-width="140px"
  241. prop="contactAddr"
  242. label="联系地址"
  243. align="center"
  244. ></el-table-column>
  245. <el-table-column
  246. sortable
  247. :show-overflow-tooltip="true"
  248. min-width="100px"
  249. prop="emergencyContact"
  250. label="紧急联系人"
  251. align="center"
  252. ></el-table-column>
  253. <el-table-column
  254. sortable
  255. :show-overflow-tooltip="true"
  256. min-width="80px"
  257. prop="emergencyNumber2"
  258. label="紧急电话"
  259. align="center"
  260. ></el-table-column>
  261. <el-table-column
  262. sortable
  263. :show-overflow-tooltip="true"
  264. min-width="100px"
  265. prop="email"
  266. label="电子邮箱"
  267. align="center"
  268. ></el-table-column>
  269. <el-table-column
  270. sortable
  271. :show-overflow-tooltip="true"
  272. min-width="80px"
  273. prop="eduDegree"
  274. label="学历"
  275. align="center"
  276. ></el-table-column>
  277. <el-table-column
  278. sortable
  279. :show-overflow-tooltip="true"
  280. min-width="100px"
  281. prop="unvstGraduated"
  282. label="毕业院校"
  283. align="center"
  284. ></el-table-column>
  285. <el-table-column
  286. sortable
  287. :show-overflow-tooltip="true"
  288. min-width="100px"
  289. prop="major"
  290. label="专业名称"
  291. align="center"
  292. ></el-table-column>
  293. <el-table-column
  294. sortable
  295. :show-overflow-tooltip="true"
  296. min-width="140px"
  297. prop="graduationTime"
  298. label="毕业时间"
  299. align="center"
  300. ></el-table-column>
  301. <el-table-column
  302. sortable
  303. :show-overflow-tooltip="true"
  304. min-width="80px"
  305. prop="title"
  306. label="职称"
  307. align="center"
  308. ></el-table-column>
  309. <el-table-column
  310. sortable
  311. :show-overflow-tooltip="true"
  312. min-width="80px"
  313. prop="foreignLanguage"
  314. label="外语语种"
  315. align="center"
  316. ></el-table-column>
  317. <el-table-column
  318. sortable
  319. :show-overflow-tooltip="true"
  320. min-width="80px"
  321. prop="languageLevel"
  322. label="外语等级"
  323. align="center"
  324. ></el-table-column>
  325. <el-table-column
  326. sortable
  327. :show-overflow-tooltip="true"
  328. min-width="100px"
  329. prop="computerLevel"
  330. label="计算机等级"
  331. align="center"
  332. ></el-table-column>
  333. <el-table-column
  334. sortable
  335. :show-overflow-tooltip="true"
  336. min-width="120px"
  337. prop="empno"
  338. label="工号"
  339. align="center"
  340. ></el-table-column>
  341. <!-- <el-table-column sortable :show-overflow-tooltip="true" min-width="100px" prop="postGrade" label="职级" align="center"></el-table-column> -->
  342. <el-table-column
  343. sortable
  344. :show-overflow-tooltip="true"
  345. min-width="130px"
  346. prop="entryDate"
  347. label="入职日期"
  348. align="center"
  349. ></el-table-column>
  350. <el-table-column
  351. sortable
  352. :show-overflow-tooltip="true"
  353. min-width="130px"
  354. prop="passedDate"
  355. label="转正日期"
  356. align="center"
  357. ></el-table-column>
  358. <el-table-column
  359. sortable
  360. :show-overflow-tooltip="true"
  361. min-width="130px"
  362. prop="leaveDate"
  363. label="离职日期"
  364. align="center"
  365. ></el-table-column>
  366. <el-table-column
  367. sortable
  368. :show-overflow-tooltip="true"
  369. min-width="120px"
  370. prop="leaveReason"
  371. label="离职原因"
  372. align="center"
  373. ></el-table-column>
  374. <el-table-column
  375. sortable
  376. :show-overflow-tooltip="true"
  377. min-width="80px"
  378. prop="empStatus"
  379. label="员工状态"
  380. align="center"
  381. ></el-table-column>
  382. <el-table-column
  383. sortable
  384. :show-overflow-tooltip="true"
  385. min-width="200px"
  386. prop="photoDir1"
  387. label="员工照片"
  388. align="left"
  389. >
  390. <template slot-scope="scope">
  391. <!-- <el-button
  392. type="goon" size="mini" icon="el-icon-download" circle
  393. @click="downloadFile(scope.$index, scope.row.photoDir)">
  394. </el-button>
  395. <el-button
  396. type="warning" size="mini" icon="el-icon-view" circle
  397. @click="imgPreView(scope.$index, scope.row)">
  398. </el-button> -->
  399. <span>{{scope.row.photoDir1}}</span>
  400. </template>
  401. </el-table-column>
  402. <el-table-column
  403. sortable
  404. :show-overflow-tooltip="true"
  405. min-width="100px"
  406. label="下载、预览"
  407. align="center"
  408. >
  409. <template slot-scope="scope">
  410. <el-tooltip
  411. content="下载文件"
  412. placement="bottom"
  413. effect="light"
  414. >
  415. <el-button
  416. :disabled='!scope.row.photoDir1'
  417. type="goon"
  418. size="mini"
  419. icon="el-icon-download"
  420. circle
  421. @click="downloadFile(scope.$index, scope.row.empNo, scope.row.photoDir.fileName, scope.row.photoDir.oldFileName, 'LIMS_LRC_EMP')"
  422. >
  423. </el-button>
  424. </el-tooltip>
  425. <el-tooltip
  426. content="预览照片"
  427. placement="bottom"
  428. effect="light"
  429. >
  430. <el-button
  431. :disabled='!scope.row.photoDir1'
  432. type="warning"
  433. size="mini"
  434. icon="el-icon-view"
  435. circle
  436. @click="imgPreView(scope.$index, scope.row.empNo, scope.row.photoDir.fileName, 'LIMS_LRC_EMP')"
  437. >
  438. </el-button>
  439. </el-tooltip>
  440. </template>
  441. </el-table-column>
  442. <el-table-column
  443. sortable
  444. :show-overflow-tooltip="true"
  445. min-width="100px"
  446. prop="memo"
  447. label="备注"
  448. align="center"
  449. ></el-table-column>
  450. <el-table-column
  451. sortable
  452. :show-overflow-tooltip="true"
  453. min-width="120px"
  454. prop="createMan"
  455. label="创建人"
  456. align="center"
  457. ></el-table-column>
  458. <el-table-column
  459. sortable
  460. :show-overflow-tooltip="true"
  461. min-width="140px"
  462. prop="createTime"
  463. label="创建时间"
  464. align="center"
  465. ></el-table-column>
  466. <el-table-column
  467. sortable
  468. :show-overflow-tooltip="true"
  469. min-width="120px"
  470. prop="updateMan"
  471. label="更新人"
  472. align="center"
  473. ></el-table-column>
  474. <el-table-column
  475. sortable
  476. :show-overflow-tooltip="true"
  477. min-width="140px"
  478. prop="updateTime"
  479. label="更新时间"
  480. align="center"
  481. ></el-table-column>
  482. </el-table>
  483. </div>
  484. <!-- 分页一 -->
  485. <div class="zy-foot-page">
  486. <el-pagination
  487. v-loading="dataLoading"
  488. @size-change="pageSizeChange"
  489. @current-change="pageCurrentChange"
  490. :current-page="page.pageNum"
  491. :page-sizes="[10, 20, 50, 100, 200]"
  492. :page-size="page.pageSize"
  493. layout="total, sizes, prev, pager, next, jumper"
  494. :total="page.totalPage"
  495. background
  496. >
  497. </el-pagination>
  498. </div>
  499. <br>
  500. <!-- 合同信息 -->
  501. <div
  502. style="position: absolute;right:23px;margin-top:7px;z-index: 999;"
  503. v-if="activeName === 'first'"
  504. ></div>
  505. <!-- 资格认证 -->
  506. <div
  507. style="position: absolute;right:23px;margin-top: 7px;z-index: 999;"
  508. v-if="activeName === 'second'"
  509. ></div>
  510. <!-- 教育经历 -->
  511. <div
  512. style="position: absolute;right:23px;margin-top: 7px;z-index: 999;"
  513. v-if="activeName === 'third'"
  514. ></div>
  515. <!-- 培训记录 -->
  516. <div
  517. style="position: absolute;right:23px;margin-top: 7px;z-index: 999;"
  518. v-if="activeName === 'fourth'"
  519. ></div>
  520. <!-- 工作经历 -->
  521. <div
  522. style="position: absolute;right:23px;margin-top: 7px;z-index: 999;"
  523. v-if="activeName === 'fifth'"
  524. ></div>
  525. <!-- 班组维护 -->
  526. <div
  527. style="position: absolute;right:23px;margin-top: 7px;z-index: 999;"
  528. v-if="activeName === 'sixth'"
  529. ></div>
  530. <!-- tabs切栏 -->
  531. <div>
  532. <el-tabs
  533. v-model="activeName"
  534. type="card"
  535. @tab-click="tabsHandleClick"
  536. >
  537. <el-tab-pane
  538. label="合同信息"
  539. name="first"
  540. >
  541. <div class="zy-title-div">
  542. <div class="zy-title-name">
  543. <img
  544. style="width: 25px; height: 25px"
  545. src='../../../../assets/img/imgScreen/logo.png'
  546. />
  547. 人员合同信息
  548. </div>
  549. <div>
  550. <el-button
  551. icon="el-icon-circle-plus-outline"
  552. type="goon"
  553. size="mini"
  554. @click="addData2"
  555. >新增</el-button>
  556. <el-button
  557. icon="el-icon-edit"
  558. type="goon"
  559. size="mini"
  560. @click="modifyData2"
  561. >修改</el-button>
  562. <el-button
  563. icon="el-icon-circle-close"
  564. type="danger"
  565. size="mini"
  566. @click="deleteData2"
  567. >停用</el-button>
  568. <el-button
  569. icon="el-icon-check"
  570. type="goon"
  571. size="mini"
  572. @click="recoverData2"
  573. >启用</el-button>
  574. </div>
  575. </div>
  576. <!-- 人员合同信息表表格 :height="height_bot"-->
  577. <div class="common-table-div" style="margin-bottom:0;margin-top:0">
  578. <el-table
  579. v-loading="dataLoading2"
  580. ref="dataTable2"
  581. border
  582. highlight-current-row
  583. @selection-change="handleSelectionChange2"
  584. @row-click="getRowCheck"
  585. :data="table.list2"
  586. :icore-filter-flag="icoreFilterFlag"
  587. :header-cell-style="tableHeaderCellStyle"
  588. :cell-class-name="tableRowClassName2"
  589. :exchangeFilterMap="{'onTrial':{'0':'否','1':'是'},
  590. 'unlimited':{'0':'否','1':'是'},
  591. 'validFlag':{'0':'已停用','1':'已启用'},}"
  592. >
  593. <el-table-column
  594. type="index"
  595. label="NO"
  596. align="center"
  597. ></el-table-column>
  598. <el-table-column
  599. type="selection"
  600. width="55"
  601. align="center"
  602. ></el-table-column>
  603. <el-table-column
  604. sortable
  605. :show-overflow-tooltip="true"
  606. min-width="140px"
  607. prop="empNo"
  608. label="职工编号"
  609. align="center"
  610. ></el-table-column>
  611. <el-table-column
  612. sortable
  613. :show-overflow-tooltip="true"
  614. min-width="140px"
  615. prop="contId"
  616. label="合同编号"
  617. align="center"
  618. ></el-table-column>
  619. <el-table-column
  620. sortable
  621. :show-overflow-tooltip="true"
  622. min-width="110px"
  623. prop="contractTitle"
  624. label="合同名称"
  625. align="center"
  626. ></el-table-column>
  627. <el-table-column
  628. sortable
  629. :show-overflow-tooltip="true"
  630. min-width="100px"
  631. prop="contractType"
  632. label="合同类型"
  633. align="center"
  634. ></el-table-column>
  635. <el-table-column
  636. sortable
  637. :show-overflow-tooltip="true"
  638. min-width="110px"
  639. prop="fileNumber"
  640. label="档案编号"
  641. align="center"
  642. ></el-table-column>
  643. <el-table-column
  644. sortable
  645. :show-overflow-tooltip="true"
  646. min-width="100px"
  647. prop="onTrial"
  648. label="是否试用"
  649. align="center"
  650. >
  651. <template slot-scope="scope">
  652. <span v-if="scope.row.onTrial == 0">否</span>
  653. <span v-else-if="scope.row.onTrial == 1">是</span>
  654. </template>
  655. </el-table-column>
  656. <el-table-column
  657. sortable
  658. :show-overflow-tooltip="true"
  659. min-width="100px"
  660. prop="unlimited"
  661. label="是否长期合同"
  662. align="center"
  663. >
  664. <template slot-scope="scope">
  665. <span v-if="scope.row.unlimited == 0">否</span>
  666. <span v-else-if="scope.row.unlimited == 1">是</span>
  667. </template>
  668. </el-table-column>
  669. <el-table-column
  670. sortable
  671. :show-overflow-tooltip="true"
  672. min-width="100px"
  673. prop="validFlag"
  674. label="数据状态"
  675. align="center"
  676. >
  677. <template slot-scope="scope">
  678. <span v-if="scope.row.validFlag == 1">已启用</span>
  679. <span v-else-if="scope.row.validFlag == 0">已停用</span>
  680. </template>
  681. </el-table-column>
  682. <el-table-column
  683. sortable
  684. :show-overflow-tooltip="true"
  685. min-width="130px"
  686. prop="trialEndDate"
  687. label="试用期至"
  688. align="center"
  689. ></el-table-column>
  690. <el-table-column
  691. sortable
  692. :show-overflow-tooltip="true"
  693. min-width="130px"
  694. prop="signDate"
  695. label="签订日期"
  696. align="center"
  697. ></el-table-column>
  698. <el-table-column
  699. sortable
  700. :show-overflow-tooltip="true"
  701. min-width="130px"
  702. prop="strDate"
  703. label="开始日期"
  704. align="center"
  705. ></el-table-column>
  706. <el-table-column
  707. sortable
  708. :show-overflow-tooltip="true"
  709. min-width="130px"
  710. prop="endDate"
  711. label="结束日期"
  712. align="center"
  713. ></el-table-column>
  714. <el-table-column
  715. sortable
  716. :show-overflow-tooltip="true"
  717. min-width="200px"
  718. prop="attachment011"
  719. label="附件1"
  720. align="left"
  721. >
  722. <template slot-scope="scope">
  723. <el-button
  724. type="goon"
  725. size="mini"
  726. icon="el-icon-download"
  727. circle
  728. :disabled='!scope.row.attachment011'
  729. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment01.fileName, scope.row.attachment01.oldFileName, '')"
  730. >
  731. <!-- @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment01.fileName, scope.row.attachment01.oldFileName, 'LIMS_LRC_EMP_CONT')"> -->
  732. </el-button>
  733. <span>{{scope.row.attachment011}}</span>
  734. </template>
  735. </el-table-column>
  736. <el-table-column
  737. sortable
  738. :show-overflow-tooltip="true"
  739. min-width="200px"
  740. prop="attachment021"
  741. label="附件2"
  742. align="left"
  743. >
  744. <template slot-scope="scope">
  745. <el-button
  746. type="goon"
  747. size="mini"
  748. icon="el-icon-download"
  749. circle
  750. :disabled='!scope.row.attachment021'
  751. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment02.fileName, scope.row.attachment02.oldFileName, '')"
  752. >
  753. </el-button>
  754. <span>{{scope.row.attachment021}}</span>
  755. </template>
  756. </el-table-column>
  757. <el-table-column
  758. sortable
  759. :show-overflow-tooltip="true"
  760. min-width="200px"
  761. prop="attachment031"
  762. label="附件3"
  763. align="left"
  764. >
  765. <template slot-scope="scope">
  766. <el-button
  767. type="goon"
  768. size="mini"
  769. icon="el-icon-download"
  770. circle
  771. :disabled='!scope.row.attachment031'
  772. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment03.fileName, scope.row.attachment03.oldFileName, '')"
  773. >
  774. </el-button>
  775. <span>{{scope.row.attachment031}}</span>
  776. </template>
  777. </el-table-column>
  778. <el-table-column
  779. sortable
  780. :show-overflow-tooltip="true"
  781. min-width="100px"
  782. prop="memo"
  783. label="备注"
  784. align="center"
  785. ></el-table-column>
  786. </el-table>
  787. </div>
  788. <!-- <div class="zy-foot-page">
  789. <el-pagination
  790. v-loading="dataLoading2"
  791. @size-change="pageSizeChange2"
  792. @current-change="pageCurrentChange2"
  793. :current-page="page2.pageNum"
  794. :page-sizes="[10, 20, 50, 100, 200]"
  795. :page-size="page2.pageSize"
  796. layout="total, sizes, prev, pager, next, jumper"
  797. :total="page2.totalPage"
  798. background
  799. >
  800. </el-pagination>
  801. </div> -->
  802. </el-tab-pane>
  803. <el-tab-pane
  804. label="资格认证"
  805. name="second"
  806. >
  807. <div class="zy-title-div">
  808. <div class="zy-title-name">
  809. <img
  810. style="width: 25px; height: 25px"
  811. src='../../../../assets/img/imgScreen/logo.png'
  812. />
  813. 资格认证信息
  814. </div>
  815. <div>
  816. <el-button
  817. icon="el-icon-circle-plus-outline"
  818. type="goon"
  819. size="mini"
  820. @click="addData3"
  821. >新增</el-button>
  822. <el-button
  823. icon="el-icon-edit"
  824. type="goon"
  825. size="mini"
  826. @click="modifyData3"
  827. >修改</el-button>
  828. <el-button
  829. icon="el-icon-circle-close"
  830. type="danger"
  831. size="mini"
  832. @click="deleteData3"
  833. >停用</el-button>
  834. <el-button
  835. icon="el-icon-check"
  836. type="goon"
  837. size="mini"
  838. @click="recoverData3"
  839. >启用</el-button>
  840. </div>
  841. </div>
  842. <!-- 资格认证表格 -->
  843. <div class="common-table-div" style="margin-bottom:0;margin-top:0">
  844. <el-table
  845. v-loading="dataLoading3"
  846. ref="dataTable3"
  847. border
  848. :height="height_bot"
  849. highlight-current-row
  850. @selection-change="handleSelectionChange3"
  851. :data="table.list3"
  852. @row-click="getRowCheck2"
  853. :icore-filter-flag="icoreFilterFlag"
  854. :cell-class-name="tableRowClassName3"
  855. :header-cell-style="tableHeaderCellStyle"
  856. :exchangeFilterMap="{'validFlag':{'0':'已停用','1':'已启用'},
  857. 'unlimited':{'0':'否','1':'是'}}"
  858. >
  859. <el-table-column
  860. type="index"
  861. label="NO"
  862. align="center"
  863. ></el-table-column>
  864. <el-table-column
  865. type="selection"
  866. width="55"
  867. align="center"
  868. ></el-table-column>
  869. <el-table-column
  870. sortable
  871. width="140px"
  872. prop="empNo"
  873. label="职工编号"
  874. align="center"
  875. ></el-table-column>
  876. <el-table-column
  877. sortable
  878. width="140px"
  879. prop="certId"
  880. label=资格证编号
  881. align="center"
  882. ></el-table-column>
  883. <!-- <el-table-column sortable width="100px" prop="certifyNo" label="资格证编号" align="center"></el-table-column> -->
  884. <el-table-column
  885. sortable
  886. :show-overflow-tooltip="true"
  887. min-width="110px"
  888. prop="certifyName"
  889. label="资格证名称"
  890. align="center"
  891. ></el-table-column>
  892. <el-table-column
  893. sortable
  894. :show-overflow-tooltip="true"
  895. min-width="100px"
  896. prop="certifyType"
  897. label="资格证类型"
  898. align="center"
  899. ></el-table-column>
  900. <el-table-column
  901. sortable
  902. :show-overflow-tooltip="true"
  903. min-width="100px"
  904. prop="certifyLevel"
  905. label="资格证等级"
  906. align="center"
  907. ></el-table-column>
  908. <el-table-column
  909. sortable
  910. :show-overflow-tooltip="true"
  911. min-width="100px"
  912. prop="issueOrg"
  913. label="发证机构"
  914. align="center"
  915. ></el-table-column>
  916. <el-table-column
  917. sortable
  918. :show-overflow-tooltip="true"
  919. min-width="100px"
  920. prop="unlimited"
  921. label="终身有效"
  922. align="center"
  923. >
  924. <template slot-scope="scope">
  925. <span v-if="scope.row.unlimited == 0">否</span>
  926. <span v-else-if="scope.row.unlimited == 1">是</span>
  927. </template>
  928. </el-table-column>
  929. <el-table-column
  930. sortable
  931. :show-overflow-tooltip="true"
  932. min-width="100px"
  933. prop="validFlag"
  934. label="数据状态"
  935. align="center"
  936. >
  937. <template slot-scope="scope">
  938. <span v-if="scope.row.validFlag == 1">已启用</span>
  939. <span v-else-if="scope.row.validFlag == 0">已停用</span>
  940. </template>
  941. </el-table-column>
  942. <el-table-column
  943. sortable
  944. :show-overflow-tooltip="true"
  945. min-width="140px"
  946. prop="issueDate"
  947. label="发证日期"
  948. align="center"
  949. ></el-table-column>
  950. <el-table-column
  951. sortable
  952. :show-overflow-tooltip="true"
  953. min-width="140px"
  954. prop="strDate"
  955. label="有效期起"
  956. align="center"
  957. ></el-table-column>
  958. <el-table-column
  959. sortable
  960. :show-overflow-tooltip="true"
  961. min-width="140px"
  962. prop="endDate"
  963. label="有效期止"
  964. align="center"
  965. ></el-table-column>
  966. <!-- <el-table-column sortable :show-overflow-tooltip="true" min-width="200px" prop="attachment01" label="附件1" align="left">
  967. <template slot-scope="scope">
  968. <el-button
  969. type="goon" size="mini" icon="el-icon-download" circle
  970. @click="downloadFile(scope.$index, scope.row.attachment01)">
  971. </el-button>
  972. <span>{{scope.row.attachment01}}</span>
  973. </template>
  974. </el-table-column>
  975. <el-table-column sortable :show-overflow-tooltip="true" min-width="200px" prop="attachment02" label="附件2" align="left">
  976. <template slot-scope="scope">
  977. <el-button
  978. type="goon" size="mini" icon="el-icon-download" circle
  979. @click="downloadFile(scope.$index, scope.row.attachment02)">
  980. </el-button>
  981. <span>{{scope.row.attachment02}}</span>
  982. </template>
  983. </el-table-column>
  984. <el-table-column sortable :show-overflow-tooltip="true" min-width="200px" prop="attachment03" label="附件3" align="left">
  985. <template slot-scope="scope">
  986. <el-button
  987. type="goon" size="mini" icon="el-icon-download" circle
  988. @click="downloadFile(scope.$index, scope.row.attachment03)">
  989. </el-button>
  990. <span>{{scope.row.attachment03}}</span>
  991. </template>
  992. </el-table-column> -->
  993. <el-table-column
  994. sortable
  995. :show-overflow-tooltip="true"
  996. min-width="100px"
  997. prop="memo"
  998. label="备注"
  999. align="center"
  1000. ></el-table-column>
  1001. </el-table>
  1002. </div>
  1003. <!-- <div class="zy-foot-page">
  1004. <el-pagination
  1005. v-loading="dataLoading3"
  1006. @size-change="pageSizeChange3"
  1007. @current-change="pageCurrentChange3"
  1008. :current-page="page3.pageNum"
  1009. :page-sizes="[10, 20, 50, 100, 200]"
  1010. :page-size="page3.pageSize"
  1011. layout="total, sizes, prev, pager, next, jumper"
  1012. :total="page3.totalPage"
  1013. background
  1014. >
  1015. </el-pagination>
  1016. </div> -->
  1017. </el-tab-pane>
  1018. <el-tab-pane
  1019. label="教育经历"
  1020. name="third"
  1021. >
  1022. <div class="zy-title-div">
  1023. <div class="zy-title-name">
  1024. <img
  1025. style="width: 25px; height: 25px"
  1026. src='../../../../assets/img/imgScreen/logo.png'
  1027. />
  1028. 教育经历信息
  1029. </div>
  1030. <div>
  1031. <el-button
  1032. icon="el-icon-circle-plus-outline"
  1033. type="goon"
  1034. size="mini"
  1035. @click="addData4"
  1036. >新增</el-button>
  1037. <el-button
  1038. icon="el-icon-edit"
  1039. type="goon"
  1040. size="mini"
  1041. @click="modifyData4"
  1042. >修改</el-button>
  1043. <el-button
  1044. icon="el-icon-circle-close"
  1045. type="danger"
  1046. size="mini"
  1047. @click="deleteData4"
  1048. >停用</el-button>
  1049. <el-button
  1050. icon="el-icon-check"
  1051. type="goon"
  1052. size="mini"
  1053. @click="recoverData4"
  1054. >启用</el-button>
  1055. </div>
  1056. </div>
  1057. <!-- 教育经历表格 -->
  1058. <div class="common-table-div" style="margin-bottom:0;margin-top:0">
  1059. <el-table
  1060. v-loading="dataLoading4"
  1061. ref="dataTable4"
  1062. border
  1063. :height="height_bot"
  1064. highlight-current-row
  1065. @selection-change="handleSelectionChange4"
  1066. :data="table.list4"
  1067. @row-click="getRowCheck3"
  1068. :icore-filter-flag="icoreFilterFlag"
  1069. :cell-class-name="tableRowClassName4"
  1070. :header-cell-style="tableHeaderCellStyle"
  1071. :exchangeFilterMap="{'validFlag':{'0':'已停用','1':'已启用'}}"
  1072. >
  1073. <el-table-column
  1074. type="index"
  1075. label="NO"
  1076. align="center"
  1077. ></el-table-column>
  1078. <el-table-column
  1079. type="selection"
  1080. width="55"
  1081. align="center"
  1082. ></el-table-column>
  1083. <el-table-column
  1084. sortable
  1085. :show-overflow-tooltip="true"
  1086. min-width="140px"
  1087. prop="eduId"
  1088. label="教育经历编号"
  1089. align="center"
  1090. ></el-table-column>
  1091. <el-table-column
  1092. sortable
  1093. :show-overflow-tooltip="true"
  1094. min-width="140px"
  1095. prop="empNo"
  1096. label="职工编号"
  1097. align="center"
  1098. ></el-table-column>
  1099. <el-table-column
  1100. sortable
  1101. :show-overflow-tooltip="true"
  1102. min-width="100px"
  1103. prop="eduDegree"
  1104. label="学历"
  1105. align="center"
  1106. ></el-table-column>
  1107. <el-table-column
  1108. sortable
  1109. :show-overflow-tooltip="true"
  1110. min-width="100px"
  1111. prop="school"
  1112. label="学校"
  1113. align="center"
  1114. ></el-table-column>
  1115. <el-table-column
  1116. sortable
  1117. :show-overflow-tooltip="true"
  1118. min-width="100px"
  1119. prop="major"
  1120. label="专业"
  1121. align="center"
  1122. ></el-table-column>
  1123. <el-table-column
  1124. sortable
  1125. :show-overflow-tooltip="true"
  1126. min-width="100px"
  1127. prop="eduDesc"
  1128. label="学习情况"
  1129. align="center"
  1130. ></el-table-column>
  1131. <el-table-column
  1132. sortable
  1133. :show-overflow-tooltip="true"
  1134. min-width="135px"
  1135. prop="strDate"
  1136. label="入学时间"
  1137. align="center"
  1138. ></el-table-column>
  1139. <el-table-column
  1140. sortable
  1141. :show-overflow-tooltip="true"
  1142. min-width="135px"
  1143. prop="endDate"
  1144. label="毕业时间"
  1145. align="center"
  1146. ></el-table-column>
  1147. <el-table-column
  1148. sortable
  1149. :show-overflow-tooltip="true"
  1150. min-width="200px"
  1151. prop="attachment011"
  1152. label="附件1"
  1153. align="left"
  1154. >
  1155. <template slot-scope="scope">
  1156. <el-button
  1157. type="goon"
  1158. size="mini"
  1159. icon="el-icon-download"
  1160. circle
  1161. :disabled='!scope.row.attachment011'
  1162. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment01.fileName, scope.row.attachment01.oldFileName, '')"
  1163. >
  1164. <!-- LIMS_LRC_EMP_EDU -->
  1165. </el-button>
  1166. <span>{{scope.row.attachment011}}</span>
  1167. </template>
  1168. </el-table-column>
  1169. <el-table-column
  1170. sortable
  1171. :show-overflow-tooltip="true"
  1172. min-width="200px"
  1173. prop="attachment021"
  1174. label="附件2"
  1175. align="left"
  1176. >
  1177. <template slot-scope="scope">
  1178. <el-button
  1179. type="goon"
  1180. size="mini"
  1181. icon="el-icon-download"
  1182. circle
  1183. :disabled='!scope.row.attachment021'
  1184. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment02.fileName, scope.row.attachment02.oldFileName, '')"
  1185. >
  1186. </el-button>
  1187. <span>{{scope.row.attachment021}}</span>
  1188. </template>
  1189. </el-table-column>
  1190. <el-table-column
  1191. sortable
  1192. :show-overflow-tooltip="true"
  1193. min-width="200px"
  1194. prop="attachment031"
  1195. label="附件3"
  1196. align="left"
  1197. >
  1198. <template slot-scope="scope">
  1199. <el-button
  1200. type="goon"
  1201. size="mini"
  1202. icon="el-icon-download"
  1203. circle
  1204. :disabled='!scope.row.attachment031'
  1205. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment03.fileName, scope.row.attachment03.oldFileName, '')"
  1206. >
  1207. </el-button>
  1208. <span>{{scope.row.attachment031}}</span>
  1209. </template>
  1210. </el-table-column>
  1211. <el-table-column
  1212. sortable
  1213. :show-overflow-tooltip="true"
  1214. min-width="100px"
  1215. prop="validFlag"
  1216. label="数据状态"
  1217. align="center"
  1218. >
  1219. <template slot-scope="scope">
  1220. <span v-if="scope.row.validFlag == 1">已启用</span>
  1221. <span v-else-if="scope.row.validFlag == 0">已停用</span>
  1222. </template>
  1223. </el-table-column>
  1224. <el-table-column
  1225. sortable
  1226. :show-overflow-tooltip="true"
  1227. min-width="100px"
  1228. prop="memo"
  1229. label="备注"
  1230. align="center"
  1231. ></el-table-column>
  1232. </el-table>
  1233. </div>
  1234. <!-- <div class="zy-foot-page">
  1235. <el-pagination
  1236. v-loading="dataLoading4"
  1237. @size-change="pageSizeChange4"
  1238. @current-change="pageCurrentChange4"
  1239. :current-page="page4.pageNum"
  1240. :page-sizes="[10, 20, 50, 100, 200]"
  1241. :page-size="page4.pageSize"
  1242. layout="total, sizes, prev, pager, next, jumper"
  1243. :total="page4.totalPage"
  1244. background
  1245. >
  1246. </el-pagination>
  1247. </div> -->
  1248. </el-tab-pane>
  1249. <el-tab-pane
  1250. label="培训记录"
  1251. name="fourth"
  1252. >
  1253. <div class="zy-title-div">
  1254. <div class="zy-title-name">
  1255. <img
  1256. style="width: 25px; height: 25px"
  1257. src='../../../../assets/img/imgScreen/logo.png'
  1258. />
  1259. 培训记录信息
  1260. </div>
  1261. <div>
  1262. <el-button
  1263. icon="el-icon-circle-plus-outline"
  1264. type="goon"
  1265. size="mini"
  1266. @click="addData5"
  1267. >新增</el-button>
  1268. <el-button
  1269. icon="el-icon-edit"
  1270. type="goon"
  1271. size="mini"
  1272. @click="modifyData5"
  1273. >修改</el-button>
  1274. <el-button
  1275. icon="el-icon-circle-close"
  1276. type="danger"
  1277. size="mini"
  1278. @click="deleteData5"
  1279. >停用</el-button>
  1280. <el-button
  1281. icon="el-icon-check"
  1282. type="goon"
  1283. size="mini"
  1284. @click="recoverData5"
  1285. >启用</el-button>
  1286. </div>
  1287. </div>
  1288. <!-- 培训记录信息表表格 -->
  1289. <div class="common-table-div" style="margin-bottom:0;margin-top:0">
  1290. <el-table
  1291. v-loading="dataLoading5"
  1292. ref="dataTable5"
  1293. border
  1294. :height="height_bot"
  1295. highlight-current-row
  1296. @selection-change="handleSelectionChange5"
  1297. :data="table.list5"
  1298. @row-click="getRowCheck4"
  1299. :icore-filter-flag="icoreFilterFlag"
  1300. :cell-class-name="tableRowClassName5"
  1301. :header-cell-style="tableHeaderCellStyle"
  1302. :exchangeFilterMap="{'validFlag':{'0':'已停用','1':'已启用'},
  1303. 'passed':{'0':'否','1':'是'},}"
  1304. >
  1305. <el-table-column
  1306. type="index"
  1307. label="NO"
  1308. align="center"
  1309. ></el-table-column>
  1310. <el-table-column
  1311. type="selection"
  1312. width="55"
  1313. align="center"
  1314. ></el-table-column>
  1315. <el-table-column
  1316. sortable
  1317. :show-overflow-tooltip="true"
  1318. min-width="140px"
  1319. prop="traId"
  1320. label="培训记录编号"
  1321. align="center"
  1322. ></el-table-column>
  1323. <el-table-column
  1324. sortable
  1325. :show-overflow-tooltip="true"
  1326. min-width="140px"
  1327. prop="empNo"
  1328. label="职工编号"
  1329. align="center"
  1330. ></el-table-column>
  1331. <el-table-column
  1332. sortable
  1333. :show-overflow-tooltip="true"
  1334. min-width="100px"
  1335. prop="courseName"
  1336. label="培训课程"
  1337. align="center"
  1338. ></el-table-column>
  1339. <el-table-column
  1340. sortable
  1341. :show-overflow-tooltip="true"
  1342. min-width="100px"
  1343. prop="trnType"
  1344. label="培训类型"
  1345. align="center"
  1346. ></el-table-column>
  1347. <el-table-column
  1348. sortable
  1349. :show-overflow-tooltip="true"
  1350. min-width="100px"
  1351. prop="trnMode"
  1352. label="培训形式"
  1353. align="center"
  1354. ></el-table-column>
  1355. <el-table-column
  1356. sortable
  1357. :show-overflow-tooltip="true"
  1358. min-width="100px"
  1359. prop="trnOrg"
  1360. label="培训机构"
  1361. align="center"
  1362. ></el-table-column>
  1363. <el-table-column
  1364. sortable
  1365. :show-overflow-tooltip="true"
  1366. min-width="100px"
  1367. prop="trnPurpose"
  1368. label="培训目的"
  1369. align="center"
  1370. ></el-table-column>
  1371. <el-table-column
  1372. sortable
  1373. :show-overflow-tooltip="true"
  1374. min-width="100px"
  1375. prop="trnConten"
  1376. label="培训内容"
  1377. align="center"
  1378. ></el-table-column>
  1379. <el-table-column
  1380. sortable
  1381. :show-overflow-tooltip="true"
  1382. min-width="100px"
  1383. prop="trnCost"
  1384. label="培训费用"
  1385. align="center"
  1386. ></el-table-column>
  1387. <el-table-column
  1388. sortable
  1389. :show-overflow-tooltip="true"
  1390. min-width="140px"
  1391. prop="strDate"
  1392. label="培训开始时间"
  1393. align="center"
  1394. ></el-table-column>
  1395. <el-table-column
  1396. sortable
  1397. :show-overflow-tooltip="true"
  1398. min-width="140px"
  1399. prop="endDate"
  1400. label="培训结束时间"
  1401. align="center"
  1402. ></el-table-column>
  1403. <el-table-column
  1404. sortable
  1405. :show-overflow-tooltip="true"
  1406. min-width="110px"
  1407. prop="paidByComp"
  1408. label="公司支付费用"
  1409. align="center"
  1410. ></el-table-column>
  1411. <el-table-column
  1412. sortable
  1413. :show-overflow-tooltip="true"
  1414. min-width="110px"
  1415. prop="paidBySelf"
  1416. label="个人支付费用"
  1417. align="center"
  1418. ></el-table-column>
  1419. <el-table-column
  1420. sortable
  1421. :show-overflow-tooltip="true"
  1422. min-width="100px"
  1423. prop="trnResult"
  1424. label="培训成绩"
  1425. align="center"
  1426. ></el-table-column>
  1427. <el-table-column
  1428. sortable
  1429. :show-overflow-tooltip="true"
  1430. min-width="100px"
  1431. prop="passed"
  1432. label="是否合格"
  1433. align="center"
  1434. >
  1435. <template slot-scope="scope">
  1436. <span v-if="scope.row.passed == 0">否</span>
  1437. <span v-else-if="scope.row.passed == 1">是</span>
  1438. </template>
  1439. </el-table-column>
  1440. <el-table-column
  1441. sortable
  1442. :show-overflow-tooltip="true"
  1443. min-width="110px"
  1444. prop="tchComments"
  1445. label="导师评语"
  1446. align="center"
  1447. ></el-table-column>
  1448. <el-table-column
  1449. sortable
  1450. :show-overflow-tooltip="true"
  1451. min-width="200px"
  1452. prop="attachment011"
  1453. label="附件1"
  1454. align="left"
  1455. >
  1456. <template slot-scope="scope">
  1457. <el-button
  1458. type="goon"
  1459. size="mini"
  1460. icon="el-icon-download"
  1461. circle
  1462. :disabled='!scope.row.attachment011'
  1463. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment01.fileName, scope.row.attachment01.oldFileName, '')"
  1464. >
  1465. <!-- LIMS_LRC_EMP_TRAINING -->
  1466. </el-button>
  1467. <span>{{scope.row.attachment011}}</span>
  1468. </template>
  1469. </el-table-column>
  1470. <el-table-column
  1471. sortable
  1472. :show-overflow-tooltip="true"
  1473. min-width="200px"
  1474. prop="attachment021"
  1475. label="附件2"
  1476. align="left"
  1477. >
  1478. <template slot-scope="scope">
  1479. <el-button
  1480. type="goon"
  1481. size="mini"
  1482. icon="el-icon-download"
  1483. circle
  1484. :disabled='!scope.row.attachment021'
  1485. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment02.fileName, scope.row.attachment02.oldFileName, '')"
  1486. >
  1487. </el-button>
  1488. <span>{{scope.row.attachment021}}</span>
  1489. </template>
  1490. </el-table-column>
  1491. <el-table-column
  1492. sortable
  1493. :show-overflow-tooltip="true"
  1494. min-width="200px"
  1495. prop="attachment031"
  1496. label="附件3"
  1497. align="left"
  1498. >
  1499. <template slot-scope="scope">
  1500. <el-button
  1501. type="goon"
  1502. size="mini"
  1503. icon="el-icon-download"
  1504. circle
  1505. :disabled='!scope.row.attachment031'
  1506. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment03.fileName, scope.row.attachment03.oldFileName, '')"
  1507. >
  1508. </el-button>
  1509. <span>{{scope.row.attachment031}}</span>
  1510. </template>
  1511. </el-table-column>
  1512. <el-table-column
  1513. sortable
  1514. :show-overflow-tooltip="true"
  1515. min-width="100px"
  1516. prop="memo"
  1517. label="备注"
  1518. align="center"
  1519. ></el-table-column>
  1520. <el-table-column
  1521. sortable
  1522. :show-overflow-tooltip="true"
  1523. min-width="100px"
  1524. prop="validFlag"
  1525. label="数据状态"
  1526. align="center"
  1527. >
  1528. <template slot-scope="scope">
  1529. <span v-if="scope.row.validFlag == 1">已启用</span>
  1530. <span v-else-if="scope.row.validFlag == 0">已停用</span>
  1531. </template>
  1532. </el-table-column>
  1533. </el-table>
  1534. </div>
  1535. <!-- <div class="zy-foot-page">
  1536. <el-pagination
  1537. v-loading="dataLoading5"
  1538. @size-change="pageSizeChange5"
  1539. @current-change="pageCurrentChange5"
  1540. :current-page="page5.pageNum"
  1541. :page-sizes="[10, 20, 50, 100, 200]"
  1542. :page-size="page5.pageSize"
  1543. layout="total, sizes, prev, pager, next, jumper"
  1544. :total="page5.totalPage"
  1545. background
  1546. >
  1547. </el-pagination>
  1548. </div> -->
  1549. </el-tab-pane>
  1550. <el-tab-pane
  1551. label="工作经历"
  1552. name="fifth"
  1553. >
  1554. <div class="zy-title-div">
  1555. <div class="zy-title-name">
  1556. <img
  1557. style="width: 25px; height: 25px"
  1558. src='../../../../assets/img/imgScreen/logo.png'
  1559. />
  1560. 工作经历信息
  1561. </div>
  1562. <div>
  1563. <el-button
  1564. icon="el-icon-circle-plus-outline"
  1565. type="goon"
  1566. size="mini"
  1567. @click="addData6"
  1568. >新增</el-button>
  1569. <el-button
  1570. icon="el-icon-edit"
  1571. type="goon"
  1572. size="mini"
  1573. @click="modifyData6"
  1574. >修改</el-button>
  1575. <el-button
  1576. icon="el-icon-circle-close"
  1577. type="danger"
  1578. size="mini"
  1579. @click="deleteData6"
  1580. >停用</el-button>
  1581. <el-button
  1582. icon="el-icon-check"
  1583. type="goon"
  1584. size="mini"
  1585. @click="recoverData6"
  1586. >启用</el-button>
  1587. </div>
  1588. </div>
  1589. <!-- 工作经历表格 -->
  1590. <div class="common-table-div" style="margin-bottom:0;margin-top:0">
  1591. <el-table
  1592. v-loading="dataLoading6"
  1593. ref="dataTable6"
  1594. border
  1595. :height="height_bot"
  1596. highlight-current-row
  1597. @selection-change="handleSelectionChange6"
  1598. :data="table.list6"
  1599. @row-click="getRowCheck5"
  1600. :icore-filter-flag="icoreFilterFlag"
  1601. :cell-class-name="tableRowClassName6"
  1602. :header-cell-style="tableHeaderCellStyle"
  1603. :exchangeFilterMap="{'validFlag':{'0':'已停用','1':'已启用'},}"
  1604. >
  1605. <el-table-column
  1606. type="index"
  1607. label="NO"
  1608. align="center"
  1609. ></el-table-column>
  1610. <el-table-column
  1611. type="selection"
  1612. width="55"
  1613. align="center"
  1614. ></el-table-column>
  1615. <el-table-column
  1616. sortable
  1617. :show-overflow-tooltip="true"
  1618. min-width="140px"
  1619. prop="wrkId"
  1620. label="工作经历编号"
  1621. align="center"
  1622. ></el-table-column>
  1623. <el-table-column
  1624. sortable
  1625. :show-overflow-tooltip="true"
  1626. min-width="140px"
  1627. prop="empNo"
  1628. label="职工编号"
  1629. align="center"
  1630. ></el-table-column>
  1631. <el-table-column
  1632. sortable
  1633. :show-overflow-tooltip="true"
  1634. min-width="100px"
  1635. prop="wrkCompany"
  1636. label="工作单位"
  1637. align="center"
  1638. ></el-table-column>
  1639. <el-table-column
  1640. sortable
  1641. :show-overflow-tooltip="true"
  1642. min-width="100px"
  1643. prop="jobDesc"
  1644. label="工作内容"
  1645. align="center"
  1646. ></el-table-column>
  1647. <el-table-column
  1648. sortable
  1649. :show-overflow-tooltip="true"
  1650. min-width="100px"
  1651. prop="leavePost"
  1652. label="离职职务"
  1653. align="center"
  1654. ></el-table-column>
  1655. <el-table-column
  1656. sortable
  1657. :show-overflow-tooltip="true"
  1658. min-width="100px"
  1659. prop="leaveReason"
  1660. label="离职原因"
  1661. align="center"
  1662. ></el-table-column>
  1663. <el-table-column
  1664. sortable
  1665. :show-overflow-tooltip="true"
  1666. min-width="140px"
  1667. prop="strDate"
  1668. label="开始时间"
  1669. align="center"
  1670. ></el-table-column>
  1671. <el-table-column
  1672. sortable
  1673. :show-overflow-tooltip="true"
  1674. min-width="140px"
  1675. prop="endDate"
  1676. label="离职日期"
  1677. align="center"
  1678. ></el-table-column>
  1679. <el-table-column
  1680. sortable
  1681. :show-overflow-tooltip="true"
  1682. min-width="200px"
  1683. prop="attachment011"
  1684. label="附件1"
  1685. align="left"
  1686. >
  1687. <template slot-scope="scope">
  1688. <el-button
  1689. type="goon"
  1690. size="mini"
  1691. icon="el-icon-download"
  1692. circle
  1693. :disabled='!scope.row.attachment011'
  1694. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment01.fileName, scope.row.attachment01.oldFileName, '')"
  1695. >
  1696. <!-- LIMS_LRC_EMP_WRK -->
  1697. </el-button>
  1698. <span>{{scope.row.attachment011}}</span>
  1699. </template>
  1700. </el-table-column>
  1701. <el-table-column
  1702. sortable
  1703. :show-overflow-tooltip="true"
  1704. min-width="200px"
  1705. prop="attachment021"
  1706. label="附件2"
  1707. align="left"
  1708. >
  1709. <template slot-scope="scope">
  1710. <el-button
  1711. type="goon"
  1712. size="mini"
  1713. icon="el-icon-download"
  1714. circle
  1715. :disabled='!scope.row.attachment021'
  1716. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment02.fileName, scope.row.attachment02.oldFileName, '')"
  1717. >
  1718. </el-button>
  1719. <span>{{scope.row.attachment021}}</span>
  1720. </template>
  1721. </el-table-column>
  1722. <el-table-column
  1723. sortable
  1724. :show-overflow-tooltip="true"
  1725. min-width="200px"
  1726. prop="attachment031"
  1727. label="附件3"
  1728. align="left"
  1729. >
  1730. <template slot-scope="scope">
  1731. <el-button
  1732. type="goon"
  1733. size="mini"
  1734. icon="el-icon-download"
  1735. circle
  1736. :disabled='!scope.row.attachment031'
  1737. @click="downloadFile(scope.$index, scope.row.rowId, scope.row.attachment03.fileName, scope.row.attachment03.oldFileName, '')"
  1738. >
  1739. </el-button>
  1740. <span>{{scope.row.attachment031}}</span>
  1741. </template>
  1742. </el-table-column>
  1743. <el-table-column
  1744. sortable
  1745. :show-overflow-tooltip="true"
  1746. min-width="100px"
  1747. prop="memo"
  1748. label="备注"
  1749. align="center"
  1750. ></el-table-column>
  1751. <el-table-column
  1752. sortable
  1753. :show-overflow-tooltip="true"
  1754. min-width="100px"
  1755. prop="validFlag"
  1756. label="数据状态"
  1757. align="center"
  1758. >
  1759. <template slot-scope="scope">
  1760. <span v-if="scope.row.validFlag == 1">已启用</span>
  1761. <span v-else-if="scope.row.validFlag == 0">已停用</span>
  1762. </template>
  1763. </el-table-column>
  1764. </el-table>
  1765. </div>
  1766. <!-- <div class="zy-foot-page">
  1767. <el-pagination
  1768. v-loading="dataLoading6"
  1769. @size-change="pageSizeChange6"
  1770. @current-change="pageCurrentChange6"
  1771. :current-page="page6.pageNum"
  1772. :page-sizes="[10, 20, 50, 100, 200]"
  1773. :page-size="page6.pageSize"
  1774. layout="total, sizes, prev, pager, next, jumper"
  1775. :total="page6.totalPage"
  1776. background
  1777. >
  1778. </el-pagination>
  1779. </div> -->
  1780. </el-tab-pane>
  1781. <el-tab-pane
  1782. label="班组维护"
  1783. name="sixth"
  1784. >
  1785. <div class="zy-title-div">
  1786. <div class="zy-title-name">
  1787. <img
  1788. style="width: 25px; height: 25px"
  1789. src='../../../../assets/img/imgScreen/logo.png'
  1790. />
  1791. 班组维护信息
  1792. </div>
  1793. <div>
  1794. <el-button
  1795. icon="el-icon-circle-plus-outline"
  1796. type="goon"
  1797. size="mini"
  1798. @click="addData7"
  1799. >新增</el-button>
  1800. <el-button
  1801. icon="el-icon-edit"
  1802. type="goon"
  1803. size="mini"
  1804. @click="modifyData7"
  1805. >修改</el-button>
  1806. <el-button
  1807. icon="el-icon-circle-close"
  1808. type="danger"
  1809. size="mini"
  1810. @click="deleteData7"
  1811. >停用</el-button>
  1812. <el-button
  1813. icon="el-icon-check"
  1814. type="goon"
  1815. size="mini"
  1816. @click="recoverData7"
  1817. >启用</el-button>
  1818. </div>
  1819. </div>
  1820. <!-- 班组维护表格 -->
  1821. <div class="common-table-div" style="margin-bottom:0;margin-top:0">
  1822. <el-table
  1823. v-loading="dataLoading7"
  1824. ref="dataTable7"
  1825. border
  1826. :height="height_bot"
  1827. highlight-current-row
  1828. @selection-change="handleSelectionChange7"
  1829. :data="table.list7"
  1830. @row-click="getRowCheck6"
  1831. :icore-filter-flag="icoreFilterFlag"
  1832. :header-cell-style="tableHeaderCellStyle"
  1833. :cell-class-name="tableRowClassName7"
  1834. :exchangeFilterMap="{'validFlag':{'0':'已停用','1':'已启用'},}"
  1835. >
  1836. <el-table-column
  1837. type="index"
  1838. label="NO"
  1839. align="center"
  1840. ></el-table-column>
  1841. <el-table-column
  1842. type="selection"
  1843. width="55"
  1844. align="center"
  1845. ></el-table-column>
  1846. <el-table-column
  1847. sortable
  1848. :show-overflow-tooltip="true"
  1849. min-width="100px"
  1850. prop="empNo"
  1851. label="职工编号"
  1852. align="center"
  1853. ></el-table-column>
  1854. <el-table-column
  1855. sortable
  1856. :show-overflow-tooltip="true"
  1857. min-width="80px"
  1858. prop="empName"
  1859. label="职工姓名"
  1860. align="center"
  1861. ></el-table-column>
  1862. <el-table-column
  1863. sortable
  1864. :show-overflow-tooltip="true"
  1865. min-width="120px"
  1866. prop="companyName"
  1867. label="公司名称"
  1868. align="center"
  1869. ></el-table-column>
  1870. <el-table-column
  1871. sortable
  1872. :show-overflow-tooltip="true"
  1873. min-width="120px"
  1874. prop="deptName"
  1875. label="部门名称"
  1876. align="center"
  1877. ></el-table-column>
  1878. <el-table-column
  1879. sortable
  1880. :show-overflow-tooltip="true"
  1881. min-width="120px"
  1882. prop="sectionName"
  1883. label="班组名称"
  1884. align="center"
  1885. ></el-table-column>
  1886. <el-table-column
  1887. sortable
  1888. :show-overflow-tooltip="true"
  1889. min-width="100px"
  1890. prop="wrkGrpName"
  1891. label="班值"
  1892. align="center"
  1893. ></el-table-column>
  1894. <el-table-column
  1895. sortable
  1896. :show-overflow-tooltip="true"
  1897. min-width="100px"
  1898. prop="postName"
  1899. label="岗位"
  1900. align="center"
  1901. ></el-table-column>
  1902. <el-table-column
  1903. sortable
  1904. :show-overflow-tooltip="true"
  1905. min-width="100px"
  1906. prop="memo"
  1907. label="备注"
  1908. align="center"
  1909. ></el-table-column>
  1910. <el-table-column
  1911. sortable
  1912. :show-overflow-tooltip="true"
  1913. min-width="80px"
  1914. prop="validFlag"
  1915. label="有效状态"
  1916. align="center"
  1917. >
  1918. <template slot-scope="scope">
  1919. <span v-if="scope.row.validFlag == 1">已启用</span>
  1920. <span v-else-if="scope.row.validFlag == 0">已停用</span>
  1921. </template>
  1922. </el-table-column>
  1923. <el-table-column
  1924. sortable
  1925. :show-overflow-tooltip="true"
  1926. min-width="80px"
  1927. prop="createMan"
  1928. label="创建人"
  1929. align="center"
  1930. ></el-table-column>
  1931. <el-table-column
  1932. sortable
  1933. :show-overflow-tooltip="true"
  1934. min-width="120px"
  1935. prop="createTime"
  1936. label="创建时间"
  1937. align="center"
  1938. ></el-table-column>
  1939. <el-table-column
  1940. sortable
  1941. :show-overflow-tooltip="true"
  1942. min-width="80px"
  1943. prop="updateMan"
  1944. label="更新人"
  1945. align="center"
  1946. ></el-table-column>
  1947. <el-table-column
  1948. sortable
  1949. :show-overflow-tooltip="true"
  1950. min-width="120px"
  1951. prop="updateTime"
  1952. label="更新时间"
  1953. align="center"
  1954. ></el-table-column>
  1955. </el-table>
  1956. </div>
  1957. <!-- <div class="zy-foot-page">
  1958. <el-pagination
  1959. v-loading="dataLoading7"
  1960. @size-change="pageSizeChange7"
  1961. @current-change="pageCurrentChange7"
  1962. :current-page="page7.pageNum"
  1963. :page-sizes="[10, 20, 50, 100, 200]"
  1964. :page-size="page7.pageSize"
  1965. layout="total, sizes, prev, pager, next, jumper"
  1966. :total="page7.totalPage"
  1967. background
  1968. >
  1969. </el-pagination>
  1970. </div> -->
  1971. </el-tab-pane>
  1972. </el-tabs>
  1973. </div>
  1974. <!-- 新增实验室人员信息弹窗 -->
  1975. <div
  1976. is="alertComponents"
  1977. :showFlag="showFlag"
  1978. :Params="Params"
  1979. @refresh='refresh(1)'
  1980. ></div>
  1981. <div
  1982. is="alertComponents2"
  1983. :showFlag2="showFlag2"
  1984. :Params="Params"
  1985. :Params2="Params2"
  1986. @refresh='refresh(2)'
  1987. ></div>
  1988. <div
  1989. is="alertComponents3"
  1990. :showFlag3="showFlag3"
  1991. :Params="Params"
  1992. :Params3="Params3"
  1993. @refresh='refresh(3)'
  1994. ></div>
  1995. <div
  1996. is="alertComponents4"
  1997. :showFlag4="showFlag4"
  1998. :Params="Params"
  1999. :Params4="Params4"
  2000. @refresh='refresh(4)'
  2001. ></div>
  2002. <div
  2003. is="alertComponents5"
  2004. :showFlag5="showFlag5"
  2005. :Params="Params"
  2006. :Params5="Params5"
  2007. @refresh='refresh(5)'
  2008. ></div>
  2009. <div
  2010. is="alertComponents6"
  2011. :showFlag6="showFlag6"
  2012. :Params="Params"
  2013. :Params6="Params6"
  2014. @refresh='refresh(6)'
  2015. ></div>
  2016. <div
  2017. is="alertComponents7"
  2018. :showFlag7="showFlag7"
  2019. :Params="Params"
  2020. :Params7="Params7"
  2021. @refresh='refresh(7)'
  2022. ></div>
  2023. <!-- 图片预览 -->
  2024. <el-dialog
  2025. :visible.sync="imgVisible"
  2026. width='70%'
  2027. >
  2028. <div
  2029. slot="title"
  2030. class="titleBox"
  2031. >
  2032. <i
  2033. class="el-icon-document"
  2034. style="font-size: 20px"
  2035. ></i>
  2036. <span style="margin-left:10px;font-size:18px">图片预览</span>
  2037. </div>
  2038. <div style="text-align:center">
  2039. <img
  2040. :src="imgPreViews"
  2041. alt=""
  2042. >
  2043. </div>
  2044. </el-dialog>
  2045. </div>
  2046. </template>
  2047. <script>
  2048. import { getCookie, formatDate } from '@/utils/util.js';
  2049. import { ajaxCtx } from '@/config/config.js';
  2050. import { cookieUserId, cookieUserName } from '@/config/config.js';
  2051. import alertComponents from './alertComponents';
  2052. import alertComponents2 from './alertComponents2';
  2053. import alertComponents3 from './alertComponents3';
  2054. import alertComponents4 from './alertComponents4';
  2055. import alertComponents5 from './alertComponents5';
  2056. import alertComponents6 from './alertComponents6';
  2057. import alertComponents7 from './alertComponents7';
  2058. let userName = getCookie(cookieUserName);
  2059. let userId = getCookie(cookieUserId);
  2060. export default {
  2061. components: { alertComponents, alertComponents2, alertComponents3, alertComponents4, alertComponents5, alertComponents6, alertComponents7 },
  2062. data () {
  2063. return {
  2064. text: '',
  2065. table: {
  2066. list: [],
  2067. list2: [],
  2068. list3: [],
  2069. list4: [],
  2070. list5: [],
  2071. list6: [],
  2072. list7: [],
  2073. },
  2074. dataLoading: false,
  2075. dataLoading2: false,
  2076. dataLoading3: false,
  2077. dataLoading4: false,
  2078. dataLoading5: false,
  2079. dataLoading6: false,
  2080. dataLoading7: false,
  2081. icoreFilterFlag: true,
  2082. page: {
  2083. pageSize: 50,
  2084. pageNum: 1,
  2085. totalPage: 0
  2086. },
  2087. page2: {
  2088. pageSize: 50,
  2089. pageNum: 1,
  2090. totalPage: 0
  2091. },
  2092. page3: {
  2093. pageSize: 50,
  2094. pageNum: 1,
  2095. totalPage: 0
  2096. },
  2097. page4: {
  2098. pageSize: 50,
  2099. pageNum: 1,
  2100. totalPage: 0
  2101. },
  2102. page5: {
  2103. pageSize: 50,
  2104. pageNum: 1,
  2105. totalPage: 0
  2106. },
  2107. page6: {
  2108. pageSize: 50,
  2109. pageNum: 1,
  2110. totalPage: 0
  2111. },
  2112. page7: {
  2113. pageSize: 50,
  2114. pageNum: 1,
  2115. totalPage: 0
  2116. },
  2117. showFlag: false,
  2118. Params: {},
  2119. showFlag2: false,
  2120. Params2: {},
  2121. showFlag3: false,
  2122. Params3: {},
  2123. showFlag4: false,
  2124. Params4: {},
  2125. showFlag5: false,
  2126. Params5: {},
  2127. showFlag6: false,
  2128. Params6: {},
  2129. showFlag7: false,
  2130. Params7: {},
  2131. multipleSelection3: [],
  2132. multipleSelection4: [],
  2133. multipleSelection5: [],
  2134. multipleSelection6: [],
  2135. multipleSelection7: [],
  2136. multipleSelection8: [],
  2137. multipleSelection9: [],
  2138. search: {
  2139. empName: '',
  2140. empNo: '',
  2141. },
  2142. empNo: '',
  2143. action_prod: window.location.protocol + '//' + window.location.host,
  2144. // action_prod:ajaxCtx,
  2145. height_top: 0,
  2146. height_bot: 0,
  2147. activeName: 'first',
  2148. activeRefreshObj: {},
  2149. activeEmpNo: '',
  2150. setTimeoutObj: null,
  2151. imgPreViews: '',
  2152. imgVisible: false
  2153. }
  2154. },
  2155. created () {
  2156. this.height_top = window.innerHeight / 2 - 130 < 250 ? 250 : window.innerHeight / 2 - 110;
  2157. this.height_bot = window.innerHeight / 2 - 130 < 250 ? 250 : window.innerHeight / 2 - 110;
  2158. },
  2159. mounted () {
  2160. this.getDataList();
  2161. // this.getDataList2();
  2162. // this.getDataList3();
  2163. // this.getDataList4();
  2164. // this.getDataList5();
  2165. // this.getDataList6();
  2166. // this.getDataList7();
  2167. // this.addScreen();
  2168. // this.addScreen2();
  2169. // this.addScreen3();
  2170. // this.addScreen4();
  2171. // this.addScreen5();
  2172. // this.addScreen6();
  2173. // this.addScreen7();
  2174. },
  2175. methods: {
  2176. getSummaries (param) {
  2177. const { columns, data } = param;
  2178. const sums = [];
  2179. columns.forEach((column, index) => {
  2180. if (index === 0) {
  2181. sums[index] = "合计";
  2182. }
  2183. if (index === 1) {
  2184. sums[index] = data.length;
  2185. }
  2186. });
  2187. return sums;
  2188. },
  2189. // 页面刷新,重新加载表格数据
  2190. refresh (number) {
  2191. switch (number) {
  2192. case 1:
  2193. this.getDataList();
  2194. break
  2195. case 2:
  2196. this.getDataList2(this.empNo);
  2197. break
  2198. case 3:
  2199. this.getDataList3(this.empNo);
  2200. break
  2201. case 4:
  2202. this.getDataList4(this.empNo);
  2203. break
  2204. case 5:
  2205. this.getDataList5(this.empNo);
  2206. break
  2207. case 6:
  2208. this.getDataList6(this.empNo);
  2209. break
  2210. case 7:
  2211. this.getDataList7(this.empNo);
  2212. break
  2213. }
  2214. },
  2215. // 人员信息表新增
  2216. addData () {
  2217. this.showFlag = !this.showFlag;
  2218. // this.Params2 = null;
  2219. this.Params = null;
  2220. },
  2221. // 修改(人员信息表)
  2222. modifyData () {
  2223. if (this.multipleSelection3.length !== 1) {
  2224. this.$message.warning('请勾选您要修改的一条数据!')
  2225. } else {
  2226. this.showFlag = !this.showFlag;
  2227. this.Params = Object.assign({}, this.multipleSelection3[0])
  2228. }
  2229. },
  2230. // 人员信息删除
  2231. deleteData () {
  2232. if (this.multipleSelection3.length < 1) {
  2233. this.$message.warning('请勾选您要停用的数据!')
  2234. } else {
  2235. this.dialogTableVisible = false;
  2236. for (var i = 0; i < this.multipleSelection3.length; i++) {
  2237. this.multipleSelection3[i].updateMan = userName;
  2238. this.multipleSelection3[i].updateNo = userId
  2239. }
  2240. this.axios.post('pass/baseManagement/v1/limslrcemps/abolish', this.multipleSelection3, { individualType: 'json' }).then(res => {
  2241. if (res.succeed) {
  2242. this.$message.success('停用操作成功');
  2243. this.refresh(1)
  2244. } else {
  2245. this.$message.error(res.message)
  2246. }
  2247. }).catch(e => {
  2248. this.$message.error(e.message)
  2249. })
  2250. }
  2251. },
  2252. recoverData () {
  2253. if (this.multipleSelection3.length < 1) {
  2254. this.$message.warning('请勾选您要启用的数据!')
  2255. } else {
  2256. this.dialogTableVisible = false;
  2257. for (var i = 0; i < this.multipleSelection3.length; i++) {
  2258. this.multipleSelection3[i].updateMan = userName;
  2259. this.multipleSelection3[i].updateNo = userId
  2260. }
  2261. this.axios.post('pass/baseManagement/v1/limslrcemps/recover', this.multipleSelection3, { individualType: 'json' }).then(res => {
  2262. if (res.succeed) {
  2263. this.$message.success('启用操作成功');
  2264. this.refresh(1)
  2265. } else {
  2266. this.$message.error(res.message)
  2267. }
  2268. }).catch(e => {
  2269. this.$message.error(e.message)
  2270. })
  2271. }
  2272. },
  2273. // 人员查询
  2274. searchData () {
  2275. this.page.pageNum = 1;
  2276. this.getDataList()
  2277. },
  2278. // 人员信息重置
  2279. reset () {
  2280. this.search.empName = '';
  2281. this.search.empNo = '';
  2282. this.searchData();
  2283. },
  2284. // 人员合同信息新增
  2285. addData2 () {
  2286. this.showFlag2 = !this.showFlag2;
  2287. this.Params2 = null;
  2288. this.Params = this.multipleSelection3;
  2289. },
  2290. // 人员合同信息修改
  2291. modifyData2 () {
  2292. if (this.multipleSelection4.length !== 1) {
  2293. this.$message.warning('请勾选您要修改的一条数据!')
  2294. } else {
  2295. this.showFlag2 = !this.showFlag2;
  2296. this.Params2 = this.multipleSelection4[0];
  2297. this.Params = null
  2298. }
  2299. },
  2300. // 人员合同信息删除
  2301. deleteData2 () {
  2302. if (this.multipleSelection4.length < 1) {
  2303. this.$message.warning('请勾选您要停用的数据!')
  2304. } else {
  2305. this.dialogTableVisible = false;
  2306. for (var i = 0; i < this.multipleSelection4.length; i++) {
  2307. this.multipleSelection4[i].updateMan = userName;
  2308. this.multipleSelection4[i].updateNo = userId
  2309. }
  2310. this.axios.post('pass/baseManagement/v1/limslrcempconts/abolish', this.multipleSelection4, { individualType: 'json' }).then(res => {
  2311. if (res.succeed) {
  2312. this.$message.success('停用操作成功');
  2313. this.refresh(2)
  2314. } else {
  2315. this.$message.error(res.message)
  2316. }
  2317. }).catch(e => {
  2318. this.$message.error(e.message)
  2319. })
  2320. }
  2321. },
  2322. // 人员合同信息启用按钮
  2323. recoverData2 () {
  2324. if (this.multipleSelection4.length < 1) {
  2325. this.$message.warning('请勾选您要恢复的数据!')
  2326. } else {
  2327. this.dialogTableVisible2 = false;
  2328. for (var i = 0; i < this.multipleSelection4.length; i++) {
  2329. this.multipleSelection4[i].evaMan = userName;
  2330. this.multipleSelection4[i].evaNo = userId
  2331. }
  2332. this.axios.post('pass/baseManagement/v1/limslrcempconts/recover', this.multipleSelection4, { individualType: 'json' }).then(res => {
  2333. if (res.succeed) {
  2334. this.$message.success('启用成功');
  2335. this.refresh(2)
  2336. } else {
  2337. this.$message.error(res.message)
  2338. }
  2339. }).catch(e => {
  2340. this.$message.error(e.message)
  2341. })
  2342. }
  2343. },
  2344. // 资格认证新增
  2345. addData3 () {
  2346. this.showFlag3 = !this.showFlag3;
  2347. this.Params3 = null;
  2348. this.Params = this.multipleSelection3;
  2349. },
  2350. // 资格认证修改
  2351. modifyData3 () {
  2352. if (this.multipleSelection5.length !== 1) {
  2353. this.$message.warning('请勾选您要修改的一条数据!')
  2354. } else {
  2355. this.showFlag3 = !this.showFlag3;
  2356. this.Params3 = this.multipleSelection5[0];
  2357. this.Params = null
  2358. }
  2359. },
  2360. // 资格认证删除
  2361. deleteData3 () {
  2362. if (this.multipleSelection5.length < 1) {
  2363. this.$message.warning('请勾选您要停用的数据!')
  2364. } else {
  2365. this.dialogTableVisible = false;
  2366. for (var i = 0; i < this.multipleSelection5.length; i++) {
  2367. this.multipleSelection5[i].updateMan = userName;
  2368. this.multipleSelection5[i].updateNo = userId
  2369. }
  2370. this.axios.post('pass/baseManagement/v1/limslrcempcerts/abolish', this.multipleSelection5, { individualType: 'json' }).then(res => {
  2371. if (res.succeed) {
  2372. this.$message.success('停用操作成功');
  2373. this.refresh(3)
  2374. } else {
  2375. this.$message.error(res.message)
  2376. }
  2377. }).catch(e => {
  2378. this.$message.error(e.message)
  2379. })
  2380. }
  2381. },
  2382. // 资格认证启用
  2383. recoverData3 () {
  2384. if (this.multipleSelection5.length < 1) {
  2385. this.$message.warning('请勾选您要恢复的数据!')
  2386. } else {
  2387. this.dialogTableVisible2 = false;
  2388. for (var i = 0; i < this.multipleSelection5.length; i++) {
  2389. this.multipleSelection5[i].evaMan = userName;
  2390. this.multipleSelection5[i].evaNo = userId
  2391. }
  2392. this.axios.post('pass/baseManagement/v1/limslrcempcerts/recover', this.multipleSelection5, { individualType: 'json' }).then(res => {
  2393. if (res.succeed) {
  2394. this.$message.success('启用成功');
  2395. this.refresh(3)
  2396. } else {
  2397. this.$message.error(res.message)
  2398. }
  2399. }).catch(e => {
  2400. this.$message.error(e.message)
  2401. })
  2402. }
  2403. },
  2404. // 教育经历
  2405. addData4 () {
  2406. this.showFlag4 = !this.showFlag4;
  2407. this.Params4 = null;
  2408. this.Params = this.multipleSelection3;
  2409. },
  2410. // 教育经历修改
  2411. modifyData4 () {
  2412. if (this.multipleSelection6.length !== 1) {
  2413. this.$message.warning('请勾选您要修改的一条数据!')
  2414. } else {
  2415. this.showFlag4 = !this.showFlag4;
  2416. this.Params4 = this.multipleSelection6[0];
  2417. this.Params = null
  2418. }
  2419. },
  2420. // 教育经历删除
  2421. deleteData4 () {
  2422. if (this.multipleSelection6.length < 1) {
  2423. this.$message.warning('请勾选您要停用的数据!')
  2424. } else {
  2425. this.dialogTableVisible = false;
  2426. for (var i = 0; i < this.multipleSelection6.length; i++) {
  2427. this.multipleSelection6[i].updateMan = userName;
  2428. this.multipleSelection6[i].updateNo = userId
  2429. }
  2430. this.axios.post('pass/baseManagement/v1/limslrcempedus/abolish', this.multipleSelection6, { individualType: 'json' }).then(res => {
  2431. if (res.succeed) {
  2432. this.$message.success('停用操作成功');
  2433. this.refresh(4)
  2434. } else {
  2435. this.$message.error(res.message)
  2436. }
  2437. }).catch(e => {
  2438. this.$message.error(e.message)
  2439. })
  2440. }
  2441. },
  2442. // 教育经历启用
  2443. recoverData4 () {
  2444. if (this.multipleSelection6.length < 1) {
  2445. this.$message.warning('请勾选您要恢复的数据!')
  2446. } else {
  2447. this.dialogTableVisible2 = false;
  2448. for (var i = 0; i < this.multipleSelection6.length; i++) {
  2449. this.multipleSelection6[i].evaMan = userName;
  2450. this.multipleSelection6[i].evaNo = userId
  2451. }
  2452. this.axios.post('pass/baseManagement/v1/limslrcempedus/recover', this.multipleSelection6, { individualType: 'json' }).then(res => {
  2453. if (res.succeed) {
  2454. this.$message.success('启用成功');
  2455. this.refresh(4)
  2456. } else {
  2457. this.$message.error(res.message)
  2458. }
  2459. }).catch(e => {
  2460. this.$message.error(e.message)
  2461. })
  2462. }
  2463. },
  2464. // 培训记录
  2465. addData5 () {
  2466. this.showFlag5 = !this.showFlag5;
  2467. this.Params5 = null;
  2468. this.Params = this.multipleSelection3;
  2469. },
  2470. // 培训记录修改
  2471. modifyData5 () {
  2472. if (this.multipleSelection7.length !== 1) {
  2473. this.$message.warning('请勾选您要修改的一条数据!')
  2474. } else {
  2475. this.showFlag5 = !this.showFlag5;
  2476. this.Params5 = this.multipleSelection7[0];
  2477. this.Params = null
  2478. }
  2479. },
  2480. // 培训记录删除
  2481. deleteData5 () {
  2482. if (this.multipleSelection7.length < 1) {
  2483. this.$message.warning('请勾选您要停用的数据!')
  2484. } else {
  2485. this.dialogTableVisible = false;
  2486. for (var i = 0; i < this.multipleSelection7.length; i++) {
  2487. this.multipleSelection7[i].updateMan = userName;
  2488. this.multipleSelection7[i].updateNo = userId
  2489. }
  2490. this.axios.post('pass/baseManagement/v1/limslrcemptrainings/abolish', this.multipleSelection7, { individualType: 'json' }).then(res => {
  2491. if (res.succeed) {
  2492. this.$message.success('停用操作成功');
  2493. this.refresh(5)
  2494. } else {
  2495. this.$message.error(res.message)
  2496. }
  2497. }).catch(e => {
  2498. this.$message.error(e.message)
  2499. })
  2500. }
  2501. },
  2502. // 培训记录启用
  2503. recoverData5 () {
  2504. if (this.multipleSelection7.length < 1) {
  2505. this.$message.warning('请勾选您要恢复的数据!')
  2506. } else {
  2507. this.dialogTableVisible2 = false;
  2508. for (var i = 0; i < this.multipleSelection7.length; i++) {
  2509. this.multipleSelection7[i].evaMan = userName;
  2510. this.multipleSelection7[i].evaNo = userId
  2511. }
  2512. this.axios.post('pass/baseManagement/v1/limslrcemptrainings/recover', this.multipleSelection7, { individualType: 'json' }).then(res => {
  2513. if (res.succeed) {
  2514. this.$message.success('启用成功');
  2515. this.refresh(5)
  2516. } else {
  2517. this.$message.error(res.message)
  2518. }
  2519. }).catch(e => {
  2520. this.$message.error(e.message)
  2521. })
  2522. }
  2523. },
  2524. // 工作经历
  2525. addData6 () {
  2526. this.showFlag6 = !this.showFlag6;
  2527. this.Params6 = null;
  2528. this.Params = this.multipleSelection3;
  2529. },
  2530. // 工作经历修改
  2531. modifyData6 () {
  2532. if (this.multipleSelection8.length !== 1) {
  2533. this.$message.warning('请勾选您要修改的一条数据!')
  2534. } else {
  2535. this.showFlag6 = !this.showFlag6;
  2536. this.Params6 = this.multipleSelection8[0];
  2537. this.Params = null
  2538. }
  2539. },
  2540. // 工作经历删除
  2541. deleteData6 () {
  2542. if (this.multipleSelection8.length < 1) {
  2543. this.$message.warning('请勾选您要停用的数据!')
  2544. } else {
  2545. this.dialogTableVisible = false;
  2546. for (var i = 0; i < this.multipleSelection8.length; i++) {
  2547. this.multipleSelection8[i].updateMan = userName;
  2548. this.multipleSelection8[i].updateNo = userId
  2549. }
  2550. this.axios.post('pass/baseManagement/v1/limslrcempwrks/abolish', this.multipleSelection8, { individualType: 'json' }).then(res => {
  2551. if (res.succeed) {
  2552. this.$message.success('停用操作成功');
  2553. this.refresh(6)
  2554. } else {
  2555. this.$message.error(res.message)
  2556. }
  2557. }).catch(e => {
  2558. this.$message.error(e.message)
  2559. })
  2560. }
  2561. },
  2562. // 工作经历启用
  2563. recoverData6 () {
  2564. if (this.multipleSelection8.length < 1) {
  2565. this.$message.warning('请勾选您要恢复的数据!')
  2566. } else {
  2567. this.dialogTableVisible2 = false;
  2568. for (var i = 0; i < this.multipleSelection8.length; i++) {
  2569. this.multipleSelection8[i].evaMan = userName;
  2570. this.multipleSelection8[i].evaNo = userId
  2571. }
  2572. this.axios.post('pass/baseManagement/v1/limslrcempwrks/recover', this.multipleSelection8, { individualType: 'json' }).then(res => {
  2573. if (res.succeed) {
  2574. this.$message.success('启用成功');
  2575. this.refresh(6)
  2576. } else {
  2577. this.$message.error(res.message)
  2578. }
  2579. }).catch(e => {
  2580. this.$message.error(e.message)
  2581. })
  2582. }
  2583. },
  2584. // 班组维护经历
  2585. addData7 () {
  2586. this.showFlag7 = !this.showFlag7;
  2587. this.Params7 = null;
  2588. this.Params = this.multipleSelection3;
  2589. },
  2590. // 班组维护修改
  2591. modifyData7 () {
  2592. if (this.multipleSelection9.length !== 1) {
  2593. this.$message.warning('请勾选您要修改的一条数据!')
  2594. } else {
  2595. this.showFlag7 = !this.showFlag7;
  2596. this.Params7 = this.multipleSelection9[0];
  2597. this.Params = null
  2598. }
  2599. },
  2600. // 班组维护删除
  2601. deleteData7 () {
  2602. if (this.multipleSelection9.length < 1) {
  2603. this.$message.warning('请勾选您要停用的数据!')
  2604. } else {
  2605. this.dialogTableVisible = false;
  2606. for (var i = 0; i < this.multipleSelection9.length; i++) {
  2607. this.multipleSelection9[i].updateMan = userName;
  2608. this.multipleSelection9[i].updateNo = userId
  2609. }
  2610. this.axios.post('pass/baseManagement/v1/limslrcempwrkgrps/abolish', this.multipleSelection9, { individualType: 'json' }).then(res => {
  2611. if (res.succeed) {
  2612. this.$message.success('停用操作成功');
  2613. this.refresh(7)
  2614. } else {
  2615. this.$message.error(res.message)
  2616. }
  2617. }).catch(e => {
  2618. this.$message.error(e.message)
  2619. })
  2620. }
  2621. },
  2622. // 班组维护启用
  2623. recoverData7 () {
  2624. if (this.multipleSelection9.length < 1) {
  2625. this.$message.warning('请勾选您要恢复的数据!')
  2626. } else {
  2627. this.dialogTableVisible2 = false;
  2628. for (var i = 0; i < this.multipleSelection9.length; i++) {
  2629. this.multipleSelection9[i].evaMan = userName;
  2630. this.multipleSelection9[i].evaNo = userId
  2631. }
  2632. this.axios.post('pass/baseManagement/v1/limslrcempwrkgrps/recover', this.multipleSelection9, { individualType: 'json' }).then(res => {
  2633. if (res.succeed) {
  2634. this.$message.success('启用成功');
  2635. this.refresh(7)
  2636. } else {
  2637. this.$message.error(res.message)
  2638. }
  2639. }).catch(e => {
  2640. this.$message.error(e.message)
  2641. })
  2642. }
  2643. },
  2644. // 第一个
  2645. pageSizeChange (size) {
  2646. this.page.pageSize = size;
  2647. this.getDataList();
  2648. },
  2649. pageCurrentChange (index) {
  2650. this.page.pageNum = index;
  2651. this.getDataList();
  2652. },
  2653. handleSelectionChange (val) {
  2654. this.multipleSelection3 = val;
  2655. if (val.length > 0) {
  2656. this.empNo = val[val.length - 1].empNo
  2657. this.$refs.dataTable.setCurrentRow(val[val.length - 1])
  2658. this.getAllListByEmpNo(val[val.length - 1])
  2659. }
  2660. },
  2661. getAllListByEmpNo (val) {
  2662. if (this.activeEmpNo === val.empNo) {
  2663. return;
  2664. }
  2665. this.activeRefreshObj = {};
  2666. this.activeEmpNo = val.empNo;
  2667. this.$refs.dataTable.toggleRowSelection(val, true)
  2668. //缓解切换行过快导致请求过多造成的界面卡顿
  2669. if (this.setTimeoutObj != null) {
  2670. clearTimeout(this.setTimeoutObj);
  2671. this.setTimeoutObj = setTimeout(() => {
  2672. this.setTimeoutObj = null;
  2673. this.getTagsData();
  2674. }, 500);
  2675. } else {
  2676. this.getTagsData();
  2677. this.setTimeoutObj = setTimeout(() => {
  2678. this.setTimeoutObj = null;
  2679. }, 600);
  2680. }
  2681. },
  2682. tabsHandleClick (tab, event) {
  2683. if (!this.activeRefreshObj[this.activeName]){
  2684. this.getTagsData();
  2685. }
  2686. },
  2687. getTagsData () {
  2688. this.activeRefreshObj[this.activeName] = true;
  2689. switch (this.activeName) {
  2690. case 'first':
  2691. this.getDataList2(this.activeEmpNo)
  2692. break;
  2693. case 'second':
  2694. this.getDataList3(this.activeEmpNo)
  2695. break;
  2696. case 'third':
  2697. this.getDataList4(this.activeEmpNo)
  2698. break;
  2699. case 'fourth':
  2700. this.getDataList5(this.activeEmpNo)
  2701. break;
  2702. case 'fifth':
  2703. this.getDataList6(this.activeEmpNo)
  2704. break;
  2705. case 'sixth':
  2706. this.getDataList7(this.activeEmpNo)
  2707. break;
  2708. }
  2709. },
  2710. getRowCheck (val) {
  2711. this.$refs.dataTable2.toggleRowSelection(val, true)
  2712. },
  2713. getRowCheck2 (val) {
  2714. this.$refs.dataTable3.toggleRowSelection(val, true)
  2715. },
  2716. getRowCheck3 (val) {
  2717. this.$refs.dataTable4.toggleRowSelection(val, true)
  2718. },
  2719. getRowCheck4 (val) {
  2720. this.$refs.dataTable5.toggleRowSelection(val, true)
  2721. },
  2722. getRowCheck5 (val) {
  2723. this.$refs.dataTable6.toggleRowSelection(val, true)
  2724. },
  2725. getRowCheck6 (val) {
  2726. this.$refs.dataTable7.toggleRowSelection(val, true)
  2727. },
  2728. // 第二个
  2729. pageSizeChange2 (size) {
  2730. this.page2.pageSize = size;
  2731. this.getDataList2();
  2732. },
  2733. pageCurrentChange2 (index) {
  2734. this.page2.pageNum = index;
  2735. this.getDataList2();
  2736. },
  2737. handleSelectionChange2 (val) {
  2738. this.multipleSelection4 = val;
  2739. },
  2740. // 三个
  2741. pageSizeChange3 (size) {
  2742. this.page3.pageSize = size;
  2743. this.getDataList3();
  2744. },
  2745. pageCurrentChange3 (index) {
  2746. this.page3.pageNum = index;
  2747. this.getDataList3();
  2748. },
  2749. handleSelectionChange3 (val) {
  2750. this.multipleSelection5 = val;
  2751. },
  2752. // 四个
  2753. pageSizeChange4 (size) {
  2754. this.page4.pageSize = size;
  2755. this.getDataList4();
  2756. },
  2757. pageCurrentChange4 (index) {
  2758. this.page4.pageNum = index;
  2759. this.getDataList4();
  2760. },
  2761. handleSelectionChange4 (val) {
  2762. this.multipleSelection6 = val;
  2763. },
  2764. // 五个
  2765. pageSizeChange5 (size) {
  2766. this.page5.pageSize = size;
  2767. this.getDataList5();
  2768. },
  2769. pageCurrentChange5 (index) {
  2770. this.page5.pageNum = index;
  2771. this.getDataList5();
  2772. },
  2773. handleSelectionChange5 (val) {
  2774. this.multipleSelection7 = val;
  2775. },
  2776. // 六个
  2777. pageSizeChange6 (size) {
  2778. this.page6.pageSize = size;
  2779. this.getDataList6();
  2780. },
  2781. pageCurrentChange6 (index) {
  2782. this.page6.pageNum = index;
  2783. this.getDataList6();
  2784. },
  2785. handleSelectionChange6 (val) {
  2786. this.multipleSelection8 = val;
  2787. },
  2788. // 七个
  2789. pageSizeChange7 (size) {
  2790. this.page7.pageSize = size;
  2791. this.getDataList7();
  2792. },
  2793. pageCurrentChange7 (index) {
  2794. this.page7.pageNum = index;
  2795. this.getDataList7();
  2796. },
  2797. handleSelectionChange7 (val) {
  2798. this.multipleSelection9 = val;
  2799. },
  2800. addScreen () {
  2801. this.$nextTick(() => {
  2802. let ss = document.createElement('div');
  2803. ss.innerHTML = '筛选';
  2804. ss.style = 'text-align: center;'
  2805. this.$refs.dataTable.$el.getElementsByClassName('el-table__fixed')[0].getElementsByTagName('td')[0].appendChild(ss);
  2806. });
  2807. },
  2808. addScreen2 () {
  2809. this.$nextTick(() => {
  2810. let ss = document.createElement('div');
  2811. ss.innerHTML = '筛选';
  2812. ss.style = 'text-align: center;'
  2813. this.$refs.dataTable2.$el.getElementsByClassName('el-table__fixed')[0].getElementsByTagName('td')[0].appendChild(ss);
  2814. });
  2815. },
  2816. addScreen3 () {
  2817. this.$nextTick(() => {
  2818. let ss = document.createElement('div');
  2819. ss.innerHTML = '筛选';
  2820. ss.style = 'text-align: center;'
  2821. this.$refs.dataTable3.$el.getElementsByClassName('el-table__fixed')[0].getElementsByTagName('td')[0].appendChild(ss);
  2822. });
  2823. },
  2824. addScreen4 () {
  2825. this.$nextTick(() => {
  2826. let ss = document.createElement('div');
  2827. ss.innerHTML = '筛选';
  2828. ss.style = 'text-align: center;'
  2829. this.$refs.dataTable4.$el.getElementsByClassName('el-table__fixed')[0].getElementsByTagName('td')[0].appendChild(ss);
  2830. });
  2831. },
  2832. addScreen5 () {
  2833. this.$nextTick(() => {
  2834. let ss = document.createElement('div');
  2835. ss.innerHTML = '筛选';
  2836. ss.style = 'text-align: center;'
  2837. this.$refs.dataTable5.$el.getElementsByClassName('el-table__fixed')[0].getElementsByTagName('td')[0].appendChild(ss);
  2838. });
  2839. },
  2840. addScreen6 () {
  2841. this.$nextTick(() => {
  2842. let ss = document.createElement('div');
  2843. ss.innerHTML = '筛选';
  2844. ss.style = 'text-align: center;'
  2845. this.$refs.dataTable6.$el.getElementsByClassName('el-table__fixed')[0].getElementsByTagName('td')[0].appendChild(ss);
  2846. });
  2847. },
  2848. addScreen7 () {
  2849. this.$nextTick(() => {
  2850. let ss = document.createElement('div');
  2851. ss.innerHTML = '筛选';
  2852. ss.style = 'text-align: center;'
  2853. this.$refs.dataTable7.$el.getElementsByClassName('el-table__fixed')[0].getElementsByTagName('td')[0].appendChild(ss);
  2854. });
  2855. },
  2856. getDataList () {
  2857. this.dataLoading = true;
  2858. this.axios.get('pass/baseManagement/v1/limslrcemps/like/' + '?pageNum=' + this.page.pageNum + '&pageSize=' + this.page.pageSize + '&empNo=' + this.search.empNo + '&empName=' + this.search.empName).then(res => {
  2859. this.dataLoading = false;
  2860. this.table.list = res.data.list;
  2861. this.table.list.forEach(item => {
  2862. try {
  2863. item.birthday = formatDate(item.birthday, "yyyy-MM-dd")
  2864. item.graduationTime = formatDate(item.graduationTime, "yyyy-MM-dd")
  2865. item.entryDate = formatDate(item.entryDate, "yyyy-MM-dd")
  2866. item.passedDate = formatDate(item.passedDate, "yyyy-MM-dd")
  2867. item.leaveDate = formatDate(item.leaveDate, "yyyy-MM-dd")
  2868. item.gender = item.sex == 0 ? '女' : item.sex == 1 ? '男' : ''
  2869. item.photoDir = JSON.parse(item.photoDir)
  2870. item.photoDir1 = item.photoDir.oldFileName ? item.photoDir.oldFileName : ''
  2871. } catch (e) {
  2872. // console.log(e);
  2873. }
  2874. })
  2875. this.page.totalPage = res.data.total;
  2876. }).catch(e => {
  2877. this.dataLoading = false;
  2878. });
  2879. },
  2880. getDataList2 (empNo) {
  2881. this.dataLoading2 = true;
  2882. if (empNo === null || empNo === '') {
  2883. this.table.list2 = [];
  2884. this.dataLoading2 = false;
  2885. return 0
  2886. } else {
  2887. this.axios.get('pass/baseManagement/v1/limslrcempconts/' + '?pageNum=' + this.page2.pageNum + '&pageSize=' + this.page2.pageSize + '&empNo=' + empNo)
  2888. .then(res => {
  2889. this.dataLoading2 = false;
  2890. this.table.list2 = res.data.list;
  2891. this.table.list2.forEach(item => {
  2892. try {
  2893. item.trialEndDate = formatDate(item.trialEndDate, "yyyy-MM-dd")
  2894. item.signDate = formatDate(item.signDate, "yyyy-MM-dd")
  2895. item.strDate = formatDate(item.strDate, "yyyy-MM-dd")
  2896. item.endDate = formatDate(item.endDate, "yyyy-MM-dd")
  2897. item.attachment01 = JSON.parse(item.attachment01)
  2898. item.attachment02 = JSON.parse(item.attachment02)
  2899. item.attachment03 = JSON.parse(item.attachment03)
  2900. item.attachment011 = item.attachment01.oldFileName ? item.attachment01.oldFileName : ''
  2901. item.attachment021 = item.attachment02.oldFileName ? item.attachment02.oldFileName : ''
  2902. item.attachment031 = item.attachment03.oldFileName ? item.attachment03.oldFileName : ''
  2903. } catch (e) {
  2904. // console.log(e);
  2905. }
  2906. })
  2907. this.page2.totalPage = res.data.total;
  2908. }).catch(e => {
  2909. this.dataLoading2 = false;
  2910. });
  2911. }
  2912. },
  2913. getDataList3 (empNo) {
  2914. this.dataLoading3 = true;
  2915. if (empNo === null || empNo === '') {
  2916. this.table.list3 = [];
  2917. this.dataLoading3 = false;
  2918. return 0
  2919. } else {
  2920. this.axios.get('pass/baseManagement/v1/limslrcempcerts/' + '?pageNum=' + this.page3.pageNum + '&pageSize=' + this.page3.pageSize + '&empNo=' + empNo)
  2921. .then(res => {
  2922. this.dataLoading3 = false;
  2923. this.table.list3 = res.data.list;
  2924. this.table.list3.forEach(item => {
  2925. try {
  2926. item.issueDate = formatDate(item.issueDate, "yyyy-MM-dd")
  2927. item.strDate = formatDate(item.strDate, "yyyy-MM-dd")
  2928. item.endDate = formatDate(item.endDate, "yyyy-MM-dd")
  2929. } catch (e) {
  2930. // console.log(e);
  2931. }
  2932. })
  2933. this.page3.totalPage = res.data.total;
  2934. }).catch(e => {
  2935. this.dataLoading3 = false;
  2936. });
  2937. }
  2938. },
  2939. getDataList4 (empNo) {
  2940. this.dataLoading4 = true;
  2941. if (empNo === null || empNo === '') {
  2942. this.table.list4 = [];
  2943. this.dataLoading4 = false;
  2944. return 0
  2945. } else {
  2946. this.axios.get('pass/baseManagement/v1/limslrcempedus/' + '?pageNum=' + this.page4.pageNum + '&pageSize=' + this.page4.pageSize + '&empNo=' + empNo)
  2947. .then(res => {
  2948. this.dataLoading4 = false;
  2949. this.table.list4 = res.data.list;
  2950. this.table.list4.forEach(item => {
  2951. try {
  2952. item.strDate = formatDate(item.strDate, "yyyy-MM-dd")
  2953. item.endDate = formatDate(item.endDate, "yyyy-MM-dd")
  2954. item.attachment01 = JSON.parse(item.attachment01)
  2955. item.attachment02 = JSON.parse(item.attachment02)
  2956. item.attachment03 = JSON.parse(item.attachment03)
  2957. item.attachment011 = item.attachment01.oldFileName ? item.attachment01.oldFileName : ''
  2958. item.attachment021 = item.attachment02.oldFileName ? item.attachment02.oldFileName : ''
  2959. item.attachment031 = item.attachment03.oldFileName ? item.attachment03.oldFileName : ''
  2960. } catch (e) {
  2961. // console.log(e);
  2962. }
  2963. })
  2964. this.page4.totalPage = res.data.total;
  2965. }).catch(e => {
  2966. this.dataLoading4 = false;
  2967. });
  2968. }
  2969. },
  2970. getDataList5 (empNo) {
  2971. this.dataLoading5 = true;
  2972. if (empNo === null || empNo === '') {
  2973. this.table.list5 = [];
  2974. this.dataLoading5 = false;
  2975. return 0
  2976. } else {
  2977. this.axios.get('pass/baseManagement/v1/limslrcemptrainings/' + '?pageNum=' + this.page5.pageNum + '&pageSize=' + this.page5.pageSize + '&empNo=' + empNo)
  2978. .then(res => {
  2979. this.dataLoading5 = false;
  2980. this.table.list5 = res.data.list;
  2981. this.table.list5.forEach(item => {
  2982. try {
  2983. item.strDate = formatDate(item.strDate, "yyyy-MM-dd")
  2984. item.endDate = formatDate(item.endDate, "yyyy-MM-dd")
  2985. item.attachment01 = JSON.parse(item.attachment01)
  2986. item.attachment02 = JSON.parse(item.attachment02)
  2987. item.attachment03 = JSON.parse(item.attachment03)
  2988. item.attachment011 = item.attachment01.oldFileName ? item.attachment01.oldFileName : ''
  2989. item.attachment021 = item.attachment02.oldFileName ? item.attachment02.oldFileName : ''
  2990. item.attachment031 = item.attachment03.oldFileName ? item.attachment03.oldFileName : ''
  2991. } catch (e) {
  2992. // console.log(e);
  2993. }
  2994. })
  2995. this.page5.totalPage = res.data.total;
  2996. }).catch(e => {
  2997. this.dataLoading5 = false;
  2998. });
  2999. }
  3000. },
  3001. getDataList6 (empNo) {
  3002. this.dataLoading6 = true;
  3003. if (empNo === null || empNo === '') {
  3004. this.table.list6 = [];
  3005. this.dataLoading6 = false;
  3006. return 0
  3007. } else {
  3008. this.axios.get('pass/baseManagement/v1/limslrcempwrks/' + '?pageNum=' + this.page6.pageNum + '&pageSize=' + this.page6.pageSize + '&empNo=' + empNo)
  3009. .then(res => {
  3010. this.dataLoading6 = false;
  3011. this.table.list6 = res.data.list;
  3012. this.table.list6.forEach(item => {
  3013. try {
  3014. item.strDate = formatDate(item.strDate, "yyyy-MM-dd")
  3015. item.endDate = formatDate(item.endDate, "yyyy-MM-dd")
  3016. item.attachment01 = JSON.parse(item.attachment01)
  3017. item.attachment02 = JSON.parse(item.attachment02)
  3018. item.attachment03 = JSON.parse(item.attachment03)
  3019. item.attachment011 = item.attachment01.oldFileName ? item.attachment01.oldFileName : ''
  3020. item.attachment021 = item.attachment02.oldFileName ? item.attachment02.oldFileName : ''
  3021. item.attachment031 = item.attachment03.oldFileName ? item.attachment03.oldFileName : ''
  3022. } catch (e) {
  3023. // console.log(e);
  3024. }
  3025. })
  3026. this.page6.totalPage = res.data.total;
  3027. }).catch(e => {
  3028. this.dataLoading6 = false;
  3029. });
  3030. }
  3031. },
  3032. getDataList7 (empNo) {
  3033. this.dataLoading7 = true;
  3034. if (empNo === null || empNo === '') {
  3035. this.table.list7 = [];
  3036. this.dataLoading7 = false;
  3037. return 0
  3038. } else {
  3039. this.axios.get('pass/baseManagement/v1/limslrcempwrkgrps/' + '?pageNum=' + this.page7.pageNum + '&pageSize=' + this.page7.pageSize + '&empNo=' + empNo)
  3040. .then(res => {
  3041. this.dataLoading7 = false;
  3042. this.table.list7 = res.data.list;
  3043. this.page7.totalPage = res.data.total;
  3044. }).catch(e => {
  3045. this.dataLoading7 = false;
  3046. });
  3047. }
  3048. },
  3049. // download(data, strFileName, strMimeType, fileN = '文件') {
  3050. // var self = window, // this script is only for browsers anyway...
  3051. // defaultMime = 'application/octet-stream', // this default mime also triggers iframe downloads
  3052. // mimeType = strMimeType || defaultMime,
  3053. // payload = data,
  3054. // // url = !strFileName && !strMimeType && payload,
  3055. // url = payload,
  3056. // anchor = document.createElement('a'),
  3057. // toString = function (a) { return String(a); },
  3058. // myblob = (self.Blob || self.MozBlob || self.WebKitBlob || toString),
  3059. // fileName = strFileName || 'download',
  3060. // blob,
  3061. // reader;
  3062. // myblob = myblob.call ? myblob.bind(self) : Blob;
  3063. // if (String(this) === 'true') { // reverse arguments, allowing download.bind(true, "text/xml", "export.xml") to act as a callback
  3064. // payload = [payload, mimeType];
  3065. // mimeType = payload[0];
  3066. // payload = payload[1];
  3067. // }
  3068. // if (url && url.length < 2048) { // if no filename and no mime, assume a url was passed as the only argument
  3069. // fileName = fileN;
  3070. // anchor.href = url; // assign href prop to temp anchor
  3071. // console.log('enterree111111111', anchor.href);
  3072. // if (url) { // if the browser determines that it's a potentially valid url path:
  3073. // console.log('enterree2222222222', anchor.href);
  3074. // var ajax = new XMLHttpRequest();
  3075. // ajax.open('GET', url, true);
  3076. // ajax.responseType = 'blob';
  3077. // ajax.onload = function (e) {
  3078. // download(e.target.response, fileName, defaultMime);
  3079. // };
  3080. // setTimeout(function () { ajax.send(); }, 0); // allows setting custom ajax headers using the return:
  3081. // return ajax;
  3082. // } // end if valid url?
  3083. // } // end if url?
  3084. // // go ahead and download dataURLs right away
  3085. // if (/^data:[\w+-]+\/[\w+-]+[,;]/.test(payload)) {
  3086. // if (payload.length > (1024 * 1024 * 1.999) && myblob !== toString) {
  3087. // payload = dataUrlToBlob(payload);
  3088. // mimeType = payload.type || defaultMime;
  3089. // } else {
  3090. // return navigator.msSaveBlob ? navigator.msSaveBlob(dataUrlToBlob(payload), fileName) : saver(payload); // everyone else can save dataURLs un-processed
  3091. // }
  3092. // }// end if dataURL passed?
  3093. // // eslint-disable-next-line new-cap
  3094. // blob = payload instanceof myblob ? payload : new myblob([payload], {type: mimeType});
  3095. // function dataUrlToBlob (strUrl) {
  3096. // var parts = strUrl.split(/[:;,]/),
  3097. // type = parts[1],
  3098. // decoder = parts[2] === 'base64' ? atob : decodeURIComponent,
  3099. // binData = decoder(parts.pop()),
  3100. // mx = binData.length,
  3101. // i = 0,
  3102. // uiArr = new Uint8Array(mx);
  3103. // for (i; i < mx; ++i) uiArr[i] = binData.charCodeAt(i);
  3104. // // eslint-disable-next-line new-cap
  3105. // return new myblob([uiArr], {type: type});
  3106. // }
  3107. // },
  3108. downloadFile (index, objId, objFileName, oldFileName, objType) {
  3109. let obj = {
  3110. objId: objId,
  3111. objName: objType,
  3112. fileName: objFileName
  3113. }
  3114. let fileRow = {}
  3115. this.axios.post('pass/baseManagement/v1/limslrcfilesaves/queryListLrcFileSave', obj, { individualType: 'json' }).then(res => {
  3116. if (res.code == 0 || res.code == 200) {
  3117. fileRow = res.data[0]
  3118. this.axios.get('pass/baseManagement/v1/file/download/' + fileRow.fileName, { responseType: 'blob' }, { headers: { 'content-type': 'application/x-www-form-urlencoded' } }).then(res => {
  3119. let blob = new Blob([res]);
  3120. let fileName = oldFileName;
  3121. let elink = document.createElement('a');
  3122. elink.download = fileName;
  3123. elink.style.display = 'none';
  3124. elink.target = "_blank";
  3125. elink.href = URL.createObjectURL(blob);
  3126. document.body.appendChild(elink);
  3127. elink.click();
  3128. URL.revokeObjectURL(elink.href); // 释放URL对象
  3129. document.body.removeChild(elink);
  3130. })
  3131. // this.download(this.action_prod + fileRow.fileUrl, 'download.txt', 'text/plain', fileRow.oldFileName);
  3132. } else {
  3133. this.$message.error(res.message)
  3134. }
  3135. }).catch(err => {
  3136. this.$message.error(err.message)
  3137. })
  3138. },
  3139. // downloadFile (index, row) {
  3140. // this.downloadUrl = row
  3141. // this.axios.get('pass/baseManagement/v1/download/' + '?path=' + this.downloadUrl, {responseType: 'blob'},{headers: {'content-type': 'application/x-www-form-urlencoded'}})
  3142. // .then(res => {
  3143. // console.log(res)
  3144. // let blob = new Blob([res]);
  3145. // let fileName = this.downloadUrl;
  3146. // let elink = document.createElement('a');
  3147. // elink.download = fileName;
  3148. // elink.style.display = 'none';
  3149. // elink.target = "_blank";
  3150. // elink.href = URL.createObjectURL(blob);
  3151. // document.body.appendChild(elink);
  3152. // elink.click();
  3153. // URL.revokeObjectURL(elink.href); // 释放URL对象
  3154. // document.body.removeChild(elink);
  3155. // })
  3156. // },
  3157. // 图片预览:
  3158. imgPreView (index, objId, objFileName, objType) {
  3159. this.imgPreViews = ''
  3160. let obj = {
  3161. objId: objId,
  3162. objName: objType,
  3163. fileName: objFileName
  3164. }
  3165. let fileRow = {}
  3166. this.axios.post('pass/baseManagement/v1/limslrcfilesaves/queryListLrcFileSave', obj, { individualType: 'json' }).then(res => {
  3167. if (res.code == 0 || res.code == 200) {
  3168. fileRow = res.data[res.data.length - 1]
  3169. this.imgPreViews = this.action_prod + '/icore.icp.web/pass/baseManagement/v1/file/download/' + fileRow.fileName
  3170. this.imgVisible = true
  3171. // var form = $('<form>'); // 定义一个form表单
  3172. // form.attr('id', 'downloadform');
  3173. // form.attr('style', 'display:none');
  3174. // form.attr('target', '_blank');
  3175. // form.attr('method', 'get');
  3176. // form.attr('action', this.action_prod +'/icore.icp.web/pass/baseManagement/v1/file/download/' + fileRow.fileName);
  3177. // var input1 = $('<input>');
  3178. // input1.attr('type', 'hidden');
  3179. // form.append(input1);
  3180. // $('body').append(form); // 将表单放置在web中
  3181. // form.submit(); // 表单提交
  3182. // $('#downloadform').remove();
  3183. } else {
  3184. this.$message.error(res.message)
  3185. }
  3186. }).catch(err => {
  3187. this.$message.error(err.message)
  3188. })
  3189. },
  3190. tableRowClassName ({
  3191. row, column, rowIndex, columnIndex
  3192. }) {
  3193. if (columnIndex === 8) {
  3194. if (row.validFlag === '0') {
  3195. return 'error-row';
  3196. }
  3197. return '';
  3198. }
  3199. },
  3200. tableRowClassName2 ({
  3201. row, column, rowIndex, columnIndex
  3202. }) {
  3203. if (columnIndex === 9) {
  3204. if (row.validFlag === '0') {
  3205. return 'error-row';
  3206. }
  3207. return '';
  3208. }
  3209. },
  3210. tableRowClassName3 ({
  3211. row, column, rowIndex, columnIndex
  3212. }) {
  3213. if (columnIndex === 9) {
  3214. if (row.validFlag === '0') {
  3215. return 'error-row';
  3216. }
  3217. return '';
  3218. }
  3219. },
  3220. tableRowClassName4 ({
  3221. row, column, rowIndex, columnIndex
  3222. }) {
  3223. if (columnIndex === 13) {
  3224. if (row.validFlag === '0') {
  3225. return 'error-row';
  3226. }
  3227. return '';
  3228. }
  3229. },
  3230. tableRowClassName5 ({
  3231. row, column, rowIndex, columnIndex
  3232. }) {
  3233. if (columnIndex === 22) {
  3234. if (row.validFlag === '0') {
  3235. return 'error-row';
  3236. }
  3237. return '';
  3238. }
  3239. },
  3240. tableRowClassName6 ({
  3241. row, column, rowIndex, columnIndex
  3242. }) {
  3243. if (columnIndex === 14) {
  3244. if (row.validFlag === '0') {
  3245. return 'error-row';
  3246. }
  3247. return '';
  3248. }
  3249. },
  3250. tableRowClassName7 ({
  3251. row, column, rowIndex, columnIndex
  3252. }) {
  3253. if (columnIndex === 9) {
  3254. if (row.validFlag === '0') {
  3255. return 'error-row';
  3256. }
  3257. return '';
  3258. }
  3259. },
  3260. // 表格上横线
  3261. tableHeaderCellStyle () {
  3262. return 'color: rgb(255,255,255);border-bottom: 1px solid #DCDFE7;'
  3263. }
  3264. }
  3265. }
  3266. </script>
  3267. <style scoped>
  3268. </style>