leisure-core 0.4.22 → 0.4.23

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/index.js CHANGED
@@ -44,6 +44,7 @@ import LeDistributionCategory from "./le-distribution-category/index.js";
44
44
  import LeSelectUser from "./le-select-user/index.js";
45
45
  import LeAdSpace from "./le-ad-space/index.js";
46
46
  import LeAd from "./le-ad/index.js";
47
+ import LeCp from "./le-cp/index.js";
47
48
 
48
49
  const components = [
49
50
  LeArea,
@@ -89,6 +90,7 @@ const components = [
89
90
  LeSelectUser,
90
91
  LeAdSpace,
91
92
  LeAd,
93
+ LeCp,
92
94
  ];
93
95
 
94
96
  const install = function (Vue) {
@@ -204,4 +206,5 @@ export default {
204
206
  LeSelectUser,
205
207
  LeAdSpace,
206
208
  LeAd,
209
+ LeCp,
207
210
  };
package/le-cp/index.js ADDED
@@ -0,0 +1,7 @@
1
+ import LeCp from "./src/main.vue";
2
+
3
+ LeCp.install = function (Vue) {
4
+ Vue.component(LeCp.name, LeCp);
5
+ };
6
+
7
+ export default LeCp;
@@ -0,0 +1,129 @@
1
+ <template>
2
+ <div>
3
+ <el-form :inline="true" :model="searchData">
4
+ <el-form-item label="手机号">
5
+ <el-input v-model="searchData.cphone" placeholder="手机号"></el-input>
6
+ </el-form-item>
7
+ <el-form-item label="酒店名称">
8
+ <el-input v-model="searchData.cname" placeholder="酒店名称"></el-input>
9
+ </el-form-item>
10
+ <el-form-item>
11
+ <el-button type="primary" @click="list()">查询</el-button>
12
+ <el-button type="primary" @click="add()">新建酒店</el-button>
13
+ </el-form-item>
14
+ </el-form>
15
+ <el-table :data="tableData" border row-key="id" stripe style="width: 100%">
16
+ <el-table-column prop="cp_name" label="单位名称" width="180">
17
+ </el-table-column>
18
+ <el-table-column prop="cp_link_nick" label="联系人" width="180">
19
+ </el-table-column>
20
+ <el-table-column prop="cp_link_phone" label="联系人手机">
21
+ </el-table-column>
22
+ <el-table-column prop="cp_wx_url" label="二维码"> </el-table-column>
23
+ <el-table-column prop="note" label="备注"> </el-table-column>
24
+ <el-table-column
25
+ fixed="right"
26
+ label="操作"
27
+ align="center"
28
+ width="160"
29
+ row
30
+ >
31
+ <template slot-scope="scope">
32
+ <le-button
33
+ id="btnEdit"
34
+ v-permission="$route.params.btns"
35
+ text="编辑"
36
+ :disp="btnEditDisp"
37
+ @click="openEditWindow(scope.row)"
38
+ ></le-button>
39
+ <le-button-msg
40
+ @click="del(scope.row)"
41
+ :disp="btnDelDisp"
42
+ ></le-button-msg>
43
+ </template>
44
+ </el-table-column>
45
+ </el-table>
46
+ <div style="text-align: center; margin-top: 30px">
47
+ <el-pagination
48
+ background
49
+ layout="prev, pager, next"
50
+ :total="searchData.total"
51
+ :page-size="10"
52
+ @current-change="current_change"
53
+ ></el-pagination>
54
+ </div>
55
+ <le-dialog-container :showDialog="showDialog" @close="closeDialog">
56
+ <le-cp-sub
57
+ @close="closeDialog"
58
+ @rowRefresh="list"
59
+ :rowitem="currentRow"
60
+ ></le-cp-sub>
61
+ </le-dialog-container>
62
+ </div>
63
+ </template>
64
+ <script>
65
+ import { list, del } from "@/api/systemcp";
66
+ import LeCpSub from "./sub.vue";
67
+ export default {
68
+ name: "le-cp",
69
+ components: {
70
+ LeCpSub,
71
+ },
72
+ props: {
73
+ btnEditDisp: {
74
+ type: Boolean,
75
+ default: true,
76
+ },
77
+ btnDelDisp: {
78
+ type: Boolean,
79
+ default: true,
80
+ },
81
+ },
82
+ data() {
83
+ return {
84
+ searchData: {
85
+ cname: "",
86
+ cphone: "",
87
+ pageNo: 1,
88
+ total: 1,
89
+ },
90
+ tableData: [],
91
+ showDialog: false,
92
+ currentRow: {},
93
+ };
94
+ },
95
+ mounted() {
96
+ this.list();
97
+ },
98
+ methods: {
99
+ add() {
100
+ this.showDialog = true;
101
+ },
102
+ list() {
103
+ let params = JSON.parse(JSON.stringify(this.searchData));
104
+ list(params).then((res) => {
105
+ this.tableData = res.data.data.list;
106
+ this.searchData.total = res.data.data.count;
107
+ });
108
+ },
109
+ del(id) {
110
+ del(id).then((response) => {
111
+ this.list();
112
+ this.$message.success(response.data.info);
113
+ });
114
+ },
115
+ current_change(currentPage) {
116
+ this.searchData.pageNo = currentPage;
117
+ this.list();
118
+ },
119
+ openEditWindow(item) {
120
+ this.currentRow = item;
121
+ this.showDialog = true;
122
+ },
123
+ closeDialog() {
124
+ this.currentRow = {};
125
+ this.showDialog = false;
126
+ },
127
+ },
128
+ };
129
+ </script>
@@ -0,0 +1,128 @@
1
+ <template>
2
+ <el-form ref="form" :model="form" :rules="rules" label-width="120px">
3
+ <el-form-item label="酒店名称" prop="cp_name">
4
+ <el-input v-model="form.cp_name"></el-input>
5
+ </el-form-item>
6
+ <el-form-item label="酒店二维码">
7
+ <el-row>
8
+ <el-col :span="20">
9
+ <el-input v-model="form.cp_qrcode" disabled></el-input>
10
+ </el-col>
11
+ <el-col :span="4">
12
+ <le-button @click="makeQrcode" text="生成二维码" />
13
+ </el-col>
14
+ </el-row>
15
+ </el-form-item>
16
+ <el-form-item label="联系人手机">
17
+ <el-input v-model="form.cp_link_phone"></el-input>
18
+ </el-form-item>
19
+ <el-form-item label="联系人昵称">
20
+ <el-row>
21
+ <el-col :span="20">
22
+ <el-input v-model="form.cp_link_nick" disabled></el-input>
23
+ </el-col>
24
+ <el-col :span="4">
25
+ <le-button @click="getUser" text="获取用户信息"></le-button>
26
+ </el-col>
27
+ </el-row>
28
+ </el-form-item>
29
+ <el-form-item label="备注" prop="note">
30
+ <el-input v-model="form.note"></el-input>
31
+ </el-form-item>
32
+ <el-form-item v-rfooter>
33
+ <el-button type="primary" @click="onSubmit">保存</el-button>
34
+ <el-button @click="close()">取消</el-button>
35
+ </el-form-item>
36
+ </el-form>
37
+ </template>
38
+ <script>
39
+ import { edit, create } from "@/api/systemcp";
40
+ import { userOne } from "@/api/user";
41
+ export default {
42
+ name: "le-cp-sub",
43
+ props: {
44
+ rowitem: {},
45
+ },
46
+ data() {
47
+ return {
48
+ form: {
49
+ id: "",
50
+ cp_name: "",
51
+ cp_qrcode: "",
52
+ cp_wx_url: "",
53
+ cp_link_uid: "",
54
+ cp_link_nick: "",
55
+ cp_link_phone: "",
56
+ note: "",
57
+ },
58
+ rules: {
59
+ cp_name: [
60
+ { required: true, message: "请输入名称", trigger: "blur" },
61
+ {
62
+ min: 1,
63
+ max: 50,
64
+ message: "长度在 1 到 50 个字符",
65
+ trigger: "blur",
66
+ },
67
+ ],
68
+ note: [
69
+ {
70
+ max: 200,
71
+ message: "长度在 0 到 200个字符",
72
+ trigger: "blur",
73
+ },
74
+ ],
75
+ },
76
+ };
77
+ },
78
+ watch: {
79
+ rowitem: {
80
+ handler(newValue) {
81
+ this.form = newValue;
82
+ },
83
+ immediate: true,
84
+ },
85
+ },
86
+ mounted() {},
87
+ methods: {
88
+ onSubmit() {
89
+ this.$refs["form"].validate((valid) => {
90
+ if (valid) {
91
+ let param = JSON.parse(JSON.stringify(this.form));
92
+ if (param.id && param.id.length > 0) {
93
+ edit(param).then((response) => {
94
+ this.$message.success(response.data.info);
95
+ this.$emit("rowRefresh");
96
+ this.close();
97
+ });
98
+ } else {
99
+ create(param).then((res) => {
100
+ this.$message.success(res.data.info);
101
+ this.$emit("rowRefresh");
102
+ this.close();
103
+ });
104
+ }
105
+ } else {
106
+ return false;
107
+ }
108
+ });
109
+ },
110
+ getUser() {
111
+ let param = {};
112
+ param.phone = this.form.cp_link_phone;
113
+ if (param.phone && param.phone.length > 0) {
114
+ userOne(param).then((response) => {
115
+ let user = response.data.data;
116
+ this.form.cp_link_uid = user.id;
117
+ this.form.cp_link_nick = user.nick;
118
+ });
119
+ } else {
120
+ this.$message.error("请输入手机号码");
121
+ }
122
+ },
123
+ close() {
124
+ this.$emit("close");
125
+ },
126
+ },
127
+ };
128
+ </script>
@@ -8,28 +8,34 @@
8
8
  stripe
9
9
  style="width: 100%"
10
10
  >
11
- <el-table-column label="类型" width="100">
12
- <template slot-scope="scope">
13
- <span v-if="scope.row.url_type == 1">商城版块</span>
14
- <span v-if="scope.row.url_type == 2">旅游版块</span>
15
- </template>
11
+ <el-table-column prop="code" label="编码" width="50"> </el-table-column>
12
+ <el-table-column prop="mp_path" label="小程序页面" width="150">
16
13
  </el-table-column>
17
- <el-table-column prop="url_path" label="首页" width="150">
14
+ <el-table-column prop="mp_param" label="参数" width="50"> </el-table-column>
15
+ <el-table-column prop="wx_url" label="微信url" width="100">
18
16
  </el-table-column>
19
- <el-table-column prop="url_param" label="参数" width="100">
17
+ <el-table-column prop="url_jump" label="推广链接" width="200">
20
18
  </el-table-column>
21
- <el-table-column prop="url_jump" label="推广链接"> </el-table-column>
22
19
  <!-- <el-table-column prop="url_wx" label="小程序url地址"> </el-table-column> -->
23
- <el-table-column prop="cdate" label="时间" width="160">
20
+ <el-table-column prop="cdate" label="时间" width="150">
24
21
  <template slot-scope="scope">
25
22
  <span v-if="scope.row.cdate">{{ parseTime(scope.row.cdate) }}</span>
26
23
  </template>
27
24
  </el-table-column>
28
25
  <el-table-column prop="note" label="备注"> </el-table-column>
26
+ <el-table-column label="操作" align="center" width="80">
27
+ <template slot-scope="scope">
28
+ <le-button
29
+ type="primary"
30
+ text="生成"
31
+ @click="geneUrl(scope.row)"
32
+ ></le-button>
33
+ </template>
34
+ </el-table-column>
29
35
  </el-table>
30
36
  </template>
31
37
  <script>
32
- import { mpUrlList } from "@/api/market";
38
+ import { mpUrlList, getMpLink } from "@/api/mpurl_templete";
33
39
  export default {
34
40
  name: "le-mpurl",
35
41
  data() {
@@ -46,6 +52,17 @@ export default {
46
52
  this.tableData = res.data.data;
47
53
  });
48
54
  },
55
+ geneUrl(row) {
56
+ let code = row.code;
57
+ let param = {};
58
+ param.code = code;
59
+ getMpLink(param).then((res) => {
60
+ let url = res.data.data;
61
+ if (url) {
62
+ this.list();
63
+ }
64
+ });
65
+ },
49
66
  },
50
67
  };
51
68
  </script>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "leisure-core",
3
- "version": "0.4.22",
3
+ "version": "0.4.23",
4
4
  "description": "leisure-core是leisure-ui-core的简称,是京心数据基于vue2.0开发的一套后台系统框架与js库,包含登录,首页框架等",
5
5
  "private": false,
6
6
  "author": "北方乐逍遥(zcx7878)",