wotokol-edm 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wotokol-edm",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "",
5
5
  "main": "wotokol-edm.common.js",
6
6
  "scripts": {
@@ -108119,8 +108119,8 @@ var detail_component = normalizeComponent(
108119
108119
  )
108120
108120
 
108121
108121
  /* harmony default export */ var detail = (detail_component.exports);
108122
- ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/package/write-email/index.vue?vue&type=template&id=4d42b15e&scoped=true
108123
- var write_emailvue_type_template_id_4d42b15e_scoped_true_render = function render() {
108122
+ ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/package/write-email/index.vue?vue&type=template&id=73fabd4a&scoped=true
108123
+ var write_emailvue_type_template_id_73fabd4a_scoped_true_render = function render() {
108124
108124
  var _vm = this,
108125
108125
  _c = _vm._self._c;
108126
108126
  return _c('div', {
@@ -108132,7 +108132,7 @@ var write_emailvue_type_template_id_4d42b15e_scoped_true_render = function rende
108132
108132
  staticClass: "write-container"
108133
108133
  }, [_c('div', {
108134
108134
  staticClass: "write-wrap"
108135
- }, [_c('div', {
108135
+ }, [_vm.pageFrom !== 'AIinvitePlan' ? _c('div', {
108136
108136
  staticClass: "form-item mb12"
108137
108137
  }, [_c('span', {
108138
108138
  on: {
@@ -108167,7 +108167,7 @@ var write_emailvue_type_template_id_4d42b15e_scoped_true_render = function rende
108167
108167
  on: {
108168
108168
  "click": _vm.toEditBlogger
108169
108169
  }
108170
- }, [_vm._v(_vm._s(_vm.$t("edm5.v58")))]) : _vm._e()], 1), !_vm.isReply && !_vm.isMultiReply ? _c('div', {
108170
+ }, [_vm._v(_vm._s(_vm.$t("edm5.v58")))]) : _vm._e()], 1) : _vm._e(), !_vm.isReply && !_vm.isMultiReply ? _c('div', {
108171
108171
  staticClass: "form-item"
108172
108172
  }, [_c('span', {
108173
108173
  staticClass: "email-label"
@@ -108471,7 +108471,19 @@ var write_emailvue_type_template_id_4d42b15e_scoped_true_render = function rende
108471
108471
  slot: "content"
108472
108472
  }, [_vm._v(" " + _vm._s(_vm.nickName) + " ")]), _c('span', {
108473
108473
  staticClass: "current-nickName"
108474
- }, [_vm._v(_vm._s(_vm.nickName))])])], 1) : _vm._e()]) : _vm._e()]), _c('div', {
108474
+ }, [_vm._v(_vm._s(_vm.nickName))])])], 1) : _vm._e()]) : _vm._e()]), _vm.pageFrom == 'AIinvitePlan' ? _c('div', {
108475
+ staticClass: "operate-right"
108476
+ }, [_c('el-button', {
108477
+ staticClass: "double-btn save_btn",
108478
+ attrs: {
108479
+ "disabled": _vm.loading
108480
+ },
108481
+ on: {
108482
+ "click": _vm.saveInviteEmail
108483
+ }
108484
+ }, [_vm.loading ? _c('i', {
108485
+ staticClass: "el-icon-loading"
108486
+ }) : _vm._e(), _vm._v(" 保存 ")])], 1) : _c('div', {
108475
108487
  staticClass: "operate-right"
108476
108488
  }, [_vm.isTiming == 0 && !_vm.isMultiReply ? _c('el-button', {
108477
108489
  staticClass: "operate-btn",
@@ -108722,7 +108734,7 @@ var write_emailvue_type_template_id_4d42b15e_scoped_true_render = function rende
108722
108734
  _vm.isShowDelayed = false;
108723
108735
  }
108724
108736
  }
108725
- }) : _vm._e(), _vm.isShowNotice ? _c('send-notice', {
108737
+ }) : _vm._e(), _vm.isShowNotice && _vm.pageFrom !== 'AIinvitePlan' ? _c('send-notice', {
108726
108738
  attrs: {
108727
108739
  "isShow": _vm.isShowNotice
108728
108740
  },
@@ -108840,7 +108852,7 @@ var write_emailvue_type_template_id_4d42b15e_scoped_true_render = function rende
108840
108852
  }
108841
108853
  }) : _vm._e()], 1);
