talentInfo_select.js 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. /**
  2. * 初始化人才认定申报详情对话框
  3. */
  4. var TalentInfoInfoDlg = {
  5. talentInfoInfoData: {},
  6. };
  7. /**
  8. * 初始化表格的列
  9. */
  10. TalentInfoInfoDlg.initFileTypeColumn = function () {
  11. return [
  12. {field: 'selectItem', checkbox: false, visible: false},
  13. {title: '名称', field: 'name', visible: true, align: 'center', valign: 'middle', width: "30%", 'class': 'uitd_showTip',
  14. formatter: function (value, row, index) {
  15. if (row.must == 1) {
  16. return '<i class="fa fa-paste"></i><span style="font-weight:bold;color:red;font-size:14px;font-family:宋体"> * </span> ' + value;
  17. }
  18. if (row.must == 2) {
  19. return '<i class="fa fa-paste"></i>' + value;
  20. }
  21. }
  22. },
  23. {title: '模板', field: 'templateUrl', visible: true, align: 'center', valign: 'middle', width: "8%",
  24. formatter: function (value, row, index) {
  25. if (value == null || value == '' || value == 'null') {
  26. return '无';
  27. }
  28. return "<button type='button' onclick=\"TalentInfoInfoDlg.downloadFile('" + row.id + "',3)\" style='margin-right: 10px' class=\"btn btn-xs btn-primary\">" +
  29. "<i class=\"fa fa-download\"></i>下载" +
  30. "</button>";
  31. }
  32. },
  33. {title: '备注', field: 'description', visible: true, align: 'center', valign: 'middle', width: "52%", 'class': 'uitd_showTip'},
  34. {title: '操作', field: 'id', visible: true, align: 'center', valign: 'middle', width: "10%",
  35. formatter: function (value, row, index) {
  36. return "";
  37. }
  38. }
  39. ]
  40. };
  41. TalentInfoInfoDlg.initFileTable = function () {
  42. var ajax = new $ax("/common/api/findCommonFileType", function (data) {
  43. if (data == null || data.length == 0) {
  44. return;
  45. }
  46. var datas = new Array();
  47. for (var i = 0; i < $(".fileTable").length; i++) {
  48. datas.push([]);//创建空的多维数组,等下用来存每个附件表的各自的列
  49. }
  50. for (var k in data["rows"]) {
  51. var rel = data["rows"][k].rel;
  52. if ($("#" + rel).length > 0) {
  53. var tableIndex = $("#" + rel).parents(".row").next(".row").find("table.fileTable").index(".fileTable");
  54. data["rows"][k].tableIndex = tableIndex;
  55. data["rows"][k].trIndex = datas[tableIndex].length;
  56. datas[tableIndex].push(data["rows"][k]);
  57. } else {
  58. if (data["rows"][k].isConditionFile) {
  59. var tableIndex = $("#talent_condition").parents(".row").next(".row").find("table.fileTable").index(".fileTable");
  60. data["rows"][k].tableIndex = tableIndex;
  61. data["rows"][k].trIndex = datas[tableIndex].length;
  62. datas[tableIndex].push(data["rows"][k]);//放入人才条件后面的附件表
  63. } else {
  64. var tableIndex = $(".fileTable").length - 1;
  65. data["rows"][k].tableIndex = tableIndex;
  66. data["rows"][k].trIndex = datas[tableIndex].length;
  67. datas[$(".fileTable").length - 1].push(data["rows"][k]);//没有归属,放入最后一个附件表
  68. }
  69. }
  70. }
  71. for (var i = 0; i < $(".fileTable").length; i++) {
  72. var that = $(".fileTable").eq(i);
  73. that.bootstrapTable({
  74. columns: TalentInfoInfoDlg.initFileTypeColumn(),
  75. data: datas[i],
  76. showHeader: false,
  77. rowStyle: function (row, index) {
  78. return {classes: ""};
  79. },
  80. onPostBody: function (data) {
  81. for (var k in data) {
  82. var files = data[k].files;
  83. var html = '<ul class="imgs"><li style="width: 80%;font-weight: bold;padding-top: 5px;">附件原名</li><li style="width: 10%;font-weight: bold;padding-top: 5px;">预览</li><li style="width: 10%;font-weight: bold;padding-top: 5px;">操作</li>';
  84. for (var key in files) {
  85. var sn = files[key].url.lastIndexOf(".");
  86. var suffix = files[key].url.substring(sn + 1, files[key].url.length);
  87. var imgStr = "";
  88. if (suffix == "pdf" || suffix == "PDF") {
  89. imgStr = "<button type='button' onclick=\"Feng.showPdf('" + files[key].url + "','" + files[key].id + "','" + files[key].orignName + "')\" class=\"btn btn-xs btn-danger\"><i class=\"fa fa-file-pdf-o\" aria-hidden=\"true\"></i></button>";
  90. } else if (suffix == "xlsx" || suffix == "XLSX" || suffix == 'xls' || suffix == 'XLS') {
  91. imgStr = "<button type='button' onclick=\"Feng.showExcel('" + files[key].url + "','" + files[key].id + "','" + files[key].orignName + "')\" class=\"btn btn-xs btn-danger\"><i class=\"fa fa-file-excel-o\" aria-hidden=\"true\"></i></button>";
  92. } else {
  93. imgStr = '<img class=\"imgUrl\" src=\"' + files[key].url + '\" style=\"width:25px;height:25px;\">';
  94. }
  95. html += '<li data-id="' + files[key].id + '">\n\
  96. <div><input type="hidden" name="uploadFiles[]" value="' + files[key].id + '"></div>\n' +
  97. '<div style="width: 80%;">' + files[key].orignName + '</div>\n' +
  98. '<div style="width: 10%;">' + imgStr + '</div>\n' +
  99. '<div style="width: 10%;"></div>\n\
  100. </li>';
  101. }
  102. html = html + '</ul>';
  103. that.find("tr[data-index='" + k + "']").after('<tr class="detail-view"><td colspan="5">' + html + '</td></tr>');
  104. }
  105. $("td.uitd_showTip").bind("mouseover", function () {
  106. //var htm = $(this).html();
  107. //$(this).webuiPopover({title: '详情', content: htm, trigger: 'hover'}).webuiPopover('show');
  108. });
  109. },
  110. });
  111. }
  112. //$(".ibox-content").viewer({fullscreen: false});
  113. }, function (data) {
  114. Feng.error("查询失败!" + data.responseJSON.message + "!");
  115. });
  116. var queryData = {};
  117. queryData["mainId"] = $("#id").val();
  118. queryData['project'] = CONFIG.project_rcrd;
  119. queryData['type'] = $("#type").val();
  120. queryData["talent_condition"] = $("#talent_condition option:selected").val();
  121. queryData['checkState'] = $("#checkState").val();
  122. ajax.set(queryData);
  123. ajax.start();
  124. }
  125. TalentInfoInfoDlg.downloadFile = function (id, type) {
  126. window.location.href = Feng.ctxPath + "/api/common/downloadFile?id=" + id + "&type=" + type;
  127. }
  128. $(function () {
  129. $(":input").prop("disabled", true);
  130. $("#talent_type option").eq(0).prop("selected", true);
  131. var id = $("#id").val();
  132. var checkState = $("#checkState").val();
  133. TalentInfoInfoDlg.initFileTable();
  134. if (id != null && id != '') {
  135. //select初始化
  136. $("select").each(function () {
  137. $(this).val($(this).attr("value")).trigger("change");
  138. });
  139. Feng.getCheckLog("logTable", {"type": CONFIG.project_rcrd, "mainId": id, "typeFileId": "", "active": 1})
  140. }
  141. });