jufubao-base 1.0.116-beta1 → 1.0.116-beta3

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.
Files changed (44) hide show
  1. package/package.json +1 -1
  2. package/src/components/JfbBaseConDialog/XdCouCardBind.vue +3 -1
  3. package/src/components/JfbBaseSaasBlessDetail/Api.js +60 -0
  4. package/src/components/JfbBaseSaasBlessDetail/Attr.js +106 -0
  5. package/src/components/JfbBaseSaasBlessDetail/JfbBaseSaasBlessDetail.vue +227 -0
  6. package/src/components/JfbBaseSaasBlessDetail/JfbBaseSaasBlessDetailLess.less +80 -0
  7. package/src/components/JfbBaseSaasBlessDetail/JfbBaseSaasBlessDetailMixin.js +30 -0
  8. package/src/components/JfbBaseSaasBlessDetail/Mock.js +5 -0
  9. package/src/components/JfbBaseSaasBlessDialog/Api.js +60 -0
  10. package/src/components/JfbBaseSaasBlessDialog/Attr.js +50 -0
  11. package/src/components/JfbBaseSaasBlessDialog/JfbBaseSaasBlessDialog.vue +265 -0
  12. package/src/components/JfbBaseSaasBlessDialog/JfbBaseSaasBlessDialogLess.less +80 -0
  13. package/src/components/JfbBaseSaasBlessDialog/JfbBaseSaasBlessDialogMixin.js +30 -0
  14. package/src/components/JfbBaseSaasBlessDialog/Mock.js +5 -0
  15. package/src/components/JfbBaseSaasBlessReceive/Api.js +60 -0
  16. package/src/components/JfbBaseSaasBlessReceive/Attr.js +106 -0
  17. package/src/components/JfbBaseSaasBlessReceive/JfbBaseSaasBlessReceive.vue +172 -0
  18. package/src/components/JfbBaseSaasBlessReceive/JfbBaseSaasBlessReceiveLess.less +80 -0
  19. package/src/components/JfbBaseSaasBlessReceive/JfbBaseSaasBlessReceiveMixin.js +30 -0
  20. package/src/components/JfbBaseSaasBlessReceive/Mock.js +5 -0
  21. package/src/components/JfbBaseSaasHome/Api.js +60 -0
  22. package/src/components/JfbBaseSaasHome/Attr.js +106 -0
  23. package/src/components/JfbBaseSaasHome/JfbBaseSaasHome.vue +285 -0
  24. package/src/components/JfbBaseSaasHome/JfbBaseSaasHomeLess.less +80 -0
  25. package/src/components/JfbBaseSaasHome/JfbBaseSaasHomeMixin.js +30 -0
  26. package/src/components/JfbBaseSaasHome/Mock.js +5 -0
  27. package/src/components/JfbBaseSaasLogin/Api.js +26 -0
  28. package/src/components/JfbBaseSaasLogin/Attr.js +37 -0
  29. package/src/components/JfbBaseSaasLogin/JfbBaseSaasLogin.vue +353 -0
  30. package/src/components/JfbBaseSaasLogin/JfbBaseSaasLoginLess.less +80 -0
  31. package/src/components/JfbBaseSaasLogin/JfbBaseSaasLoginMixin.js +30 -0
  32. package/src/components/JfbBaseSaasLogin/Mock.js +5 -0
  33. package/src/components/JfbBaseSaasNewsDetail/Api.js +60 -0
  34. package/src/components/JfbBaseSaasNewsDetail/Attr.js +106 -0
  35. package/src/components/JfbBaseSaasNewsDetail/JfbBaseSaasNewsDetail.vue +140 -0
  36. package/src/components/JfbBaseSaasNewsDetail/JfbBaseSaasNewsDetailLess.less +80 -0
  37. package/src/components/JfbBaseSaasNewsDetail/JfbBaseSaasNewsDetailMixin.js +30 -0
  38. package/src/components/JfbBaseSaasNewsDetail/Mock.js +5 -0
  39. package/src/components/JfbBaseSaasNewsList/Api.js +60 -0
  40. package/src/components/JfbBaseSaasNewsList/Attr.js +106 -0
  41. package/src/components/JfbBaseSaasNewsList/JfbBaseSaasNewsList.vue +155 -0
  42. package/src/components/JfbBaseSaasNewsList/JfbBaseSaasNewsListLess.less +80 -0
  43. package/src/components/JfbBaseSaasNewsList/JfbBaseSaasNewsListMixin.js +30 -0
  44. package/src/components/JfbBaseSaasNewsList/Mock.js +5 -0
