Compare commits

..

No commits in common. "dev" and "main" have entirely different histories.
dev ... main

726 changed files with 2112 additions and 89127 deletions

3
.env
View File

@ -1,3 +1,4 @@
VITE_BASE_URL=http://192.168.0.17:8001/
VITE_PROXY=/api VITE_PROXY=/api
VITE_FILE_URL=https://file.zcloudchina.com/YTHFile VITE_FILE_URL=https://file.zcloudchina.com/YTHFile
VITE_TEMPLATE_URL=https://qaaq.qhdsafety.com/file/

View File

@ -1,3 +0,0 @@
VITE_BASE_URL=http://192.168.0.16:7082/
VITE_ON_LINE_WEB_SOCKET_URL=ws://192.168.20.240:8869
VITE_LEARNING_WEB_SOCKET_URL=ws://192.168.20.240:8899

View File

@ -1,16 +0,0 @@
#测试
VITE_BASE_URL=http://192.168.20.240:8412/integrated_traffic/
#websocket t掉线
VITE_ON_LINE_WEB_SOCKET_URL=ws://192.168.20.240:8869
#websocket 在线学习
VITE_LEARNING_WEB_SOCKET_URL=ws://192.168.20.240:8899
##正式
#VITE_BASE_URL=http://39.101.166.211:8073/integrated_traffic/
##websocket t掉线
#VITE_ON_LINE_WEB_SOCKET_URL=ws://39.101.166.211:8869
## VITE_ON_LINE_WEB_SOCKET_URL=wss://qaaqjt.qhdsafety.com/disconnected/
##websocket 在线学习
#VITE_LEARNING_WEB_SOCKET_URL=ws://39.101.166.211:8899
## VITE_LEARNING_WEB_SOCKET_URL=wss://qaaqjt.qhdsafety.com/onlinelearning/

View File

@ -2,4 +2,3 @@ public
dist dist
package.json package.json
!.prettierrc.cjs !.prettierrc.cjs
env.d.ts

View File

