license_info_distribution.js 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. //--------------分发历史模态框------------------------
  2. function showDistributionHistory(selectedRowData) {
  3. fetch('http://127.0.0.1:8080/api/admin/GetlicenseRecord', {
  4. method: 'POST',
  5. headers: {
  6. 'Authorization': `Bearer ${authToken}`,
  7. 'Content-Type': 'application/json'
  8. },
  9. body: JSON.stringify({ uniqueID: selectedRowData.UniqueID, oa_request_id: selectedRowData.oa_request_id })
  10. })
  11. .then(response => response.json())
  12. .then(data => {
  13. const userDistributionContent = document.getElementById('distributionHistory-user-content');
  14. const emailDistributionContent = document.getElementById('distributionHistory-email-content');
  15. // 检查 license_record_to_user 是否是数组,如果不是则默认为空数组
  16. const userRecords = Array.isArray(data?.data?.license_record_to_user) ? data.data.license_record_to_user : [];
  17. // 如果 license_record_to_emails 是 null,则设置为空数组
  18. const emailRecords = Array.isArray(data?.data?.license_record_to_emails) ? data.data.license_record_to_emails : [];
  19. // 显示用户分发记录
  20. userDistributionContent.innerHTML = userRecords.length > 0
  21. ? userRecords.map(record => `<p>已转发给用户: ${record.user_account} 时间: ${formatDateTime(record.up_time)}</p>`).join('')
  22. : '<p>没有用户分发记录。</p>';
  23. // 显示邮箱分发记录
  24. emailDistributionContent.innerHTML = emailRecords.length > 0
  25. ? emailRecords.map(record => `<p>已发给邮箱: ${record.emails} 时间: ${formatDateTime(record.up_time)}</p>`).join('')
  26. : '<p>没有邮箱分发记录。</p>';
  27. // 显示模态框
  28. document.getElementById('distributionHistory-modal').style.display = 'block';
  29. })
  30. .catch(error => {
  31. console.error('Error fetching distribution history:', error);
  32. });
  33. // 关闭模态框 (点击关闭按钮)
  34. document.querySelector('.distributionHistory-modal-close').addEventListener('click', () => {
  35. document.getElementById('distributionHistory-modal').style.display = 'none';
  36. });
  37. // 点击模态框外部关闭模态框
  38. window.addEventListener('click', function(event) {
  39. const modal = document.getElementById('distributionHistory-modal');
  40. if (event.target === modal) { // 检查点击的是否是模态框背景
  41. modal.style.display = 'none'; // 关闭模态框
  42. }
  43. });
  44. }
  45. function formatDateTime(dateString) {
  46. const date = new Date(dateString);
  47. // 获取 UTC 时间
  48. const year = date.getUTCFullYear();
  49. const month = String(date.getUTCMonth() + 1).padStart(2, '0'); // 月份从0开始,所以+1
  50. const day = String(date.getUTCDate()).padStart(2, '0');
  51. const hours = String(date.getUTCHours()).padStart(2, '0');
  52. const minutes = String(date.getUTCMinutes()).padStart(2, '0');
  53. const seconds = String(date.getUTCSeconds()).padStart(2, '0');
  54. // 返回格式化后的字符串,格式为 YYYY-MM-DD HH:mm:ss
  55. return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
  56. }