noticeMixin.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. 'use strict';
  2. var noticeMixin = function () {// 通知消息
  3. return {
  4. data(){
  5. return{}
  6. },
  7. computed: {
  8. },
  9. mounted() {
  10. var _this = this;
  11. window.handleOrderClick = this.handleOrderClick;
  12. window.handleUsersClick = this.handleUsersClick;
  13. window.handleCouponClick = this.handleCouponClick;
  14. window.handleArticleClick = this.handleArticleClick;
  15. window.handleActivityClick = this.handleActivityClick;
  16. },
  17. methods: {
  18. hanldeNoticeText(cell){ // 根据tab计算返回显示文案
  19. const $EventFunction = {
  20. 1:this.noticeOrderText(cell),
  21. 2:this.noticeUsersText(cell),
  22. 3:this.noticeServeText(cell),
  23. 4:this.noticeCouponText(cell),
  24. 5: this.noticeArticleText(cell),
  25. 6: this.noticeActivityText(cell)
  26. }
  27. return $EventFunction[cell.messageType]
  28. },
  29. noticeOrderText(cell) { // 交易物流通知文案
  30. const linkMap = {
  31. 1:`<span data-type="${cell.orderMessageType}" data-orderId="${cell.orderId}" data-status="${cell.status}" data-onlinePayFlag="${cell.onlinePayFlag}" class="link" onclick="handleOrderClick($(this))">立即支付</span>`,
  32. 2:`<span data-type="${cell.orderMessageType}" data-orderId="${cell.orderId}" data-status="${cell.status}" data-onlinePayFlag="${cell.onlinePayFlag}" class="link" onclick="handleOrderClick($(this))" >查看订单</span>`,
  33. 3:`<span data-type="${cell.orderMessageType}" data-orderId="${cell.orderId}" data-status="${cell.status}" data-onlinePayFlag="${cell.onlinePayFlag}" class="link" onclick="handleOrderClick($(this))">查看订单</span>`,
  34. 4:`<span data-type="${cell.orderMessageType}" data-orderId="${cell.orderId}" data-status="${cell.status}" data-onlinePayFlag="${cell.onlinePayFlag}" class="link" onclick="handleOrderClick($(this))">查看订单</span>`,
  35. 5:`<span data-type="${cell.orderMessageType}" data-orderId="${cell.orderId}" data-status="${cell.status}" data-onlinePayFlag="${cell.onlinePayFlag}" class="link" onclick="handleOrderClick($(this))">查看物流</span>`,
  36. 6:`<span data-type="${cell.orderMessageType}" data-orderId="${cell.orderId}" data-status="${cell.status}" data-onlinePayFlag="${cell.onlinePayFlag}" class="link" onclick="handleOrderClick($(this))">查看订单</span>`
  37. }
  38. const map = {
  39. 1: `您已成功下单"${cell.productName}"等${cell.productCount}种商品,订单等待支付,点击${linkMap[cell.orderMessageType]}进行付款,支付完成后采美将尽快安排发货。`,
  40. 2: `订单(${cell.productName}"等${cell.productCount}种商品)已支付完成,将立即安排发货,点击${linkMap[cell.orderMessageType]}查看订单详情`,
  41. 3: `订单(${cell.productName}"等${cell.productCount}种商品)已${cell.refundType === 1 ? '部分退' : '全部退'}款/货成功,退款金额¥${cell.content},金额到账时间可能存在延迟,具体以支付方通知为准。点击${linkMap[cell.orderMessageType]}查看退款详情`,
  42. 4: `订单(${cell.productName}"等${cell.productCount}种商品)${cell.content},点击${linkMap[cell.orderMessageType]}查看订单详情`,
  43. 5: `订单(${cell.productName}"等${cell.productCount}种商品)已发货,点击${linkMap[cell.orderMessageType]}查看物流详情`,
  44. 6: `订单(${cell.productName}"等${cell.productCount}种商品)因超时已被系统自动收货,点击${linkMap[cell.orderMessageType]}查看订单详情`,
  45. }
  46. return map[cell.orderMessageType]
  47. },
  48. noticeUsersText(cell) { // 账户通知文案
  49. const linkMap = {
  50. 2:`<span data-type="${cell.accountType}" class="link" onclick="handleUsersClick($(this))">会员中心</span>`,
  51. 3:`<span data-type="${cell.accountType}" class="link" onclick="handleUsersClick($(this))">会员中心</span>`,
  52. 4:`<span data-type="${cell.accountType}" class="link" onclick="handleUsersClick($(this))">会员中心</span>`,
  53. 6:`<span data-type="${cell.accountType}" class="link" onclick="handleUsersClick($(this))">修改资料</span>`
  54. }
  55. const map = {
  56. 1: '欢迎成为采美机构用户,祝您开启愉快的采购之旅。',
  57. 2: `您已成功购买${cell.content}采美平台超级会员服务,在服务期内每月可领多张大额优惠券,还有更多超级会员专属权益等您体验,点击${linkMap[cell.accountType]}去体验吧。`,
  58. 3: `您的超级会员服务将于${cell.content}到期,到期后将无法享受专属会员权益,赶快去${linkMap[cell.accountType]}续费吧 。`,
  59. 4: `您已获得采美平台赠送的${cell.content}超级会员,在服务期内每月可领多张大额优惠券,还有更多超级会员专属权益等您体验,点击${linkMap[cell.accountType]}去体验吧。`,
  60. 5: '恭喜您成功升级为资质机构用户!现在可以查看更多商品的信息啦,采美平台也将为您提供更多专业服务。',
  61. 6: `您的账号升级资质机构失败!点击${linkMap[cell.accountType]}重新提交吧。`,
  62. 7: `恭喜您(微信昵称:${cell.content})成功成为机构运营人员,祝您开启愉快的采购之旅。`
  63. }
  64. return map[cell.accountType]
  65. },
  66. noticeCouponText(cell) { // 优惠促销通知文案
  67. const linkMap = {
  68. 1:`<span data-type="${cell.couponMessageType}" class="link" onclick="handleCouponClick($(this))">领券中心</span>`,
  69. 2:`<span data-type="${cell.couponMessageType}" class="link" onclick="handleCouponClick($(this))">优惠券中心</span>`,
  70. 3:`<span data-type="${cell.couponMessageType}" class="link" onclick="handleCouponClick($(this))">领券中心</span>`,
  71. }
  72. const copunMap = {
  73. 0: `采美平台送您${cell.couponFee}元优惠券,众多大牌正品等着您,赶快去${linkMap[cell.couponMessageType]}领取下单吧。`,
  74. 1: `采美平台${cell.content}类商品大优惠,特送您${cell.couponFee}元优惠券,赶快去${linkMap[cell.couponMessageType]}领取下单吧。`,
  75. 2: `为了答谢您对采美平台的支持,采美送您${cell.couponFee}元优惠券,赶快去${linkMap[cell.couponMessageType]}领取下单吧。`,
  76. 3: `【${cell.content}】赠送您${cell.couponFee}元的店铺专属优惠券,众多火爆商品等您来!赶快去${linkMap[cell.couponMessageType]}领取下单吧。`,
  77. 4: `恭喜成功注册采美平台,现赠送您${cell.couponFee}元新用户优惠券,赶快去${linkMap[cell.couponMessageType]}领取下单吧。`,
  78. }
  79. const map = {
  80. 1: copunMap[cell.couponType],
  81. 2: `您有${cell.couponFee}元优惠券将于${cell.content}过期,赶快去${linkMap[cell.couponMessageType]}查看使用吧。`,
  82. 3: `您有${cell.couponFee}元优惠券尚未领取,优惠券将于${cell.content}后下架,赶快去${linkMap[cell.couponMessageType]}领取下单吧0`,
  83. }
  84. return map[cell.couponMessageType]
  85. },
  86. noticeServeText(cell){//服务通知文案处理
  87. if (cell.shopTieredType > 4) {
  88. const map = {
  89. 5: '采美平台已为您匹配专属客户经理,为您提供专业咨询服务。',
  90. 6: '因公司内部人员调整需要,采美平台已为您更换了新客户经理。',
  91. }
  92. return map[cell.shopTieredType]
  93. }
  94. },
  95. noticeArticleText(cell) { // 最新文章
  96. const link = `<span data-id="${cell.thisId}" class="link" onclick="handleArticleClick($(this))">点击查看</span>`
  97. return `${link}${cell.content}`
  98. },
  99. noticeActivityText(cell) { // 最新活动
  100. const activityLink = isPC ? cell.pcLink : cell.appLink
  101. const link = `<span data-link="${activityLink}" class="link" onclick="handleActivityClick($(this))">点击查看</span>`
  102. return `${link}${cell.content}`
  103. },
  104. handleOrderClick($event){// 订单点击事件
  105. let orderMessageType = Number($event[0].attributes[0].value);
  106. let orderId = Number($event[0].attributes[1].value);
  107. let status = Number($event[0].attributes[2].value);
  108. let onlinePayFlag = Number($event[0].attributes[3].value);
  109. let statusVal = [ { val: [11, 12, 13, 21, 22, 23, 111], status: true }];
  110. let isOnliyPay = false;
  111. statusVal.forEach(el => {
  112. el.val.forEach(value => {
  113. if (status === value) {
  114. isOnliyPay = el.status
  115. }
  116. })
  117. })
  118. if(orderMessageType === 1){
  119. if(!isOnliyPay){
  120. CAIMEI.dialog('订单已完成支付',false);
  121. }else{
  122. let payLinkMap = {
  123. 0:'/pay/caimei-paylist.html?orderId='+orderId,
  124. 1:'/pay/caimei-payunder.html?orderId='+orderId,
  125. }
  126. let linkJumpMap = {
  127. 1:payLinkMap[onlinePayFlag]
  128. }
  129. window.open(linkJumpMap[orderMessageType]);
  130. }
  131. }else{
  132. let linkJumpMap = {
  133. 2:'/user/order/detail.html?orderId='+orderId,
  134. 3:'/user/order/detail.html?orderId='+orderId,
  135. 4:'/user/order/detail.html?orderId='+orderId,
  136. 5:'/user/order/logistics.html?orderId='+orderId,
  137. 6:'/user/order/detail.html?orderId='+orderId
  138. }
  139. window.open(linkJumpMap[orderMessageType]);
  140. }
  141. },
  142. handleUsersClick($event){
  143. console.log('账户通知跳转');
  144. const accountType = Number($event[0].attributes[0].value);
  145. if(accountType === 1 || accountType === 5 || accountType === 7){
  146. return;
  147. }
  148. const linkJumpMap = {
  149. 2:'/user/member.html',
  150. 3:'/user/member.html',
  151. 4:'/user/member.html',
  152. 6:'/user/setting/upgrade.html',
  153. }
  154. window.open(linkJumpMap[accountType]);
  155. },
  156. handleServeClick($event){
  157. console.log('服务通知跳转');
  158. },
  159. handleCouponClick($event){
  160. console.log('优惠促销通知跳转');
  161. const couponMessageType = Number($event[0].attributes[0].value);
  162. const linkJumpMap = {
  163. 1:`/user/coupon-collection.html`,
  164. 2:`/user/coupon-collection.html`,
  165. 3:`/user/coupon.html`,
  166. }
  167. window.open(linkJumpMap[couponMessageType]);
  168. },
  169. handleArticleClick($event) {
  170. const id = Number($event[0].attributes[0].value);
  171. window.open(`/info/detail-${id}-1.html`);
  172. },
  173. handleActivityClick($event) {
  174. const link = $event[0].attributes[0].value
  175. if (link) {
  176. window.open(link);
  177. }
  178. }
  179. }
  180. };
  181. }();