tender_list_manage.js 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. const tenderListSpec = (function(){
  2. function getTenderNodeHtml(node, arr, pid) {
  3. const html = [];
  4. html.push('<tr pid="' + pid + '">');
  5. // 名称
  6. html.push('<td style="width: 45%" class="in-' + node.level + '">');
  7. if (node.cid) {
  8. html.push('<span onselectstart="return false" style="{-moz-user-select:none}" class="fold-switch mr-1" title="收起" cid="'+ node.sort_id +'"><i class="fa fa-minus-square-o"></i></span> <i class="fa fa-folder-o"></i> ', node.name);
  9. } else {
  10. html.push('<span class="text-muted mr-2">');
  11. html.push(arr.indexOf(node) === arr.length - 1 ? '└' : '├');
  12. html.push('</span>');
  13. html.push('<a href="javascript: void(0)" name="name" id="' + node.id + '">', node.name, '</a>');
  14. }
  15. html.push('</td>');
  16. // 创建人
  17. html.push('<td style="width: 10%" class="text-center">', node.user_name, '</td>');
  18. // 创建时间
  19. html.push('<td style="width: 15%">', node.create_time ? moment(node.create_time).format('YYYY-MM-DD HH:mm:ss') : '', '</td>');
  20. // 完成期数
  21. html.push('<td style="width: 10%" class="text-center">');
  22. if (!node.cid) {
  23. if (node.progress) {
  24. html.push(node.progress.title);
  25. } else {
  26. html.push(node.lastStage ? '第' + node.lastStage.order + '期' : '第0期');
  27. }
  28. }
  29. html.push('</td>');
  30. // 管理
  31. html.push('<td style="width: 20%" tid="' + node.id + '">');
  32. if (!node.cid) {
  33. html.push('<a href="javascript: void(0)" name="edit" class="btn btn-outline-primary btn-sm">编辑</a>');
  34. const hasStage = node.progress ? node.stage_count > 0 : !!node.lastStage;
  35. if (!hasStage) {
  36. html.push('<a href="javascript: void(0)" name="del" class="btn btn-outline-danger btn-sm ml-1">删除</a>');
  37. } else {
  38. html.push('<button class="btn btn-outline-secondary btn-sm ml-1" data-toggle="tooltip" data-placement="top" title="请先删除所有期">删除</button>');
  39. }
  40. if (cache) html.push(`<a href="/list/refreshCache?tid=${node.id}" class="btn btn-outline-primary btn-sm ml-1">更新缓存</a>`);
  41. }
  42. html.push('</td>');
  43. html.push('</tr>');
  44. return html.join('');
  45. }
  46. function getTenderTreeHeaderHtml() {
  47. const html = [];
  48. html.push('<table class="table table-hover table-bordered">');
  49. html.push('<thead style="position: fixed;left:56px;top: 34px;">', '<tr>');
  50. html.push('<th class="text-center" style="width: 45%">', '标段名称', tenderListOrder.getOrderButton('name'), '</th>');
  51. html.push('<th class="text-center" style="width: 10%">', '创建人', '</th>');
  52. html.push('<th class="text-center" style="width: 15%">', '创建时间', tenderListOrder.getOrderButton('create_time'), '</th>');
  53. html.push('<th class="text-center" style="width: 10%">', '完成期数', '</th>');
  54. html.push('<th class="text-center" style="width: 20%">', '管理', '</th>');
  55. html.push('</tr>', '</thead>');
  56. return html.join('');
  57. }
  58. return { getTenderNodeHtml, getTenderTreeHeaderHtml }
  59. })();