content.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import { ref } from 'vue'
  2. import { dateFormatter, formatMoney } from '@jy/util'
  3. const contentModel = ref({
  4. id: '',
  5. title: '',
  6. // 项目信息
  7. projectName: '',
  8. projectCode: '',
  9. // 高亮词组
  10. keys: [],
  11. tags: [],
  12. time: '',
  13. // 计算信息
  14. isSelfSite: false,
  15. // TDK
  16. tdk: {
  17. title: '',
  18. keywords: '',
  19. description: ''
  20. }
  21. })
  22. function tranTags(data) {
  23. const { baseInfo } = data
  24. const defaultURL = 'javascript:volid(0);'
  25. const area = [baseInfo?.area, baseInfo?.city, baseInfo?.district]
  26. .filter((v) => v)
  27. .join('-')
  28. const typeItem = {
  29. label: baseInfo?.topType,
  30. link: defaultURL
  31. }
  32. if (baseInfo?.subType) {
  33. typeItem.label = baseInfo.subType
  34. typeItem.link = baseInfo?.subTypeUrl
  35. }
  36. const amountItem = {
  37. label: formatMoney(baseInfo?.bidAmount ?? baseInfo?.budget ?? ''),
  38. link: defaultURL
  39. }
  40. contentModel.value.tags = [
  41. // 地区
  42. {
  43. label: area,
  44. link: baseInfo?.areaUrl || defaultURL
  45. },
  46. // type
  47. typeItem,
  48. // buyer_class
  49. {
  50. label: baseInfo?.buyerClass,
  51. link: defaultURL
  52. },
  53. // amount
  54. amountItem
  55. ].filter((v) => v.label)
  56. }
  57. function tranCommonTitle(data) {
  58. const { baseInfo } = data
  59. contentModel.value.id = baseInfo.id
  60. contentModel.value.title = baseInfo.title
  61. contentModel.value.projectName = baseInfo?.projectName
  62. contentModel.value.projectCode = baseInfo?.projectCode
  63. contentModel.value.isSelfSite = baseInfo?.site === '剑鱼信息发布平台'
  64. contentModel.value.time = baseInfo?.publishTime
  65. ? dateFormatter(baseInfo.publishTime * 1000, 'yyyy-MM-dd')
  66. : ''
  67. // TDK
  68. contentModel.value.tdk.title = baseInfo.title
  69. contentModel.value.tdk.description = baseInfo?.description
  70. contentModel.value.tdk.keywords = baseInfo?.keywords
  71. }
  72. export { contentModel, tranTags, tranCommonTitle }