talentInfo_ic_select.js 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. /**
  2. * 初始化人才认定申报详情对话框
  3. */
  4. var locked = false;
  5. var TalentInfoInfoDlg = {
  6. talentInfoInfoData : {},
  7. };
  8. /**
  9. * 获取人才认定
  10. */
  11. TalentInfoInfoDlg.getIdentifyCondition = function() {
  12. var level = $("#talentArrange").val();
  13. var type = $("#type").val();
  14. if(level==null||level==''){
  15. $("#identifyCondition").empty();
  16. $("#identifyCondition").trigger('chosen:updated');
  17. return;
  18. }
  19. if(type==null||type==''){
  20. Feng.info("请先选择人才类别");
  21. return ;
  22. }
  23. Feng.addAjaxSelect({
  24. "id": "identifyCondition",
  25. "displayCode": "id",
  26. "displayName": "name",
  27. "type": "GET",
  28. "url": Feng.ctxPath + "/api/common/findIdentifyConditionByLevel?talentLevel="+level+"&type="+type
  29. });
  30. $("#identifyCondition").trigger('chosen:updated');
  31. }
  32. TalentInfoInfoDlg.bankChange = function () {
  33. var bank = $("#bank").val();
  34. if($.trim(bank)=='中国工商银行'){
  35. $("#bankNumber").val('102391050013');
  36. }else {
  37. $("#bankNumber").val('');
  38. }
  39. }
  40. /**
  41. * 加载市
  42. */
  43. TalentInfoInfoDlg.afterSelectProvince = function () {
  44. var province = $("#provinceCode").val();
  45. $("#cityCode").empty();
  46. $("#countyCode").empty();
  47. if(province==null||province==''){
  48. return;
  49. }
  50. Feng.addAjaxSelect({
  51. "id": "cityCode",
  52. "displayCode": "code",
  53. "displayName": "name",
  54. "type": "GET",
  55. "url": Feng.ctxPath + "/api/commonLocation/findCityByProvinceSelect/"+province
  56. });
  57. }
  58. /**
  59. * 加载县
  60. */
  61. TalentInfoInfoDlg.afterSelectCity = function (){
  62. var city = $("#cityCode").val();
  63. $("#countyCode").empty();
  64. if(city==null||city==''){
  65. return;
  66. }
  67. Feng.addAjaxSelect({
  68. "id": "countyCode",
  69. "displayCode": "code",
  70. "displayName": "name",
  71. "type": "GET",
  72. "url": Feng.ctxPath + "/api/commonLocation/findCountyByCitySelect/"+city
  73. });
  74. }
  75. //初始化附件类别表单
  76. TalentInfoInfoDlg.initFileTable = function (){
  77. var queryData = {};
  78. queryData['project'] = CONFIG.project_rcrd;
  79. queryData['type'] = $("#type").val();
  80. $("#fileTable").bootstrapTable({
  81. url: Feng.ctxPath + "/api/talentInfo/findUnCommonFileType",
  82. method: 'POST',
  83. contentType: "application/x-www-form-urlencoded; charset=UTF-8",
  84. search: false, // 是否显示表格搜索,此搜索是客户端搜索,不会进服务端
  85. showRefresh: false, // 是否显示刷新按钮
  86. clickToSelect: true, // 是否启用点击选中行
  87. singleSelect: true, // 设置True 将禁止多选
  88. striped: true, // 是否显示行间隔色
  89. escape: true,
  90. pagination: false, // 设置为 true 会在表格底部显示分页条
  91. paginationHAlign: "left",
  92. paginationDetailHAlign: "right",
  93. sidePagination: "server", // 设置在哪里进行分页,可选值为 'client' 或者 'server'
  94. showColumns: false,
  95. detailView: true, //是否显示父子表
  96. pageList: [10, 30, 50],
  97. queryParams: function (params) {
  98. return $.extend(queryData,params)
  99. },
  100. rowStyle: function (row, index) {
  101. return {classes:"info"};
  102. },
  103. columns: TalentInfoInfoDlg.initFileTypeColumn(),
  104. onPostBody: function () {
  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. onLoadSuccess: function (data) {
  111. $("#fileTable").bootstrapTable('expandAllRows');
  112. },
  113. onExpandRow: function (index, row, $detail) {
  114. var ajax = new $ax(Feng.ctxPath + "/api/talentInfo/listTalentFile", function (data) {
  115. if(data==null||data.length==0){
  116. return;
  117. }
  118. 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>';
  119. var files = $("#files").val();
  120. var checkState = $("#checkState").val();
  121. for(var key in data){
  122. var sn = data[key].url.lastIndexOf(".");
  123. var suffix = data[key].url.substring(sn+1,data[key].url.length);
  124. var imgStr = "";
  125. if(suffix=="pdf"||suffix=="PDF"){
  126. imgStr = "<button type='button' onclick=\"Feng.showPdf('"+data[key].url+"','"+data[key].id+"','"+data[key].orignName+"')\" class=\"btn btn-xs btn-danger\"><i class=\"fa fa-file-pdf-o\" aria-hidden=\"true\"></i></button>";
  127. }else if(suffix == "xlsx" || suffix=="XLSX" || suffix == 'xls' || suffix == 'XLS'){
  128. imgStr = "<button type='button' onclick=\"Feng.showExcel('"+data[key].url+"','"+data[key].id+"','"+data[key].orignName+"')\" class=\"btn btn-xs btn-danger\"><i class=\"fa fa-file-excel-o\" aria-hidden=\"true\"></i></button>";
  129. }else{
  130. imgStr = '<img class=\"imgUrl\" src=\"'+data[key].url+'\" style=\"width:25px;height:25px;\">';
  131. }
  132. html = html + '<li style="display: none">'+data[key].id+'</li>\n'+
  133. '<li style="width: 80%;padding-top: 5px;">'+data[key].orignName+'</li>\n'+
  134. '<li style="width: 10%;">'+imgStr+'</li>\n';
  135. }
  136. html = html + '</ul>';
  137. $detail.html(html);
  138. $(".imgs").viewer({ fullscreen:false});
  139. }, function (data) {
  140. Feng.error("查询失败!" + data.responseJSON.message + "!");
  141. });
  142. var queryData = {};
  143. queryData["mainId"] = $("#id").val();
  144. queryData["fileTypeId"] = row.id;
  145. ajax.set(queryData);
  146. ajax.start();
  147. }
  148. });
  149. }
  150. /**
  151. * 初始化表格的列
  152. */
  153. TalentInfoInfoDlg.initFileTypeColumn = function () {
  154. return [
  155. {field: 'selectItem', checkbox:false,visible:false},
  156. {title: '名称', field: 'name', visible: true, align: 'center', valign: 'middle',width:"30%",'class': 'uitd_showTip',
  157. formatter : function(value,row,index){
  158. if(row.must==1){
  159. return '<i class="fa fa-paste"></i><span style="font-weight:bold;color:red;font-size:14px;font-family:宋体"> * </span> '+ value;
  160. }if(row.must==2){
  161. return '<i class="fa fa-paste"></i>'+value;
  162. }
  163. }
  164. },
  165. {title: '模板', field: 'templateUrl', visible: true, align: 'center', valign: 'middle',width:"8%",
  166. formatter : function(value,row,index){
  167. if(value==null||value==''||value=='null'){
  168. return '无';
  169. }
  170. return "<button type='button' onclick=\"TalentInfoInfoDlg.downloadFile('"+row.id+"',3)\" style='margin-right: 10px' class=\"btn btn-xs btn-primary\">" +
  171. "<i class=\"fa fa-download\"></i>下载" +
  172. "</button>";
  173. }
  174. },
  175. {title: '备注', field: 'description', visible: true, align: 'center', valign: 'middle',width:"52%",'class': 'uitd_showTip'},
  176. ]
  177. };
  178. TalentInfoInfoDlg.downloadFile = function (id,type){
  179. window.location.href = Feng.ctxPath + "/api/common/downloadFile?id=" + id + "&type="+type;
  180. }
  181. $(function() {
  182. //批量加载字典表数据
  183. var arr = [
  184. {"name":"nation","code":"un_nation"},
  185. {"name":"talentArrange","code":"un_talentLevel"},
  186. {"name":"nationality","code":"un_nationality"},
  187. {"name":"talentType","code":"un_jbt_talentType"},
  188. {"name":"politics","code":"un_political"},
  189. {"name":"highEducation","code":"un_education"},
  190. {"name":"introductionMode","code":"un_introduction_mode"},
  191. {"name":"industryField","code":"un_industryField"},
  192. {"name":"address","code":"un_street"}];
  193. Feng.findChildDictBatch(JSON.stringify(arr));
  194. //加载省份
  195. Feng.addAjaxSelect({
  196. "id": "provinceCode",
  197. "displayCode": "code",
  198. "displayName": "name",
  199. "type": "GET",
  200. "url": Feng.ctxPath + "/api/commonLocation/getProvinceSelect"
  201. });
  202. var id = $("#id").val();
  203. if(id!=null && id!=''){
  204. $("select").each(function () {
  205. $(this).val($(this).attr("value")).trigger("change");
  206. });
  207. Feng.getCheckLog("logTable",{"type":CONFIG.project_rcrd,"mainId":id,"typeFileId":"","active":1})
  208. }
  209. $("#address").val($("#address").attr("value"));
  210. $("#provinceCode").val($("#provinceCode").attr("value"));
  211. TalentInfoInfoDlg.afterSelectProvince();
  212. $("#cityCode").val($("#cityCode").attr("value"));
  213. TalentInfoInfoDlg.afterSelectCity();
  214. $("#countyCode").val($("#countyCode").attr("value"));
  215. $("#talentArrange").val($("#talentArrange").attr("value"));
  216. TalentInfoInfoDlg.getIdentifyCondition();
  217. $("#talentArrange").val($("#talentArrange").attr("value"));
  218. $("#identifyCondition").val($("#identifyCondition").attr("value"));
  219. TalentInfoInfoDlg.validId();
  220. $("#photo").change(function (e) {
  221. var tag = e.target;
  222. var file = tag.files[0];
  223. var imgSrc;
  224. var reader = new FileReader();
  225. reader.readAsDataURL(file);
  226. reader.onload = function() {
  227. imgSrc = this.result;
  228. $("#photoImg").attr("src", imgSrc);
  229. };
  230. });
  231. TalentInfoInfoDlg.setNoChangeField();
  232. $("input,select,textarea").not("input[type='hidden']").not("input[type='file']").attr("style","pointer-events: none;background-color: #eee;");
  233. });