kz-ui-base 1.0.2 → 1.0.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 +1 -1
- package/common/package-lock.json +0 -18
- package/common/package.json +0 -51
- package/common/src/api/common/cacher.js +0 -15
- package/common/src/api/common/common.js +0 -299
- package/common/src/api/common/material.js +0 -71
- package/common/src/api/login.js +0 -103
- package/common/src/api/menu.js +0 -18
- package/common/src/assets/401_images/401.gif +0 -0
- package/common/src/assets/404_images/404.png +0 -0
- package/common/src/assets/404_images/404_cloud.png +0 -0
- package/common/src/assets/icons/file-config.png +0 -0
- package/common/src/assets/icons/file-doc.png +0 -0
- package/common/src/assets/icons/file-exe.png +0 -0
- package/common/src/assets/icons/file-ini.png +0 -0
- package/common/src/assets/icons/file-jpg.png +0 -0
- package/common/src/assets/icons/file-mpg.png +0 -0
- package/common/src/assets/icons/file-none.png +0 -0
- package/common/src/assets/icons/file-pdf.png +0 -0
- package/common/src/assets/icons/file-png.png +0 -0
- package/common/src/assets/icons/file-ppt.png +0 -0
- package/common/src/assets/icons/file-rar.png +0 -0
- package/common/src/assets/icons/file-txt.png +0 -0
- package/common/src/assets/icons/file-wav.png +0 -0
- package/common/src/assets/icons/file-xls.png +0 -0
- package/common/src/assets/icons/index.js +0 -9
- package/common/src/assets/icons/svg/404.svg +0 -1
- package/common/src/assets/icons/svg/bug.svg +0 -1
- package/common/src/assets/icons/svg/build.svg +0 -1
- package/common/src/assets/icons/svg/button.svg +0 -1
- package/common/src/assets/icons/svg/cascader.svg +0 -1
- package/common/src/assets/icons/svg/chart.svg +0 -1
- package/common/src/assets/icons/svg/checkbox.svg +0 -1
- package/common/src/assets/icons/svg/client.svg +0 -1
- package/common/src/assets/icons/svg/clipboard.svg +0 -1
- package/common/src/assets/icons/svg/code.svg +0 -1
- package/common/src/assets/icons/svg/color.svg +0 -1
- package/common/src/assets/icons/svg/component.svg +0 -1
- package/common/src/assets/icons/svg/dashboard.svg +0 -1
- package/common/src/assets/icons/svg/date-range.svg +0 -1
- package/common/src/assets/icons/svg/date.svg +0 -1
- package/common/src/assets/icons/svg/dict.svg +0 -1
- package/common/src/assets/icons/svg/documentation.svg +0 -1
- package/common/src/assets/icons/svg/download.svg +0 -1
- package/common/src/assets/icons/svg/drag.svg +0 -1
- package/common/src/assets/icons/svg/druid.svg +0 -1
- package/common/src/assets/icons/svg/edit.svg +0 -1
- package/common/src/assets/icons/svg/education.svg +0 -1
- package/common/src/assets/icons/svg/email.svg +0 -1
- package/common/src/assets/icons/svg/example.svg +0 -1
- package/common/src/assets/icons/svg/excel.svg +0 -1
- package/common/src/assets/icons/svg/exit-fullscreen.svg +0 -1
- package/common/src/assets/icons/svg/eye-open.svg +0 -1
- package/common/src/assets/icons/svg/eye.svg +0 -1
- package/common/src/assets/icons/svg/form.svg +0 -1
- package/common/src/assets/icons/svg/fullscreen.svg +0 -1
- package/common/src/assets/icons/svg/github.svg +0 -1
- package/common/src/assets/icons/svg/guide.svg +0 -1
- package/common/src/assets/icons/svg/icon.svg +0 -1
- package/common/src/assets/icons/svg/input.svg +0 -1
- package/common/src/assets/icons/svg/international.svg +0 -1
- package/common/src/assets/icons/svg/job.svg +0 -1
- package/common/src/assets/icons/svg/kz_authority.svg +0 -1
- package/common/src/assets/icons/svg/kz_build.svg +0 -1
- package/common/src/assets/icons/svg/kz_code.svg +0 -1
- package/common/src/assets/icons/svg/kz_config.svg +0 -1
- package/common/src/assets/icons/svg/kz_creatTime.svg +0 -1
- package/common/src/assets/icons/svg/kz_dept.svg +0 -1
- package/common/src/assets/icons/svg/kz_dept_profile.svg +0 -1
- package/common/src/assets/icons/svg/kz_dict.svg +0 -1
- package/common/src/assets/icons/svg/kz_edit.svg +0 -1
- package/common/src/assets/icons/svg/kz_enlarge.svg +0 -1
- package/common/src/assets/icons/svg/kz_enterprise.svg +0 -1
- package/common/src/assets/icons/svg/kz_fold.svg +0 -2
- package/common/src/assets/icons/svg/kz_job.svg +0 -1
- package/common/src/assets/icons/svg/kz_layout.svg +0 -1
- package/common/src/assets/icons/svg/kz_log.svg +0 -1
- package/common/src/assets/icons/svg/kz_log_loginInfo.svg +0 -1
- package/common/src/assets/icons/svg/kz_log_operation.svg +0 -1
- package/common/src/assets/icons/svg/kz_master-slave.svg +0 -2
- package/common/src/assets/icons/svg/kz_menu.svg +0 -1
- package/common/src/assets/icons/svg/kz_menu_analyse.svg +0 -22
- package/common/src/assets/icons/svg/kz_message.svg +0 -1
- package/common/src/assets/icons/svg/kz_monitor.svg +0 -1
- package/common/src/assets/icons/svg/kz_nacos.svg +0 -1
- package/common/src/assets/icons/svg/kz_narrow.svg +0 -1
- package/common/src/assets/icons/svg/kz_notice.svg +0 -2
- package/common/src/assets/icons/svg/kz_online.svg +0 -1
- package/common/src/assets/icons/svg/kz_open.svg +0 -2
- package/common/src/assets/icons/svg/kz_organization.svg +0 -1
- package/common/src/assets/icons/svg/kz_post.svg +0 -1
- package/common/src/assets/icons/svg/kz_post_profile.svg +0 -1
- package/common/src/assets/icons/svg/kz_productCenter.svg +0 -1
- package/common/src/assets/icons/svg/kz_rabbit.svg +0 -1
- package/common/src/assets/icons/svg/kz_refresh.svg +0 -2
- package/common/src/assets/icons/svg/kz_renovation.svg +0 -1
- package/common/src/assets/icons/svg/kz_role.svg +0 -1
- package/common/src/assets/icons/svg/kz_roleGroup.svg +0 -1
- package/common/src/assets/icons/svg/kz_search.svg +0 -1
- package/common/src/assets/icons/svg/kz_sentinel.svg +0 -1
- package/common/src/assets/icons/svg/kz_server.svg +0 -1
- package/common/src/assets/icons/svg/kz_setting.svg +0 -1
- package/common/src/assets/icons/svg/kz_sex.svg +0 -1
- package/common/src/assets/icons/svg/kz_source.svg +0 -2
- package/common/src/assets/icons/svg/kz_strategy.svg +0 -2
- package/common/src/assets/icons/svg/kz_swagger.svg +0 -1
- package/common/src/assets/icons/svg/kz_system.svg +0 -1
- package/common/src/assets/icons/svg/kz_tenant.svg +0 -1
- package/common/src/assets/icons/svg/kz_tool.svg +0 -1
- package/common/src/assets/icons/svg/kz_user.svg +0 -1
- package/common/src/assets/icons/svg/language.svg +0 -1
- package/common/src/assets/icons/svg/link.svg +0 -1
- package/common/src/assets/icons/svg/list.svg +0 -1
- package/common/src/assets/icons/svg/lock.svg +0 -1
- package/common/src/assets/icons/svg/log.svg +0 -1
- package/common/src/assets/icons/svg/logininfor.svg +0 -1
- package/common/src/assets/icons/svg/mes-ad.svg +0 -21
- package/common/src/assets/icons/svg/mes-ic.svg +0 -16
- package/common/src/assets/icons/svg/mes-mfg-order.svg +0 -22
- package/common/src/assets/icons/svg/mes-tm.svg +0 -15
- package/common/src/assets/icons/svg/message.svg +0 -1
- package/common/src/assets/icons/svg/money.svg +0 -1
- package/common/src/assets/icons/svg/monitor.svg +0 -2
- package/common/src/assets/icons/svg/nacos.svg +0 -1
- package/common/src/assets/icons/svg/nested.svg +0 -1
- package/common/src/assets/icons/svg/number.svg +0 -1
- package/common/src/assets/icons/svg/online.svg +0 -1
- package/common/src/assets/icons/svg/password.svg +0 -1
- package/common/src/assets/icons/svg/pdf.svg +0 -1
- package/common/src/assets/icons/svg/people.svg +0 -1
- package/common/src/assets/icons/svg/peoples.svg +0 -1
- package/common/src/assets/icons/svg/phone.svg +0 -1
- package/common/src/assets/icons/svg/post.svg +0 -1
- package/common/src/assets/icons/svg/qq.svg +0 -1
- package/common/src/assets/icons/svg/question.svg +0 -1
- package/common/src/assets/icons/svg/radio.svg +0 -1
- package/common/src/assets/icons/svg/rate.svg +0 -1
- package/common/src/assets/icons/svg/row.svg +0 -1
- package/common/src/assets/icons/svg/search.svg +0 -1
- package/common/src/assets/icons/svg/select.svg +0 -1
- package/common/src/assets/icons/svg/sentinel.svg +0 -1
- package/common/src/assets/icons/svg/server.svg +0 -1
- package/common/src/assets/icons/svg/shop-call.svg +0 -14
- package/common/src/assets/icons/svg/shopping.svg +0 -1
- package/common/src/assets/icons/svg/size.svg +0 -1
- package/common/src/assets/icons/svg/skill.svg +0 -1
- package/common/src/assets/icons/svg/slider.svg +0 -1
- package/common/src/assets/icons/svg/star.svg +0 -1
- package/common/src/assets/icons/svg/stock-query.svg +0 -14
- package/common/src/assets/icons/svg/stock-report.svg +0 -14
- package/common/src/assets/icons/svg/stock-take.svg +0 -14
- package/common/src/assets/icons/svg/swagger.svg +0 -1
- package/common/src/assets/icons/svg/switch.svg +0 -1
- package/common/src/assets/icons/svg/system.svg +0 -2
- package/common/src/assets/icons/svg/tab.svg +0 -1
- package/common/src/assets/icons/svg/table.svg +0 -1
- package/common/src/assets/icons/svg/textarea.svg +0 -1
- package/common/src/assets/icons/svg/theme.svg +0 -1
- package/common/src/assets/icons/svg/time-range.svg +0 -1
- package/common/src/assets/icons/svg/time.svg +0 -1
- package/common/src/assets/icons/svg/tool.svg +0 -1
- package/common/src/assets/icons/svg/tree-table.svg +0 -1
- package/common/src/assets/icons/svg/tree.svg +0 -1
- package/common/src/assets/icons/svg/upload.svg +0 -1
- package/common/src/assets/icons/svg/user.svg +0 -1
- package/common/src/assets/icons/svg/validCode.svg +0 -1
- package/common/src/assets/icons/svg/wechat.svg +0 -1
- package/common/src/assets/icons/svg/xy-cancel.svg +0 -1
- package/common/src/assets/icons/svg/xy-choice.svg +0 -1
- package/common/src/assets/icons/svg/xy-choice2.svg +0 -31
- package/common/src/assets/icons/svg/zip.svg +0 -1
- package/common/src/assets/icons/svgo.yml +0 -22
- package/common/src/assets/images/dark.svg +0 -39
- package/common/src/assets/images/light.svg +0 -39
- package/common/src/assets/images/login-background.jpg +0 -0
- package/common/src/assets/images/logo.jpg +0 -0
- package/common/src/assets/images/profile.jpg +0 -0
- package/common/src/assets/images/xy-folder.png +0 -0
- package/common/src/assets/images/xy_email.png +0 -0
- package/common/src/assets/images/xy_message.png +0 -0
- package/common/src/assets/images/xy_notice.png +0 -0
- package/common/src/assets/logo/logo.png +0 -0
- package/common/src/assets/styles/btn.scss +0 -99
- package/common/src/assets/styles/element-ui.scss +0 -84
- package/common/src/assets/styles/element-variables.scss +0 -31
- package/common/src/assets/styles/index.scss +0 -207
- package/common/src/assets/styles/kezhi.scss +0 -100
- package/common/src/assets/styles/mixin.scss +0 -66
- package/common/src/assets/styles/ruoyi.scss +0 -350
- package/common/src/assets/styles/sidebar.scss +0 -185
- package/common/src/assets/styles/transition.scss +0 -48
- package/common/src/assets/styles/variables.scss +0 -52
- package/common/src/components/base/dialog/BaseDialog.vue +0 -140
- package/common/src/components/base/dialog/Dialog.js +0 -118
- package/common/src/components/base/dialog/dialogSetting.js +0 -65
- package/common/src/components/base/dialog/dialogType.js +0 -80
- package/common/src/components/base/dialog/index.js +0 -42
- package/common/src/components/base/dialog/printDialog.vue +0 -324
- package/common/src/components/base/dialog/tableDialog.vue +0 -187
- package/common/src/components/base/dialog/uploadDialog.vue +0 -149
- package/common/src/components/base/menuTab.js +0 -130
- package/common/src/components/basics/Breadcrumb/index.vue +0 -77
- package/common/src/components/basics/Crontab/day.vue +0 -179
- package/common/src/components/basics/Crontab/hour.vue +0 -122
- package/common/src/components/basics/Crontab/index.vue +0 -425
- package/common/src/components/basics/Crontab/min.vue +0 -120
- package/common/src/components/basics/Crontab/mouth.vue +0 -128
- package/common/src/components/basics/Crontab/result.vue +0 -566
- package/common/src/components/basics/Crontab/second.vue +0 -133
- package/common/src/components/basics/Crontab/week.vue +0 -167
- package/common/src/components/basics/Crontab/year.vue +0 -144
- package/common/src/components/basics/DictData/index.js +0 -24
- package/common/src/components/basics/DictTag/index.vue +0 -52
- package/common/src/components/basics/Editor/index.vue +0 -286
- package/common/src/components/basics/FileUpload/index.vue +0 -197
- package/common/src/components/basics/Hamburger/index.vue +0 -35
- package/common/src/components/basics/HeaderSearch/index.vue +0 -206
- package/common/src/components/basics/IconSelect/index.vue +0 -84
- package/common/src/components/basics/IconSelect/requireIcons.js +0 -10
- package/common/src/components/basics/Iframe/index.vue +0 -36
- package/common/src/components/basics/ImageUpload/index.vue +0 -204
- package/common/src/components/basics/Pagination/index.vue +0 -107
- package/common/src/components/basics/PanThumb/index.vue +0 -142
- package/common/src/components/basics/ParentView/index.vue +0 -3
- package/common/src/components/basics/RightPanel/index.vue +0 -149
- package/common/src/components/basics/RightToolbar/index.vue +0 -111
- package/common/src/components/basics/Screenfull/index.vue +0 -60
- package/common/src/components/basics/SizeSelect/index.vue +0 -60
- package/common/src/components/basics/SvgIcon/index.vue +0 -61
- package/common/src/components/basics/ThemePicker/index.vue +0 -183
- package/common/src/components/basics/TopNav/index.vue +0 -476
- package/common/src/components/custom/Editor/index.vue +0 -267
- package/common/src/components/custom/FileBox/index.vue +0 -293
- package/common/src/components/custom/FileBox/indexTs.vue +0 -280
- package/common/src/components/custom/ImageBox/index.vue +0 -208
- package/common/src/components/custom/Material/fileNameHelper.js +0 -38
- package/common/src/components/custom/Material/index.vue +0 -893
- package/common/src/components/custom/Material/indexTs.vue +0 -890
- package/common/src/components/custom/Notice/index.vue +0 -244
- package/common/src/plugins/auth.js +0 -60
- package/common/src/plugins/cache.js +0 -77
- package/common/src/plugins/download.js +0 -31
- package/common/src/plugins/index.js +0 -82
- package/common/src/plugins/modal.js +0 -75
- package/common/src/plugins/tab.js +0 -66
- package/common/src/utils/auth.js +0 -29
- package/common/src/utils/cache/bdCache.js +0 -202
- package/common/src/utils/cache/fdCache.js +0 -407
- package/common/src/utils/common.js +0 -141
- package/common/src/utils/dateHelper.js +0 -122
- package/common/src/utils/dialog.js +0 -35
- package/common/src/utils/dict/Dict.js +0 -82
- package/common/src/utils/dict/DictConverter.js +0 -17
- package/common/src/utils/dict/DictData.js +0 -13
- package/common/src/utils/dict/DictMeta.js +0 -38
- package/common/src/utils/dict/DictOptions.js +0 -51
- package/common/src/utils/dict/index.js +0 -33
- package/common/src/utils/element.js +0 -49
- package/common/src/utils/errorCode.js +0 -6
- package/common/src/utils/eventHub.js +0 -3
- package/common/src/utils/file.js +0 -38
- package/common/src/utils/index.js +0 -390
- package/common/src/utils/jsencrypt.js +0 -30
- package/common/src/utils/kezhi.js +0 -311
- package/common/src/utils/kezhiToolLibrary.js +0 -51
- package/common/src/utils/permission.js +0 -51
- package/common/src/utils/printService.js +0 -749
- package/common/src/utils/request.js +0 -209
- package/common/src/utils/ruoyi.js +0 -317
- package/common/src/utils/scroll-to.js +0 -58
- package/common/src/utils/supers.js +0 -25
- package/common/src/utils/utils.js +0 -614
- package/common/src/utils/validate.js +0 -105
- package/common/src/utils/websoketservice.js +0 -161
- package/common/src/utils/zipdownload.js +0 -42
- package/common/src/views/authorize.vue +0 -270
- package/common/src/views/error/401.vue +0 -88
- package/common/src/views/error/404.vue +0 -248
- package/common/src/views/login.vue +0 -350
- package/common/src/views/register.vue +0 -208
- package/common/src/views/sample/dialog/sampleEditDialog.vue +0 -279
- package/common/src/views/tenantLogin.vue +0 -331
- package/common/vue.config.js +0 -130
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
import Vue from '~../../vue'
|
|
2
|
-
|
|
3
|
-
let common={};
|
|
4
|
-
if (window)
|
|
5
|
-
window.common = common;
|
|
6
|
-
/**
|
|
7
|
-
*
|
|
8
|
-
* ��common����������еĹ��÷���
|
|
9
|
-
* common.dialog()�ǵ��õ���ķ���
|
|
10
|
-
*/
|
|
11
|
-
common.dialog = function (option) {
|
|
12
|
-
var m = document.createElement('div');
|
|
13
|
-
if (option.parentel != null) {
|
|
14
|
-
option.parentel.appendChild(m);
|
|
15
|
-
} else {
|
|
16
|
-
document.getElementsByTagName('body')[0].appendChild(m);
|
|
17
|
-
}
|
|
18
|
-
var _d = common.clone(option.data == null ? {} : option.data);
|
|
19
|
-
var v = '';
|
|
20
|
-
var component = option.component;
|
|
21
|
-
let template = '';
|
|
22
|
-
if (typeof component == 'string') {
|
|
23
|
-
template = `<div class="w680" v-if="show"><el-dialog :title="title" v-model="show" :size="size" @close="close"><${component} v-on:callback="callback" :init_data="data"> </${component}></el-dialog></div>`;
|
|
24
|
-
} else if (option.htmlText != null) {
|
|
25
|
-
template = `<div class="w680" v-if="show"><el-dialog :title="title" v-model="show" :size="size" @close="close">${option.htmlText}</el-dialog></div>`;
|
|
26
|
-
} else {
|
|
27
|
-
template = '<div class="w680" v-if="show"><el-dialog :style="style" :title="title" v-model="show" :size="size" :before-close="handleClose" @close="close"><child v-on:callback="callback" :init_data="data"> \
|
|
28
|
-
</child></el-dialog></div>';
|
|
29
|
-
}
|
|
30
|
-
if (option.type && option.type == 'iframe') {
|
|
31
|
-
v = new Vue({
|
|
32
|
-
el: m,
|
|
33
|
-
data: function () {
|
|
34
|
-
return {
|
|
35
|
-
title: option.title,
|
|
36
|
-
url: option.url,
|
|
37
|
-
size: option._size_ == null ? 'small' : option._size_,
|
|
38
|
-
modal: true,
|
|
39
|
-
custom_class: 'dialg-class',
|
|
40
|
-
close_on_press_escape: false,
|
|
41
|
-
show_close: true,
|
|
42
|
-
show: true,
|
|
43
|
-
data: _d,
|
|
44
|
-
};
|
|
45
|
-
},
|
|
46
|
-
|
|
47
|
-
template: '<div class="w680 dialog-h400" v-if="show"><el-dialog :title="title" v-model="show" :size="size"><iframe :src="url" style="width:100%;height:100%;"></iframe> \
|
|
48
|
-
</child></el-dialog></div>',
|
|
49
|
-
});
|
|
50
|
-
} else {
|
|
51
|
-
v = new Vue({
|
|
52
|
-
el: m,
|
|
53
|
-
data: function () {
|
|
54
|
-
return {
|
|
55
|
-
title: option.title,
|
|
56
|
-
style:option.style,
|
|
57
|
-
size: option._size_ == null ? 'small' : option._size_,
|
|
58
|
-
modal: true,
|
|
59
|
-
custom_class: 'dialg-class',
|
|
60
|
-
close_on_press_escape: false,
|
|
61
|
-
show_close: true,
|
|
62
|
-
show: true,
|
|
63
|
-
data: _d,
|
|
64
|
-
};
|
|
65
|
-
},
|
|
66
|
-
template: template,
|
|
67
|
-
mounted: function () {},
|
|
68
|
-
methods: {
|
|
69
|
-
handleClose(done){
|
|
70
|
-
if (option.close) {
|
|
71
|
-
option.close();
|
|
72
|
-
}
|
|
73
|
-
done();
|
|
74
|
-
},
|
|
75
|
-
close() {
|
|
76
|
-
if (option.close) {
|
|
77
|
-
option.close();
|
|
78
|
-
}
|
|
79
|
-
},
|
|
80
|
-
callback(result) {
|
|
81
|
-
if (option._source != null) {
|
|
82
|
-
option.callback.call(option._source, result);
|
|
83
|
-
this.show = false;
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
//�������type����type����close��cancelֱ�ӹرյ���
|
|
87
|
-
if (!result.type || result.type == 'close' || result.type == 'cancel') {
|
|
88
|
-
this.show = false;
|
|
89
|
-
} else if (result.type == 'sure') {
|
|
90
|
-
//���type����sure�����parent���ݹ����Ļص���
|
|
91
|
-
this.show = false;
|
|
92
|
-
if (option.callback) {
|
|
93
|
-
option.callback(result.data);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
},
|
|
97
|
-
},
|
|
98
|
-
components: {
|
|
99
|
-
child: option.component,
|
|
100
|
-
},
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
return v;
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
common.clone = function clone(obj) {
|
|
107
|
-
// Handle the 3 simple types, and null or undefined
|
|
108
|
-
if (null == obj || 'object' != typeof obj) return obj;
|
|
109
|
-
|
|
110
|
-
// Handle Date
|
|
111
|
-
if (obj instanceof Date) {
|
|
112
|
-
var copy = new Date();
|
|
113
|
-
copy.setTime(obj.getTime());
|
|
114
|
-
return copy;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
// Handle Array
|
|
118
|
-
if (obj instanceof Array) {
|
|
119
|
-
var copy = [];
|
|
120
|
-
for (var i = 0, len = obj.length; i < len; ++i) {
|
|
121
|
-
copy[i] = clone(obj[i]);
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
return copy;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
// Handle Object
|
|
128
|
-
if (obj instanceof Object) {
|
|
129
|
-
var copy = {};
|
|
130
|
-
for (var attr in obj) {
|
|
131
|
-
if (obj.hasOwnProperty(attr)) copy[attr] = clone(obj[attr]);
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
return copy;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
throw new Error("Unable to copy obj! Its type isn't supported.");
|
|
138
|
-
};
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
export default common;
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
export class DateHelper {
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* 获取这周的周一
|
|
6
|
-
* @param date
|
|
7
|
-
*/
|
|
8
|
-
static getFirstDayOfWeek(date) {
|
|
9
|
-
|
|
10
|
-
var weekday = date.getDay() || 7; //获取星期几,getDay()返回值是 0(周日) 到 6(周六) 之间的一个整数。0||7为7,即weekday的值为1-7
|
|
11
|
-
|
|
12
|
-
date.setDate(date.getDate() - weekday + 1);//往前算(weekday-1)天,年份、月份会自动变化
|
|
13
|
-
return date;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* 获取当月第一天
|
|
18
|
-
* @param date
|
|
19
|
-
*/
|
|
20
|
-
static getFirstDayOfMonth(d) {
|
|
21
|
-
var date = d;
|
|
22
|
-
if (!date) date = new Date();
|
|
23
|
-
date.setDate(1);
|
|
24
|
-
return date;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* 获取当月最后一天
|
|
29
|
-
* @param date
|
|
30
|
-
*/
|
|
31
|
-
static getLastDayOfMonth(d) {
|
|
32
|
-
var date = d;
|
|
33
|
-
if (!date) date = new Date();
|
|
34
|
-
date = this.getFirstDayOfNextMonth(date);
|
|
35
|
-
this.setTimeToZero(date);
|
|
36
|
-
date = this.addSeconds(date, -1);
|
|
37
|
-
return date;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
static addSeconds(date, millsecond) {
|
|
42
|
-
date = new Date(date.getTime() + (millsecond * 1000));
|
|
43
|
-
return date;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
static setTimeToZero(date) {
|
|
47
|
-
date.setHours(0);
|
|
48
|
-
date.setMinutes(0);
|
|
49
|
-
date.setSeconds(0);
|
|
50
|
-
return date;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* 获取下月第一天
|
|
55
|
-
* @param date
|
|
56
|
-
*/
|
|
57
|
-
static getFirstDayOfNextMonth(d) {
|
|
58
|
-
var date = d;
|
|
59
|
-
if (!date) date = new Date();
|
|
60
|
-
date.setDate(1);
|
|
61
|
-
date.setMonth(date.getMonth() + 1);
|
|
62
|
-
return date;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* 获取当季第一天
|
|
67
|
-
* @param date
|
|
68
|
-
*/
|
|
69
|
-
static getFirstDayOfSeason(d) {
|
|
70
|
-
var date = d;
|
|
71
|
-
var month = date.getMonth();
|
|
72
|
-
if (month < 3) {
|
|
73
|
-
date.setMonth(0);
|
|
74
|
-
} else if (2 < month && month < 6) {
|
|
75
|
-
date.setMonth(3);
|
|
76
|
-
} else if (5 < month && month < 9) {
|
|
77
|
-
date.setMonth(6);
|
|
78
|
-
} else if (8 < month && month < 11) {
|
|
79
|
-
date.setMonth(9);
|
|
80
|
-
}
|
|
81
|
-
date.setDate(1);
|
|
82
|
-
return date;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* 获取当季最后一天
|
|
87
|
-
* @param date
|
|
88
|
-
*/
|
|
89
|
-
static getLastDayOfSeason(d) {
|
|
90
|
-
var date = d;
|
|
91
|
-
if (!date) date = new Date();
|
|
92
|
-
date = this.getFirstDayOfSeason(date);
|
|
93
|
-
date.setMonth(date.getMonth() + 3);
|
|
94
|
-
this.setTimeToZero(date);
|
|
95
|
-
date = this.addSeconds(date, -1);
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* 获取当年第一天
|
|
100
|
-
* @param date
|
|
101
|
-
*/
|
|
102
|
-
static getFirstDayOfYear(d) {
|
|
103
|
-
var date = d;
|
|
104
|
-
if (!date) date = new Date();
|
|
105
|
-
date.setDate(1);
|
|
106
|
-
date.setMonth(0);
|
|
107
|
-
return date;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* 获取当年最后一天
|
|
112
|
-
* @param date
|
|
113
|
-
*/
|
|
114
|
-
static getLastDayOfYear(d) {
|
|
115
|
-
var date = this.getFirstDayOfYear(d);
|
|
116
|
-
this.setTimeToZero(date);
|
|
117
|
-
date = this.addSeconds(date, -1);
|
|
118
|
-
return date;
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
export default DateHelper
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import Vue from '~../../vue'
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
//dialog.js
|
|
5
|
-
function makeDialog(options, component) {
|
|
6
|
-
var dom = document.createElement('div');
|
|
7
|
-
document.getElementsByTagName('body')[0].appendChild(dom);
|
|
8
|
-
let tpl = '\
|
|
9
|
-
<dialogContent v-model="options"></dialogContent>\
|
|
10
|
-
';
|
|
11
|
-
var vue = new Vue({
|
|
12
|
-
el: dom,
|
|
13
|
-
data: function () {
|
|
14
|
-
return {
|
|
15
|
-
options: options
|
|
16
|
-
};
|
|
17
|
-
},
|
|
18
|
-
template: tpl,
|
|
19
|
-
computed: {
|
|
20
|
-
|
|
21
|
-
},
|
|
22
|
-
methods: {
|
|
23
|
-
},
|
|
24
|
-
components: {
|
|
25
|
-
dialogContent: component,
|
|
26
|
-
},
|
|
27
|
-
});
|
|
28
|
-
return vue;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export default {
|
|
32
|
-
open(options, component) {
|
|
33
|
-
return makeDialog(options, component)
|
|
34
|
-
}
|
|
35
|
-
}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import Vue from 'vue'
|
|
2
|
-
import { mergeRecursive } from "@utils/ruoyi";
|
|
3
|
-
import DictMeta from './DictMeta'
|
|
4
|
-
import DictData from './DictData'
|
|
5
|
-
|
|
6
|
-
const DEFAULT_DICT_OPTIONS = {
|
|
7
|
-
types: [],
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* @classdesc 字典
|
|
12
|
-
* @property {Object} label 标签对象,内部属性名为字典类型名称
|
|
13
|
-
* @property {Object} dict 字段数组,内部属性名为字典类型名称
|
|
14
|
-
* @property {Array.<DictMeta>} _dictMetas 字典元数据数组
|
|
15
|
-
*/
|
|
16
|
-
export default class Dict {
|
|
17
|
-
constructor() {
|
|
18
|
-
this.owner = null
|
|
19
|
-
this.label = {}
|
|
20
|
-
this.type = {}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
init(options) {
|
|
24
|
-
if (options instanceof Array) {
|
|
25
|
-
options = { types: options }
|
|
26
|
-
}
|
|
27
|
-
const opts = mergeRecursive(DEFAULT_DICT_OPTIONS, options)
|
|
28
|
-
if (opts.types === undefined) {
|
|
29
|
-
throw new Error('need dict types')
|
|
30
|
-
}
|
|
31
|
-
const ps = []
|
|
32
|
-
this._dictMetas = opts.types.map(t => DictMeta.parse(t))
|
|
33
|
-
this._dictMetas.forEach(dictMeta => {
|
|
34
|
-
const type = dictMeta.type
|
|
35
|
-
Vue.set(this.label, type, {})
|
|
36
|
-
Vue.set(this.type, type, [])
|
|
37
|
-
if (dictMeta.lazy) {
|
|
38
|
-
return
|
|
39
|
-
}
|
|
40
|
-
ps.push(loadDict(this, dictMeta))
|
|
41
|
-
})
|
|
42
|
-
return Promise.all(ps)
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* 重新加载字典
|
|
47
|
-
* @param {String} type 字典类型
|
|
48
|
-
*/
|
|
49
|
-
reloadDict(type) {
|
|
50
|
-
const dictMeta = this._dictMetas.find(e => e.type === type)
|
|
51
|
-
if (dictMeta === undefined) {
|
|
52
|
-
return Promise.reject(`the dict meta of ${type} was not found`)
|
|
53
|
-
}
|
|
54
|
-
return loadDict(this, dictMeta)
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* 加载字典
|
|
60
|
-
* @param {Dict} dict 字典
|
|
61
|
-
* @param {DictMeta} dictMeta 字典元数据
|
|
62
|
-
* @returns {Promise}
|
|
63
|
-
*/
|
|
64
|
-
function loadDict(dict, dictMeta) {
|
|
65
|
-
return dictMeta.request(dictMeta)
|
|
66
|
-
.then(response => {
|
|
67
|
-
const type = dictMeta.type
|
|
68
|
-
let dicts = dictMeta.responseConverter(response, dictMeta)
|
|
69
|
-
if (!(dicts instanceof Array)) {
|
|
70
|
-
console.error('the return of responseConverter must be Array.<DictData>')
|
|
71
|
-
dicts = []
|
|
72
|
-
} else if (dicts.filter(d => d instanceof DictData).length !== dicts.length) {
|
|
73
|
-
console.error('the type of elements in dicts must be DictData')
|
|
74
|
-
dicts = []
|
|
75
|
-
}
|
|
76
|
-
dict.type[type].splice(0, Number.MAX_SAFE_INTEGER, ...dicts)
|
|
77
|
-
dicts.forEach(d => {
|
|
78
|
-
Vue.set(dict.label[type], d.value, d.label)
|
|
79
|
-
})
|
|
80
|
-
return dicts
|
|
81
|
-
})
|
|
82
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import DictOptions from './DictOptions'
|
|
2
|
-
import DictData from './DictData'
|
|
3
|
-
|
|
4
|
-
export default function(dict, dictMeta) {
|
|
5
|
-
const label = determineDictField(dict, dictMeta.labelField, ...DictOptions.DEFAULT_LABEL_FIELDS)
|
|
6
|
-
const value = determineDictField(dict, dictMeta.valueField, ...DictOptions.DEFAULT_VALUE_FIELDS)
|
|
7
|
-
return new DictData(dict[label], dict[value], dict)
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* 确定字典字段
|
|
12
|
-
* @param {DictData} dict
|
|
13
|
-
* @param {...String} fields
|
|
14
|
-
*/
|
|
15
|
-
function determineDictField(dict, ...fields) {
|
|
16
|
-
return fields.find(f => Object.prototype.hasOwnProperty.call(dict, f))
|
|
17
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @classdesc 字典数据
|
|
3
|
-
* @property {String} label 标签
|
|
4
|
-
* @property {*} value 标签
|
|
5
|
-
* @property {Object} raw 原始数据
|
|
6
|
-
*/
|
|
7
|
-
export default class DictData {
|
|
8
|
-
constructor(label, value, raw) {
|
|
9
|
-
this.label = label
|
|
10
|
-
this.value = value
|
|
11
|
-
this.raw = raw
|
|
12
|
-
}
|
|
13
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { mergeRecursive } from "@utils/ruoyi";
|
|
2
|
-
import DictOptions from './DictOptions'
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @classdesc 字典元数据
|
|
6
|
-
* @property {String} type 类型
|
|
7
|
-
* @property {Function} request 请求
|
|
8
|
-
* @property {String} label 标签字段
|
|
9
|
-
* @property {String} value 值字段
|
|
10
|
-
*/
|
|
11
|
-
export default class DictMeta {
|
|
12
|
-
constructor(options) {
|
|
13
|
-
this.type = options.type
|
|
14
|
-
this.request = options.request,
|
|
15
|
-
this.responseConverter = options.responseConverter
|
|
16
|
-
this.labelField = options.labelField
|
|
17
|
-
this.valueField = options.valueField
|
|
18
|
-
this.lazy = options.lazy === true
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* 解析字典元数据
|
|
25
|
-
* @param {Object} options
|
|
26
|
-
* @returns {DictMeta}
|
|
27
|
-
*/
|
|
28
|
-
DictMeta.parse= function(options) {
|
|
29
|
-
let opts = null
|
|
30
|
-
if (typeof options === 'string') {
|
|
31
|
-
opts = DictOptions.metas[options] || {}
|
|
32
|
-
opts.type = options
|
|
33
|
-
} else if (typeof options === 'object') {
|
|
34
|
-
opts = options
|
|
35
|
-
}
|
|
36
|
-
opts = mergeRecursive(DictOptions.metas['*'], opts)
|
|
37
|
-
return new DictMeta(opts)
|
|
38
|
-
}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { mergeRecursive } from "@utils/ruoyi";
|
|
2
|
-
import dictConverter from './DictConverter'
|
|
3
|
-
|
|
4
|
-
export const options = {
|
|
5
|
-
metas: {
|
|
6
|
-
'*': {
|
|
7
|
-
/**
|
|
8
|
-
* 字典请求,方法签名为function(dictMeta: DictMeta): Promise
|
|
9
|
-
*/
|
|
10
|
-
request: (dictMeta) => {
|
|
11
|
-
console.log(`load dict ${dictMeta.type}`)
|
|
12
|
-
return Promise.resolve([])
|
|
13
|
-
},
|
|
14
|
-
/**
|
|
15
|
-
* 字典响应数据转换器,方法签名为function(response: Object, dictMeta: DictMeta): DictData
|
|
16
|
-
*/
|
|
17
|
-
responseConverter,
|
|
18
|
-
labelField: 'label',
|
|
19
|
-
valueField: 'value',
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
/**
|
|
23
|
-
* 默认标签字段
|
|
24
|
-
*/
|
|
25
|
-
DEFAULT_LABEL_FIELDS: ['label', 'name', 'title'],
|
|
26
|
-
/**
|
|
27
|
-
* 默认值字段
|
|
28
|
-
*/
|
|
29
|
-
DEFAULT_VALUE_FIELDS: ['value', 'id', 'uid', 'key'],
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* 映射字典
|
|
34
|
-
* @param {Object} response 字典数据
|
|
35
|
-
* @param {DictMeta} dictMeta 字典元数据
|
|
36
|
-
* @returns {DictData}
|
|
37
|
-
*/
|
|
38
|
-
function responseConverter(response, dictMeta) {
|
|
39
|
-
const dicts = response.content instanceof Array ? response.content : response
|
|
40
|
-
if (dicts === undefined) {
|
|
41
|
-
console.warn(`no dict data of "${dictMeta.type}" found in the response`)
|
|
42
|
-
return []
|
|
43
|
-
}
|
|
44
|
-
return dicts.map(d => dictConverter(d, dictMeta))
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export function mergeOptions(src) {
|
|
48
|
-
mergeRecursive(options, src)
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export default options
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import Dict from './Dict'
|
|
2
|
-
import { mergeOptions } from './DictOptions'
|
|
3
|
-
|
|
4
|
-
export default function(Vue, options) {
|
|
5
|
-
mergeOptions(options)
|
|
6
|
-
Vue.mixin({
|
|
7
|
-
data() {
|
|
8
|
-
if (this.$options === undefined || this.$options.dicts === undefined || this.$options.dicts === null) {
|
|
9
|
-
return {}
|
|
10
|
-
}
|
|
11
|
-
const dict = new Dict()
|
|
12
|
-
dict.owner = this
|
|
13
|
-
return {
|
|
14
|
-
dict
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
created() {
|
|
18
|
-
if (!(this.dict instanceof Dict)) {
|
|
19
|
-
return
|
|
20
|
-
}
|
|
21
|
-
options.onCreated && options.onCreated(this.dict)
|
|
22
|
-
this.dict.init(this.$options.dicts).then(() => {
|
|
23
|
-
options.onReady && options.onReady(this.dict)
|
|
24
|
-
this.$nextTick(() => {
|
|
25
|
-
this.$emit('dictReady', this.dict)
|
|
26
|
-
if (this.$options.methods && this.$options.methods.onDictReady instanceof Function) {
|
|
27
|
-
this.$options.methods.onDictReady.call(this, this.dict)
|
|
28
|
-
}
|
|
29
|
-
})
|
|
30
|
-
})
|
|
31
|
-
},
|
|
32
|
-
})
|
|
33
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import Vue from '~../../vue'
|
|
2
|
-
|
|
3
|
-
// v-dialogDrag: 弹窗拖拽
|
|
4
|
-
Vue.directive('dialogDrag', {
|
|
5
|
-
bind(el, binding, vnode, oldVnode) {
|
|
6
|
-
const dialogHeaderEl = el.querySelector('.el-dialog__header')
|
|
7
|
-
const dragDom = el.querySelector('.el-dialog')
|
|
8
|
-
dialogHeaderEl.style.cursor = 'move'
|
|
9
|
-
|
|
10
|
-
// 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
|
|
11
|
-
const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null)
|
|
12
|
-
|
|
13
|
-
dialogHeaderEl.onmousedown = (e) => {
|
|
14
|
-
// 鼠标按下,计算当前元素距离可视区的距离
|
|
15
|
-
const disX = e.clientX - dialogHeaderEl.offsetLeft
|
|
16
|
-
const disY = e.clientY - dialogHeaderEl.offsetTop
|
|
17
|
-
|
|
18
|
-
// 获取到的值带px 正则匹配替换
|
|
19
|
-
let styL, styT
|
|
20
|
-
|
|
21
|
-
// 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
|
|
22
|
-
if (sty.left.includes('%')) {
|
|
23
|
-
styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100)
|
|
24
|
-
styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100)
|
|
25
|
-
} else {
|
|
26
|
-
styL = +sty.left.replace(/\px/g, '')
|
|
27
|
-
styT = +sty.top.replace(/\px/g, '')
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
document.onmousemove = function (e) {
|
|
31
|
-
// 通过事件委托,计算移动的距离
|
|
32
|
-
const l = e.clientX - disX
|
|
33
|
-
const t = e.clientY - disY
|
|
34
|
-
|
|
35
|
-
// 移动当前元素
|
|
36
|
-
dragDom.style.left = `${l + styL}px`
|
|
37
|
-
dragDom.style.top = `${t + styT}px`
|
|
38
|
-
|
|
39
|
-
// 将此时的位置传出去
|
|
40
|
-
// binding.value({x:e.pageX,y:e.pageY})
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
document.onmouseup = function (e) {
|
|
44
|
-
document.onmousemove = null
|
|
45
|
-
document.onmouseup = null
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
});
|
package/common/src/utils/file.js
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 打开文件预览界面,目前的实现为window.open打开新窗口
|
|
3
|
-
* @param {string} url 远程文件地址
|
|
4
|
-
* @returns
|
|
5
|
-
*/
|
|
6
|
-
export function filePriview(url) {
|
|
7
|
-
if(!url) return;
|
|
8
|
-
window.open(getFilePriviewUrl(url));
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* 获取文件预览页面地址,支持预览觉格式,图片,视频,office文档,cad三维图
|
|
13
|
-
* @param {string} url 远程文件地址
|
|
14
|
-
* @returns
|
|
15
|
-
*/
|
|
16
|
-
export function getFilePriviewUrl(url) {
|
|
17
|
-
if(!url) return undefined;
|
|
18
|
-
let Base64 = require('js-base64').Base64;
|
|
19
|
-
return process.env.VUE_APP_BASE_API + '/filepriview/onlinePreview?url=' + encodeURIComponent(Base64.encode(url.trimEnd()));
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export function getFileNickName(fileUrl) {
|
|
23
|
-
if (!fileUrl) return "";
|
|
24
|
-
var fileArr = fileUrl.split('|');
|
|
25
|
-
var filename = "";
|
|
26
|
-
for (var url of fileArr) {
|
|
27
|
-
var pos = url.lastIndexOf("__");
|
|
28
|
-
if (pos > -1) pos = pos + 2;
|
|
29
|
-
else {
|
|
30
|
-
pos = url.lastIndexOf("/");
|
|
31
|
-
if (pos > -1) pos = pos + 1;
|
|
32
|
-
else return url;
|
|
33
|
-
}
|
|
34
|
-
filename = filename + "|" + url.substring(pos);
|
|
35
|
-
}
|
|
36
|
-
if (filename.length > 0) filename = filename.substring(1);
|
|
37
|
-
return filename;
|
|
38
|
-
}
|