@@ -0,0 +1,285 @@
1
+ <template>
2
+ <view
3
+ class="jfb-base-saas-home"
4
+ @click="handleEditxSelect"
5
+ :class="{ editx : isEditx && active }"
6
+ >
7
+ <!--#ifdef H5-->
8
+ <view
9
+ class="jfb-base-saas-home__edit"
10
+ :class="{ editx : isEditx && active }"
11
+ v-if="isEditx && active"
12
+ >
13
+ <view class="jfb-base-saas-home__edit-icon" @click="delEdit">删除</view>
14
+ </view>
15
+ <!-- #endif -->
16
+ <view class="jfb-base-saas-home__body">
17
+ <view class="top_wrap">
18
+ <!-- <view class="comp_name">
19
+ <view>企业名称</view>
20
+ <xd-font-icon icon="iconxia_down" :size="24" style="margin-left: 16rpx;"></xd-font-icon>
21
+ </view> -->
22
+
23
+ </view>
24
+ <view class="banner">
25
+ <swiper class="swiper" circular>
26
+ <swiper-item v-for="i in 3" :key="i">
27
+ <view class="swiper-item">{{ i }}</view>
28
+ </swiper-item>
29
+ </swiper>
30
+ </view>
31
+ <view class="category">
32
+ <view class="cate_item">
33
+ <view class="cate_img"></view>
34
+ <view class="cate_name">员工调研</view>
35
+ </view>
36
+ <view class="cate_item">
37
+ <view class="cate_img"></view>
38
+ <view class="cate_name">福利商城</view>
39
+ </view>
40
+ <view class="cate_item">
41
+ <view class="cate_img"></view>
42
+ <view class="cate_name">学习资料</view>
43
+ </view>
44
+ <view class="cate_item">
45
+ <view class="cate_img"></view>
46
+ <view class="cate_name">更多期待</view>
47
+ </view>
48
+ </view>
49
+
50
+ <view class="notice">
51
+ 公告:薄如蝉翼的金华火腿,每一口都是时间的味道
52
+ </view>
53
+
54
+ <view class="news_wrap">
55
+ <view class="news_group">
56
+ <view class="group_header">
57
+ <view class="group_title">企业新闻</view>
58
+ <view class="group_more">
59
+ 查看更多
60
+ <xd-font-icon icon="iconxiangyou_xian" :size="24" style="margin-left: 16rpx;"></xd-font-icon>
61
+ </view>
62
+ </view>
63
+ <view class="group_body">
64
+ <view class="news_item" v-for="i in 3" :key="i">
65
+ <view class="news_cont">
66
+ <view class="news_tit">企业公告的信息,如果没有则不展示该模块直接展示企业新闻</view>
67
+ <view class="news_date">2022.10.08 12:00</view>
68
+ </view>
69
+ <view class="news_img">
70
+
71
+ </view>
72
+ </view>
73
+ </view>
74
+ </view>
75
+ </view>
76
+
77
+ </view>
78
+ </view>
79
+ </template>
80
+
81
+ <script>
82
+ import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
83
+ import { jfbRootExec } from "@/utils/xd.event";
84
+ import JfbBaseSaasHomeMixin from "./JfbBaseSaasHomeMixin";
85
+ import { getContainerPropsValue } from "@/utils/xd.base";
86
+ import componentsMixins from "@/mixins/componentsMixins";
87
+ import extsMixins from "@/mixins/extsMixins";
88
+ export default {
89
+ name: "JfbBaseSaasHome",
90
+ components: {
91
+ XdFontIcon
92
+ },
93
+ mixins: [
94
+ componentsMixins, extsMixins, JfbBaseSaasHomeMixin
95
+ ],
96
+ data() {
97
+ return {
98
+
99
+ //todo
100
+ }
101
+ },
102
+ watch: {
103
+ container(value) {
104
+ this.init(value)
105
+ }
106
+ },
107
+ created() {
108
+ this.init(this.container);
109
+
110
+ //todo
111
+ },
112
+ methods: {
113
+ onJfbLoad(options) {
114
+
115
+ // jfbRootExec('baiduUserLogin', {
116
+
117
+ // vm: this,// data: {
118
+
119
+ // account: 'gaoshiyong',// password: '123456789',// type: 3,// ...options
120
+
121
+ // }
122
+
123
+ // }).then().catch()
124
+ },
125
+ /**
126
+ * @description 监听事件变化
127
+ * @param container {object} 业务组件对象自己
128
+ */
129
+ init(container) {
130
+
131
+ //this.bgcolor = getContainerPropsValue(container, 'content.bgcolor', '#fff');
132
+
133
+ //this.height = getContainerPropsValue(container, 'content.height', 10);
134
+ },
135
+ onJfbScroll(options) {
136
+ console.log('event.onJfbScroll', options)
137
+ },
138
+ onJfbReachBottom(options) {
139
+ console.log('event.onJfbReachBottom', options)
140
+ },
141
+ onJfbShow(options) {
142
+ console.log('event.onJfbShow', options)
143
+ },
144
+ onJfbHide(options) {
145
+ console.log('event.onJfbHide', options)
146
+ },
147
+ onJfbBack(options) {
148
+ console.log('event.onJfbBack', options)
149
+ },
150
+ onJfbUpdate(...data) {
151
+ console.log('event.onJfbUpdate', data)
152
+ },
153
+ onJfbCustomEvent(options) {
154
+ console.log('event.onJfbReachBottom', options)
155
+ },
156
+ }
157
+ }
158
+
159
+ </script>
160
+
161
+ <style scoped lang="less">
162
+ @import "./JfbBaseSaasHomeLess.less";
163
+
164
+ .jfb-base-saas-home {
165
+ &__body{
166
+ .top_wrap{
167
+ .comp_name{
168
+ padding: 24rpx 36rpx;
169
+ font-size: 24rpx;
170
+ font-weight: 400;
171
+ color: #000000;
172
+ border-bottom: 1px solid #F0F0F0;
173
+ display: flex;
174
+ align-items: center;
175
+ }
176
+ }
177
+ .banner{
178
+ // padding: 20rpx;
179
+ .swiper{
180
+ height: 300rpx;
181
+ .swiper-item{
182
+ height: 300rpx;
183
+ background-color: red;
184
+ }
185
+ }
186
+
187
+ }
188
+ .category{
189
+ display: flex;
190
+ justify-content: space-between;
191
+ padding: 40rpx;
192
+ background: #FFFFFF;
193
+ .cate_item{
194
+ .cate_img{
195
+ width: 100rpx;
196
+ height: 100rpx;
197
+ background-color: #DDD;
198
+ }
199
+ .cate_name{
200
+ font-size: 24rpx;
201
+ color: #333333;
202
+ font-weight: 400;
203
+ margin-top: 16rpx;
204
+ }
205
+ }
206
+ }
207
+ .notice{
208
+ background: #FFF2DE;
209
+ border-radius: 8rpx;
210
+ padding: 24rpx 40rpx;
211
+ color: #FF8D1A;
212
+ font-size: 24rpx;
213
+ margin: 20rpx;
214
+ }
215
+
216
+ .news_wrap{
217
+ padding: 0 20rpx;
218
+ margin: 20rpx 0;
219
+ }
220
+ .news_group{
221
+ background-color: #FFFFFF;
222
+ border-radius: 16rpx;
223
+ margin-bottom: 20rpx;
224
+ .group_header{
225
+ display: flex;
226
+ justify-content: space-between;
227
+ padding: 32rpx;
228
+ border-bottom: 1px solid #F0F0F0;
229
+ .group_title{
230
+ color: #333333;
231
+ font-size: 32rpx;
232
+ font-weight: 500;
233
+ padding-left: 24rpx;
234
+ position: relative;
235
+ &::before{
236
+ content: " ";
237
+ position: absolute;
238
+ width: 6rpx;
239
+ height: 28rpx;
240
+ background-color: #F3616E;
241
+ left: 0;
242
+ top: 50%;
243
+ transform: translateY(-50%);
244
+ border-radius: 6rpx;
245
+ }
246
+ }
247
+ .group_more{
248
+ display: flex;
249
+ font-size: 24rpx;
250
+ color: #999999;
251
+ align-items: center;
252
+ }
253
+ }
254
+ .group_body{
255
+ .news_item{
256
+ display: flex;
257
+ padding: 32rpx;
258
+ border-bottom: 1px solid #F0F0F0;
259
+ .news_cont{
260
+ flex: 1;
261
+ width: 400rpx;
262
+ font-weight: 400;
263
+ .news_tit{
264
+ font-size: 28rpx;
265
+ color: #333333;
266
+ }
267
+ .news_date{
268
+ color: #999999;
269
+ font-size: 20rpx;
270
+ margin-top: 20rpx;
271
+ }
272
+ }
273
+
274
+ .news_img{
275
+ width: 190rpx;
276
+ height: 120rpx;
277
+ background-color: #333333;
278
+ margin-left: 60rpx;
279
+ }
280
+ }
281
+ }
282
+ }
283
+ }
284
+ }
285
+ </style>
@@ -0,0 +1,80 @@
1
+ /**
2
+ * @desc 获取绝对路径完整地址
3
+ * @param @path
4
+ **/
5
+ //例如:https://image.jufubao.cn/20220501010108/image/bg/default_gonghui_bg.png
6
+ @basePath: 'business/';
7
+ @doMain: '//sandbox-img.jufubao.cn/';
8
+
9
+ .getBusinessImageUrl(@path, @size: 'size8') {
10
+ @url: "@{doMain}@{basePath}@{path}?x-oss-process=style/@{size}";
11
+ background-image: url(@url);
12
+ }
13
+
14
+ //start
15
+ .jfb-base-saas-home {
16
+ border: 1px dashed rgba(0, 0, 0, 0);
17
+ box-sizing: border-box;
18
+ min-height: unit(50, rpx);
19
+
20
+ &__body{
21
+ position: relative;
22
+ overflow: hidden;
23
+ z-index: 2
24
+ }
25
+
26
+ &.editx {
27
+ position: relative;
28
+ border: 1px dashed blue;
29
+ box-sizing: border-box;
30
+ z-index: 3
31
+
32
+ }
33
+
34
+ &:hover {
35
+ border: 1px dashed blue;
36
+ }
37
+
38
+ &.noBorder {
39
+ border-color: rgba(0,0,0,0);
40
+ border-width: 0;
41
+ }
42
+
43
+
44
+ &__edit {
45
+ cursor: pointer;
46
+ position: absolute;
47
+ right: unit(0, rpx);
48
+ top: unit(-52, rpx);
49
+ height: unit(50, rpx);
50
+ line-height: unit(50, rpx);
51
+ display: flex;
52
+ justify-content: center;
53
+ align-items: center;
54
+ background: rgba(0, 0, 0, .6);
55
+ border-radius: unit(10, rpx);
56
+ box-shadow: 0 0 10px rbga(0, 0, 0, 0.3);
57
+ color: #fff;
58
+ font-size: unit(22, rpx);
59
+
60
+ &-icon{
61
+ padding: 0 unit(20, rpx);
62
+ }
63
+
64
+ &.editx {
65
+ box-sizing: border-box;
66
+
67
+ }
68
+ }
69
+ }
70
+ //end
71
+
72
+
73
+ /**notPreview**/
74
+ .jfb-base-saas-home {
75
+ &:before {
76
+ content: " ";
77
+ display: table;
78
+ }
79
+ }
80
+ /**endNotPreview**/
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+
4
+ //@AttrImport
5
+ import Attr from "./Attr";
6
+ //@EndAttrImport
7
+
8
+
9
+ export default {
10
+ data() {
11
+ return {
12
+ //#ifdef H5
13
+
14
+ //@AttrData
15
+ Attr:{}, //对外开发编辑属性
16
+ //@EndAttrData
17
+
18
+ // #endif
19
+ cssRoot: 'jfb-base-saas-home'
20
+ }
21
+ },
22
+ created() {
23
+
24
+ //@AttrDataCreated
25
+ this.Attr = this.$xdUniHelper.customClone(Attr);
26
+ //@EndAttrDataCreated
27
+
28
+
29
+ },
30
+ }
@@ -0,0 +1,5 @@
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ aaaa: {}
5
+ }
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * @description API模型
5
+ * 建议:Ffff=>模块 Xxxx=>自定义名字
6
+ * 获取单记录(getByIdFfffXxxx)
7
+ * 获取列表记录(getByListFfffXxxx)
8
+ * 添加列表记录(addFfffXxxxx)
9
+ * 删除列表记录(removeFfffXxxxx|deleteFfffXxxx)
10
+ * 更新列表记录(updateFfffXxxxx)
11
+ * @type {*[]}
12
+ */
13
+ module.exports = [
14
+ {
15
+ mapFnName: 'sendMsg',
16
+ title: '发送验证码',
17
+ path: '/common/v1/valid_code/sms/send',
18
+ isRule: false,
19
+ data: {
20
+ phone_number: ['手机号', 'String', '必选'],
21
+ biz_name: ['业务名称', 'String', '必选']
22
+ },
23
+ isConsole: true,
24
+ disabled: true,
25
+ },
26
+ ];
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * @description 当表单组件中有联动操作时候,使用方法进行返回
5
+ */
6
+ export default {
7
+ style: [],
8
+ content: (data) => {
9
+ return [
10
+ {
11
+ label: '登录成功跳转地址:', //label
12
+ ele: 'xd-select-pages-path', //package 名称
13
+ valueKey: 'callback_url', //form[valueKey]
14
+ placeholder: '请选择登录成功跳转地址',
15
+ value: null,
16
+ setting: {
17
+ router: XdBus.getParentApi('getPagesTree'),
18
+ },
19
+ inline: false,
20
+ },
21
+ {
22
+ label: '忘记密码跳转地址:', //label
23
+ ele: 'xd-select-pages-path', //package 名称
24
+ valueKey: 'forget_pwd_url', //form[valueKey]
25
+ placeholder: '请选择跳转地址',
26
+ value: null,
27
+ setting: {
28
+ router: XdBus.getParentApi('getPagesTree'),
29
+ },
30
+ inline: false,
31
+ },
32
+ ].filter(i=>i)
33
+ },
34
+ advanced: [
35
+
36
+ ],
37
+ };