portal html css js resource

cmp-needList.js 9.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. $(document).ready(function() {
  2. $(".onlogin .headnavbtn li").eq(0).addClass("navcurrent");
  3. $(".workmenu>ul>li.demandIcon").addClass("nowLi");
  4. var id = $.cookie('orgId');
  5. if(id == "" || id == null || id == "null"){
  6. location.href = "cmp-settled-log.html";
  7. }
  8. resMgr(id);
  9. demandList(true,10, 1);
  10. /*查询企业认证状态*/
  11. function companyAuthentState() {
  12. $.ajax({
  13. url: '/ajax/org/authStatus',
  14. type: "GET",
  15. timeout: 10000,
  16. dataType: "json",
  17. data: {
  18. "id": id
  19. },
  20. beforeSend: function() {},
  21. success: function(data, textState) {
  22. if(data.success) {
  23. console.log(data);
  24. if(data.data == 3) {
  25. $("#companyDemandList").show();
  26. } else {
  27. $("#identityState").show();
  28. }
  29. }
  30. },
  31. error: function(XMLHttpRequest, textStats, errorThrown) {
  32. $.MsgBox.Alert('提示', '服务器请求失败')
  33. }
  34. })
  35. }
  36. companyAuthentState();
  37. function st6This(osr) {
  38. var tim = osr.substring(0, 4) + osr.substring(5, 7) + osr.substring(8, 10) ;
  39. return tim;
  40. }
  41. var seleTime = '<div class="mb-list mb-listR"><p class="msg-tit">请设置需求的有效期:</p>'+
  42. '<div style="position:relative"><div class="input-append date form_date form_datetime" data-link-field="dtp_input2" >'+
  43. '<em class="mr_sj"></em>'+
  44. '<input size="16" type="text" readonly class="frmtype frmcontype fColor" placeholder="请设置需求的有效期">'+
  45. '<span class="dateIcon"><i class="icon-calendar displayNone"></i></span>'+
  46. '<span class="add-on"><i class="icon-th displayNone"></i></span>'+
  47. '</div>'+
  48. '<input type="hidden" id="dtp_input2"/>'+
  49. '<span></span></div></div>'
  50. $("#cmpneedList").on("click",".delayThis",function(){//延期
  51. var dataId=$(this).parents("li").find(".urlHref").attr("data-id");
  52. $(".blackcover2").fadeIn();
  53. var btnOk='<input class="mb_btn mb_btnOk mb_btnOkset" type="button" value="确定">'
  54. $(".mb_btnOk").remove(); $("#promotGt").prepend(btnOk);
  55. $(".modelContain").show(); $("body").addClass("modelOpen");
  56. $(".mb-listR").remove(); $("#promotTh").append(seleTime);//时间选择器
  57. var a = new Date();
  58. var c = a.getFullYear() + "-" + (Number(a.getMonth()) + 1) + "-" + (Number(a.getDate()) + 1);
  59. $(".mb-listR .form_datetime").datetimepicker({
  60. language: 'ch',
  61. format: 'yyyy-mm-dd',
  62. weekStart: 0,
  63. todayBtn: false,
  64. autoclose: 1,
  65. todayHighlight: 1,
  66. startView: 2,
  67. minView: 2,
  68. forceParse: 0,
  69. startDate: getNowFormatDate(),
  70. oflag: 1,
  71. startDate: c,
  72. });
  73. $(".mb-listR .form_datetime").val(getNowFormatDate(1));
  74. $(".mb_btnOkset").on("click", function() {
  75. var delayTime=$(".mb-listR .form_datetime .fColor").val();
  76. $.ajax({
  77. "url": "/ajax/demand/defer",
  78. "type": "POST",
  79. "async": true,
  80. "data":{
  81. "id":dataId,
  82. "day":st6This(delayTime)
  83. },
  84. "success": function(data) {
  85. if(data.success && data.data) {
  86. $(".blackcover2").fadeOut();
  87. $(".modelContain").hide();
  88. $("body").removeClass("modelOpen");
  89. demandList(true,10,1);
  90. }
  91. }
  92. });
  93. })
  94. })
  95. $("#cmpneedList").on("click",".overThis",function(){//完成
  96. var dataId=$(this).parents("li").find(".urlHref").attr("data-id");
  97. $.MsgBox.Confirm("提示", "确认该需求已解决?",function(){
  98. $.ajax({
  99. "url": "/ajax/demand/over",
  100. "type": "POST",
  101. "async": true,
  102. "data":{
  103. "id":dataId,
  104. },
  105. "success": function(data) {
  106. if(data.success && data.data) {
  107. console.log(data);
  108. $(".madiaEdit").remove();
  109. demandList(true,10,1);
  110. }
  111. }
  112. });
  113. });
  114. })
  115. $("#cmpneedList").on("click",".closeThis",function(){//关闭
  116. var dataId=$(this).parents("li").find(".urlHref").attr("data-id");
  117. $.MsgBox.Confirm("提示", "确认要关闭该需求?",function(){
  118. $.ajax({
  119. "url": "/ajax/demand/close",
  120. "type": "POST",
  121. "async": true,
  122. "data":{
  123. "id":dataId
  124. },
  125. "success": function(data) {
  126. if(data.success && data.data) {
  127. $(".madiaEdit").remove();
  128. demandList(true,10, 1);
  129. }
  130. }
  131. });
  132. });
  133. })
  134. $("#cmpneedList").on("click",".updateThis",function(){//修改
  135. var dataId=$(this).parents("li").find(".urlHref").attr("data-id");
  136. window.open("needIssue.html?demandId="+dataId)
  137. })
  138. $(".issueSpan").click(function(e){
  139. UnauthorizedUser()
  140. e.preventDefault();
  141. })
  142. function UnauthorizedUser() {
  143. $.ajax({
  144. url: "/ajax/professor/qaOrgAuth",
  145. type: "GET",
  146. timeout: 10000,
  147. dataType: "json",
  148. async:"true",
  149. data: {
  150. "orgId": $.cookie("orgId"),
  151. "orgAuth": 1
  152. },
  153. success: function(data, textState) {
  154. if(data.success) {
  155. if(data.data.length==0) {
  156. $.MsgBox.Confirm("提示", "请至少认证1位员工</br><span style='margin-top:20px;font-size:14px;color:#ccc;'>选择认证员工作为联系人,代表企业与对方沟通。</span>", function(){
  157. location.href="cmp-staffList.html";
  158. });
  159. $("#mb_btn_no").val("稍后再说");
  160. $("#mb_btn_ok").val("去认证");
  161. }else if(data.data.length>0){
  162. window.open("cmp-demandPublish.html")
  163. }
  164. }
  165. },
  166. error: function(XMLHttpRequest, textStats, errorThrown) {
  167. $.MsgBox.Alert('提示', '服务器请求失败')
  168. }
  169. })
  170. }
  171. /*需求列表*/
  172. function demandList(isbind, pageSize, pageNo) {
  173. $.ajax({
  174. url: "/ajax/demand/pq/org",
  175. type: "GET",
  176. timeout: 10000,
  177. dataType: "json",
  178. traditional: true,
  179. data: {
  180. "state":[0,1,2,3],
  181. 'oname':$.cookie('orgName'),
  182. "pageNo": pageNo,
  183. "pageSize": pageSize
  184. },
  185. "beforeSend": function() {
  186. $("#cmpneedList").append('<img src="../images/loading.gif" class="loading" />');
  187. },
  188. success: function(data, textState) {
  189. if(data.success) {
  190. console.log(data);
  191. $("#cmpneedList").html("");
  192. var $info = data.data.data;
  193. if($info.length > 0){
  194. for(var i = 0; i < $info.length; i++) {
  195. var liStr=$("<li></li>").appendTo("#cmpneedList");
  196. demandHtml($info[i],liStr);
  197. userFun($info[i].creator,liStr);
  198. }
  199. if($info.length != 0) {
  200. if(isbind == true) {
  201. $(".tcdPageCode").createPage({
  202. pageCount: Math.ceil(data.data.total / pageSize),
  203. current: data.data.data.pageNo,
  204. backFn: function(p) {
  205. $("#cmpneedList").html("");
  206. demandList(false,10, p);
  207. document.body.scrollTop = document.documentElement.scrollTop = 0;
  208. }
  209. });
  210. }
  211. }
  212. }else{
  213. $("#cmpneedList").parent().find(".nodatabox").removeClass("displayNone")
  214. }
  215. }
  216. $(".loading").remove();
  217. },
  218. error: function() {
  219. }
  220. })
  221. }
  222. function demandHtml($data,liStr) {
  223. var sowU="";
  224. if($data.pageViews!=0){
  225. sowU='<li><span>浏览量 '+$data.pageViews+'</span></li>'
  226. }
  227. var statusU="";
  228. var dateGap = delayDay($data.invalidDay);
  229. if($data.state==1 && dateGap=="1"){
  230. statusU='<li><span class="draftLable">即将于 '+TimeTr($data.invalidDay)+' 过期</span></li>'
  231. }
  232. if($data.state==0){
  233. statusU='<li><span class="draftLable">已于 '+TimeTr($data.invalidDay)+' 过期</span></li>'
  234. }else if($data.state==2){
  235. statusU='<li><span class="overLable">已于 '+TimeTr($data.modifyTime)+' 完成</span></li>'
  236. }else if($data.state==3){
  237. statusU='<li><span>已于 '+TimeTr($data.modifyTime)+' 关闭</span></li>'
  238. }
  239. var closStr='',pdRight="";
  240. if($data.state==1 && dateGap=="0"){
  241. pdRight="padding-right:80px";
  242. closStr += '<ul class="madiaEdit"><li><span class="updateThis">修改</span></li><li><span class="overThis">完成</span></li></ul>'
  243. }else if($data.state==0 || ($data.state==1 && dateGap=="1")){
  244. pdRight="padding-right:260px";
  245. closStr += '<ul class="madiaEdit"><li><span class="delayThis">延期</span></li><li><span class="updateThis">修改</span></li><li><span class="overThis">完成</span></li></ul>'
  246. }
  247. var strCon='';
  248. strCon+='<a class="madiaInfo urlHref" style="'+pdRight+'" target="_blank" href="../demandShow.html?demandId='+$data.id+'" data-id="'+$data.id+'">'
  249. strCon+='<p class="h1Font ellipsisSty">'+ $data.title +'</p>'
  250. strCon+='<ul class="showliTop h2Font clearfix">'
  251. strCon+='<li><span>发布于 '+TimeTr($data.createTime)+'</span></li>'
  252. strCon+= sowU
  253. strCon+='<li><span class="creator"></span></li>'
  254. strCon+= statusU
  255. strCon+='</ul>'
  256. strCon+='</a>'+closStr
  257. $(strCon).appendTo(liStr);
  258. }
  259. function userFun(id,$listItem) {
  260. $.ajax({
  261. "url": "/ajax/professor/editBaseInfo/" + id,
  262. "type": "get",
  263. "async": true,
  264. "data":{
  265. "id":id
  266. },
  267. "success": function(data) {
  268. if(data.success && data.data) {
  269. $listItem.find(".creator").text('联系人 ' +data.data.name);
  270. }
  271. },
  272. "error": function() {
  273. $.MsgBox.Alert('提示', '链接服务器超时')
  274. }
  275. });
  276. }
  277. function delayDay(startTime){
  278. var dateToday = new Date();
  279. var dateInvalid = new Date();
  280. dateInvalid.setFullYear(parseInt(startTime.substring(0, 4)));
  281. dateInvalid.setMonth(parseInt(startTime.substring(4, 6)) - 1);
  282. dateInvalid.setDate(parseInt(startTime.substring(6, 8)));
  283. var dateGap = Math.abs(dateToday.getTime() - dateInvalid.getTime());
  284. var ifDelay="0";
  285. if(dateGap < 604800000){
  286. ifDelay="1";
  287. }
  288. return ifDelay;
  289. }
  290. })