From 1b82c204ac405f4c73cfd6250d17166e3cce658c Mon Sep 17 00:00:00 2001 From: xuhuajiao <13476289682@163.com> Date: Tue, 20 Sep 2022 15:25:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=B1=8F-api/style?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/library.js | 40 ++++++++- src/assets/images/default-img.png | Bin 0 -> 6918 bytes src/assets/styles/_variables.scss | 97 --------------------- src/assets/styles/ball-running-animate.css | 10 +-- src/assets/styles/index.scss | 24 ++++- src/assets/styles/style.scss | 8 +- src/components/echart/lineChartService.vue | 18 ++-- src/utils/index.js | 46 ++++++++++ src/views/accessToLibrary/index.vue | 41 +++++++-- src/views/data.json | 90 ------------------- src/views/index.vue | 2 +- src/views/indexSelfService.vue | 4 +- src/views/lengingRanking/index.vue | 47 ++++------ src/views/newBookRecommend/index.vue | 78 ++++++++--------- src/views/notice/index.vue | 49 +++++------ src/views/readStar/index.vue | 73 +++++++++------- src/views/todayBorrowed/index.vue | 3 +- src/views/totalLending/index.vue | 17 +--- 18 files changed, 286 insertions(+), 361 deletions(-) create mode 100644 src/assets/images/default-img.png delete mode 100644 src/assets/styles/_variables.scss delete mode 100644 src/views/data.json diff --git a/src/api/library.js b/src/api/library.js index 224fb39..0726005 100644 --- a/src/api/library.js +++ b/src/api/library.js @@ -19,7 +19,45 @@ export function FetchBorrowRank(params) { }) } +// 阅读之星 +export function FetchBorrowStar(params) { + return request({ + url: '/txhtsg/borrowStar', + method: 'get', + params: params + }) +} + +// 新书推荐 +export function FetchNewBookRecommend(params) { + return request({ + url: '/txhtsg/newBookRecommend', + method: 'get', + params: params + }) +} + +// 通知公告 +export function FetchInitNotice(params) { + return request({ + url: '/txhtsg/initNotice', + method: 'get', + params: params + }) +} + +// 进馆人数 +export function FetchInitIntoNum(params) { + return request({ + url: '/txhtsg/initIntoNum', + method: 'get', + params: params + }) +} + export default { FetchHalfYearBorrowNum, - FetchBorrowRank + FetchBorrowRank, + FetchBorrowStar, + FetchNewBookRecommend } diff --git a/src/assets/images/default-img.png b/src/assets/images/default-img.png new file mode 100644 index 0000000000000000000000000000000000000000..5b1fdd543b3f8189917b30f682f70c7971640a6c GIT binary patch literal 6918 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 margin top -//spacing -$spacing-types: ( - m: margin, - p: padding, -); -$spacing-directions: ( - t: top, - r: right, - b: bottom, - l: left, -); -$spacing-base-size: 0.2rem; -$spacing-sizes: ( - 0: 0, - 1: 0.25, - 2: 0.5, - 3: 1, - 4: 1.5, - 5: 3, -); diff --git a/src/assets/styles/ball-running-animate.css b/src/assets/styles/ball-running-animate.css index 703374d..e87b926 100644 --- a/src/assets/styles/ball-running-animate.css +++ b/src/assets/styles/ball-running-animate.css @@ -26,8 +26,8 @@ border: 0 solid currentColor; } .ball-running-dots { - width: 12px; - height: 12px; + width: 16px; + height: 16px; } .ball-running-dots > div { position: absolute; @@ -56,7 +56,7 @@ 0%{ width: 100%; height: 100%; - transform: translateY(0) translateX(-500%) scale(50%,50%); + transform: translateY(0) translateX(-500%) scale(-.1); opacity: 0.5; } 80% { @@ -79,7 +79,7 @@ 100% { width: 100%; height: 100%; - transform: translateY(0) translateX(-500%) scale(50%,50%); + transform: translateY(0) translateX(-500%); opacity: 1; } } @@ -87,7 +87,7 @@ 0%{ width: 100%; height: 100%; - transform: translateY(0) translateX(500%) scale(50%,50%); + transform: translateY(0) translateX(500%) scale(-.1); opacity: 0.5; } 80% { diff --git a/src/assets/styles/index.scss b/src/assets/styles/index.scss index 36e7bef..357e1ab 100644 --- a/src/assets/styles/index.scss +++ b/src/assets/styles/index.scss @@ -166,10 +166,16 @@ align-items: center; padding: 0.1rem 0.25rem; .book-img{ - display: block; width: 0.825rem; height: 1.075rem; margin-right: 0.35rem; + background: url('~@/assets/images/default-img.png') no-repeat center center; + background-size: contain; + img{ + display: block; + width: 100%; + height: 100%; + } } .book-info{ flex: 1; @@ -298,18 +304,32 @@ .module-content{ display: flex; justify-content: space-between; + width: 100%; padding: 0.25rem 0.375rem 0.5rem 0.375rem; .notice-icon-gif{ display: block; - width: 3.375rem; + width: 2.375rem; height: 2.875rem; background: url('~@/assets/images/notice.gif') no-repeat left top; background-size: contain; margin-right: 0.15rem; } .seamless-warp{ + width: calc(100vw); height: 3.1rem; overflow: hidden; + .notice-txt { + animation: myMove 20s linear infinite; + animation-fill-mode: forwards; + } + @keyframes myMove { + 0% { + transform: translateY(2rem); + } + 100% { + transform: translateY(-6rem); + } + } } } } diff --git a/src/assets/styles/style.scss b/src/assets/styles/style.scss index a8c581c..68f4955 100644 --- a/src/assets/styles/style.scss +++ b/src/assets/styles/style.scss @@ -1,4 +1,3 @@ -@import "./variables"; @import '~@/assets/iconfont/iconfont.css'; // 全局样式 @@ -35,6 +34,13 @@ ul{ } } +img[src=""],img:not([src]){ + opacity: 0; + border:none; + visibility: hidden; + max-width: none; +} + .clearfix { &::after { content: ""; diff --git a/src/components/echart/lineChartService.vue b/src/components/echart/lineChartService.vue index 2ed52fa..b48fd39 100644 --- a/src/components/echart/lineChartService.vue +++ b/src/components/echart/lineChartService.vue @@ -9,13 +9,12 @@ export default { name: 'LineEcharts', mixins: [resize], props: { - className: { - type: String, - default: '' - }, chartData: { type: Object, - required: true + require: true, + default: function() { + return {} + } }, width: { type: String, @@ -34,8 +33,11 @@ export default { watch: { chartData: { deep: true, + mmediate: true, handler(val) { - this.setOptions(val) + setTimeout(() => { + this.setOptions(val) + }, 100) } } }, @@ -100,7 +102,6 @@ export default { } }, axisLabel: { - fontWeight: 'bold', color: '#fff' }, data: ['04:00', '08:00', '12:00', '16:00', '20:00', '24:00'] @@ -114,8 +115,7 @@ export default { interval: 250, axisLabel: { textStyle: { - color: '#fff', - fontWeight: 'bold' + color: '#fff' } }, // 轴线 diff --git a/src/utils/index.js b/src/utils/index.js index 3356ab6..114fe35 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -33,6 +33,52 @@ export function debounce(func, wait, immediate) { } } +/** + * Parse the time to string + * @param {(Object|string|number)} time + * @param {string} cFormat + * @returns {string} + */ +export function parseTime(time, cFormat) { + if (arguments.length === 0) { + return null + } + const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}' + let date + if (typeof time === 'undefined' || time === null || time === 'null') { + return '' + } else if (typeof time === 'object') { + date = time + } else { + if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) { + time = parseInt(time) + } + if ((typeof time === 'number') && (time.toString().length === 10)) { + time = time * 1000 + } + date = new Date(time) + } + const formatObj = { + y: date.getFullYear(), + m: date.getMonth() + 1, + d: date.getDate(), + h: date.getHours(), + i: date.getMinutes(), + s: date.getSeconds(), + a: date.getDay() + } + const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => { + let value = formatObj[key] + // Note: getDay() returns 0 on Sunday + if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value ] } + if (result.length > 0 && value < 10) { + value = '0' + value + } + return value || 0 + }) + return time_str +} + // 获取当前日期时间 export function getCurrentTime() { const yy = new Date().getFullYear() diff --git a/src/views/accessToLibrary/index.vue b/src/views/accessToLibrary/index.vue index e9af46a..ed785c0 100644 --- a/src/views/accessToLibrary/index.vue +++ b/src/views/accessToLibrary/index.vue @@ -2,38 +2,56 @@
总进馆人数 - +
-
+
月进馆人数 - +
今日进馆人数 - + +
+
+ 今日出馆人数 +
diff --git a/src/views/data.json b/src/views/data.json deleted file mode 100644 index 54398c8..0000000 --- a/src/views/data.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "ranking":[ - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "大个子狗与小个子猫", - "author": "高小定", - "ranking": 1 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "森林大探险", - "author": "卷毛老师", - "ranking": 2 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "家有喵星人", - "author": "查尔斯", - "ranking": 3 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "奇妙的冒险", - "author": "李小飞", - "ranking": 4 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "豆豆龙成长记", - "author": "卷毛老师", - "ranking": 5 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "奇妙的冒险", - "author": "李小飞", - "ranking": 6 - }, - { - "img":"https://qiniu.aiyxlib.com/bg.png", - "title": "豆豆龙成长记", - "author": "卷毛老师", - "ranking": 7 - } - ], - "readstar":[ - { - "des": "读者张山上周借阅图书30册", - "date": "2022-09-06", - "ranking": 1 - }, - { - "des": "读者张山上周借阅图书30册", - "date": "2022-09-06", - "ranking": 2 - }, - { - "des": "读者张山上周借阅图书30册", - "date": "2022-09-06", - "ranking": 3 - }, - { - "des": "读者张山上周借阅图书30册", - "date": "2022-09-06", - "ranking": 4 - }, - { - "des": "读者张山上周借阅图书30册", - "date": "2022-09-06", - "ranking": 5 - } - , - { - "des": "读者张山上周借阅图书30册", - "date": "2022-09-06", - "ranking": 6 - }, - { - "des": "读者张山上周借阅图书30册", - "date": "2022-09-06", - "ranking": 7 - } - , - { - "des": "读者张山上周借阅图书30册", - "date": "2022-09-06", - "ranking": 8 - } - ] -} \ No newline at end of file diff --git a/src/views/index.vue b/src/views/index.vue index aaaf21e..660d261 100644 --- a/src/views/index.vue +++ b/src/views/index.vue @@ -7,7 +7,7 @@
- +