108842
108854
  };
108843
- var write_emailvue_type_template_id_4d42b15e_scoped_true_staticRenderFns = [function () {
108855
+ var write_emailvue_type_template_id_73fabd4a_scoped_true_staticRenderFns = [function () {
108844
108856
  var _vm = this,
108845
108857
  _c = _vm._self._c;
108846
108858
  return _c('div', {
@@ -108861,7 +108873,7 @@ var write_emailvue_type_template_id_4d42b15e_scoped_true_staticRenderFns = [func
108861
108873
  }, [_c('span', [_vm._v("$4.98")]), _vm._v(" /per ordered item ")]);
108862
108874
  }];
108863
108875
 
108864
- ;// CONCATENATED MODULE: ./src/package/write-email/index.vue?vue&type=template&id=4d42b15e&scoped=true
108876
+ ;// CONCATENATED MODULE: ./src/package/write-email/index.vue?vue&type=template&id=73fabd4a&scoped=true
108865
108877
 
108866
108878
  // EXTERNAL MODULE: ./node_modules/core-js/modules/esnext.set.difference.v2.js
108867
108879
  var esnext_set_difference_v2 = __webpack_require__(3375);
@@ -120553,6 +120565,18 @@ var settingNickname_component = normalizeComponent(
120553
120565
  )
120554
120566
 
120555
120567
  /* harmony default export */ var components_settingNickname = (settingNickname_component.exports);
120568
+ ;// CONCATENATED MODULE: ./src/api/inviteTask/index.js
120569
+
120570
+
120571
+ // 保存AI自动邀约邮件
120572
+ function inviteEmailSave(data) {
120573
+ return request_post(`/edm/ai/inviteEmail/save`, data);
120574
+ }
120575
+
120576
+ // 获取邀请AI邮件
120577
+ function inviteEmailGet(taskId) {
120578
+ return request_get(`/edm/ai/inviteEmail/${taskId}`);
120579
+ }
120556
120580
  ;// CONCATENATED MODULE: ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/package/write-email/index.vue?vue&type=script&lang=js
120557
120581
 
120558
120582
 
@@ -120586,6 +120610,7 @@ var settingNickname_component = normalizeComponent(
120586
120610
 
120587
120611
 
120588
120612
 
120613
+
120589
120614
 
120590
120615
 
120591
120616
  /* harmony default export */ var write_emailvue_type_script_lang_js = ({
@@ -120834,11 +120859,12 @@ var settingNickname_component = normalizeComponent(
120834
120859
  // 删除的 emailId 列表
120835
120860
  settingNicknameVisible: false,
120836
120861
  // 发件人昵称弹窗
120837
- nickName: "" // 发件人昵称
120862
+ nickName: "",
120863
+ // 发件人昵称
120864
+ pageFrom: this.$route.query.pageFrom || ''
120838
120865
  };
120839
120866
  },
120840
120867
  created() {
120841
- console.log(this.$route);
120842
120868
  window.onbeforeunload = function (e) {
120843
120869
  e = e || window.event;
120844
120870
  return this.$t("edm5.v76");
@@ -120863,15 +120889,20 @@ var settingNickname_component = normalizeComponent(
120863
120889
  bloggerName: item.bloggerName
120864
120890
  });
120865
120891
  });
120892
+ } else if (this.$route.query.inviteAITaskId) {
120893
+ // 获取自动邀约邮件详情
120894
+ this.getInviteAITaskDetail();
120866
120895
  } else {
120867
120896
  // 获取发信红人-普通情况
120868
120897
  this.getMailBlogger();
120869
120898
  }
120870
- //设置定时器,注意:只有在 created 生命周期中设置的定时器 才能在beforeDestroy 中销毁
120871
- if (!this.isMultiReply) {
120872
- this.timer = window.setInterval(() => {
120873
- this.saveDraft(false);
120874
- }, 1000 * 60);
120899
+ if (this.pageFrom !== 'AIinvitePlan') {
120900
+ //设置定时器,注意:只有在 created 生命周期中设置的定时器 才能在beforeDestroy 中销毁
120901
+ if (!this.isMultiReply) {
120902
+ this.timer = window.setInterval(() => {
120903
+ this.saveDraft(false);
120904
+ }, 1000 * 60);
120905
+ }
120875
120906
  }
120876
120907
  // 发件需知
120877
120908
  this.showNoticeEvt();
@@ -120880,7 +120911,11 @@ var settingNickname_component = normalizeComponent(
120880
120911
  // 获取 ai 点数
120881
120912
  this.getAiPoint();
120882
120913
  // 获取发件人昵称
120883
- this.getNickname();
120914
+ if (this.$route.query.sendNickname) {
120915
+ this.nickName = this.$route.query.sendNickname;
120916
+ } else {
120917
+ this.getNickname();
120918
+ }
120884
120919
  },
120885
120920
  mounted() {
120886
120921
  this.domTimer = setTimeout(() => {
@@ -120890,7 +120925,9 @@ var settingNickname_component = normalizeComponent(
120890
120925
  }, 150);
120891
120926
  },
120892
120927
  beforeDestroy() {
120893
- this.remindSave();
120928
+ if (this.pageFrom !== 'AIinvitePlan') {
120929
+ this.remindSave();
120930
+ }
120894
120931
  //在 beforeDestroy生命周期函数中销毁定时器
120895
120932
  clearInterval(this.timer);
120896
120933
  this.timer = null;
@@ -120901,6 +120938,93 @@ var settingNickname_component = normalizeComponent(
120901
120938
  window.onbeforeunload = null;
120902
120939
  },
120903
120940
  methods: {
120941
+ // 获取自动邀约邮件详情
120942
+ getInviteAITaskDetail() {
120943
+ inviteEmailGet(this.$route.query.inviteAITaskId).then(res => {
120944
+ if (res.code == "0") {
120945
+ this.mailList = res.data.emails.map((item, idx) => {
120946
+ return {
120947
+ ...item,
120948
+ id: item.frontId,
120949
+ fileList: item.attachmentRes || [],
120950
+ // 附件
120951
+ active: idx === 0,
120952
+ // 是否当前选中
120953
+ isAiContent: false,
120954
+ getContent: () => {},
120955
+ getTextContent: () => {},
120956
+ setContent: () => {},
120957
+ insertEditContent: () => {},
120958
+ addEditContent: () => {},
120959
+ dangerouslyInsertHtml: () => {},
120960
+ isEmpty: () => {},
120961
+ getReplyHtml: () => {},
120962
+ setEditorBar: () => {}
120963
+ };
120964
+ });
120965
+ if (!res.data.emails || res.data.emails.length === 0) return false;
120966
+ // 商品卡相关逻辑
120967
+ if (res.data.emails[0] && res.data.emails[0].content) {
120968
+ let productCardStart = res.data.emails[0].content.indexOf("<product-card");
120969
+ let productCardEnd = res.data.emails[0].content.indexOf("</product-card>");
120970
+ let productCardHtml = res.data.emails[0].content.slice(productCardStart, productCardEnd + 15);
120971
+ const cardIdsMatch = productCardHtml.match(/cardids="([^"]+)"/);
120972
+ if (cardIdsMatch && cardIdsMatch[1]) {
120973
+ const cardIds = cardIdsMatch[1]; // 获取匹配到的cardids值
120974
+ this.addProductCard(cardIds.split(","));
120975
+ }
120976
+ }
120977
+ }
120978
+ });
120979
+ },
120980
+ // 保存AI自动邀约邮件
120981
+ saveInviteEmail() {
120982
+ this.isShowSave = false;
120983
+ // 处理商品卡
120984
+ let cardHtml = this.cardsArr.map(item => this.finallyCardHtml(item)).join("");
120985
+ let cardIds = arrayColumn(this.cardsArr, "id");
120986
+ let sendProductCard = `<product-card cardIds=${cardIds}><div style="display:flex;overflow-x:auto">${cardHtml}</div></product-card>`;
120987
+ console.log(sendProductCard, 'sendProductCard');
120988
+
120989
+ // 处理邮件
120990
+ const emails = this.mailList.map(item => {
120991
+ console.log(item.getContent(), 'item.getContent');
120992
+ console.log(item.getReplyHtml(), 'item.getReplyHtml');
120993
+ return {
120994
+ id: item.id,
120995
+ subject: item.subject,
120996
+ content: item.getContent() + "&nbsp;&nbsp;&nbsp;" + sendProductCard,
120997
+ attachments: item.fileList
120998
+ };
120999
+ });
121000
+ const inviteParams = {
121001
+ taskId: this.$route.query.inviteAITaskId || '',
121002
+ emails: this.filterEmailId(emails)
121003
+ };
121004
+ const isAllSubjectEmpty = this.mailList.every(item => !item.subject);
121005
+ const isAllContentEmpty = this.mailList.every(item => item.isEmpty());
121006
+ if (isAllSubjectEmpty || isAllContentEmpty) {
121007
+ return this.$message.error('邮件主题和正文不能为空!');
121008
+ }
121009
+ inviteEmailSave(inviteParams).then(res => {
121010
+ if (res.code == '0') {
121011
+ const id = res.data;
121012
+ localStorage.setItem('inviteTaskId', id);
121013
+ this.$router.push({
121014
+ path: this.$route.path,
121015
+ query: {
121016
+ ...this.$route.query,
121017
+ inviteAITaskId: id
121018
+ }
121019
+ }).catch(err => {
121020
+ if (err.name !== 'NavigationDuplicated') {
121021
+ throw err;
121022
+ }
121023
+ });
121024
+ this.$message.success('邮件添加成功,请回到原窗口继续创建任务!');
121025
+ }
121026
+ });
121027
+ },
120904
121028
  // 获取发信任务红人
120905
121029
  getMailBlogger() {
120906
121030
  if (this.bloggerArr && this.bloggerArr.length) {
@@ -122074,15 +122198,15 @@ var settingNickname_component = normalizeComponent(
122074
122198
  });
122075
122199
  ;// CONCATENATED MODULE: ./src/package/write-email/index.vue?vue&type=script&lang=js
122076
122200
  /* harmony default export */ var package_write_emailvue_type_script_lang_js = (write_emailvue_type_script_lang_js);
122077
- ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/package/write-email/index.vue?vue&type=style&index=0&id=4d42b15e&prod&lang=scss&scoped=true
122201
+ ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/package/write-email/index.vue?vue&type=style&index=0&id=73fabd4a&prod&lang=scss&scoped=true
122078
122202
  // extracted by mini-css-extract-plugin
122079
122203
 
122080
- ;// CONCATENATED MODULE: ./src/package/write-email/index.vue?vue&type=style&index=0&id=4d42b15e&prod&lang=scss&scoped=true
122204
+ ;// CONCATENATED MODULE: ./src/package/write-email/index.vue?vue&type=style&index=0&id=73fabd4a&prod&lang=scss&scoped=true
122081
122205
 
122082
- ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/package/write-email/index.vue?vue&type=style&index=1&id=4d42b15e&prod&lang=scss
122206
+ ;// CONCATENATED MODULE: ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/package/write-email/index.vue?vue&type=style&index=1&id=73fabd4a&prod&lang=scss
122083
122207
  // extracted by mini-css-extract-plugin
122084
122208
 
122085
- ;// CONCATENATED MODULE: ./src/package/write-email/index.vue?vue&type=style&index=1&id=4d42b15e&prod&lang=scss
122209
+ ;// CONCATENATED MODULE: ./src/package/write-email/index.vue?vue&type=style&index=1&id=73fabd4a&prod&lang=scss
122086
122210
 
122087
122211
  ;// CONCATENATED MODULE: ./src/package/write-email/index.vue
122088
122212
 
@@ -122096,11 +122220,11 @@ var settingNickname_component = normalizeComponent(
122096
122220
 
122097
122221
  var write_email_component = normalizeComponent(
122098
122222
  package_write_emailvue_type_script_lang_js,
122099
- write_emailvue_type_template_id_4d42b15e_scoped_true_render,
122100
- write_emailvue_type_template_id_4d42b15e_scoped_true_staticRenderFns,
122223
+ write_emailvue_type_template_id_73fabd4a_scoped_true_render,
122224
+ write_emailvue_type_template_id_73fabd4a_scoped_true_staticRenderFns,
122101
122225
  false,
122102
122226
  null,
122103
- "4d42b15e",
122227
+ "73fabd4a",
122104
122228
  null
122105
122229
 
122106
122230
  )
Binary file