@jx3box/jx3box-common-ui 8.3.3 → 8.3.4

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": "@jx3box/jx3box-common-ui",
3
- "version": "8.3.3",
3
+ "version": "8.3.4",
4
4
  "description": "JX3BOX UI",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/service/design.js CHANGED
@@ -7,3 +7,7 @@ export const createDesignTask = (data) => {
7
7
  export const getDesignTask = (params) => {
8
8
  return $cms().get(`/api/cms/design/task/log`, { params });
9
9
  }
10
+
11
+ export const getConfigBannerTypes = (params) => {
12
+ return $cms().get(`/api/cms/config/banner/types`, { params });
13
+ }
@@ -48,7 +48,7 @@
48
48
  <!-- <Adminbutton v-if="adminEnable" class="u-admin" /> -->
49
49
  <!-- <ListAdmin v-if="topicEnable" /> -->
50
50
  <Admin v-if="adminEnable" :marksOptions="adminMarks" :show-extend="showExtend" :app="slug" :subtypeMap="subtypeMap" />
51
- <AdminDrop v-if="adminEnable" />
51
+ <!-- <AdminDrop v-if="adminEnable" /> -->
52
52
  <slot name="op-prepend"></slot>
53
53
  </div>
54
54
  </div>
@@ -149,7 +149,7 @@ export default {
149
149
  Crumb,
150
150
  // Adminbutton,
151
151
  // ListAdmin,
152
- AdminDrop,
152
+ // AdminDrop,
153
153
  },
154
154
  };
155
155
  </script>
@@ -25,6 +25,7 @@
25
25
  import Bus from "../../service/bus";
26
26
  import User from "@jx3box/jx3box-common/js/user";
27
27
  import DesignTask from "./DesignTask.vue";
28
+ import { sendMessage } from "../../service/admin";
28
29
  export default {
29
30
  name: "AdminDrop",
30
31
  components: {
@@ -80,7 +81,7 @@ export default {
80
81
  beforeClose: (action, instance, done) => {
81
82
  if (action === "confirm") {
82
83
  const data = {
83
- source_id: this.sourceId,
84
+ source_id: String(this.sourceId),
84
85
  source_type: this.sourceType,
85
86
  user_id: this.userId,
86
87
  content: "运营通知:" + instance.inputValue,
@@ -4,6 +4,11 @@
4
4
  <el-form-item label="标题" required>
5
5
  <el-input v-model="form.title" placeholder="请输入标题"></el-input>
6
6
  </el-form-item>
7
+ <el-form-item label="类型">
8
+ <el-select v-model="form.type" placeholder="请选择类型" style="width:100%;">
9
+ <el-option v-for="item in config" :key="item.id" :label="item.label" :value="item.name"></el-option>
10
+ </el-select>
11
+ </el-form-item>
7
12
  <el-form-item label="备注">
8
13
  <el-input v-model="form.remark" placeholder="请输入备注"></el-input>
9
14
  </el-form-item>
@@ -11,6 +16,27 @@
11
16
  <el-rate v-model="form.star" :colors="colors"></el-rate>
12
17
  </el-form-item>
13
18
  </el-form>
19
+
20
+ <el-divider content-position="left">
21
+ 近期推送
22
+ </el-divider>
23
+ <template v-if="logs && logs.length">
24
+ <el-table :data="logs" border size="small">
25
+ <el-table-column label="推送时间" prop="push_at" align="center">
26
+ <template #default="{row}">
27
+ {{ formatTime(row.push_at) }}
28
+ </template>
29
+ </el-table-column>
30
+ <el-table-column label="推送人" prop="pusher.display_name" align="center"></el-table-column>
31
+ <el-table-column label="星级" prop="star" align="center">
32
+ <template #default="{row}">
33
+ <el-rate v-model="row.star" disabled :colors="colors"></el-rate>
34
+ </template>
35
+ </el-table-column>
36
+ <el-table-column label="备注" prop="remark" align="center"></el-table-column>
37
+ </el-table>
38
+ </template>
39
+ <el-alert v-else title="当前文章暂无历史推送" type="info" show-icon :closable="false"></el-alert>
14
40
  <template #footer>
15
41
  <el-button @click="close">取 消</el-button>
16
42
  <el-button type="primary" @click="onConfirm">确 定</el-button>
@@ -19,8 +45,9 @@
19
45
  </template>
20
46
 
21
47
  <script>
22
- import { createDesignTask, getDesignTask } from "../../service/design";
48
+ import { createDesignTask, getDesignTask, getConfigBannerTypes } from "../../service/design";
23
49
  import {pick} from "lodash";
50
+ import dayjs from "dayjs";
24
51
  export default {
25
52
  name: "DesignTask",
26
53
  props: {
@@ -44,6 +71,7 @@ export default {
44
71
  title: "",
45
72
  remark: "",
46
73
  star: 0,
74
+ subtype: "",
47
75
  },
48
76
  colors: ['#99A9BF', '#F7BA2A', '#FF9900'],
49
77
 
@@ -53,15 +81,22 @@ export default {
53
81
  { required: true, message: "请输入标题", trigger: "blur" },
54
82
  ],
55
83
  },
84
+ config: []
56
85
  }
57
86
  },
58
87
  watch: {
59
88
  modelValue(val) {
60
89
  if (val) {
90
+ if (this.post) {
91
+ this.form.title = this.post.post_title;
92
+ }
61
93
  this.loadLogs();
62
94
  }
63
95
  }
64
96
  },
97
+ mounted() {
98
+ this.loadConfig();
99
+ },
65
100
  methods: {
66
101
  close(){
67
102
  this.$emit("update:modelValue",false)
@@ -81,8 +116,10 @@ export default {
81
116
  data.title = this.form.title;
82
117
  data.remark = this.form.remark;
83
118
  data.star = this.form.star;
119
+ data.subtype = this.form.type;
120
+
84
121
  data.source_type = this.post?.post_type;
85
- data.source_id = this.post?.ID;
122
+ data.source_id = String(this.post?.ID);
86
123
  data.link = `/${this.post?.post_type}/${this.post?.ID}`;
87
124
  data.flow = 0;
88
125
 
@@ -96,9 +133,18 @@ export default {
96
133
  this.clearForm();
97
134
  },
98
135
  loadLogs() {
99
- getDesignTask().then(res => {
136
+ if (!this.post?.ID) return;
137
+ getDesignTask({ source_id: this.post?.ID }).then(res => {
100
138
  this.logs = res.data.data || [];
101
139
  })
140
+ },
141
+ loadConfig() {
142
+ getConfigBannerTypes({ _no_page: 1 }).then(res => {
143
+ this.config = res.data.data || [];
144
+ })
145
+ },
146
+ formatTime(time) {
147
+ return dayjs(time).format("YYYY-MM-DD HH:mm:ss");
102
148
  }
103
149
  }
104
150
  }
@@ -111,5 +157,8 @@ export default {
111
157
  top: 10px;
112
158
  }
113
159
  }
160
+ .u-time {
161
+ color: #c0c4cc;
162
+ }
114
163
  }
115
164
  </style>