@ -5,7 +5,7 @@ module.exports = {
node: true node: true
}, },
extends: [ extends: [
"plugin:vue/vue3-recommended", "plugin:vue/vue3-essential",
"standard", "standard",
"@vue/prettier", "@vue/prettier",
"eslint:recommended" "eslint:recommended"
@ -18,23 +18,9 @@ module.exports = {
rules: { rules: {
"no-console": "warn", "no-console": "warn",
"vue/multi-word-component-names": "off", "vue/multi-word-component-names": "off",
"vue/no-v-html": "off", camelcase: "off",
"vue/require-default-prop": "off", eqeqeq: "error",
"camelcase": "off",
"eqeqeq": "error",
"vue/no-template-shadow": "error",
"vue/attribute-hyphenation": "error",
"vue/html-end-tags": "error",
"vue/eqeqeq": "error", "vue/eqeqeq": "error",
"vue/component-name-in-template-casing": ["error", "kebab-case"],
"vue/enforce-style-attribute": [
"error",
{ "allow": ["scoped", "module"] }
],
"vue/v-on-event-hyphenation": ["error", "always",{
"autofix": true,
}],
"vue/require-explicit-emits": "error",
"no-unused-vars": [ "no-unused-vars": [
"error", "error",
{ vars: "all", args: "after-used", ignoreRestSiblings: false } { vars: "all", args: "after-used", ignoreRestSiblings: false }
@ -44,7 +30,5 @@ module.exports = {
globals: { globals: {
BMapGL: "readonly", BMapGL: "readonly",
JSEncrypt: "readonly", JSEncrypt: "readonly",
Aliplayer: "readonly",
AliyunUpload: "readonly",
} }
}; };

27
env.d.ts vendored
View File

@ -1,27 +0,0 @@
interface ImportMetaEnv {
// Auto generate by env-parse
/**
* undefined
*/
readonly VITE_PROXY: string
/**
* undefined
*/
readonly VITE_FILE_URL: string
/**
* undefined
*/
readonly VITE_TEMPLATE_URL: string
/**
* undefined
*/
readonly VITE_BASE_URL: string
/**
* undefined
*/
readonly VITE_ON_LINE_WEB_SOCKET_URL: string
/**
* undefined
*/
readonly VITE_LEARNING_WEB_SOCKET_URL: string
}

View File

@ -2,10 +2,9 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.ico" /> <link rel="icon" type="image/svg+xml" href="/vite.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" />
<title>交通运输安全生产综合管理系统</title> <title>管理平台</title>
</head> </head>
<body> <body>
<div id="app"></div> <div id="app"></div>
@ -16,10 +15,5 @@
src="https://api.map.baidu.com/api?v=1.0&type=webgl&ak=OElqFYoKiAH8KFtph8ftLKF5NlNrbCUr"></script> src="https://api.map.baidu.com/api?v=1.0&type=webgl&ak=OElqFYoKiAH8KFtph8ftLKF5NlNrbCUr"></script>
<script type="text/javascript" src="/jsencrypt.min.js"></script> <script type="text/javascript" src="/jsencrypt.min.js"></script>
<script type="module" src="/src/main.js"></script> <script type="module" src="/src/main.js"></script>
<link rel="stylesheet" href="https://g.alicdn.com/apsara-media-box/imp-web-player/2.16.3/skins/default/aliplayer-min.css" />
<script charset="utf-8" type="text/javascript" src="https://g.alicdn.com/apsara-media-box/imp-web-player/2.16.3/aliplayer-min.js"></script>
<script src="/aliyun-upload-sdk-1.5.6/lib/es6-promise.min.js"></script>
<script src="/aliyun-upload-sdk-1.5.6/lib/aliyun-oss-sdk-6.17.1.min.js"></script>
<script src="/aliyun-upload-sdk-1.5.6/aliyun-upload-sdk-1.5.6.min.js"></script>
</body> </body>
</html> </html>

289
node_modules/vue-esign/src/index.vue generated vendored
View File

@ -1,289 +0,0 @@
<template>
<canvas ref="canvas" @mousedown="mouseDown" @mousemove="mouseMove" @mouseup="mouseUp"
@touchstart="touchStart" @touchmove="touchMove" @touchend="touchEnd"></canvas>
</template>
<script>
export default {
props: {
width: {
type: Number,
default: 800
},
height: {
type: Number,
default: 300
},
lineWidth: {
type: Number,
default: 4
},
lineColor: {
type: String,
default: '#000000'
},
bgColor: {
type: String,
default: ''
},
isCrop: {
type: Boolean,
default: false
},
isClearBgColor: {
type: Boolean,
default: true
},
format: {
type: String,
default: 'image/png'
},
quality: {
type: Number,
default: 1
}
},
data () {
return {
hasDrew: false,
resultImg: '',
points: [],
canvasTxt: null,
startX: 0,
startY: 0,
isDrawing: false,
sratio: 1
}
},
computed: {
ratio () {
return this.height / this.width
},
stageInfo () {
return this.$refs.canvas.getBoundingClientRect()
},
myBg () {
return this.bgColor ? this.bgColor : 'rgba(255, 255, 255, 0)'
}
},
watch: {
'myBg': function (newVal) {
this.$refs.canvas.style.background = newVal
}
},
beforeMount () {
window.addEventListener('resize', this.$_resizeHandler)
},
beforeDestroy () {
window.removeEventListener('resize', this.$_resizeHandler)
},
mounted () {
const canvas = this.$refs.canvas
canvas.height = this.height
canvas.width = this.width
canvas.style.background = this.myBg
this.$_resizeHandler()
//
document.onmouseup = () => {
this.isDrawing = false
}
},
methods: {
$_resizeHandler () {
const canvas = this.$refs.canvas
canvas.style.width = this.width + "px"
const realw = parseFloat(window.getComputedStyle(canvas).width)
canvas.style.height = this.ratio * realw + "px";
this.canvasTxt = canvas.getContext('2d')
this.canvasTxt.scale(1 * this.sratio, 1 * this.sratio)
this.sratio = realw / this.width
this.canvasTxt.scale(1 / this.sratio, 1 / this.sratio)
},
// pc
mouseDown (e) {
e = e || event
e.preventDefault()
this.isDrawing = true
this.hasDrew = true
let obj = {
x: e.offsetX,
y: e.offsetY
}
this.drawStart(obj)
},
mouseMove (e) {
e = e || event
e.preventDefault()
if (this.isDrawing) {
let obj = {
x: e.offsetX,
y: e.offsetY
}
this.drawMove(obj)
}
},
mouseUp (e) {
e = e || event
e.preventDefault()
let obj = {
x: e.offsetX,
y: e.offsetY
}
this.drawEnd(obj)
this.isDrawing = false
},
// mobile
touchStart (e) {
e = e || event
e.preventDefault()
this.hasDrew = true
if (e.touches.length === 1) {
let obj = {
x: e.targetTouches[0].clientX - this.$refs.canvas.getBoundingClientRect().left,
y: e.targetTouches[0].clientY - this.$refs.canvas.getBoundingClientRect().top
}
this.drawStart(obj)
}
},
touchMove (e) {
e = e || event
e.preventDefault()
if (e.touches.length === 1) {
let obj = {
x: e.targetTouches[0].clientX - this.$refs.canvas.getBoundingClientRect().left,
y: e.targetTouches[0].clientY - this.$refs.canvas.getBoundingClientRect().top
}
this.drawMove(obj)
}
},
touchEnd (e) {
e = e || event
e.preventDefault()
if (e.touches.length === 1) {
let obj = {
x: e.targetTouches[0].clientX - this.$refs.canvas.getBoundingClientRect().left,
y: e.targetTouches[0].clientY - this.$refs.canvas.getBoundingClientRect().top
}
this.drawEnd(obj)
}
},
//
drawStart (obj) {
this.startX = obj.x
this.startY = obj.y
this.canvasTxt.beginPath()
this.canvasTxt.moveTo(this.startX, this.startY)
this.canvasTxt.lineTo(obj.x, obj.y)
this.canvasTxt.lineCap = 'round'
this.canvasTxt.lineJoin = 'round'
this.canvasTxt.lineWidth = this.lineWidth * this.sratio
this.canvasTxt.stroke()
this.canvasTxt.closePath()
this.points.push(obj)
},
drawMove (obj) {
this.canvasTxt.beginPath()
this.canvasTxt.moveTo(this.startX, this.startY)
this.canvasTxt.lineTo(obj.x, obj.y)
this.canvasTxt.strokeStyle = this.lineColor
this.canvasTxt.lineWidth = this.lineWidth * this.sratio
this.canvasTxt.lineCap = 'round'
this.canvasTxt.lineJoin = 'round'
this.canvasTxt.stroke()
this.canvasTxt.closePath()
this.startY = obj.y
this.startX = obj.x
this.points.push(obj)
},
drawEnd (obj) {
this.canvasTxt.beginPath()
this.canvasTxt.moveTo(this.startX, this.startY)
this.canvasTxt.lineTo(obj.x, obj.y)
this.canvasTxt.lineCap = 'round'
this.canvasTxt.lineJoin = 'round'
this.canvasTxt.stroke()
this.canvasTxt.closePath()
this.points.push(obj)
this.points.push({x: -1, y: -1})
},
//
generate (options) {
let imgFormat = options && options.format ? options.format: this.format
let imgQuality = options && options.quality ? options.quality: this.quality
const pm = new Promise((resolve, reject) => {
if (!this.hasDrew) {
reject(`Warning: Not Signned!`)
return
}
var resImgData = this.canvasTxt.getImageData(0, 0, this.$refs.canvas.width, this.$refs.canvas.height)
this.canvasTxt.globalCompositeOperation = "destination-over"
this.canvasTxt.fillStyle = this.myBg
this.canvasTxt.fillRect(0,0,this.$refs.canvas.width ,this.$refs.canvas.height)
this.resultImg = this.$refs.canvas.toDataURL(imgFormat, imgQuality)
var resultImg = this.resultImg
this.canvasTxt.clearRect(0, 0, this.$refs.canvas.width ,this.$refs.canvas.height)
this.canvasTxt.putImageData(resImgData, 0, 0)
this.canvasTxt.globalCompositeOperation = "source-over"
if (this.isCrop) {
const crop_area = this.getCropArea(resImgData.data)
var crop_canvas = document.createElement('canvas')
const crop_ctx = crop_canvas.getContext('2d')
crop_canvas.width = crop_area[2] - crop_area[0]
crop_canvas.height = crop_area[3] - crop_area[1]
const crop_imgData = this.canvasTxt.getImageData(...crop_area)
crop_ctx.globalCompositeOperation = "destination-over"
crop_ctx.putImageData(crop_imgData, 0, 0)
crop_ctx.fillStyle = this.myBg
crop_ctx.fillRect(0, 0, crop_canvas.width , crop_canvas.height)
resultImg = crop_canvas.toDataURL(imgFormat, imgQuality)
crop_canvas = null
}
resolve(resultImg)
})
return pm
},
reset () {
this.canvasTxt.clearRect(
0,
0,
this.$refs.canvas.width,
this.$refs.canvas.height
)
if (this.isClearBgColor) {
this.$emit('update:bgColor', '')
this.$refs.canvas.style.background = 'rgba(255, 255, 255, 0)'
}
this.points = []
this.hasDrew = false
this.resultImg = ''
},
getCropArea (imgData) {
var topX = this.$refs.canvas.width; var btmX = 0; var topY = this.$refs.canvas.height; var btnY = 0
for (var i = 0; i < this.$refs.canvas.width; i++) {
for (var j = 0; j < this.$refs.canvas.height; j++) {
var pos = (i + this.$refs.canvas.width * j) * 4
if (imgData[pos] > 0 || imgData[pos + 1] > 0 || imgData[pos + 2] || imgData[pos + 3] > 0) {
btnY = Math.max(j, btnY)
btmX = Math.max(i, btmX)
topY = Math.min(j, topY)
topX = Math.min(i, topX)
}
}
}
topX++
btmX++
topY++
btnY++
const data = [topX, topY, btmX, btnY]
return data
}
}
}
</script>
<style scoped>
canvas {
max-width: 100%;
display: block;
}
</style>

3410
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -10,69 +10,51 @@
"lint": "eslint --ext .js,.vue --fix src .prettierrc.cjs" "lint": "eslint --ext .js,.vue --fix src .prettierrc.cjs"
}, },
"dependencies": { "dependencies": {
"@element-plus/icons-vue": "^2.3.1", "@element-plus/icons-vue": "^2.1.0",
"@icon-park/vue-next": "^1.4.2", "@icon-park/vue-next": "^1.4.2",
"@vueuse/core": "^9.13.0", "@vueuse/core": "^9.13.0",
"@vueuse/integrations": "^10.7.1", "@vueuse/integrations": "^10.7.0",
"@wangeditor/editor": "^5.1.23",
"@wangeditor/editor-for-vue": "^5.1.12",
"animate.css": "^4.1.1", "animate.css": "^4.1.1",
"autofit.js": "^3.0.7",
"axios": "^1.6.3", "axios": "^1.6.3",
"dayjs": "^1.11.10", "dayjs": "^1.11.10",
"echarts": "^5.4.3", "element-plus": "^2.4.4",
"element-plus": "^2.6.1",
"html2canvas": "^1.4.1",
"jspdf": "^2.5.1",
"lodash-es": "^4.17.21", "lodash-es": "^4.17.21",
"mitt": "^3.0.1", "mitt": "^3.0.1",
"nanoid": "^5.0.4",
"normalize.css": "^8.0.1", "normalize.css": "^8.0.1",
"pako": "^2.1.0",
"pinia": "^2.1.7", "pinia": "^2.1.7",
"pinia-plugin-persistedstate": "^3.2.1", "pinia-plugin-persistedstate": "^3.2.0",
"qrcode": "^1.5.3", "qrcode": "^1.5.3",
"qs": "^6.11.2", "qs": "^6.11.2",
"relation-graph": "^2.1.24",
"throttle-debounce": "^5.0.0", "throttle-debounce": "^5.0.0",
"v-viewer": "^3.0.11", "v-viewer": "^3.0.11",
"vant": "^4.8.4", "vue": "^3.3.13",
"viewerjs": "^1.11.6",
"vue": "^3.4.3",
"vue-countup-v3": "^1.4.1",
"vue-draggable-plus": "^0.3.4",
"vue-esign": "^1.1.4",
"vue-router": "^4.2.5", "vue-router": "^4.2.5",
"vue3-pdfjs": "^0.1.6",
"vue3-print-nb": "^0.1.4", "vue3-print-nb": "^0.1.4",
"vue3-puzzle-vcode": "^1.1.5", "vue3-puzzle-vcode": "^1.0.16"
"vue3-seamless-scroll": "^2.0.1",
"xlsx": "^0.18.5"
}, },
"devDependencies": { "devDependencies": {
"@our-patches/postcss-px-to-viewport": "^1.2.0", "@our-patches/postcss-px-to-viewport": "^1.2.0",
"@types/node": "^18.19.4", "@types/node": "^18.18.4",
"@vitejs/plugin-basic-ssl": "^1.0.2", "@vitejs/plugin-basic-ssl": "^1.0.1",
"@vitejs/plugin-vue": "^4.6.2", "@vitejs/plugin-vue": "^4.4.0",
"@vue/eslint-config-prettier": "^7.1.0", "@vue/eslint-config-prettier": "^7.1.0",
"autoprefixer": "^10.4.16", "autoprefixer": "^10.4.16",
"eslint": "^8.56.0", "eslint": "^8.51.0",
"eslint-config-prettier": "^8.10.0", "eslint-config-prettier": "^8.10.0",
"eslint-config-standard": "^17.1.0", "eslint-config-standard": "^17.1.0",
"eslint-plugin-import": "^2.29.1", "eslint-plugin-import": "^2.28.1",
"eslint-plugin-n": "^15.7.0", "eslint-plugin-n": "^15.7.0",
"eslint-plugin-prettier": "^4.2.1", "eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-promise": "^6.1.1", "eslint-plugin-promise": "^6.1.1",
"eslint-plugin-vue": "^9.19.2", "eslint-plugin-vue": "^9.17.0",
"prettier": "^2.8.8", "prettier": "^2.8.8",
"sass": "^1.69.0", "sass": "^1.69.0",
"unplugin-auto-import": "^0.12.2", "unplugin-auto-import": "^0.12.2",
"unplugin-vue-components": "^0.22.12", "unplugin-vue-components": "^0.22.12",
"vite": "^4.5.1", "vite": "^4.4.11",
"vite-plugin-enhance-log": "^0.5.2", "vite-plugin-enhance-log": "^0.5.2",
"vite-plugin-env-parse": "^1.0.10",
"vite-plugin-eslint": "^1.8.1", "vite-plugin-eslint": "^1.8.1",
"vite-plugin-remove-console": "^2.2.0", "vite-plugin-remove-console": "^2.1.1",
"vue-eslint-parser": "^9.3.2" "vue-eslint-parser": "^9.3.1"
} }
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

1
public/vite.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -15,4 +15,4 @@
import zhCn from "element-plus/dist/locale/zh-cn.mjs"; import zhCn from "element-plus/dist/locale/zh-cn.mjs";
</script> </script>
<style scoped lang="scss"></style> <style lang="scss"></style>

View File

@ -6,13 +6,11 @@ import { cloneDeep } from "lodash-es";
import pinia from "./pinia"; import pinia from "./pinia";
import children from "@/components/children/index"; import children from "@/components/children/index";
import { MODEL } from "@/assets/js/constant"; import { MODEL } from "@/assets/js/constant";
// import asyncRouter from "@/assets/js/asyncRouter"; import asyncRouter from "@/assets/js/asyncRouter";
import { getAsyncRouter } from "@/request/api"; import { getAsyncRouter } from "@/request/api";
// import { getRouteTreeAll } from "@/request/system_management.js";
const modules = import.meta.glob([ const modules = import.meta.glob("./views/**/*.vue"); // 获取到views下所有的vue文件
"./views/**/*.vue",
"!./views/**/components/*.vue",
]); // 获取到views下所有的vue文件
let storageRouter = null; // 用来获取后台拿到的路由 let storageRouter = null; // 用来获取后台拿到的路由
router.beforeEach(async (to, from, next) => { router.beforeEach(async (to, from, next) => {
@ -29,9 +27,10 @@ router.beforeEach(async (to, from, next) => {
// 变量里没有储存路由 // 变量里没有储存路由
// pinia里没有储存路由去后台获取路由 // pinia里没有储存路由去后台获取路由
if (routerStore.getRouters.length === 0) { if (routerStore.getRouters.length === 0) {
const resData = await getAsyncRouter(); await getAsyncRouter();
storageRouter = resData.routeList; // 后台请求得到的路由数据 // const resData = await getRouteTreeAll();
// storageRouter = asyncRouter; // 死路由 // storageRouter = resData.menuList; // 后台请求得到的路由数据
storageRouter = asyncRouter; // 死路由
routerStore.setRouters(storageRouter); // 存储路由 routerStore.setRouters(storageRouter); // 存储路由
routerGo(to, next); // 执行路由跳转方法 routerGo(to, next); // 执行路由跳转方法
} else { } else {
@ -74,7 +73,6 @@ function routerGo(to, next) {
function filterAsyncRouter(asyncRouterMap) { function filterAsyncRouter(asyncRouterMap) {
// 遍历后台传来的路由字符串,转换为组件对象 // 遍历后台传来的路由字符串,转换为组件对象
return asyncRouterMap.filter((route) => { return asyncRouterMap.filter((route) => {
route.meta = JSON.parse(route.meta);
if (route.component) { if (route.component) {
if (route.component === "children") { if (route.component === "children") {
route.component = children; route.component = children;

View File

@ -115,6 +115,7 @@
* { * {
box-sizing: border-box; box-sizing: border-box;
font-size: 14px;
&:not(dd,dl,dt) { &:not(dd,dl,dt) {
margin: 0; margin: 0;
@ -126,10 +127,11 @@ h1, h2, h3, h4, h5, h6 {
font-size: revert; font-size: revert;
} }
.layout-container { #app {
background-color: #051a55; background-color: #030f2f;
min-height: 100vh; min-height: 100vh;
background-image: url("/src/assets/images/public/bg.jpg");
background-repeat: no-repeat;
} }
a { a {
@ -159,14 +161,6 @@ a {
display: none; display: none;
} }
.mb {
margin-bottom: 10px;
}
.mt {
margin-top: 16px;
}
.text-blue { .text-blue {
color: #3b3bff; color: #3b3bff;
} }
@ -191,38 +185,6 @@ a {
display: none; display: none;
} }
@mixin table($tdTextAlign,$titleTextAlign) {
border-collapse: collapse;
width: 100%;
display: table;
font-size: 12px;
tr {
page-break-inside: avoid;
}
td, th {
border: 1px solid var(--el-border-color);
padding: 8px;
line-height: 1.6;
text-align: $tdTextAlign;
}
.title {
background: var(--el-fill-color-light);
width: 200px;
text-align: $titleTextAlign;
}
}
.print_table {
@include table(center,left);
}
.archive_print_table {
@include table(left,center);
}
img.ml-10:first-child { img.ml-10:first-child {
margin-left: 0; margin-left: 0;
} }
@ -237,7 +199,6 @@ input:-webkit-autofill:active {
div::-webkit-scrollbar { div::-webkit-scrollbar {
width: 4px; width: 4px;
height: 4px;
} }
div::-webkit-scrollbar-thumb { div::-webkit-scrollbar-thumb {
@ -295,6 +256,14 @@ div::-webkit-scrollbar-track {
border-bottom: 1px dashed var(--el-border-color-darker); border-bottom: 1px dashed var(--el-border-color-darker);
} }
.w-e-bar-item:has([data-menu-key="group-video"]) {
display: none !important;
}
.w-e-bar-item-menus-container .w-e-bar-item:has([data-menu-key="insertImage"]) {
display: none !important;
}
.vue-auth-box_ { .vue-auth-box_ {
background: #020f3a !important; background: #020f3a !important;
border: 1px solid #223765 !important; border: 1px solid #223765 !important;
@ -320,7 +289,7 @@ div::-webkit-scrollbar-track {
margin: 3mm; margin: 3mm;
} }
.page_break { .page_break{
page-break-after: always; page-break-after: always;
} }
@ -328,7 +297,6 @@ div::-webkit-scrollbar-track {
.el-descriptions__label.el-descriptions__cell.is-bordered-label { .el-descriptions__label.el-descriptions__cell.is-bordered-label {
color: #000 !important; color: #000 !important;
} }
.el-descriptions { .el-descriptions {
--el-text-color-primary: #000 !important; --el-text-color-primary: #000 !important;
} }
@ -338,16 +306,19 @@ div::-webkit-scrollbar-track {
} }
.print_use { .print_use {
@include table(center,left); border-collapse: collapse;
width: 100%;
display: table;
td, th {
border: 1px solid var(--el-border-color);
padding: 8px;
line-height: 1.6;
text-align: center;
}
} }
.print_no_use { .print_no_use {
display: none; display: none;
} }
} }
.mobile {
padding: 10px;
background-color: #fafafa;
min-height: 100vh;
}

View File

@ -1,17 +1,16 @@
:root { :root {
--el-header-height: 69px; --el-header-height: 69px;
--el-aside-scrollbar-height: calc(100vh - var(--el-header-height)); --el-aside-scrollbar-height: calc(100vh - var(--el-header-height));
--el-main-scrollbar-height: calc(100vh - var(--el-header-height) - 40px); --el-main-scrollbar-height: calc(100vh - var(--el-header-height) - 60px);
--el-border-color: #273868 !important; // --el-border-color: #273868 !important; //
--el-text-color-regular: #fff !important; --el-text-color-regular: #fff !important;
--el-fill-color-light: #0e1d44 !important; //hover --el-fill-color-light: #0e1d44 !important; //hover
--el-color-check: #14affe !important; //hover --el-color-check: #14affe !important; //hover
--el-aside-bg-color: #08277e !important; --el-aside-bg-color: #081e42 !important;
--el-input-bg-color: #081435 !important; --el-input-bg-color: #081435 !important;
--el-fill-color-blank: #081435 !important; // --el-fill-color-blank: #081435 !important; //
--el-border-color-lighter: var(--el-border-color) !important; --el-border-color-lighter: var(--el-border-color) !important;
--el-bullet-frame-bg-color: #08163b !important; --el-bullet-frame-bg-color: #08163b !important;
--el-text-color-primary: #fff !important;
} }
.el-button:focus, .el-button:hover { .el-button:focus, .el-button:hover {
@ -90,8 +89,9 @@
.el-menu-item { .el-menu-item {
&:hover, &.is-active { &:hover, &.is-active {
//background: #1d3f77; background-image: url("/src/assets/images/public/list_on.png");
background-image: linear-gradient(to right, #2c6ee9, rgba(0, 0, 0, 0)); background-repeat: no-repeat;
background-size: 100% 100%;
} }
} }
@ -118,14 +118,10 @@
} }
} }
.el-select, .el-cascader, .el-date-editor.el-input, .el-date-editor.el-input__wrapper, .el-input__wrapper, .el-input-number, .el-select-v2 { .el-select, .el-cascader, .el-date-editor.el-input, .el-date-editor.el-input__wrapper, .el-input__wrapper, .el-input-number {
width: 100% !important; width: 100% !important;
} }
.el-textarea.is-disabled .el-textarea__inner, .el-select {
--el-disabled-border-color: var(--el-border-color);
}
.el-table { .el-table {
--el-table-bg-color: #071a43 !important; --el-table-bg-color: #071a43 !important;
--el-bg-color: #071a43 !important; --el-bg-color: #071a43 !important;
@ -153,14 +149,6 @@
--el-pagination-bg-color: var(--el-fill-color-blank) !important; --el-pagination-bg-color: var(--el-fill-color-blank) !important;
} }
.el-pagination .el-select {
width: 128px !important;
}
.el-pagination--small .el-select {
width: 100px !important;
}
.el-radio { .el-radio {
--el-radio-input-bg-color: #091839 !important; --el-radio-input-bg-color: #091839 !important;
} }
@ -200,7 +188,7 @@
--el-checkbox-disabled-border-color: var(--el-border-color); --el-checkbox-disabled-border-color: var(--el-border-color);
} }
.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner, .el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner { .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner {
--el-checkbox-disabled-checked-input-fill: var(--el-checkbox-bg-color); --el-checkbox-disabled-checked-input-fill: var(--el-checkbox-bg-color);
--el-checkbox-disabled-checked-input-border-color: var(--el-color-check); --el-checkbox-disabled-checked-input-border-color: var(--el-color-check);
} }
@ -251,19 +239,11 @@
color: var(--el-text-color-regular) !important; color: var(--el-text-color-regular) !important;
} }
.el-date-table.is-week-mode .el-date-table__row {
&.current, &:hover {
.el-date-table-cell {
--el-datepicker-inrange-bg-color: var(--el-fill-color-light) !important;
}
}
}
.el-input.is-disabled .el-input__wrapper { .el-input.is-disabled .el-input__wrapper {
box-shadow: 0 0 0 1px var(--el-border-color) inset !important; box-shadow: 0 0 0 1px var(--el-border-color) inset !important;
} }
.el-select .el-tag.el-tag--info { .el-select__tags .el-tag--info {
background-color: #214082 !important; background-color: #214082 !important;
--el-tag-text-color: var(--el-text-color-regular) !important; --el-tag-text-color: var(--el-text-color-regular) !important;
} }
@ -295,10 +275,14 @@
--el-border-color-light: var(--el-border-color); --el-border-color-light: var(--el-border-color);
} }
.el-divider__text {
font-size: 16px !important;
font-weight: 700 !important;
}
.el-dialog { .el-dialog {
background: transparent !important; background: transparent !important;
--el-dialog-margin-top: 50px !important; --el-dialog-margin-top: 50px !important;
padding: 0 !important;
.el-dialog__header { .el-dialog__header {
background-image: url("/src/assets/images/public/tctitlebg.png"); background-image: url("/src/assets/images/public/tctitlebg.png");
@ -322,14 +306,8 @@
} }
} }
.el-dialog__body { .el-dialog__body, .el-dialog__footer {
background-color: var(--el-bullet-frame-bg-color); background-color: var(--el-bullet-frame-bg-color);
padding: calc(var(--el-dialog-padding-primary) + 10px) var(--el-dialog-padding-primary);
}
.el-dialog__footer {
background-color: var(--el-bullet-frame-bg-color);
padding: var(--el-dialog-padding-primary);
} }
} }
@ -358,8 +336,6 @@
} }
.el-divider__text { .el-divider__text {
font-size: 16px !important;
font-weight: 700 !important;
background-color: var(--el-fill-color-blank) !important; background-color: var(--el-fill-color-blank) !important;
color: var(--el-text-color-regular) !important; color: var(--el-text-color-regular) !important;
} }
@ -404,28 +380,6 @@
color: var(--el-text-color-regular) !important; color: var(--el-text-color-regular) !important;
} }
.el-step__title, .el-select-dropdown__option-item { .el-step__title{
font-size: 14px !important; font-size: 14px !important;;
}
.el-step__description {
* {
font-size: 12px !important;
}
}
.el-notification {
--el-notification-title-color: #000 !important;
.el-notification__closeBtn:hover {
--el-notification-close-hover-color: #000 !important;
}
}
.el-color-predefine__color-selector.selected {
--el-color-primary: #fff !important;
}
.el-input-number.is-disabled .el-input-number__decrease, .el-input-number.is-disabled .el-input-number__increase{
border-color: var(--el-border-color) !important;
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 424 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 423 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 850 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Some files were not shown because too many files have changed in this diff Show More