Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-Mob-R7-Res
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-Mob-R7-Res
提交
46ea5ac2
提交
46ea5ac2
编写于
5月 07, 2020
作者:
laowang
浏览文件
操作
浏览文件
下载
差异文件
合并分支 'dev' 到 'master'
Dev 查看合并请求
!1
上级
ca71dc91
2c9292aa
变更
20
展开全部
显示空白字符变更
内嵌
并排
正在显示
20 个修改的文件
包含
3039 行增加
和
627 行删除
+3039
-627
README.md
README.md
+15
-32
AndroidManifest.xml
android/app/src/main/AndroidManifest.xml
+2
-1
network_security_config.xml
android/app/src/main/res/xml/network_security_config.xml
+8
-0
capacitor.config.json
capacitor.config.json
+4
-11
package.json
package.json
+1
-1
app-register.ts
src/app-register.ts
+3
-3
app-calendar.vue
src/components/app-calendar/app-calendar.vue
+1209
-0
browser-style.css
src/components/app-calendar/browser-style.css
+406
-0
calendarinit.js
src/components/app-calendar/calendarinit.js
+562
-0
icon.css
src/components/app-calendar/icon.css
+75
-0
style.css
src/components/app-calendar/style.css
+395
-0
app-mob-dropdown-list-dynamic.less
...-dropdown-list-dynamic/app-mob-dropdown-list-dynamic.less
+0
-4
app-mob-dropdown-list-dynamic.vue
...b-dropdown-list-dynamic/app-mob-dropdown-list-dynamic.vue
+0
-247
app-mob-file-upload.vue
src/components/app-mob-file-upload/app-mob-file-upload.vue
+269
-270
app-mob-picture.vue
src/components/app-mob-picture/app-mob-picture.vue
+7
-5
app-mob-radio-list.vue
src/components/app-mob-radio-list/app-mob-radio-list.vue
+69
-49
calendar-service-base.ts
src/ibiz-core/control-service/calendar-service-base.ts
+1
-0
ignore-proxy.ts
src/utils/interceptor/ignore-proxy.ts
+4
-0
interceptor.ts
src/utils/interceptor/interceptor.ts
+8
-3
tslint.json
tslint.json
+1
-1
未找到文件。
README.md
浏览文件 @
46ea5ac2
# app
需要用到axios
[
^9.19.2
]
、dingtalk-jsapi
[
^2.9.14
]
、qs
[
^6.9.1
]
、typescript
[
^3.8.3
]
、rxjs
[
^6.5.2
]
</br>
需要用到webpack的import()动态加载模块。
</br>
在babel.config.js中配置"retainLines": true,以便更加准确的再async中打断点;
```
module.exports = {
env: {
development: {
sourceMaps: true,
retainLines: true
}
},
presets: [
'@vue/cli-plugin-babel/preset'
]
}
## Project setup
```
```
yarn install
```
### Compiles and hot-reloads for development
```
yarn serve
```
### Compiles and minifies for production
```
yarn build
```
### Run your unit tests
```
yarn test:unit
```
### Run your end-to-end tests
```
yarn test:e2e
```
### Lints and fixes files
```
yarn lint
```
### Customize configuration
See
[
Configuration Reference
](
https://cli.vuejs.org/config/
)
.
android/app/src/main/AndroidManifest.xml
浏览文件 @
46ea5ac2
...
@@ -8,7 +8,8 @@
...
@@ -8,7 +8,8 @@
android:label=
"@string/app_name"
android:label=
"@string/app_name"
android:roundIcon=
"@mipmap/ic_launcher_round"
android:roundIcon=
"@mipmap/ic_launcher_round"
android:supportsRtl=
"true"
android:supportsRtl=
"true"
android:theme=
"@style/AppTheme"
>
android:theme=
"@style/AppTheme"
android:networkSecurityConfig=
"@xml/network_security_config"
>
<activity
<activity
android:configChanges=
"orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode"
android:configChanges=
"orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode"
...
...
android/app/src/main/res/xml/network_security_config.xml
0 → 100644
浏览文件 @
46ea5ac2
<?xml version='1.0' encoding='utf-8'?>
<network-security-config>
<base-config
cleartextTrafficPermitted=
"true"
>
<trust-anchors>
<certificates
src=
"system"
/>
</trust-anchors>
</base-config>
</network-security-config>
\ No newline at end of file
capacitor.config.json
浏览文件 @
46ea5ac2
...
@@ -5,20 +5,13 @@
...
@@ -5,20 +5,13 @@
"npmClient"
:
"yarn"
,
"npmClient"
:
"yarn"
,
"webDir"
:
"www"
,
"webDir"
:
"www"
,
"cordova"
:
{},
"cordova"
:
{},
"server"
:
{
"url"
:
"127.0.0.1:8080"
,
"hostname"
:
"app"
,
"iosScheme"
:
"vue"
,
"androidScheme"
:
"vue"
,
"allowNavigation"
:
[
"example.org"
,
"*.example.org"
,
"192.0.2.1"
]
},
"overrideUserAgent"
:
"my custom user agent"
,
"overrideUserAgent"
:
"my custom user agent"
,
"appendUserAgent"
:
"string to append"
,
"appendUserAgent"
:
"string to append"
,
"backgroundColor"
:
"#ffffffff"
,
"backgroundColor"
:
"#ffffffff"
,
"hideLogs"
:
true
,
"server"
:
{
"url"
:
"http://192.168.1.2:8080"
},
"android"
:
{
"android"
:
{
"overrideUserAgent"
:
"my custom user agent for Android"
,
"overrideUserAgent"
:
"my custom user agent for Android"
,
"appendUserAgent"
:
"string to append for Android"
,
"appendUserAgent"
:
"string to append for Android"
,
...
...
package.json
浏览文件 @
46ea5ac2
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
"serve"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service serve --mode test"
,
"serve"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service serve --mode test"
,
"dev-serve"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service serve --mode development"
,
"dev-serve"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service serve --mode development"
,
"build"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service build"
,
"build"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service build"
,
"build-
native-app"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service build --mode native
app"
,
"build-
hybrid-app"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service build --mode hybrid
app"
,
"dev-build"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service build --mode development"
,
"dev-build"
:
"node --max_old_space_size=8102 ./node_modules/@vue/cli-service/bin/vue-cli-service build --mode development"
,
"lint"
:
"vue-cli-service lint"
"lint"
:
"vue-cli-service lint"
},
},
...
...
src/app-register.ts
浏览文件 @
46ea5ac2
...
@@ -52,7 +52,9 @@ export const AppComponents = {
...
@@ -52,7 +52,9 @@ export const AppComponents = {
v
.
component
(
'app-list-swipe'
,
()
=>
import
(
'@/components/app-list-swipe/app-list-swipe.vue'
));
v
.
component
(
'app-list-swipe'
,
()
=>
import
(
'@/components/app-list-swipe/app-list-swipe.vue'
));
v
.
component
(
'app-mob-rate'
,
()
=>
import
(
'@/components/app-mob-rate/app-mob-rate.vue'
));
v
.
component
(
'app-mob-rate'
,
()
=>
import
(
'@/components/app-mob-rate/app-mob-rate.vue'
));
v
.
component
(
'app-mob-select-drop-down'
,
()
=>
import
(
'@/components/app-mob-select-drop-down/app-mob-select-drop-down.vue'
));
v
.
component
(
'app-mob-select-drop-down'
,
()
=>
import
(
'@/components/app-mob-select-drop-down/app-mob-select-drop-down.vue'
));
v
.
component
(
'app-mob-textarea'
,()
=>
import
(
'./components/app-mob-textarea/app-mob-textarea.vue'
))
v
.
component
(
'app-mob-textarea'
,()
=>
import
(
'./components/app-mob-textarea/app-mob-textarea.vue'
));
// 日历组件
v
.
component
(
'app-calendar'
,()
=>
import
(
'@/components/app-calendar/app-calendar.vue'
));
// 编辑器 BEGIN
// 编辑器 BEGIN
// 图片选择
// 图片选择
...
@@ -71,8 +73,6 @@ export const AppComponents = {
...
@@ -71,8 +73,6 @@ export const AppComponents = {
v
.
component
(
'app-mob-dropdown-list'
,
()
=>
import
(
'@/components/app-mob-dropdown-list/app-mob-dropdown-list.vue'
));
v
.
component
(
'app-mob-dropdown-list'
,
()
=>
import
(
'@/components/app-mob-dropdown-list/app-mob-dropdown-list.vue'
));
//下拉单选
//下拉单选
v
.
component
(
'app-mob-mpicker'
,
()
=>
import
(
'@/components/app-mob-mpicker/app-mob-mpicker.vue'
));
v
.
component
(
'app-mob-mpicker'
,
()
=>
import
(
'@/components/app-mob-mpicker/app-mob-mpicker.vue'
));
//下拉单选(多语言)
v
.
component
(
'app-mob-dropdown-list-dynamic'
,
()
=>
import
(
'@/components/app-mob-dropdown-list-dynamic/app-mob-dropdown-list-dynamic.vue'
));
//span
//span
v
.
component
(
'app-mob-span'
,
()
=>
import
(
'@/components/app-mob-span/app-mob-span.vue'
));
v
.
component
(
'app-mob-span'
,
()
=>
import
(
'@/components/app-mob-span/app-mob-span.vue'
));
//录音
//录音
...
...
src/components/app-calendar/app-calendar.vue
0 → 100644
浏览文件 @
46ea5ac2
此差异已折叠。
点击以展开。
src/components/app-calendar/browser-style.css
0 → 100644
浏览文件 @
46ea5ac2
.mpvue-calendar
{
margin
:
auto
;
width
:
100%
;
min-width
:
350px
;
background
:
#fff
;
user-select
:
none
;
position
:
relative
;
}
.calendar-tools
{
height
:
40px
;
font-size
:
20px
;
line-height
:
40px
;
color
:
#5e7a88
;
box-shadow
:
0px
4px
8px
rgba
(
25
,
47
,
89
,
0.1
);
margin-bottom
:
20px
;
border-top
:
1px
solid
rgba
(
200
,
200
,
200
,
.1
);
}
.calendar-tools
span
{
cursor
:
pointer
;
}
.calendar-prev
{
width
:
14.28571429%
;
float
:
left
;
text-align
:
center
;
}
.calendar-prev
img
,
.calendar-next
img
{
width
:
34px
;
height
:
34px
;
}
.calendar-info
{
font-size
:
16px
;
line-height
:
1.3
;
text-align
:
center
;
width
:
220px
;
margin
:
0
auto
;
}
.calendar-info
>
div
.mc-month
{
margin
:
auto
;
height
:
24px
;
width
:
100px
;
text-align
:
center
;
color
:
#5e7a88
;
overflow
:
hidden
;
position
:
relative
;
}
.calendar-info
>
div
.mc-month
.mc-month-inner
{
position
:
absolute
;
left
:
0
;
top
:
0
;
height
:
480px
;
}
.month-transition
{
transition
:
top
.5s
cubic-bezier
(
0.075
,
0.82
,
0.165
,
1
);
}
.calendar-info
.mc-month-text
{
display
:
block
;
font-size
:
28px
;
height
:
40px
;
width
:
200px
;
overflow
:
hidden
;
text-align
:
center
;
}
.calendar-info
>
div
.mc-month
.mc-month-inner
>
span
{
display
:
block
;
font-size
:
14px
;
height
:
24px
;
line-height
:
24px
;
width
:
100px
;
overflow
:
hidden
;
text-align
:
center
;
}
.calendar-info
>
div
.mc-year
{
font-size
:
10px
;
line-height
:
1
;
color
:
#999
;
}
.calendar-next
{
width
:
14.28571429%
;
float
:
right
;
text-align
:
center
;
}
.mpvue-calendar
table
{
clear
:
both
;
width
:
100%
;
margin-bottom
:
10px
;
border-collapse
:
collapse
;
color
:
#444444
;
}
.mpvue-calendar
td
{
margin
:
2px
!important
;
padding
:
4px
;
width
:
14.28571429%
;
box-sizing
:
border-box
;
text-align
:
center
;
vertical-align
:
middle
;
font-size
:
14px
;
cursor
:
pointer
;
position
:
relative
;
vertical-align
:
top
;
}
.mpvue-calendar
td
.mc-week
{
font-size
:
10px
;
pointer-events
:
none
!important
;
cursor
:
default
!important
;
}
.mpvue-calendar
td
.disabled
{
color
:
#ccc
;
}
.mpvue-calendar
td
.disabled
div
{
color
:
#ccc
;
}
.mpvue-calendar
td
span
{
display
:
block
;
height
:
100%
;
width
:
100%
;
margin
:
0px
auto
;
border-radius
:
50%
;
position
:
relative
;
z-index
:
3
;
}
.mpvue-calendar
td
:not
(
.disabled
)
span
.mc-date-red
{
color
:
#ea6151
;
}
.mc-today
{
color
:
#3b75fb
;
}
.mpvue-calendar
td
.selected
span
{
background-color
:
#3b75fb
;
color
:
#fff
;
border-radius
:
50%
;
}
.mpvue-calendar
td
.mc-text
{
box-sizing
:
border-box
;
height
:
0.7em
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
position
:
absolute
;
bottom
:
0px
;
left
:
0
;
right
:
0
;
text-align
:
center
;
font-size
:
0.7em
;
line-height
:
0.7em
;
z-index
:
4
;
}
.mpvue-calendar
td
.isGregorianFestival
,
.mpvue-calendar
td
.isTerm
,
.mpvue-calendar
td
.isLunarFestival
{
color
:
#ea6151
;
}
.mpvue-calendar
td
.selected
span
.mc-date-red
{
background-color
:
#3b75fb
;
color
:
#fff
;
}
.selected
.mc-text
{
color
:
#fff
!important
;
}
.mpvue-calendar
.lunarStyle
.mc-text
{
overflow
:
visible
;
bottom
:
20%
;
}
.mpvue-calendar
thead
td
{
text-transform
:
uppercase
;
height
:
30px
;
vertical-align
:
middle
;
}
.mc-head
{
margin-bottom
:
10px
;
}
.mc-head
div
{
overflow
:
hidden
;
}
.mc-head-box
div
{
flex
:
1
;
text-align
:
center
;
font-size
:
18px
;
}
.mc-head-box
{
display
:
flex
;
flex-direction
:
row
;
justify-content
:
center
;
align-content
:
space-between
}
.mc-body
{
padding-bottom
:
20px
;
}
.mc-body
tr
{
display
:
flex
;
flex-direction
:
row
;
justify-content
:
center
;
align-content
:
space-between
;
}
.mc-dot
{
width
:
8px
;
height
:
8px
;
background-color
:
#ea6151
;
border-radius
:
50%
;
position
:
absolute
;
bottom
:
-4px
;
left
:
50%
;
margin-left
:
-4px
;
z-index
:
5
;
}
.remark-text
{
box-sizing
:
border-box
;
height
:
0.7em
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
position
:
absolute
;
bottom
:
0px
;
left
:
0
;
right
:
0
;
text-align
:
center
;
font-size
:
0.7em
;
line-height
:
0.7em
;
z-index
:
5
;
}
.slot-element
{
line-height
:
normal
;
position
:
absolute
;
z-index
:
5
;
}
.mpvue-calendar-change
{
position
:
absolute
;
left
:
0px
;
top
:
42px
;
right
:
0px
;
bottom
:
0px
;
background
:
#fff
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
flex-wrap
:
wrap
;
overflow
:
auto
;
transition
:
all
.5s
cubic-bezier
(
0.075
,
0.82
,
0.165
,
1
);
opacity
:
0
;
pointer-events
:
none
;
transform
:
translateY
(
-10px
);
z-index
:
9
;
}
.mpvue-calendar-change.show
{
opacity
:
1
;
pointer-events
:
auto
;
transform
:
translateY
(
0px
);
}
.mpvue-calendar-change
span
{
margin
:
4px
2%
;
display
:
inline-block
;
line-height
:
30px
;
border-radius
:
20px
;
text-align
:
center
;
color
:
#999
;
width
:
20%
;
float
:
left
;
text-align
:
center
;
border-radius
:
40px
;
box-sizing
:
border-box
;
margin-bottom
:
4%
;
cursor
:
pointer
;
}
.mpvue-calendar-change
span
.active
{
background-color
:
#587dff
;
box-shadow
:
2px
2px
2px
rgba
(
88
,
125
,
255
,
0.7
);
color
:
#fff
;
}
.mpvue-calendar-change
.calendar-week-switch-months
{
height
:
100%
;
}
.mpvue-calendar-change
.calendar-week-switch-months
span
{
margin-bottom
:
10px
;
margin-top
:
0px
;
}
.calendar-years
,
.calendar-months
{
height
:
50%
;
width
:
100%
;
padding
:
10px
;
box-sizing
:
border-box
;
position
:
relative
;
}
.calendar-years
:after
{
content
:
''
;
display
:
block
;
width
:
86%
;
height
:
1px
;
background-color
:
#eee
;
position
:
absolute
;
bottom
:
2%
;
left
:
7%
;
}
/*range background*/
.mc-range-mode
.selected
.mc-range-bg
{
content
:
''
;
display
:
block
;
width
:
150%
;
height
:
100%
;
background-color
:
#01a1ed
;
position
:
relative
;
top
:
-100%
;
left
:
50%
;
}
.mpvue-calendar
.mc-range-mode
.selected
.calendar-date
{
background-color
:
transparent
;
}
.mpvue-calendar
.mc-range-mode
.mc-range-row-last
.calendar-date
,
.mpvue-calendar
.mc-range-mode
.mc-range-row-first
.calendar-date
{
border-radius
:
4px
;
background-color
:
#01a1ed
;
}
.mpvue-calendar
.mc-range-mode
.mc-range-month-first.selected
.calendar-date
,
.mpvue-calendar
.mc-range-mode
.mc-range-month-last.selected
.calendar-date
{
background-color
:
#01a1ed
;
border-radius
:
4px
;
}
.mc-range-mode
.mc-range-month-last
.mc-range-bg
{
background-color
:
transparent
;
border-radius
:
4px
;
}
.mc-range-mode
.mc-range-end
.mc-range-bg
,
.mc-range-mode
.mc-range-row-last
.mc-range-bg
{
display
:
none
;
}
.mc-range-row-first.mc-range-end
.mc-range-bg
{
display
:
block
;
margin-left
:
-50%
;
width
:
50%
;
border-radius
:
4px
;
}
.mpvue-calendar
.mc-range-row-first.mc-range-end.month-first-date
.mc-range-bg
{
margin-left
:
0px
;
}
.mc-range-row-last.mc-range-begin
.mc-range-bg
{
display
:
block
;
width
:
50%
;
border-radius
:
4px
;
}
.mpvue-calendar
.mc-range-mode
.selected.mc-range-second-to-last
span
{
background-color
:
#01a1ed
;
border-radius
:
4px
;
}
.mc-range-begin.mc-range-second-to-last
{
background-color
:
#01a1ed
;
border-radius
:
4px
;
}
.mpvue-calendar
.mc-range-mode
.mc-range-end
span
.calendar-date
,
.mpvue-calendar
.mc-range-mode
.mc-range-begin
span
.calendar-date
{
background-color
:
#3b75fb
;
color
:
#fff
;
border-radius
:
50%
;
}
.mpvue-calendar
.mc-range-mode
.month-last-date.mc-range-begin
.mc-range-bg
{
display
:
block
;
width
:
50%
;
border-radius
:
4px
;
}
.mpvue-calendar
.mc-range-mode
.month-first-date.mc-range-end
.mc-range-bg
{
display
:
block
;
width
:
50%
;
border-radius
:
4px
;
left
:
0px
;
}
.calendar-wrapper
.mpvue-calendar
.mc-range-mode
.mc-range-select-one
div
.mc-range-bg
{
display
:
none
;
}
.mc-range-mode
.mc-range-second-to-last
.mc-range-bg
{
border-radius
:
0px
25%
25%
0px
;
}
.mc-today-element
.calendar-date
{
background-color
:
rgba
(
25
,
47
,
89
,
0.1
);
border-radius
:
4px
;
}
/*week switch*/
.mpvue-calendar
.mc-range-mode.week-switch
.month-last-date.mc-range-begin
.mc-range-bg
{
width
:
150%
;
border-radius
:
0px
20%
20%
0px
;
}
.mpvue-calendar
.mc-range-mode.week-switch
.mc-range-month-last
.mc-range-bg
{
background-color
:
#01a1ed
;
border-radius
:
0px
20%
20%
0px
;
}
/*month range*/
.mpvue-calendar
.month-range-mode
{
border-bottom
:
1px
solid
#f2f2f2
;
position
:
relative
;
}
.mpvue-calendar
.mc-month-range-mode-head
{
box-shadow
:
0
4px
8px
rgba
(
25
,
47
,
89
,
.1
);
padding
:
8px
0px
;
position
:
sticky
;
top
:
0px
;
background-color
:
#fff
;
z-index
:
9
;
}
.month-range-mode
.month-rang-head
{
text-align
:
left
;
margin
:
10px
0px
;
padding-left
:
10px
;
}
.month-range-mode
.mc-last-month
,
.month-range-mode
.mc-next-month
{
opacity
:
0
!important
;
}
.month-text-background
{
position
:
absolute
;
font-size
:
140px
;
width
:
100%
;
height
:
100%
;
text-align
:
center
;
line-height
:
2.4
;
}
\ No newline at end of file
src/components/app-calendar/calendarinit.js
0 → 100644
浏览文件 @
46ea5ac2
此差异已折叠。
点击以展开。
src/components/app-calendar/icon.css
0 → 100644
浏览文件 @
46ea5ac2
@font-face
{
font-family
:
"iconfont"
;
src
:
url('data:font/truetype;charset=utf-8;base64,d09GRgABAAAAAASEAAsAAAAABuwAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFY7d0f0Y21hcAAAAYAAAABTAAABhmJUzs9nbHlmAAAB1AAAALcAAADIzC0F5mhlYWQAAAKMAAAALwAAADYS7IZUaGhlYQAAArwAAAAcAAAAJAfeA4RobXR4AAAC2AAAAAwAAAAMDAAAAGxvY2EAAALkAAAACAAAAAgANgBkbWF4cAAAAuwAAAAfAAAAIAEOACluYW1lAAADDAAAAUUAAAJtPlT+fXBvc3QAAARUAAAALQAAAEOUPjuMeJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2BkYWCcwMDKwMHUyXSGgYGhH0IzvmYwYuRgYGBiYGVmwAoC0lxTGByeMj5jYm7438AQw9zA0AAUZgTJAQDdSgvleJztkMERgDAIBPdIzMOxEB8W5MvuTRsRMHbhzSwHR/IBWIDiHE4FXYjQ6akyL6yZ13zT3IXd6jYGfO6S75q7xT81fm1Z9zlZXOsl+j5BD35IDU4AeJwVzUEOwUAYBeD/mfxTEso/mkEJoYluqgtajUjYsHEOSytncROJK/QErjNMd+8lL+8jEP3eqq8uNCPiokK1L4t1ihzVCSPMEekAep3mQCh4tpVm95JWz2QGj3iyiN3LZMJBODU49IMuDxk32YifuI89X4+xqwcsHUtEjfVVWt1p5MvWNs9RY4RowNLrJ7Tq8ZKNN7wmvMp8jBc7PDpW3RPfPrISV5ss4QEO9pxcdrix/gMMIyHOAHicY2BkYGAAYmNBZtV4fpuvDNwsDCBw/dlCBQT9fzMLA3MKkMvBwAQSBQDyNAlAAHicY2BkYGBu+N/AEMPCAAJAkpEBFTADAEcJAmwEAAAABAAAAAQAAAAAAAAAADYAZHicY2BkYGBgZpBlANEMDExAzAWEDAz/wXwGAAuHATgAeJxlj01OwzAQhV/6B6QSqqhgh+QFYgEo/RGrblhUavdddN+mTpsqiSPHrdQDcB6OwAk4AtyAO/BIJ5s2lsffvHljTwDc4Acejt8t95E9XDI7cg0XuBeuU38QbpBfhJto41W4Rf1N2MczpsJtdGF5g9e4YvaEd2EPHXwI13CNT+E69S/hBvlbuIk7/Aq30PHqwj7mXle4jUcv9sdWL5xeqeVBxaHJIpM5v4KZXu+Sha3S6pxrW8QmU4OgX0lTnWlb3VPs10PnIhVZk6oJqzpJjMqt2erQBRvn8lGvF4kehCblWGP+tsYCjnEFhSUOjDFCGGSIyujoO1Vm9K+xQ8Jee1Y9zed0WxTU/3OFAQL0z1xTurLSeTpPgT1fG1J1dCtuy56UNJFezUkSskJe1rZUQuoBNmVXjhF6XNGJPyhnSP8ACVpuyAAAAHicY2BigAAuBuyAmZGJkZmRhYEnKzMxryS/tDgjMS+dC8qpzC9lYAAAiPIJlAAAAA==')
;
}
.iconfont
{
font-family
:
"iconfont"
!important
;
font-size
:
16px
;
font-style
:
normal
;
-webkit-font-smoothing
:
antialiased
;
-moz-osx-font-smoothing
:
grayscale
;
}
.icon-arrow-right
:before
{
content
:
"\e602"
;
}
.icon-arrow-left
:before
{
content
:
"\e501"
;
}
.sign
{
top
:
88%
;
overflow
:
hidden
;
position
:
absolute
;
right
:
calc
(
50%
-
8px
);
height
:
28px
;
}
.sign-item
{
line-height
:
1
;
height
:
4px
;
color
:
#ccc
;
}
.changeStyle_bottom
{
border-color
:
rgb
(
135
,
135
,
135
);
border-width
:
0
0
2px
2px
;
border-style
:
solid
;
-webkit-transform
:
rotateZ
(
-45deg
);
transform
:
rotateZ
(
-45deg
);
width
:
10px
;
height
:
10px
;
position
:
absolute
;
right
:
calc
(
50%
-
7px
);
-webkit-transition
:
100
unset
;
transition
:
100
unset
;
top
:
3px
;
}
.changebox
{
position
:
relative
;
height
:
7px
;
}
.changeStyle_top
{
border-color
:
rgb
(
104
,
96
,
96
);
border-width
:
0
0
2px
2px
;
border-style
:
solid
;
-webkit-transform
:
rotateZ
(
-45deg
);
transform
:
rotateZ
(
136deg
);
width
:
10px
;
height
:
10px
;
position
:
absolute
;
right
:
calc
(
50%
-
7px
);
transition
:
100
unset
;
top
:
3px
;
}
.illustration-color
{
color
:
#ccc
;
}
.illustration-item
{
padding
:
10px
;
display
:
flex
;
align-items
:
center
;
}
.illustration
{
display
:
flex
;
justify-content
:
flex-end
;
}
.illustration-text
{
padding-left
:
10px
;
font-size
:
12px
;
}
\ No newline at end of file
src/components/app-calendar/style.css
0 → 100644
浏览文件 @
46ea5ac2
.mpvue-calendar
{
margin
:
auto
;
width
:
100%
;
min-width
:
300
rpx
;
background
:
#fff
;
user-select
:
none
;
position
:
relative
;
}
.calendar-tools
{
height
:
40px
;
font-size
:
20px
;
line-height
:
40px
;
color
:
#5e7a88
;
box-shadow
:
0
rpx
4
rpx
8
rpx
rgba
(
25
,
47
,
89
,
0.1
);
margin-bottom
:
30
rpx
;
border-top
:
1px
solid
rgba
(
200
,
200
,
200
,
.1
);
}
.calendar-prev
{
width
:
14.28571429%
;
float
:
left
;
text-align
:
center
;
}
.calendar-prev
img
,
.calendar-next
img
{
width
:
34
rpx
;
height
:
34
rpx
;
}
.calendar-info
{
padding-top
:
3px
;
font-size
:
16px
;
line-height
:
1.3
;
text-align
:
center
;
width
:
220
rpx
;
margin
:
0
auto
;
}
.calendar-info
>
div
.mc-month
{
margin
:
auto
;
height
:
40
rpx
;
width
:
100px
;
text-align
:
center
;
color
:
#5e7a88
;
overflow
:
hidden
;
position
:
relative
;
}
.calendar-info
>
div
.mc-month
.mc-month-inner
{
position
:
absolute
;
left
:
0
;
top
:
0
;
height
:
480
rpx
;
}
.month-transition
{
transition
:
top
.5s
cubic-bezier
(
0.075
,
0.82
,
0.165
,
1
);
}
.calendar-info
.mc-month-text
{
display
:
block
;
font-size
:
28
rpx
;
height
:
40
rpx
;
width
:
200
rpx
;
overflow
:
hidden
;
text-align
:
center
;
}
.calendar-info
>
div
.mc-month
.mc-month-inner
>
span
{
display
:
block
;
font-size
:
14px
;
height
:
20px
;
width
:
100px
;
overflow
:
hidden
;
text-align
:
center
;
}
.calendar-info
>
div
.mc-year
{
font-size
:
10px
;
line-height
:
1
;
color
:
#999
;
}
.calendar-next
{
width
:
14.28571429%
;
float
:
right
;
text-align
:
center
;
}
.mpvue-calendar
table
{
clear
:
both
;
width
:
100%
;
margin-bottom
:
10px
;
border-collapse
:
collapse
;
color
:
#444444
;
}
.mpvue-calendar
td
{
margin
:
2px
!important
;
padding
:
0px
0
;
width
:
14.28571429%
;
height
:
88
rpx
;
text-align
:
center
;
vertical-align
:
middle
;
font-size
:
14px
;
line-height
:
125%
;
cursor
:
pointer
;
position
:
relative
;
vertical-align
:
top
;
}
.mpvue-calendar
td
.mc-week
{
font-size
:
10px
;
pointer-events
:
none
!important
;
cursor
:
default
!important
;
}
.mpvue-calendar
td
.disabled
{
color
:
#ccc
;
}
.mpvue-calendar
td
.disabled
div
{
color
:
#ccc
;
}
.mpvue-calendar
td
span
{
display
:
block
;
height
:
76
rpx
;
width
:
76
rpx
;
font-size
:
28
rpx
;
line-height
:
76
rpx
;
margin
:
0px
auto
;
position
:
relative
;
z-index
:
3
;
}
.mpvue-calendar
td
:not
(
.disabled
)
span
.mc-date-red
{
color
:
#ea6151
;
}
.mc-today
{
color
:
#3b75fb
;
}
.mpvue-calendar
td
.selected
span
{
background-color
:
#3b75fb
;
color
:
#fff
;
border-radius
:
50%
;
}
.mpvue-calendar
td
.mc-text
{
position
:
absolute
;
top
:
28px
;
left
:
0
;
right
:
0
;
text-align
:
center
;
padding
:
2px
;
font-size
:
20
rpx
;
line-height
:
1.2
;
color
:
#444
;
z-index
:
4
;
}
.mpvue-calendar
td
.isGregorianFestival
,
.mpvue-calendar
td
.isTerm
,
.mpvue-calendar
td
.isLunarFestival
{
color
:
#ea6151
;
}
.mpvue-calendar
td
.selected
span
.mc-date-red
{
background-color
:
#3b75fb
;
color
:
#fff
;
}
.selected
.mc-text
{
color
:
#fff
!important
;
}
.mpvue-calendar
.lunarStyle
span
{
width
:
80
rpx
;
height
:
80
rpx
;
line-height
:
54
rpx
;
}
.mpvue-calendar
.lunarStyle
.mc-text
{
top
:
44
rpx
;
}
.mpvue-calendar
thead
td
{
text-transform
:
uppercase
;
height
:
30px
;
vertical-align
:
middle
;
}
.mc-head
{
margin-bottom
:
20
rpx
;
}
.mc-head
div
{
overflow
:
hidden
;
}
.mc-head-box
div
{
flex
:
1
;
text-align
:
center
;
}
.mc-head-box
{
display
:
flex
;
flex-direction
:
row
;
justify-content
:
center
;
align-content
:
space-between
}
.mc-head-box
div
{
font-size
:
28
rpx
;
}
.mc-body
tr
{
display
:
flex
;
flex-direction
:
row
;
justify-content
:
center
;
align-content
:
space-between
}
.mc-dot
{
width
:
10
rpx
;
height
:
10
rpx
;
background-color
:
#ea6151
;
border-radius
:
50%
;
margin
:
0
auto
;
margin-top
:
5
rpx
;
position
:
absolute
;
bottom
:
-5
rpx
;
left
:
50%
;
margin-left
:
-5
rpx
;
z-index
:
5
;
}
.remark-text
{
padding-left
:
8
rpx
;
padding-right
:
8
rpx
;
box-sizing
:
border-box
;
height
:
34
rpx
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
.slot-element
{
line-height
:
normal
;
position
:
absolute
;
z-index
:
5
;
}
.mpvue-calendar-change
{
position
:
absolute
;
left
:
0
rpx
;
top
:
85
rpx
;
right
:
0
rpx
;
bottom
:
0
rpx
;
background
:
#fff
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
flex-wrap
:
wrap
;
overflow
:
auto
;
transition
:
all
.5s
cubic-bezier
(
0.075
,
0.82
,
0.165
,
1
);
opacity
:
0
;
pointer-events
:
none
;
transform
:
translateY
(
-10px
);
z-index
:
9
;
}
.mpvue-calendar-change.show
{
opacity
:
1
;
pointer-events
:
auto
;
transform
:
translateY
(
0px
);
}
.mpvue-calendar-change
span
{
margin
:
4px
2%
;
display
:
inline-block
;
line-height
:
30px
;
border-radius
:
20px
;
text-align
:
center
;
color
:
#999
;
width
:
20%
;
float
:
left
;
text-align
:
center
;
border-radius
:
40px
;
box-sizing
:
border-box
;
margin-bottom
:
4%
;
}
.mpvue-calendar-change
span
.active
{
background-color
:
#587dff
;
box-shadow
:
2px
2px
2px
rgba
(
88
,
125
,
255
,
0.7
);
color
:
#fff
;
}
.mpvue-calendar-change
.calendar-week-switch-months
{
height
:
100%
;
padding
:
10
rpx
20
rpx
;
}
.mpvue-calendar-change
.calendar-week-switch-months
span
{
margin-bottom
:
20
rpx
;
margin-top
:
0px
;
font-size
:
26
rpx
;
line-height
:
40
rpx
;
}
.calendar-years
,
.calendar-months
{
height
:
50%
;
width
:
100%
;
padding
:
10px
;
box-sizing
:
border-box
;
position
:
relative
;
}
.calendar-years
:after
{
content
:
''
;
display
:
block
;
width
:
86%
;
height
:
1
rpx
;
background-color
:
#eee
;
position
:
absolute
;
bottom
:
2%
;
left
:
7%
;
}
/*range background*/
.mc-range-mode
.selected
.mc-range-bg
{
content
:
''
;
display
:
block
;
width
:
110
rpx
;
height
:
80
rpx
;
background-color
:
#01a1ed
;
position
:
absolute
;
top
:
0
rpx
;
left
:
50%
;
}
.mpvue-calendar
.mc-range-mode
.selected
.calendar-date
{
background-color
:
transparent
;
}
.mpvue-calendar
.mc-range-mode
.mc-range-row-last
span
.calendar-date
,
.mpvue-calendar
.mc-range-mode
.mc-range-row-first
span
.calendar-date
{
border-radius
:
6
rpx
;
background-color
:
#01a1ed
;
}
.mpvue-calendar
.mc-range-mode
.mc-range-month-first.selected
.calendar-date
,
.mpvue-calendar
.mc-range-mode
.mc-range-month-last.selected
.calendar-date
{
border-radius
:
6
rpx
;
background-color
:
#01a1ed
;
}
.mc-range-mode
.mc-range-month-last
.mc-range-bg
{
background-color
:
transparent
;
border-radius
:
6
rpx
;
}
.mc-range-mode
.mc-range-end
.mc-range-bg
,
.mc-range-mode
.mc-range-row-last
.mc-range-bg
{
display
:
none
;
}
.mpvue-calendar
.mc-range-mode
.mc-range-end
span
.calendar-date
,
.mpvue-calendar
.mc-range-mode
.mc-range-begin
span
.calendar-date
{
background-color
:
#3b75fb
;
color
:
#fff
;
border-radius
:
50%
;
}
.mc-range-mode
.mc-range-row-first.mc-range-end
.mc-range-bg
{
display
:
block
;
border-radius
:
6
rpx
;
width
:
40
rpx
;
left
:
5px
;
}
.mpvue-calendar
.mc-range-row-first.mc-range-end.month-first-date
.mc-range-bg
{
margin-left
:
0px
;
}
.mc-range-mode
.mc-range-row-last.mc-range-begin
.mc-range-bg
{
display
:
block
;
border-radius
:
4
rpx
;
width
:
40
rpx
;
right
:
10px
;
}
.mpvue-calendar
.mc-range-mode
.month-last-date.mc-range-begin
.mc-range-bg
{
display
:
block
;
width
:
40
rpx
;
border-radius
:
6
rpx
;
}
.mpvue-calendar
.mc-range-mode
.month-first-date.mc-range-end
.mc-range-bg
{
display
:
block
;
width
:
40
rpx
;
border-radius
:
6
rpx
;
left
:
10
rpx
;
}
.mpvue-calendar
.mc-range-mode
.mc-range-select-one
div
.mc-range-bg
{
display
:
none
!important
;
}
.mc-body
.mc-today-element
.calendar-date
{
background-color
:
rgba
(
25
,
47
,
89
,
0.1
);
border-radius
:
6
rpx
;
}
/*week switch*/
.mpvue-calendar
.mc-range-mode.week-switch
.month-last-date.mc-range-begin
.mc-range-bg
{
width
:
130%
;
border-radius
:
0px
20%
20%
0px
;
}
.mpvue-calendar
.mc-range-mode.week-switch
.mc-range-month-last
.mc-range-bg
{
background-color
:
#01a1ed
;
border-radius
:
0px
20%
20%
0px
;
}
/*month range*/
.mpvue-calendar
.month-range-mode
{
border-bottom
:
1px
solid
#f2f2f2
;
position
:
relative
;
}
.mpvue-calendar
.mc-month-range-mode-head
{
box-shadow
:
0
4px
8px
rgba
(
25
,
47
,
89
,
.1
);
padding
:
15
rpx
0
rpx
;
position
:
sticky
;
top
:
0px
;
background-color
:
#fff
;
z-index
:
9
;
}
.month-range-mode
.month-rang-head
{
text-align
:
left
;
margin
:
20
rpx
0px
;
padding-left
:
40
rpx
;
font-size
:
28
rpx
;
}
.month-range-mode
.mc-last-month
,
.month-range-mode
.mc-next-month
{
opacity
:
0
!important
;
}
.month-text-background
{
position
:
absolute
;
font-size
:
140px
;
width
:
100%
;
height
:
100%
;
text-align
:
center
;
line-height
:
2.4
;
}
src/components/app-mob-dropdown-list-dynamic/app-mob-dropdown-list-dynamic.less
已删除
100644 → 0
浏览文件 @
ca71dc91
.dropdown-list-dynamic{
display: inline-block;
}
src/components/app-mob-dropdown-list-dynamic/app-mob-dropdown-list-dynamic.vue
已删除
100644 → 0
浏览文件 @
ca71dc91
<
template
>
<!--
<ion-select
:disabled=
"disabled === true ? true : false"
:value=
"currentVal"
interface=
"popover"
@
ionChange=
"change"
>
<ion-select-option
v-for=
"(item,index) in items"
:key=
"index"
:value=
"item.value"
>
{{
(
$t
(
'userCustom.'
+
tag
+
'.'
+
item
.
value
)
!==
(
'userCustom.'
+
tag
+
'.'
+
item
.
value
))?
$t
(
'userCustom.'
+
tag
+
'.'
+
item
.
value
)
:
item
.
text
}}
</ion-select-option>
</ion-select>
-->
<div
class=
"app-mobile-select"
>
<ion-icon
v-if=
"currentVal"
name=
"close-circle-outline"
@
click=
"clear"
></ion-icon>
<ion-select
:value=
"currentVal"
:disabled=
"disabled ? disabled : false"
@
ionChange=
"change"
interface=
"action-sheet"
:cancel-text=
"$t('cancel_text')"
>
<template
v-for=
"item of items"
>
<ion-select-option
:key=
"item.value"
:value=
"item.value"
>
{{
(
$t
(
'userCustom.'
+
tag
+
'.'
+
item
.
value
)
!==
(
'userCustom.'
+
tag
+
'.'
+
item
.
value
))?
$t
(
'userCustom.'
+
tag
+
'.'
+
item
.
value
)
:
item
.
text
}}
</ion-select-option>
</
template
>
</ion-select>
</div>
</template>
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Watch
,
Prop
,
Model
}
from
'vue-property-decorator'
;
import
CodeListService
from
"@app-core/service/app/code-list-service"
;
@
Component
({
i18n
:
{
messages
:
{
'ZH-CN'
:
{
placeholder
:
'请选择...'
,
cancel_text
:
'取消'
},
'EN-US'
:
{
placeholder
:
'please select...'
,
cancel_text
:
'cancel'
}
}
}
})
export
default
class
DropDownListDynamic
extends
Vue
{
/**
* 代码表服务对象
*
* @type {CodeListService}
* @memberof DropDownListDynamic
*/
public
codeListService
:
CodeListService
=
new
CodeListService
();
/**
* 额外参数
*
* @type {*}
* @memberof DropDownListDynamic
*/
public
otherParam
:
any
;
/**
* 查询参数
* @type {*}
* @memberof DropDownListDynamic
*/
public
queryParam
:
any
;
/**
* 当前选中值
* @type {any}
* @memberof DropDownListDynamic
*/
@
Model
(
'change'
)
readonly
itemValue
!
:
any
;
/**
* 代码表标识
*
* @type {string}
* @memberof DropDownListDynamic
*/
@
Prop
()
public
tag
?:
string
;
/**
* 代码表类型
*
* @type {string}
* @memberof DropDownListDynamic
*/
@
Prop
()
public
codelistType
?:
string
;
/**
* 传入表单数据
*
* @type {*}
* @memberof DropDownListDynamic
*/
@
Prop
()
public
data
?:
any
;
/**
* 监听表单数据
*
* @memberof DropDownListDynamic
*/
@
Watch
(
'data'
,{
deep
:
true
})
onDataChange
(
newVal
:
any
,
val
:
any
){
if
(
newVal
){
this
.
handleOtherParam
();
}
}
/**
* 传入额外参数
*
* @type {*}
* @memberof DropDownListDynamic
*/
@
Prop
()
public
itemParam
?:
any
;
/**
* 是否禁用
* @type {any}
* @memberof DropDownListDynamic
*
*/
@
Prop
()
public
disabled
?:
any
;
/**
* 是否支持过滤
* @type {boolean}
* @memberof DropDownListDynamic
*/
@
Prop
()
public
filterable
?:
boolean
;
/**
* 下拉选提示内容
* @type {string}
* @memberof DropDownListDynamic
*/
@
Prop
()
public
placeholder
?:
string
;
/**
* 计算属性(当前值)
* @type {any}
* @memberof DropDownListDynamic
*/
set
currentVal
(
data
:
any
)
{
}
/**
* change事件
*/
public
change
(
data
:
any
)
{
this
.
$emit
(
'change'
,
data
.
detail
.
value
);
}
/**
* 获取值对象
*
* @memberof DropDownListDynamic
*/
get
currentVal
()
{
return
this
.
itemValue
;
}
/**
* 代码表
*
* @type {any[]}
* @memberof DropDownListDynamic
*/
public
items
:
any
[]
=
[];
/**
* 处理额外参数
*/
public
handleOtherParam
(){
if
(
this
.
itemParam
){
this
.
queryParam
=
{};
this
.
otherParam
=
this
.
itemParam
.
parentdata
;
if
(
this
.
otherParam
&&
Object
.
keys
(
this
.
otherParam
).
length
>
0
){
Object
.
keys
(
this
.
otherParam
).
forEach
((
item
:
any
)
=>
{
let
value
:
string
|
null
=
this
.
otherParam
[
item
];
if
(
value
&&
value
.
startsWith
(
'%'
)
&&
value
.
endsWith
(
'%'
))
{
const
key
=
value
.
substring
(
1
,
value
.
length
-
1
);
if
(
this
.
data
&&
this
.
data
.
hasOwnProperty
(
key
))
{
value
=
(
this
.
data
[
key
]
!==
null
&&
this
.
data
[
key
]
!==
undefined
)
?
this
.
data
[
key
]
:
null
;
}
else
{
value
=
null
;
}
}
Object
.
assign
(
this
.
queryParam
,{[
item
]:
value
});
})
}
}
}
/**
* vue 生命周期
*
* @memberof DropDownListDynamic
*/
public
created
()
{
if
(
this
.
tag
&&
Object
.
is
(
this
.
codelistType
,
"STATIC"
)){
const
codelist
=
this
.
$store
.
getters
.
getCodeList
(
this
.
tag
);
if
(
codelist
)
{
this
.
items
=
[...
JSON
.
parse
(
JSON
.
stringify
(
codelist
.
items
))];
}
else
{
console
.
log
(
`----
${
this
.
tag
}
----代码表不存在`
);
}
}
else
if
(
this
.
tag
&&
Object
.
is
(
this
.
codelistType
,
"DYNAMIC"
)){
this
.
codeListService
.
getItems
(
this
.
tag
,
this
.
queryParam
).
then
((
res
:
any
)
=>
{
this
.
items
=
res
;
}).
catch
((
error
:
any
)
=>
{
console
.
log
(
`----
${
this
.
tag
}
----代码表不存在`
);
});
}
}
/**
* 下拉点击事件
*
* @param {*} $event
* @memberof DropDownListDynamic
*/
public
onClick
(
$event
:
any
){
if
(
$event
){
if
(
this
.
tag
&&
Object
.
is
(
this
.
codelistType
,
"DYNAMIC"
)){
this
.
codeListService
.
getItems
(
this
.
tag
,
this
.
queryParam
).
then
((
res
:
any
)
=>
{
this
.
items
=
res
;
}).
catch
((
error
:
any
)
=>
{
console
.
log
(
`----
${
this
.
tag
}
----代码表不存在`
);
});
}
}
}
/**
* 清空值
* @memberof AppSelect
*/
public
clear
(){
this
.
currentVal
=
''
;
this
.
$emit
(
'change'
,
''
)
}
}
</
script
>
<
style
lang=
'less'
>
@import './app-mob-dropdown-list-dynamic.less';
</
style
>
\ No newline at end of file
src/components/app-mob-file-upload/app-mob-file-upload.vue
浏览文件 @
46ea5ac2
此差异已折叠。
点击以展开。
src/components/app-mob-picture/app-mob-picture.vue
浏览文件 @
46ea5ac2
...
@@ -397,9 +397,11 @@ export default class AppMobPicture extends Vue {
...
@@ -397,9 +397,11 @@ export default class AppMobPicture extends Vue {
public
changeLabelStyle
()
{
public
changeLabelStyle
()
{
document
.
querySelectorAll
(
".app-mobile-picture"
).
forEach
((
element
:
any
)
=>
{
document
.
querySelectorAll
(
".app-mobile-picture"
).
forEach
((
element
:
any
)
=>
{
let
prev
=
this
.
getNearEle
(
element
,
1
);
let
prev
=
this
.
getNearEle
(
element
,
1
);
if
(
prev
)
{
prev
.
style
.
transform
=
'none'
;
prev
.
style
.
transform
=
'none'
;
prev
.
style
.
marginBottom
=
"10px"
;
prev
.
style
.
marginBottom
=
"10px"
;
})
}
});
}
}
/**
/**
...
...
src/components/app-mob-radio-list/app-mob-radio-list.vue
浏览文件 @
46ea5ac2
...
@@ -10,28 +10,21 @@
...
@@ -10,28 +10,21 @@
</
template
>
</
template
>
<
script
lang=
"ts"
>
<
script
lang=
"ts"
>
import
{
import
{
Vue
,
Component
,
Prop
}
from
"vue-property-decorator"
;
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
}
from
"vue-property-decorator"
;
import
CodeListService
from
"@app-core/service/app/code-list-service"
;
import
CodeListService
from
"@app-core/service/app/code-list-service"
;
@
Component
({
@
Component
({
components
:
{}
components
:
{}
})
})
export
default
class
AppMobRadio
extends
Vue
{
export
default
class
AppMobRadio
extends
Vue
{
/**
/**
* 代码表服务对象
* 代码表服务对象
*
*
* @type {CodeListService}
* @type {CodeListService}
* @memberof AppMobRadio
* @memberof AppMobRadio
*/
*/
public
codeListService
:
CodeListService
=
CodeListService
.
getInstance
();
public
codeListService
:
CodeListService
=
new
CodeListService
();
/**
/**
* 代码表标识
* 代码表标识
...
@@ -39,7 +32,7 @@ export default class AppMobRadio extends Vue {
...
@@ -39,7 +32,7 @@ export default class AppMobRadio extends Vue {
* @type {string}
* @type {string}
* @memberof AppMobRadio
* @memberof AppMobRadio
*/
*/
@
Prop
()
public
tag
?
:
string
;
@
Prop
()
public
tag
!
:
string
;
/**
/**
* 代码表类型
* 代码表类型
...
@@ -75,29 +68,53 @@ export default class AppMobRadio extends Vue {
...
@@ -75,29 +68,53 @@ export default class AppMobRadio extends Vue {
/**
/**
* change事件
* change事件
*
* @param {*} data
* @memberof AppMobRadio
*/
*/
public
change
(
data
:
any
)
{
public
change
(
data
:
any
)
{
this
.
$emit
(
"change"
,
data
.
detail
.
value
);
this
.
$emit
(
"change"
,
data
.
detail
.
value
);
}
}
/**
* vue 生命周期
*
* @returns
* @memberof AppMobRadio
*/
public
created
()
{
public
created
()
{
if
(
this
.
tag
&&
this
.
type
)
{
if
(
!
this
.
tag
||
!
this
.
type
)
{
if
(
Object
.
is
(
this
.
type
,
"dynamic"
))
{
return
;
this
.
codeListService
}
.
getItems
(
this
.
tag
)
this
.
loadItems
();
.
then
((
res
:
any
)
=>
{
}
this
.
options
=
res
;
})
/**
.
catch
((
error
:
any
)
=>
{
* 加载 数据
*
* @private
* @returns {Promise<any>}
* @memberof AppMobRadio
*/
private
async
loadItems
():
Promise
<
any
>
{
if
(
Object
.
is
(
this
.
type
,
'dynamic'
))
{
const
response
:
any
=
await
this
.
codeListService
.
getItems
(
this
.
tag
);
if
(
response
&&
response
.
status
===
200
)
{
this
.
options
=
response
.
data
;
}
else
{
this
.
options
=
[];
this
.
options
=
[];
}
);
}
}
else
{
}
else
{
this
.
options
=
this
.
$store
.
getters
.
getCodeListItems
(
this
.
tag
);
this
.
options
=
this
.
$store
.
getters
.
getCodeListItems
(
this
.
tag
);
}
}
}
}
}
public
mounted
(){
/**
* vue 生命周期
*
* @memberof AppMobRadio
*/
public
mounted
()
{
this
.
changeLabelStyle
();
this
.
changeLabelStyle
();
}
}
...
@@ -108,7 +125,9 @@ export default class AppMobRadio extends Vue {
...
@@ -108,7 +125,9 @@ export default class AppMobRadio extends Vue {
public
changeLabelStyle
()
{
public
changeLabelStyle
()
{
document
.
querySelectorAll
(
".app-mobile-radio-list"
).
forEach
((
element
:
any
)
=>
{
document
.
querySelectorAll
(
".app-mobile-radio-list"
).
forEach
((
element
:
any
)
=>
{
let
prev
=
this
.
getNearEle
(
element
,
1
);
let
prev
=
this
.
getNearEle
(
element
,
1
);
if
(
prev
)
{
prev
.
style
.
transform
=
'none'
;
prev
.
style
.
transform
=
'none'
;
}
})
})
}
}
...
@@ -133,5 +152,6 @@ export default class AppMobRadio extends Vue {
...
@@ -133,5 +152,6 @@ export default class AppMobRadio extends Vue {
}
}
}
}
</
script
>
</
script
>
<
style
lang=
"less"
>
<
style
lang=
"less"
>
</
style
>
</
style
>
\ No newline at end of file
src/ibiz-core/control-service/calendar-service-base.ts
浏览文件 @
46ea5ac2
...
@@ -32,6 +32,7 @@ export class CalendarServiceBase extends MdServiceBase {
...
@@ -32,6 +32,7 @@ export class CalendarServiceBase extends MdServiceBase {
* @memberof CalendarServiceBase
* @memberof CalendarServiceBase
*/
*/
protected
async
loadDEDataSet
(
action
:
string
,
context
:
any
,
data
:
any
,
calendarItem
:
string
,
serviceName
?:
string
):
Promise
<
any
[]
>
{
protected
async
loadDEDataSet
(
action
:
string
,
context
:
any
,
data
:
any
,
calendarItem
:
string
,
serviceName
?:
string
):
Promise
<
any
[]
>
{
this
.
model
.
itemType
=
calendarItem
;
if
(
serviceName
)
{
if
(
serviceName
)
{
const
service
:
any
=
await
this
.
getService
(
serviceName
);
const
service
:
any
=
await
this
.
getService
(
serviceName
);
const
response
:
HttpResponse
=
await
service
[
action
](
context
,
data
);
const
response
:
HttpResponse
=
await
service
[
action
](
context
,
data
);
...
...
src/utils/interceptor/ignore-proxy.ts
0 → 100644
浏览文件 @
46ea5ac2
const
ignoreProxyMap
:
Map
<
string
,
string
>
=
new
Map
();
ignoreProxyMap
.
set
(
'./assets/json/data-dictionary.json'
,
'./assets/json/data-dictionary.json'
)
export
default
ignoreProxyMap
;
\ No newline at end of file
src/utils/interceptor/interceptor.ts
浏览文件 @
46ea5ac2
import
{
Store
}
from
'vuex'
;
import
{
Store
}
from
'vuex'
;
import
axios
from
'axios'
;
import
axios
from
'axios'
;
import
Router
from
'vue-router'
;
import
Router
from
'vue-router'
;
import
ignoreProxyMap
from
'./ignore-proxy'
;
/**
/**
...
@@ -87,9 +88,13 @@ export class Interceptors {
...
@@ -87,9 +88,13 @@ export class Interceptors {
const
token
=
window
.
localStorage
.
getItem
(
'token'
);
const
token
=
window
.
localStorage
.
getItem
(
'token'
);
config
.
headers
.
Authorization
=
`Bearer
${
token
}
`
;
config
.
headers
.
Authorization
=
`Bearer
${
token
}
`
;
}
}
// if (!config.url.startsWith('https://') && !config.url.startsWith('http://')) {
// config.url = Environment.BaseUrl + config.url;
// 混合 app 代理处理
// }
if
(
Object
.
is
(
process
.
env
.
VUE_APP_CURRENTMODE
,
'hybridapp'
)
&&
!
config
.
url
.
startsWith
(
'https://'
)
&&
!
config
.
url
.
startsWith
(
'http://'
))
{
if
(
!
ignoreProxyMap
.
has
(
config
.
url
))
{
config
.
url
=
process
.
env
.
VUE_APP_PROXY
+
config
.
url
;
}
}
return
config
;
return
config
;
},
(
error
:
any
)
=>
{
},
(
error
:
any
)
=>
{
return
Promise
.
reject
(
error
);
return
Promise
.
reject
(
error
);
...
...
tslint.json
浏览文件 @
46ea5ac2
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
},
},
"rules"
:
{
"rules"
:
{
"quotemark"
:
false
,
"quotemark"
:
false
,
"indent"
:
[
true
,
"spaces"
,
2
],
"indent"
:
[
true
,
"spaces"
,
4
],
"interface-name"
:
false
,
"interface-name"
:
false
,
"ordered-imports"
:
false
,
"ordered-imports"
:
false
,
"object-literal-sort-keys"
:
false
,
"object-literal-sort-keys"
:
false
,
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录