mdePersonCollectionForm.jsp 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675
  1. <%@ page contentType="text/html;charset=UTF-8" %>
  2. <%@ include file="/WEB-INF/views/include/taglib.jsp"%>
  3. <html>
  4. <head>
  5. <title>人才库信息管理</title>
  6. <meta name="decorator" content="default"/>
  7. <link type="text/css" rel="stylesheet" href="${ctxStatic}/recruitment/common/css/form.css">
  8. <link type="text/css" rel="stylesheet" href="${ctxStatic}/recruitment/common/css/imgShow.css">
  9. <link type="text/css" rel="stylesheet" href="${ctxStatic}/viewer/dist/viewer.css">
  10. <script type="text/javascript" src="${ctxStatic}/viewer/dist/viewer.js"></script>
  11. <script type="text/javascript" src="${ctxStatic}/recruitment/common/js/area.js"></script>
  12. <script type="text/javascript">
  13. //调试代码
  14. console.log();
  15. var workSize=0;
  16. var educationSize=0;
  17. $(document).ready(function() {
  18. if ('${editFlag}' == 'false') {
  19. $("#btnSubmit").hide();
  20. $("#name").attr("disabled", "disabled");
  21. $("#userName").attr("disabled", "disabled");
  22. $("#experience").attr("disabled", "disabled");
  23. $("#workStatus").attr("disabled", "disabled");
  24. $("#addrProvince").attr("disabled", "disabled");
  25. $("#addrCity").attr("disabled", "disabled");
  26. $("#addrArea").attr("disabled", "disabled");
  27. $("#deleteUserMore").hide();
  28. $("#remarks").attr("disabled", "disabled");
  29. } else{
  30. }
  31. //从业背景回填
  32. $("#professionalBks").select2("val", ${mdePersonCollection.professionalBksStr});
  33. //$("#name").focus();
  34. $("#inputForm").validate({
  35. submitHandler: function(form){
  36. loading('正在提交,请稍等...');
  37. form.submit();
  38. },
  39. errorContainer: "#messageBox",
  40. errorPlacement: function(error, element) {
  41. $("#messageBox").text("输入有误,请先更正。");
  42. if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
  43. error.appendTo(element.parent().parent());
  44. } else {
  45. error.insertAfter(element);
  46. }
  47. }
  48. });
  49. });
  50. function addPersonWorkExperienceClick(){
  51. $.jBox.open(
  52. "iframe:" + ctx + "/recruitment/mdePersonWork/form?personCode=${mdePersonCollection.personCode}",
  53. "工作履历新增",
  54. 480, 500,
  55. {
  56. buttons: {"保存": "ok", "关闭": true},
  57. submit: function (v, h, f) {
  58. if (v == "ok") {
  59. var iframeName = h.children(0).attr("name");
  60. var iframeHtml = window.frames[iframeName]; //获取子窗口的句柄
  61. var form = h.children(0)[0].contentDocument.forms[0];
  62. var json = transformToJson($(form).serializeArray());
  63. if(!checkWorkJson(json)){
  64. alertx("必填项存在空值");
  65. return false;
  66. }
  67. appendData2PersonWork(json);
  68. return true;
  69. }
  70. },
  71. loaded: function (h) {
  72. $(".jbox-content", document).css("overflow-y", "hidden");
  73. }
  74. }
  75. );
  76. }
  77. function updatePersonWork(pw,workId){
  78. $.jBox.open(
  79. "iframe:" + ctx + "/recruitment/mdePersonWork/form?personCode=${mdePersonCollection.personCode}&workId=" + workId,
  80. "工作履历修改",
  81. 480, 500,
  82. {
  83. buttons: {"保存": "ok", "关闭": true},
  84. submit: function (v, h, f) {
  85. if (v == "ok") {
  86. var iframeName = h.children(0).attr("name");
  87. var iframeHtml = window.frames[iframeName]; //获取子窗口的句柄
  88. var form = h.children(0)[0].contentDocument.forms[0];
  89. var json = transformToJson($(form).serializeArray());
  90. if(!checkWorkJson(json)){
  91. alertx("必填项存在空值");
  92. return false;
  93. }
  94. appendData2PersonWork(json);
  95. //删除修改前的数据
  96. $(pw).parent().parent().remove();
  97. return true;
  98. }
  99. },
  100. loaded: function (h) {
  101. $(".jbox-content", document).css("overflow-y", "hidden");
  102. }
  103. }
  104. );
  105. }
  106. function checkWorkJson(json){
  107. if(!json.coId && !json.hotelNameOther) return false;
  108. /* if(!json.positionTitle) return false; */
  109. if(!json.enterDate) return false;
  110. /* if(!json.onJob) return false; */
  111. /* if(!json.showFlag) return false; */
  112. /* if(!json.enFlag) return false; */
  113. return true
  114. }
  115. // 转为json数据格式
  116. function transformToJson(formData){
  117. var obj={}
  118. for (var i in formData) {
  119. obj[formData[i].name]=formData[i]['value'];// "[{"name":"id","value":""},{"name":"personCode","value":"1"}]
  120. }
  121. return obj;
  122. }
  123. function appendData2PersonWork(json){
  124. debugger;
  125. var str = "";
  126. str +="<tr style='width:100%;' class='contentTR'>" ;
  127. str +=" <td style=''>" ;
  128. if(json.coId){
  129. var hotelCompanys = JSON.parse('${fns:toJson(hotelCompanys)}');
  130. for(var i=0;i<hotelCompanys.length;i++){
  131. if(json.coId == hotelCompanys[i].hotelId ){
  132. str+=hotelCompanys[i].hotelNameCn;
  133. }
  134. }
  135. }else{
  136. str +=json.hotelNameOther
  137. }
  138. str +="</td>" ;
  139. str +="<td style=''>"+ json.positionTitle +"</td>" ;
  140. str +="<td style=''>"+json.enterDate +"</td>" ;
  141. str +="<td style=''>"+(json.quitDate ? json.quitDate :"")+"</td>" ;
  142. /* str +="<td style=''>" ;
  143. str += json.onJob==0 || json.onJob=='0'? '离职' :'在职';
  144. str +=" </td>" ; */
  145. str +=" <td style=''>" ;
  146. str += json.showFlag==0 || json.showFlag=='0' ? '显示' :'不显示';
  147. str +=" </td>" ;
  148. str +="<td style=''>"+json.pay +"</td>" ;
  149. str +=" <td style=''>"+ json.remarks+" </td>" ;
  150. str +="<td hidden>"+json.coId+"</td><!-- coId -->" ;
  151. str +="<td hidden>"+(json.fromToNow ? json.fromToNow :"")+"</td><!-- fromToNow -->" ;
  152. str +="<td hidden>"+(json.hotelNameOther ? json.hotelNameOther :"")+"</td><!-- positionTitleOther -->" ;
  153. if ('${editFlag}' == 'true') {
  154. str +=" <td>" ;
  155. }else{
  156. str +=" <td hidden='true'>" ;
  157. }
  158. str +=" <input id='updateUserMore' class='btn' type='button' value='修改' onclick='updatePersonWork(this," + json.workId + ");'/> " ;
  159. str +=" <input id='deleteUserMore' class='btn' type='button' value='删除' onclick='deletePersonWork(this);'/>" ;
  160. str +=" </td>" ;
  161. str +="</tr>";
  162. $("#personWorkExperienceBody").append(str);
  163. }
  164. function deletePersonWork(e){
  165. top.$.jBox.confirm("确定要删除该条信息吗?", '系统提示', function(v, h, f) {
  166. if (v == 'ok') {
  167. $(e).parent().parent().remove();
  168. }
  169. }, {
  170. buttonsFocus : 1,
  171. closed : function() {}
  172. });
  173. top.$('.jbox-body .jbox-icon').css('top', '55px');
  174. return false;
  175. }
  176. function addPersonEducationExperienceClick(){
  177. $.jBox.open(
  178. "iframe:" + ctx + "/recruitment/mdePersonEducation/form?personCode=${mdePersonCollection.personCode}",
  179. "教育经历新增",
  180. 480, 500,
  181. { //如果是修改,传个ID就行了
  182. buttons: {"保存": "ok", "关闭": true},
  183. submit: function (v, h, f) {
  184. if (v == "ok") {
  185. var iframeName = h.children(0).attr("name");
  186. var iframeHtml = window.frames[iframeName]; //获取子窗口的句柄
  187. var form = h.children(0)[0].contentDocument.forms[0];
  188. var json = transformToJson($(form).serializeArray());
  189. if(!checkEducationJson(json)){
  190. alertx("必填项存在空值");
  191. return false;
  192. }
  193. appendData2PersonEducation(json);
  194. return true;
  195. }
  196. },
  197. loaded: function (h) {
  198. $(".jbox-content", document).css("overflow-y", "hidden");
  199. }
  200. }
  201. );
  202. }
  203. function checkEducationJson(json){
  204. if(!json.education) return false;
  205. if(!json.schName && !json.schNameOther) return false;
  206. /* if(!json.schCountry) return false; */
  207. if(!json.speciality) return false;
  208. if(!json.enterDate && !json.fromToNow) return false;
  209. return true
  210. }
  211. function appendData2PersonEducation(json){
  212. var str = "<tr>" ;
  213. /* var schools = JSON.parse('${fns:getDictListJson("school")}'); */
  214. if(json.schName){
  215. str +="<td>"+json.schName+"</td>" ;
  216. }else{
  217. str +="<td>"+json.schNameOther+"</td>" ;
  218. }
  219. var eds = JSON.parse('${fns:getDictListJson("education")}');
  220. var flag=true;
  221. for(var i=0; i<eds.length; i++){
  222. if(eds[i].value == json.education){
  223. flag = false;
  224. str +="<td>"+eds[i].label+"</td>" ;
  225. }
  226. }
  227. if(flag) str +="<td></td>" ;
  228. str +="<td>"+json.speciality+"</td>" ;
  229. str +="<td>"+json.enterDate+"</td>";
  230. str +="<td>"+json.quitDate+"</td>" ;
  231. /* str +="<td>"+json.schProvince+"-"+json.schCity+"</td>"; */
  232. /* var countrys = JSON.parse('${fns:getDictListJson("country_code")}');
  233. var flag_ = true;
  234. for(var i=0; i<countrys.length; i++){
  235. if(countrys[i].value == json.schCountry){
  236. flag_ = false;
  237. str +="<td>"+countrys[i].label+"</td>" ;
  238. }
  239. }
  240. if(flag_) str +="<td></td>" ; */
  241. str +="<td>"+json.schDescribe+"</td>" ;
  242. str +="<td hidden>"+(json.fromToNow ? json.fromToNow :"")+"</td><!-- fromToNow -->" ;
  243. if ('${editFlag}' == 'true') {
  244. str +=" <td>" ;
  245. }else{
  246. str +=" <td hidden='true'>" ;
  247. }
  248. str +=" <input id='deleteUserMore' class='btn' type='button' value='删除' onclick='deletePersonEducation(this)'/>" ;
  249. str +=" </td>" ;
  250. str +="</tr>";
  251. $("#personEducationExperienceBody").append(str);
  252. }
  253. function deletePersonEducation(e){
  254. top.$.jBox.confirm("确定要删除该条信息吗?", '系统提示', function(v, h, f) {
  255. if (v == 'ok') {
  256. $(e).parent().parent().remove();
  257. }
  258. }, {
  259. buttonsFocus : 1,
  260. closed : function() {}
  261. });
  262. top.$('.jbox-body .jbox-icon').css('top', '55px');
  263. return false;
  264. }
  265. function saveClick(){
  266. if (!'${mdePersonCollection.personCode}') {
  267. var data = checkUserName($("#inputForm").find("#userName").val())
  268. if(data == '1'){
  269. alertx("该手机号已经被注册");
  270. return;
  271. }
  272. }
  273. var personWorkStr = getPersonWorks();
  274. if(personWorkStr == false){
  275. alertx("请输入工作履历!")
  276. return;
  277. }
  278. var works = JSON.stringify(personWorkStr);
  279. $("#personWorksStr").val(works);
  280. var personEducationsStr = getPersonEducations();
  281. var educations = JSON.stringify(personEducationsStr);
  282. $("#personEducationsStr").val(educations);
  283. $("#inputForm").submit();
  284. }
  285. function getPersonWorks(){
  286. var works = new Array();
  287. var trs = $("#personWorkExperienceBody tr");
  288. var person_showFlag=0;
  289. for(var i=0;i<trs.length;i++){
  290. var cells=trs[i].cells;
  291. var coName = trim($(cells[0]).text());
  292. var positionTitle = trim($(cells[1]).text());
  293. var enterDate = trim($(cells[2]).text());
  294. var quitDate = trim($(cells[3]).text());
  295. /* var onJob */
  296. var showFlag = trim($(cells[4]).text());// [0-离职;1-在职]
  297. var pay = trim($(cells[5]).text());// [薪资]
  298. var remarks = trim($(cells[6]).text());// [1-中文;2-英文]
  299. var coId = trim($(cells[7]).text());
  300. var fromToNow = trim($(cells[8]).text());
  301. var hotelNameOther = trim($(cells[9]).text());
  302. var obj = {};
  303. obj.coName = coName;
  304. obj.positionTitle = positionTitle;
  305. obj.enterDate = enterDate;
  306. obj.quitDate = quitDate;
  307. /* if(onJob != '') {
  308. obj.onJob = onJob == "离职" ? 0:1;
  309. }else{
  310. obj.onJob = '';
  311. } */
  312. if(showFlag != '') {
  313. obj.showFlag = showFlag == "显示" ? 0:1;
  314. person_showFlag += showFlag == "显示" ? 1:0;
  315. }else{
  316. obj.showFlag = '';
  317. }
  318. obj.pay = pay;
  319. obj.remarks = remarks;
  320. obj.coId = coId;
  321. obj.fromToNow = fromToNow;
  322. obj.hotelNameOther = hotelNameOther;
  323. works.push(obj);
  324. }
  325. if(person_showFlag >1){
  326. alertx("职位头衔只能有一个是显示状态!");
  327. return false;
  328. }
  329. return works;
  330. }
  331. function getPersonEducations(){
  332. var educations = new Array();
  333. var trs = $("#personEducationExperienceBody tr");
  334. for(var i=0;i<trs.length;i++){
  335. var cells=trs[i].cells;
  336. var schName = trim($(cells[0]).text());
  337. var education = trim($(cells[1]).text());
  338. var speciality = trim($(cells[2]).text());
  339. var enterDate = trim($(cells[3]).text());
  340. var quitDate = trim($(cells[4]).text());
  341. var schDescribe = trim($(cells[5]).text());
  342. var fromToNow = trim($(cells[6]).text());
  343. /* var addr = trim($(cells[5]).text());
  344. var schProvince = addr.split("-")[0];
  345. var schCity = addr.split("-")[1];
  346. var schCountry = trim($(cells[6]).text()); */
  347. var obj = {};
  348. obj.schName = schName;
  349. obj.education = getEducation(education);
  350. obj.speciality = speciality;
  351. obj.enterDate = enterDate;
  352. obj.quitDate = quitDate;
  353. /* obj.schProvince = schProvince;
  354. obj.schCity = schCity;
  355. obj.schCountry = getCountry(schCountry); */
  356. obj.schDescribe = schDescribe;
  357. obj.fromToNow = fromToNow;
  358. educations.push(obj);
  359. }
  360. return educations;
  361. }
  362. function trim(x) {
  363. return x.replace(/^\s+|\s+$/gm,'');
  364. }
  365. function getCoId(name){
  366. if(!name) return '';
  367. var companys = JSON.parse('${fns:toJson(hotelCompanys)}');
  368. for(var i=0; i<companys.length; i++){
  369. if(name == companys[i].hotelNameCn){
  370. return companys[i].hotelId;
  371. }
  372. }
  373. return '';
  374. }
  375. function getCountry(name){
  376. if(!name) return '';
  377. var countrys = JSON.parse('${fns:getDictListJson("country_code")}');
  378. for(var i=0; i<countrys.length; i++){
  379. if(countrys[i].label == name){
  380. return countrys[i].value;
  381. }
  382. }
  383. return '';
  384. }
  385. function getEducation(name){
  386. var eds = JSON.parse('${fns:getDictListJson("education")}');
  387. var flag=true;
  388. for(var i=0; i<eds.length; i++){
  389. if(eds[i].label == name){
  390. return eds[i].value;
  391. }
  392. }
  393. return "";
  394. }
  395. function checkUserName(userName){
  396. var d;
  397. $.ajax({
  398. type : "get",
  399. url : "${ctx}/recruitment/mdePersonCollection/checkUserName?userName=" + userName,
  400. async : false,
  401. success : function(data){
  402. d = data;
  403. }
  404. });
  405. return d;
  406. }
  407. </script>
  408. </head>
  409. <body>
  410. <ul class="nav nav-tabs">
  411. <li><a href="${ctx}/recruitment/mdePersonCollection/">人才库信息列表</a></li>
  412. <li class="active"><a href="${ctx}/recruitment/mdePersonCollection/form?id=${mdePersonCollection.id}">人才库信息<shiro:hasPermission name="recruitment:mdePersonCollection:edit">${not empty mdePersonCollection.id?'修改':'添加'}</shiro:hasPermission><shiro:lacksPermission name="recruitment:mdePersonCollection:edit">查看</shiro:lacksPermission></a></li>
  413. </ul><br/>
  414. <form:form id="inputForm" modelAttribute="mdePersonCollection"
  415. action="${ctx}/recruitment/mdePersonCollection/save"
  416. method="post"
  417. enctype="multipart/form-data"
  418. class="form-horizontal">
  419. <form:hidden path="id"/>
  420. <form:hidden path="personWorksStr"/>
  421. <form:hidden path="personEducationsStr"/>
  422. <sys:message content="${message}"/>
  423. <div class="control-group">
  424. <div class="left">
  425. <label class="control-label">用户姓名:</label>
  426. <div class="controls">
  427. <form:input path="name" htmlEscape="false" maxlength="100" class="input-xlarge required"/>
  428. <span class="help-inline"><font color="red">*</font> </span>
  429. </div>
  430. </div>
  431. <div class="right">
  432. <label class="control-label">外文名称:</label>
  433. <div class="controls">
  434. <form:input path="foreignName" htmlEscape="false" maxlength="10" class="input-xlarge "/>
  435. </div>
  436. </div>
  437. </div>
  438. <div class="control-group">
  439. <div class="left">
  440. <label class="control-label">手机区号:</label>
  441. <div class="controls">
  442. <form:input path="phoneCode" htmlEscape="false" maxlength="6" class="input-xlarge"/>
  443. <span class="help-inline"> </span>
  444. </div>
  445. </div>
  446. <div class="right">
  447. <label class="control-label">手机号:</label>
  448. <div class="controls">
  449. <form:input path="userName" htmlEscape="false" maxlength="11" class="input-xlarge required"/>
  450. <span class="help-inline"><font color="red">*</font> </span>
  451. </div>
  452. </div>
  453. </div>
  454. <div class="control-group">
  455. <div class="left">
  456. <label class="control-label">求职状态:</label>
  457. <div class="controls">
  458. <form:select path="workStatus" class="input-medium">
  459. <form:option value="" label="请选择求职状态"/>
  460. <form:options items="${fns:getDictList('work_status')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
  461. </form:select>
  462. <span class="help-inline"><font color="red">*</font> </span>
  463. </div>
  464. </div>
  465. <div class="right" style="width:700px">
  466. <label class="control-label" >从业背景:</label>
  467. <form:select path="professionalBks" class="input-medium" cssStyle="width:450px;margin-left:20px" multiple="true" placeholder="">
  468. <form:options items="${fns:getDictList('professional_bk')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
  469. </form:select>
  470. </div>
  471. </div>
  472. <div class="control-group">
  473. <div class="left">
  474. <label class="control-label">参加工作时间:</label>
  475. <div class="controls">
  476. <input name="firstWork" type="text" readonly="readonly" maxlength="20" class="input-medium Wdate "
  477. value="<fmt:formatDate value="${mdePersonCollection.firstWork}" pattern="yyyy-MM"/>"
  478. onclick="WdatePicker({dateFmt:'yyyy-MM',isShowClear:false});"/>
  479. <span class="help-inline"><font color="red">*</font> </span>
  480. </div>
  481. </div>
  482. <div class="right">
  483. <label class="control-label">出生日期:</label>
  484. <div class="controls">
  485. <input name="birthday" type="text" readonly="readonly" maxlength="20" class="input-medium Wdate "
  486. value="<fmt:formatDate value="${mdePersonCollection.birthday}" pattern="yyyy-MM-dd"/>"
  487. onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false});"/>
  488. </div>
  489. </div>
  490. </div>
  491. <div class="control-group">
  492. <label class="control-label">意向工作地:</label>
  493. <div class="controls" style="width:330px;">
  494. <form:select path="addrProvince" class="input-medium" id="_addrProvince" style="float:left"
  495. onchange='province2City("_addrProvince", "_addrCity","${ctx}/sys/area/listChildrenByCode");'>
  496. <form:option value="" label="请选择省"></form:option>
  497. <form:options items="${addrProvinces}" itemLabel="name" itemValue="code" htmlEscape="false"/>
  498. </form:select>
  499. <form:select path="addrCity" class="input-medium" id="_addrCity">
  500. <form:option value="" label="请选择市"></form:option>
  501. <form:options items="${addrCitys}" itemLabel="name" itemValue="code" htmlEscape="false"/>
  502. </form:select>
  503. </div>
  504. </div>
  505. <div class="control-group">
  506. <label class="control-label">简历:</label>
  507. <%-- <div class="controls">
  508. <form:hidden id="cvUrl" path="cvTitle" htmlEscape="false" maxlength="255" class="input-xlarge"/>
  509. <sys:ckfinder input="cvUrl" type="files" uploadPath="/file" selectMultiple="true"/>
  510. </div> --%>
  511. <div class="controls">
  512. <form:hidden id="cvTitle" name="cvTitle" path="cvTitle" htmlEscape="false" maxlength="80" class="input-xlarge"/>
  513. <form:hidden id="cvUrl" path="cvUrl" htmlEscape="false" maxlength="255" class="input-xlarge"/>
  514. <input id="cvFile" name="cvFile" type="file" style="width:330px"/> <p style="font-size:15px;color:red">不修改,留空即可</p>
  515. <%-- <sys:ckfinder input="cvTitle" type="files" uploadPath="/recruitment/mdePersonCollection" selectMultiple="true"/> --%>
  516. </div>
  517. </div>
  518. <div class="control-group">
  519. <label class="control-label">备注:</label>
  520. <div class="controls">
  521. <form:textarea path="remarks" htmlEscape="false" rows="4" maxlength="1200" class="input-xxlarge " style="width:68%"/>
  522. </div>
  523. </div>
  524. <!-- 工作履历 -->
  525. <div class="only">
  526. <div class="title" style="width:100%;display: flex; text-align: right; line-height: 30px; vertical-align: middle;">
  527. <span style="width:50%;text-align: left;">工作履历</span>
  528. <span style="width:50%;text-algin:right">
  529. <input id="addUserMoreInfoId" class="btn" type="button" value="添加" onclick="addPersonWorkExperienceClick();"/>
  530. </span>
  531. </div>
  532. <div class="context">
  533. <table id="contentTable" class="table table-striped table-bordered table-condensed">
  534. <thead>
  535. <tr>
  536. <th>酒店名称</th>
  537. <th>职位头衔</th>
  538. <th>入职时间</th>
  539. <th>离职时间</th>
  540. <!-- <th style="width:80px;">在职标识</th> -->
  541. <th style="width:80px;">职位头衔显示</th>
  542. <th style="width:80px;">薪资</th>
  543. <th>备注</th>
  544. <th hidden="true"></th>
  545. <th hidden="true"></th>
  546. <th hidden="true"></th>
  547. <c:choose>
  548. <c:when test="${editFlag}">
  549. <th>操作</th>
  550. </c:when>
  551. <c:otherwise>
  552. <th hidden="true"></th>
  553. </c:otherwise>
  554. </c:choose>
  555. </tr>
  556. </thead>
  557. <tbody id="personWorkExperienceBody">
  558. <c:forEach items="${workExperiences}" var="workExperience">
  559. <tr>
  560. <td>${workExperience.coName}</td>
  561. <td>${workExperience.positionTitle}</td>
  562. <td><fmt:formatDate value="${workExperience.enterDate}" pattern="yyyy-MM"/></td>
  563. <td><fmt:formatDate value="${workExperience.quitDate}" pattern="yyyy-MM"/></td>
  564. <%-- <td style="">${workExperience.onJob == 0 ? "离职" :"在职" }</td> --%>
  565. <td style="">${workExperience.showFlag == 1 ? "不显示" :"显示" }</td>
  566. <td style="">${workExperience.pay}</td>
  567. <td style="">${workExperience.remarks}</td>
  568. <td hidden="true">${workExperience.coId}</td><!-- coId -->
  569. <td hidden="true">${workExperience.workId}</td><!-- workId -->
  570. <td hidden="true"></td><!-- positionTitleOther -->
  571. <c:choose>
  572. <c:when test="${editFlag}">
  573. <td>
  574. <input class="btn" type="button" value="修改" onclick="updatePersonWork(this,${workExperience.workId});"/>
  575. <input class="btn" type="button" value="删除" onclick="deletePersonWork(this);"/>
  576. </td>
  577. </c:when>
  578. <c:otherwise>
  579. <th hidden="true"></th>
  580. </c:otherwise>
  581. </c:choose>
  582. </tr>
  583. </c:forEach>
  584. </tbody>
  585. </table>
  586. </div>
  587. </div>
  588. <div class="onlyspace"></div>
  589. <!-- 教育经历 -->
  590. <div class="only">
  591. <div class="title" style="width:100%;display: flex; text-align: right; line-height: 30px; vertical-align: middle;">
  592. <span style="width:50%;text-align: left;">教育经历</span>
  593. <span style="width:50%;text-algin:right">
  594. <input id="addUserMoreInfoId" class="btn" type="button" value="添加" onclick="addPersonEducationExperienceClick();"/>
  595. </span>
  596. </div>
  597. <div class="context">
  598. <table id="contentTable" class="table table-striped table-bordered table-condensed">
  599. <thead>
  600. <tr>
  601. <th>学校名称</th>
  602. <th>学历</th>
  603. <th>专业</th>
  604. <th>入学时间</th>
  605. <th>毕业时间</th>
  606. <!-- <th>学校地址</th>
  607. <th>国家代码</th> -->
  608. <th>说明</th>
  609. <th hidden="true"></th>
  610. <c:choose>
  611. <c:when test="${editFlag}">
  612. <th>删除</th>
  613. </c:when>
  614. <c:otherwise>
  615. <th hidden="true"></th>
  616. </c:otherwise>
  617. </c:choose>
  618. </tr>
  619. </thead>
  620. <tbody id="personEducationExperienceBody">
  621. <c:forEach items="${educationExperiences}" var="educationExperience">
  622. <tr>
  623. <td>${educationExperience.schName}</td>
  624. <td>${fns:getDictLabel(educationExperience.education, 'education', '')}</td>
  625. <td>${educationExperience.speciality}</td>
  626. <td><fmt:formatDate value="${educationExperience.enterDate}" pattern="yyyy-MM-dd"/></td>
  627. <td><fmt:formatDate value="${educationExperience.quitDate}" pattern="yyyy-MM-dd"/></td>
  628. <%-- <td>${educationExperience.schProvince}-${educationExperience.schCity}</td>
  629. <td>${educationExperience.schCountry}</td> --%>
  630. <td>${educationExperience.schDescribe}</td>
  631. <th hidden="true"></th>
  632. <c:choose>
  633. <c:when test="${editFlag}">
  634. <td><input class="btn" type="button" value="删除" onclick="deletePersonEducation(this);"/></td>
  635. </c:when>
  636. <c:otherwise>
  637. <th hidden="true"></th>
  638. </c:otherwise>
  639. </c:choose>
  640. </tr>
  641. </c:forEach>
  642. </tbody>
  643. </table>
  644. </div>
  645. </div>
  646. <div class="form-actions">
  647. <shiro:hasPermission name="recruitment:mdePersonCollection:edit">
  648. <c:if test="${editFlag != false }">
  649. <input id="btnSubmit" class="btn btn-primary" type="button" value="保 存" onclick="saveClick();"/>&nbsp;<!-- -->
  650. </c:if>
  651. </shiro:hasPermission>
  652. <input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>
  653. </div>
  654. </form:form>
  655. </body>
  656. </html>