You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

657 lines
31 KiB

  1. /* * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn)
  2. * Copyright (c) 2013-2018 北京泉江科技有限公司
  3. * 创建人:超级管理员
  4. * 日 期:2019-01-29 17:31
  5. * 描 述:教师信息管理
  6. */
  7. var refreshGirdData;
  8. var bootstrap = function ($, learun) {
  9. "use strict";
  10. var page = {
  11. init: function () {
  12. page.initGird();
  13. page.bind();
  14. },
  15. bind: function () {
  16. $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
  17. page.search(queryJson);
  18. }, 350, 550);
  19. //$('#DeptNo').lrDataSourceSelect({ code: 'CdDeptInfo', value: 'deptno', text: 'deptname' });
  20. $('#ProvinceNo').lrDataSourceSelect({
  21. code: 'DIC_PROVINCE', value: 'pcode', text: 'pname',
  22. select: function (item) {
  23. if (!!item) {
  24. $('#CityNo').lrselectRefresh({
  25. url: "/DIC_CITY/GetListByProvinceCode",
  26. param: { ProvinceCode: item.pcode },
  27. value: 'CCODE',
  28. text: 'CNAME'
  29. });
  30. $('#RegionNo').lrselectRefresh({
  31. url: "",
  32. data: []
  33. });
  34. }
  35. }
  36. });
  37. $('#CityNo').lrselect({
  38. select: function (item) {
  39. if (!!item) {
  40. $('#RegionNo').lrselectRefresh({
  41. url: top.$.rootUrl + "/DIC_AREA/GetAreasListByCityCode",
  42. param: { cityCode: item.CCODE },
  43. value: 'ACODE',
  44. text: 'ANAME'
  45. });
  46. }
  47. }
  48. });
  49. $('#RegionNo').lrselect();
  50. //政治面貌
  51. $('#PartyFaceNo').lrDataItemSelect({ code: 'BCdPartyFace', allowSearch: true });
  52. //最高学历
  53. $('#HighestRecord').lrDataItemSelect({ code: 'HighestEducation'});
  54. //民族
  55. $('#NationalityNo').lrDataItemSelect({ code: 'National', allowSearch: true });
  56. //性别
  57. $('#GenderNo').lrDataItemSelect({ code: 'usersexbit' });
  58. //是否审核
  59. $('#CheckMark').lrDataItemSelect({ code: 'YesOrNoInt' });
  60. //学位
  61. $('#DegreeNo').lrDataItemSelect({ code: 'BCdDegree' });
  62. //职称
  63. $('#ProfessionalTitle').lrDataItemSelect({ code: 'jszc' });
  64. // 部门选择
  65. $('#F_DepartmentId').lrselect({
  66. type: 'tree',
  67. // 是否允许搜索
  68. allowSearch: true,
  69. // 访问数据接口地址
  70. url: top.$.rootUrl + '/LR_OrganizationModule/Department/GetTreeNoCheck',
  71. // 访问数据接口参数
  72. });
  73. //职工状态
  74. $('#IsInActiveStatus').lrDataItemSelect({ code: 'JobStatus' });
  75. //编制类别
  76. $('#CompilationCategory').lrDataItemSelect({
  77. code: 'CompilationCategory', select: function (item) {
  78. if (!!item && item.id == "02") {//编外
  79. //用工类型
  80. $('#EmployType').lrselectRefresh({
  81. url: '/LR_SystemModule/DataItem/GetDetailList',
  82. param: { itemCode: 'EmployType' },
  83. value: 'F_ItemValue',
  84. text: 'F_ItemName'
  85. });
  86. } else {
  87. $('#EmployType').lrselectRefresh({
  88. url: "",
  89. data: []
  90. });
  91. }
  92. }
  93. });//校区
  94. $('#F_CompanyId').lrDataSourceSelect({
  95. code: 'company', value: 'f_companyid', text: 'f_fullname',
  96. select: function (item) {
  97. if (!!item) {
  98. // 部门
  99. $('#F_DepartmentId').lrselectRefresh({
  100. type: 'tree',
  101. // 是否允许搜索
  102. allowSearch: true,
  103. // 访问数据接口地址
  104. url: top.$.rootUrl + '/LR_OrganizationModule/Department/GetTree',
  105. // 访问数据接口参数
  106. param: { companyId: item.f_companyid, parentId: '0' }
  107. });
  108. }
  109. }
  110. });
  111. // 部门选择
  112. $('#F_DepartmentId').lrselect();
  113. //人员身份
  114. $('#CompilationCategory').lrDataItemSelect({ code: 'CompilationCategory' });
  115. //员工状态
  116. $('#IsInActiveStatus').lrDataItemSelect({ code: 'JobStatus' });
  117. //用工类型
  118. $('#EmployType').lrselect();
  119. // 刷新
  120. $('#lr_refresh').on('click', function () {
  121. location.reload();
  122. });
  123. // 新增
  124. $('#lr_add').on('click', function () {
  125. learun.layerForm({
  126. id: 'form',
  127. title: '新增',
  128. url: top.$.rootUrl + '/EducationalAdministration/EmpInfo/Form',
  129. width: 1000,
  130. height: 800,
  131. callBack: function (id) {
  132. return top[id].acceptClick(refreshGirdData);
  133. }
  134. });
  135. });
  136. // 编辑
  137. $('#lr_edit').on('click', function () {
  138. var keyValue = $('#gridtable').jfGridValue('EmpId');
  139. if (learun.checkrow(keyValue)) {
  140. if (keyValue.indexOf(',') != -1) {
  141. learun.alert.warning("只能选择一条记录进行编辑!");
  142. return;
  143. }
  144. var CheckMark = $('#gridtable').jfGridValue('CheckMark');
  145. if (CheckMark === "true") {
  146. learun.alert.warning("当前项目已审核不能编辑!");
  147. return;
  148. }
  149. learun.layerForm({
  150. id: 'form',
  151. title: '编辑',
  152. url: top.$.rootUrl + '/EducationalAdministration/EmpInfo/Form?keyValue=' + keyValue,
  153. width: 1000,
  154. height: 800,
  155. callBack: function (id) {
  156. return top[id].acceptClick(refreshGirdData);
  157. }
  158. });
  159. }
  160. });
  161. //导入
  162. $('#lr_import').on('click', function () {
  163. learun.layerForm({
  164. id: 'form',
  165. title: '导入',
  166. url: top.$.rootUrl + '/EducationalAdministration/EmpInfo/ImportForm',
  167. width: 400,
  168. height: 300,
  169. callBack: function (id) {
  170. return top[id].acceptClick(refreshGirdData);
  171. }
  172. });
  173. })
  174. //查看
  175. $('#lr_view').on('click', function () {
  176. var keyValue = $('#gridtable').jfGridValue('EmpId');
  177. if (learun.checkrow(keyValue)) {
  178. if (keyValue.indexOf(',') != -1) {
  179. learun.alert.warning("只能选择一条记录进行查看!");
  180. return;
  181. }
  182. learun.layerForm({
  183. id: 'formView',
  184. title: '查看',
  185. url: top.$.rootUrl + '/EducationalAdministration/EmpInfo/Form?keyValue=' + keyValue + '&isView=' + true,
  186. width: 1162,
  187. height: 600,
  188. btn: null
  189. });
  190. }
  191. });
  192. // 修改部门、系部
  193. $('#lr_editDept').on('click', function () {
  194. var keyValue = $('#gridtable').jfGridValue('EmpId');
  195. if (learun.checkrow(keyValue)) {
  196. var CheckMark = $('#gridtable').jfGridValue('CheckMark');
  197. if (CheckMark.indexOf('true') != -1) {
  198. learun.alert.warning("选中记录中包含已启用项目!");
  199. return;
  200. }
  201. learun.layerForm({
  202. id: 'formEdit',
  203. title: '修改部门、系部',
  204. url: top.$.rootUrl + '/EducationalAdministration/EmpInfo/FormEdit?keyValue=' + keyValue,
  205. width: 600,
  206. height: 400,
  207. callBack: function (id) {
  208. return top[id].acceptClick(refreshGirdData);
  209. }
  210. });
  211. }
  212. });
  213. // 删除
  214. $('#lr_delete').on('click', function () {
  215. var keyValue = $('#gridtable').jfGridValue('EmpId');
  216. if (learun.checkrow(keyValue)) {
  217. var CheckMark = $('#gridtable').jfGridValue('CheckMark');
  218. if (CheckMark.indexOf('true') != -1) {
  219. learun.alert.warning("选中记录中包含已启用项目,已启用不能删除!");
  220. return;
  221. }
  222. //if (CheckMark === true) {
  223. // learun.alert.warning("当前项目已审核不能删除!");
  224. // return;
  225. //}
  226. learun.layerConfirm('是否确认删除该项!', function (res) {
  227. if (res) {
  228. learun.deleteForm(top.$.rootUrl + '/EducationalAdministration/EmpInfo/DeleteForm', { keyValue: keyValue }, function () {
  229. refreshGirdData();
  230. });
  231. }
  232. });
  233. }
  234. });
  235. //审核
  236. $('#lr_lock').on('click', function () {
  237. var keyValue = $('#gridtable').jfGridValue('EmpId');
  238. if (learun.checkrow(keyValue)) {
  239. var CheckMark = $('#gridtable').jfGridValue('CheckMark');
  240. if (CheckMark.indexOf('true') != -1) {
  241. learun.alert.warning("选中记录中包含已启用项目!");
  242. return;
  243. }
  244. //if (CheckMark === true) {
  245. // learun.alert.warning("当前项目已审核无需再审!");
  246. // return;
  247. //}
  248. learun.layerConfirm('是否确认审核该项!', function (res) {
  249. if (res) {
  250. learun.postForm(top.$.rootUrl + '/EducationalAdministration/EmpInfo/Lock', { keyValue: keyValue }, function () {
  251. refreshGirdData();
  252. });
  253. }
  254. });
  255. }
  256. });
  257. //去审核
  258. $('#lr_unlock').on('click', function () {
  259. var keyValue = $('#gridtable').jfGridValue('EmpId');
  260. if (learun.checkrow(keyValue)) {
  261. var CheckMark = $('#gridtable').jfGridValue('CheckMark');
  262. if (CheckMark.indexOf('false') != -1) {
  263. learun.alert.warning("选中记录中包含已停用项目!");
  264. return;
  265. }
  266. //if (CheckMark === false) {
  267. // learun.alert.warning("当前项目还未审核不需要去审核!");
  268. // return;
  269. //}
  270. learun.layerConfirm('是否确认去审核该项!', function (res) {
  271. if (res) {
  272. learun.postForm(top.$.rootUrl + '/EducationalAdministration/EmpInfo/UnLock', { keyValue: keyValue }, function () {
  273. refreshGirdData();
  274. });
  275. }
  276. });
  277. }
  278. });
  279. $('#checkall').on('click', function () {
  280. learun.layerConfirm('是否确认全部审核?', function (res) {
  281. if (res) {
  282. learun.postForm(top.$.rootUrl + '/EducationalAdministration/EmpInfo/CheckAll', {}, function () {
  283. refreshGirdData();
  284. });
  285. }
  286. });
  287. });
  288. //简历
  289. $('#lr_resume').on('click', function () {
  290. var keyValue = $('#gridtable').jfGridValue('EmpId');
  291. if (learun.checkrow(keyValue)) {
  292. if (keyValue.indexOf(',') != -1) {
  293. learun.alert.warning("只能选择一条记录!");
  294. return;
  295. }
  296. var CheckMark = $('#gridtable').jfGridValue('CheckMark');
  297. if (CheckMark === "true") {
  298. learun.alert.warning("当前项目已审核不能编辑!");
  299. return;
  300. }
  301. learun.layerForm({
  302. id: 'form',
  303. title: '编辑',
  304. url: top.$.rootUrl + '/EducationalAdministration/EmpInfo/Form?keyValue=' + keyValue,
  305. width: 800,
  306. height: 600,
  307. callBack: function (id) {
  308. return top[id].acceptClick(refreshGirdData);
  309. }
  310. });
  311. }
  312. });
  313. //生成帐号
  314. $('#lr_generate').on('click', function () {
  315. learun.layerConfirm('是否确认生成帐号!', function (res) {
  316. if (res) {
  317. learun.postForm(top.$.rootUrl + '/EducationalAdministration/EmpInfo/Generate', {}, function () {
  318. refreshGirdData();
  319. });
  320. }
  321. });
  322. });
  323. $("#lr_update").on("click", function () {
  324. learun.layerConfirm('是否确认更新帐号!', function (res) {
  325. if (res) {
  326. learun.postForm(top.$.rootUrl + '/EducationalAdministration/EmpInfo/UpdateAccount', {}, function () {
  327. refreshGirdData();
  328. })
  329. }
  330. })
  331. });
  332. $("#lr_switch").on("click", function () {
  333. $.get("/EducationalAdministration/TeachSwitch/GetFirstEntity", function (data) {
  334. if (data.code == "200") {
  335. if (data.data.ID) {
  336. learun.layerForm({
  337. id: 'form',
  338. title: '设置',
  339. url: top.$.rootUrl + '/EducationalAdministration/TeachSwitch/Form?keyValue=' + data.data.ID,
  340. width: 600,
  341. height: 400,
  342. callBack: function (id) {
  343. return top[id].acceptClick();
  344. }
  345. });
  346. } else {
  347. learun.alert.warning("请在控制注册表中添加一条数据");
  348. }
  349. }
  350. }, "json")
  351. });
  352. //打印
  353. $('#lr_print').on('click', function () {
  354. var keyValue = $('#gridtable').jfGridValue('EmpId');
  355. if (learun.checkrow(keyValue)) {
  356. if (keyValue.indexOf(',') != -1) {
  357. learun.alert.warning("只能选择一条记录进行查看!");
  358. return;
  359. }
  360. learun.layerForm({
  361. id: 'print',
  362. title: '教职工基本信息登记表',
  363. url: top.$.rootUrl + '/EducationalAdministration/EmpInfo/Print?keyValue=' + keyValue,
  364. width: 1100,
  365. height: 800,
  366. btn: null
  367. });
  368. }
  369. });
  370. },
  371. // 初始化列表
  372. initGird: function () {
  373. $('#gridtable').lrAuthorizeJfGrid({
  374. url: top.$.rootUrl + '/EducationalAdministration/EmpInfo/GetPageList',
  375. headData: [
  376. {
  377. label: "审核标志", name: "CheckMark", width: 80, align: "center",
  378. formatter: function (cellvalue) {
  379. //return cellvalue == true ? "<i class=\"fa fa-toggle-on\"></i>" : "<i class=\"fa fa-toggle-off\"></i>";
  380. return cellvalue == true ? "<span class=\"label label-success\">已审核</span>" : "<span class=\"label label-danger\">未审核</span>";
  381. }
  382. },
  383. { label: "职工编号", name: "EmpNo", width: 100, align: "left" },
  384. { label: "姓名", name: "EmpName", width: 100, align: "left" },
  385. {
  386. label: "校区", name: "F_CompanyId", width: 100, align: "left",
  387. formatterAsync: function (callback, value, row, op, $cell) {
  388. learun.clientdata.getAsync('custmerData', {
  389. url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'company',
  390. key: value,
  391. keyId: 'f_companyid',
  392. callback: function (_data) {
  393. callback(_data['f_fullname']);
  394. }
  395. });
  396. }
  397. },
  398. {
  399. label: "部门", name: "F_DepartmentId", width: 100, align: "left",
  400. formatterAsync: function (callback, value, row, op, $cell) {
  401. learun.clientdata.getAsync('custmerData', {
  402. url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'classdata',
  403. key: value,
  404. keyId: 'id',
  405. callback: function (_data) {
  406. callback(_data['name']);
  407. }
  408. });
  409. }
  410. },
  411. //{
  412. // label: "系部", name: "DeptNo", width: 100, align: "left",
  413. // formatterAsync: function (callback, value, row, op, $cell) {
  414. // learun.clientdata.getAsync('custmerData', {
  415. // url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'CdDeptInfo',
  416. // key: value,
  417. // keyId: 'deptno',
  418. // callback: function (_data) {
  419. // callback(_data['deptname']);
  420. // }
  421. // });
  422. // }
  423. //},
  424. {
  425. label: "性别", name: "GenderNo", width: 80, align: "left",
  426. formatter: function (cellvalue) {
  427. return cellvalue == true ? "男" : "女";
  428. }
  429. },
  430. { label: "是否授课", name: "IsHasLesson", width: 100, align: "left", formatter: function (cellvalue) { return cellvalue == true ? "是" : "否" } },
  431. {
  432. label: "员工状态", name: "IsInActiveStatus", width: 100, align: "left",
  433. formatterAsync: function (callback, value, row, op, $cell) {
  434. learun.clientdata.getAsync('dataItem', {
  435. key: value,
  436. code: 'JobStatus',
  437. callback: function (_data) {
  438. callback(_data.text);
  439. }
  440. });
  441. }
  442. },
  443. { label: "员工状态时间", name: "IsInActiveTime", width: 100, align: "left"},
  444. {
  445. label: "人员身份", name: "CompilationCategory", width: 100, align: "left",
  446. formatterAsync: function (callback, value, row, op, $cell) {
  447. learun.clientdata.getAsync('dataItem', {
  448. key: value,
  449. code: 'CompilationCategory',
  450. callback: function (_data) {
  451. callback(_data.text);
  452. }
  453. });
  454. }
  455. },
  456. { label: "出生日期", name: "Birthday", width: 100, align: "left" },
  457. {
  458. label: "民族", name: "NationalityNo", width: 100, align: "left",
  459. formatterAsync: function (callback, value, row, op, $cell) {
  460. learun.clientdata.getAsync('dataItem', {
  461. key: value,
  462. code: 'National',
  463. callback: function (_data) {
  464. callback(_data.text);
  465. }
  466. });
  467. }
  468. },
  469. {
  470. label: "政治面貌", name: "PartyFaceNo", width: 100, align: "left",
  471. formatterAsync: function (callback, value, row, op, $cell) {
  472. learun.clientdata.getAsync('dataItem', {
  473. key: value,
  474. code: 'BCdPartyFace',
  475. callback: function (_data) {
  476. callback(_data.text);
  477. }
  478. });
  479. }
  480. },
  481. { label: "身份证号", name: "IdentityCardNo", width: 150, align: "left" },
  482. { label: "排序", name: "F_Order", width: 100, align: "left" },
  483. {
  484. label: "最高学历", name: "HighestRecord", width: 100, align: "left",
  485. formatterAsync: function (callback, value, row, op, $cell) {
  486. learun.clientdata.getAsync('dataItem', {
  487. key: value,
  488. code: 'HighestEducation',
  489. callback: function (_data) {
  490. callback(_data.text);
  491. }
  492. });
  493. }
  494. },
  495. {
  496. label: "最高学位", name: "DegreeNo", width: 100, align: "left",
  497. formatterAsync: function (callback, value, row, op, $cell) {
  498. learun.clientdata.getAsync('dataItem', {
  499. key: value,
  500. code: 'BCdDegree',
  501. callback: function (_data) {
  502. callback(_data.text);
  503. }
  504. });
  505. }
  506. },
  507. { label: "联系电话", name: "mobile", width: 100, align: "left" },
  508. { label: "电子邮箱", name: "EMail", width: 100, align: "left" },
  509. {
  510. label: "户籍省份", name: "ProvinceNo", width: 100, align: "left",
  511. formatterAsync: function (callback, value, row, op, $cell) {
  512. learun.clientdata.getAsync('custmerData', {
  513. url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'DIC_PROVINCE',
  514. key: value,
  515. keyId: 'pcode',
  516. callback: function (_data) {
  517. callback(_data['pname']);
  518. }
  519. });
  520. }
  521. },
  522. {
  523. label: "户籍县区", name: "RegionNo", width: 100, align: "left",
  524. formatterAsync: function (callback, value, row, op, $cell) {
  525. learun.clientdata.getAsync('custmerData', {
  526. url: '/LR_SystemModule/DataSource/GetDataTable?code=' + 'DIC_AREA',
  527. key: value,
  528. keyId: 'acode',
  529. callback: function (_data) {
  530. callback(_data['aname']);
  531. }
  532. });
  533. }
  534. },
  535. {
  536. label: "港澳台侨", name: "OverseasChineseNo", width: 100, align: "left",
  537. formatterAsync: function (callback, value, row, op, $cell) {
  538. learun.clientdata.getAsync('dataItem', {
  539. key: value,
  540. code: 'BCdOverseasChinese',
  541. callback: function (_data) {
  542. callback(_data.text);
  543. }
  544. });
  545. }
  546. },
  547. {
  548. label: "健康状况", name: "HealthStatusNo", width: 100, align: "left",
  549. formatterAsync: function (callback, value, row, op, $cell) {
  550. learun.clientdata.getAsync('dataItem', {
  551. key: value,
  552. code: 'BCdHealthStatus',
  553. callback: function (_data) {
  554. callback(_data.text);
  555. }
  556. });
  557. }
  558. },
  559. {
  560. label: "家庭出身", name: "FamilyOriginNo", width: 100, align: "left",
  561. formatterAsync: function (callback, value, row, op, $cell) {
  562. learun.clientdata.getAsync('dataItem', {
  563. key: value,
  564. code: 'BCdFamilyOrigin',
  565. callback: function (_data) {
  566. callback(_data.text);
  567. }
  568. });
  569. }
  570. },
  571. { label: "毕业学校", name: "GraduateSchoolName", width: 100, align: "left" },
  572. {
  573. label: "学科门类", name: "SubjectSpeciesNo", width: 100, align: "left",
  574. formatterAsync: function (callback, value, row, op, $cell) {
  575. learun.clientdata.getAsync('dataItem', {
  576. key: value,
  577. code: 'BCdSubjectSpecies',
  578. callback: function (_data) {
  579. callback(_data.text);
  580. }
  581. });
  582. }
  583. },
  584. {
  585. label: "岗位类别", name: "EmpSortNo", width: 100, align: "left",
  586. formatterAsync: function (callback, value, row, op, $cell) {
  587. learun.clientdata.getAsync('dataItem', {
  588. key: value,
  589. code: 'jsgw',
  590. callback: function (_data) {
  591. callback(_data.text);
  592. }
  593. });
  594. }
  595. },
  596. {
  597. label: "专职兼职", name: "EmpFullTimeNo", width: 100, align: "left",
  598. formatterAsync: function (callback, value, row, op, $cell) {
  599. learun.clientdata.getAsync('dataItem', {
  600. key: value,
  601. code: 'EmpFullTime',
  602. callback: function (_data) {
  603. callback(_data.text);
  604. }
  605. });
  606. }
  607. },
  608. {
  609. label: "岗位名称", name: "TitleOfTechPostNo", width: 100, align: "left",
  610. formatterAsync: function (callback, value, row, op, $cell) {
  611. learun.clientdata.getAsync('dataItem', {
  612. key: value,
  613. code: 'BCdTitleOfTechPost',
  614. callback: function (_data) {
  615. callback(_data.text);
  616. }
  617. });
  618. }
  619. },
  620. { label: "来校时间", name: "InSchoolDate", width: 100, align: "left" },
  621. { label: "紧急联系人", name: "Linkman", width: 100, align: "left" },
  622. { label: "联系人关系", name: "RelationOfLinkman", width: 100, align: "left" },
  623. { label: "联系人电话", name: "PhoneOfLinkman", width: 100, align: "left" },
  624. { label: "证书信息", name: "CertificateNames", width: 150, align: "left" },
  625. { label: "获取证书日期", name: "CertificateDates", width: 150, align: "left" },
  626. ],
  627. mainId: 'EmpId',
  628. sidx: 'DeptOrder,F_Order',
  629. isPage: true,
  630. isMultiselect: true
  631. });
  632. page.search();
  633. },
  634. search: function (param) {
  635. param = param || {};
  636. $('#gridtable').jfGridSet('reload', { queryJson: JSON.stringify(param) });
  637. }
  638. };
  639. refreshGirdData = function () {
  640. page.search();
  641. };
  642. page.init();
  643. }