铭品ops迁移
6
.env
Normal file
@@ -0,0 +1,6 @@
|
||||
ENV = 'test'
|
||||
VITE_APP_API_VERSION = 'v1
|
||||
VITE_APP_API_BASEURL = https://login.ops.f2b211.com/api/
|
||||
VITE_APP_SSO_BASEURL = https://dev.uc.f2b211.com/uc/
|
||||
VITE_APP_SSO_LOGINURL = http://dev.uc.f2b211.com/index.php/uc/user/login.html
|
||||
VITE_APP_SSO_APPID = 27413993593241600
|
||||
8
.env.demo
Normal file
@@ -0,0 +1,8 @@
|
||||
ENV = 'production'
|
||||
VITE_APP_NODE_ENV=production
|
||||
VITE_APP_API_VERSION = v1
|
||||
VITE_APP_API_BASEURL = https://proxy.ops.f2b211.com/api/
|
||||
# VITE_APP_API_BASEURL = https://api.mingpin.f2b211.com/api/
|
||||
VITE_APP_SSO_BASEURL = http://saas.uc.f2b211.com
|
||||
VITE_APP_SSO_LOGINURL = http://saas.uc.f2b211.com/uc/user/login.html
|
||||
VITE_APP_SSO_APPID = 27413993593241600
|
||||
24
.env.development
Normal file
@@ -0,0 +1,24 @@
|
||||
# ENV = 'production'
|
||||
# VITE_APP_APP_NODE_ENV=development
|
||||
# VITE_APP_API_VERSION = v1
|
||||
# VITE_APP_API_BASEURL =https://dev.proxy.ops.f2b211.com/api/
|
||||
# VITE_APP_SSO_BASEURL = https://dev.uc.f2b211.com/uc/
|
||||
# VITE_APP_SSO_LOGINURL = http://dev.uc.f2b211.com/index.php/uc/user/login.html
|
||||
# VITE_APP_SSO_APPID = 27413993593241600
|
||||
|
||||
|
||||
VITE_APP_APP_NODE_ENV=development
|
||||
VITE_APP_API_VERSION = v1
|
||||
VITE_APP_API_BASEURL = https://login.ops.f2b211.com/api/ #https://dev.proxy.ops.f2b211.com/api/ # https://login.ops.f2b211.com/api/
|
||||
VITE_APP_SSO_BASEURL = https://dev.uc.f2b211.com/uc/
|
||||
VITE_APP_SSO_LOGINURL = https://dev.uc.f2b211.com/index.php/uc/user/login.html
|
||||
VITE_APP_SSO_APPID = 27413993593241600
|
||||
|
||||
# ENV = 'production'
|
||||
# VITE_APP_NODE_ENV=production
|
||||
# VITE_APP_API_VERSION = v1
|
||||
# VITE_APP_API_BASEURL = https://proxy.ops.f2b211.com/api/
|
||||
# # VITE_APP_API_BASEURL = https://api.mingpin.f2b211.com/api/
|
||||
# VITE_APP_SSO_BASEURL = http://saas.uc.f2b211.com
|
||||
# VITE_APP_SSO_LOGINURL = http://saas.uc.f2b211.com/uc/user/login.html
|
||||
# VITE_APP_SSO_APPID = 27413993593241600
|
||||
15
.env.production
Normal file
@@ -0,0 +1,15 @@
|
||||
ENV = 'production'
|
||||
VITE_APP_NODE_ENV=production
|
||||
VITE_APP_API_VERSION = v1
|
||||
VITE_APP_API_BASEURL = https://proxy.ops.f2b211.com/api/
|
||||
# VITE_APP_API_BASEURL = https://api.mingpin.f2b211.com/api/
|
||||
VITE_APP_SSO_BASEURL = http://saas.uc.f2b211.com
|
||||
VITE_APP_SSO_LOGINURL = http://saas.uc.f2b211.com/uc/user/login.html
|
||||
VITE_APP_SSO_APPID = 27413993593241600
|
||||
|
||||
# VITE_APP_APP_NODE_ENV=development
|
||||
# VITE_APP_API_VERSION = v1
|
||||
# VITE_APP_API_BASEURL =https://login.ops.f2b211.com/api/ #https://dev.proxy.ops.f2b211.com/api/ #https://login.ops.f2b211.com/api/
|
||||
# VITE_APP_SSO_BASEURL = https://dev.uc.f2b211.com/uc/
|
||||
# VITE_APP_SSO_LOGINURL = https://dev.uc.f2b211.com/index.php/uc/user/login.html
|
||||
# VITE_APP_SSO_APPID = 27413993593241600
|
||||
6
.env.test
Normal file
@@ -0,0 +1,6 @@
|
||||
VITE_APP_APP_NODE_ENV=development
|
||||
VITE_APP_API_VERSION = v1
|
||||
VITE_APP_API_BASEURL = https://login.ops.f2b211.com/api/ #https://dev.proxy.ops.f2b211.com/api/ # https://login.ops.f2b211.com/api/
|
||||
VITE_APP_SSO_BASEURL = https://dev.uc.f2b211.com/uc/
|
||||
VITE_APP_SSO_LOGINURL = https://dev.uc.f2b211.com/index.php/uc/user/login.html
|
||||
VITE_APP_SSO_APPID = 27413993593241600
|
||||
136
.gitignore
vendored
@@ -1,132 +1,26 @@
|
||||
# ---> Node
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
pnpm-debug.log*
|
||||
lerna-debug.log*
|
||||
.pnpm-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
web_modules/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Optional stylelint cache
|
||||
.stylelintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variable files
|
||||
.env
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
.env.local
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
.parcel-cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
out
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
node_modules
|
||||
dist
|
||||
*.zip
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# vuepress v2.x temp and cache directory
|
||||
.temp
|
||||
.cache
|
||||
|
||||
# Docusaurus cache and generated files
|
||||
.docusaurus
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
||||
|
||||
# Stores VSCode versions used for testing VSCode extensions
|
||||
.vscode-test
|
||||
|
||||
# yarn v2
|
||||
.yarn/cache
|
||||
.yarn/unplugged
|
||||
.yarn/build-state.yml
|
||||
.yarn/install-state.gz
|
||||
.pnp.*
|
||||
dist-ssr
|
||||
*.local
|
||||
|
||||
# Editor directories and files
|
||||
.vscode/*
|
||||
!.vscode/extensions.json
|
||||
.idea
|
||||
.DS_Store
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.sw?
|
||||
|
||||
3
.vscode/extensions.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"recommendations": ["Vue.volar"]
|
||||
}
|
||||
@@ -1,3 +1,7 @@
|
||||
# ops_admin_vite
|
||||
# Vue 3 + Vite
|
||||
|
||||
铭品ops
|
||||
This template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
|
||||
|
||||
## Recommended IDE Setup
|
||||
|
||||
- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar)
|
||||
|
||||
69
index.html
Normal file
@@ -0,0 +1,69 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="/src/assets/logo.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>OPS-首页</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.js"></script>
|
||||
<script>
|
||||
let companyId = localStorage.getItem('companyId')
|
||||
if (companyId) {
|
||||
function offline ()
|
||||
{ //#铭品测试环境
|
||||
// http://login.ops.f2b211.com/api/
|
||||
//#铭品正式环境
|
||||
// https://api.mingpin.f2b211.com/api/v1/Public/get/offline
|
||||
//#正式代理
|
||||
const pathurl = `https://proxy.ops.f2b211.com/api/v1/Public/get/offline?c=${companyId}`
|
||||
//#测试代理
|
||||
// const pathurl = `https://dev.proxy.ops.f2b211.com/api/v1/Public/get/offline?c=${companyId}`
|
||||
|
||||
// const pathrul = `https://login.ops.f2b211.com/api/v1/Public/get/offline?c=${companyId}`
|
||||
fetch(pathurl,
|
||||
{
|
||||
method: 'GET',
|
||||
credentials: 'include',
|
||||
keepalive: true,
|
||||
headers: {
|
||||
Authorization: window.localStorage.getItem('userToken')
|
||||
}
|
||||
})
|
||||
}
|
||||
var ua = window.navigator.userAgent.toLowerCase();
|
||||
var rkn = /\b(opera|chrome|webkit|safari|msie|firefox|gecko|qqbrowser|edg)\b(\s*(version|rv:|\/)*(\d+(\.\d+)*))?/g;
|
||||
window.addEventListener('mouseover', function ()
|
||||
{
|
||||
window.removeEventListener('beforeunload', offline, true)
|
||||
ua.replace(rkn, function (match, type, all, rv, version)
|
||||
{
|
||||
if (type == 'chrome' && parseInt(version) <= 86) {
|
||||
window.removeEventListener('unload', offline, true)
|
||||
}
|
||||
})
|
||||
})
|
||||
window.addEventListener('mouseout', function ()
|
||||
{
|
||||
window.addEventListener('beforeunload', offline, true);
|
||||
ua.replace(rkn, function (match, type, all, rv, version)
|
||||
{
|
||||
if (type == 'qqbrowser' || type == 'edg' || (type == 'chrome' && parseInt(version) <= 86)) {
|
||||
window.addEventListener('unload', offline, true);
|
||||
}
|
||||
})
|
||||
})
|
||||
if (window.location.pathnam !== '/login') {
|
||||
window.removeEventListener('beforeunload', offline)
|
||||
window.removeEventListener('unload', offline)
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
15629
package-lock.json
generated
Normal file
65
package.json
Normal file
@@ -0,0 +1,65 @@
|
||||
{
|
||||
"name": "orico_ops_admin",
|
||||
"private": true,
|
||||
"version": "0.0.1",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "vite build",
|
||||
"preview": "vite preview",
|
||||
"build:test": "vite build --mode test",
|
||||
"build:pro": "vite build --mode demo",
|
||||
"lint": "vite lint"
|
||||
},
|
||||
"dependencies": {
|
||||
"@vee-validate/i18n": "^4.4.7",
|
||||
"@vee-validate/rules": "^4.4.7",
|
||||
"axios": "^0.21.4",
|
||||
"axios-cache-adapter": "^2.7.3",
|
||||
"babel-plugin-dynamic-import-node": "^2.3.3",
|
||||
"babel-plugin-transform-remove-strict-mode": "0.0.2",
|
||||
"clipboard": "^2.0.11",
|
||||
"core-js": "^3.17.3",
|
||||
"decimal.js": "^10.3.1",
|
||||
"echarts": "^5.2.2",
|
||||
"element-plus": "^1.1.0-beta.24",
|
||||
"file-saver": "^2.0.5",
|
||||
"font-awesome": "^4.7.0",
|
||||
"html2canvas": "^1.3.2",
|
||||
"js-base64": "^3.7.2",
|
||||
"jspdf": "^2.4.0",
|
||||
"path": "^0.12.7",
|
||||
"print-js": "^1.6.0",
|
||||
"process": "^0.11.10",
|
||||
"unplugin-vue-components": "^0.15.3",
|
||||
"vee-validate": "^4.4.11",
|
||||
"vue": "^3.2.20",
|
||||
"vue-router": "^4.2.1",
|
||||
"vuex": "^4.0.0-0",
|
||||
"vxe-table": "^4.2.8",
|
||||
"xe-utils": "^3.5.4",
|
||||
"xlsx": "^0.16.9",
|
||||
"yup": "^0.32.11"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^18.7.23",
|
||||
"@vitejs/plugin-vue": "^3.1.0",
|
||||
"@vue/cli-plugin-babel": "~4.5.0",
|
||||
"@vue/cli-plugin-eslint": "~4.5.0",
|
||||
"@vue/cli-plugin-router": "~4.5.0",
|
||||
"@vue/cli-plugin-vuex": "~4.5.0",
|
||||
"@vue/cli-service": "~4.5.0",
|
||||
"@vue/compiler-sfc": "^3.2.11",
|
||||
"babel-eslint": "^10.1.0",
|
||||
"babel-plugin-import": "^1.13.3",
|
||||
"eslint": "^6.7.2",
|
||||
"eslint-plugin-vue": "^7.0.0",
|
||||
"js-cookie": "^3.0.1",
|
||||
"node-sass": "^4.14.1",
|
||||
"print-js": "^1.6.0",
|
||||
"sass": "^1.55.0",
|
||||
"sass-loader": "^8.0.2",
|
||||
"script-loader": "^0.7.2",
|
||||
"vite": "^3.1.0",
|
||||
"vue-loader-v16": "^16.0.0-beta.5.4"
|
||||
}
|
||||
}
|
||||
1
public/vite.svg
Normal 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 |
70
src/App.vue
Normal file
@@ -0,0 +1,70 @@
|
||||
<template>
|
||||
<router-view v-if="isRouterAlive" />
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
body {
|
||||
overflow: hidden;
|
||||
}
|
||||
#app {
|
||||
font-family: Avenir, Helvetica, Arial, sans-serif;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
color: #2c3e50;
|
||||
}
|
||||
|
||||
#nav {
|
||||
padding: 30px;
|
||||
|
||||
a {
|
||||
font-weight: bold;
|
||||
color: #2c3e50;
|
||||
|
||||
&.router-link-exact-active {
|
||||
color: #42b983;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
export default {
|
||||
name: 'App',
|
||||
provide() {
|
||||
return {
|
||||
reload: this.reload,
|
||||
};
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
isRouterAlive: true,
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
reload() {
|
||||
this.isRouterAlive = false;
|
||||
this.$nextTick(function () {
|
||||
this.isRouterAlive = true;
|
||||
});
|
||||
},
|
||||
},
|
||||
created() {
|
||||
// 解决页面刷新后vuex数据不失效问题
|
||||
// sessionStorage中store存在重写state
|
||||
if (localStorage.getItem('store')) {
|
||||
this.$store.replaceState(
|
||||
Object.assign(
|
||||
{},
|
||||
this.$store.state,
|
||||
JSON.parse(localStorage.getItem('store'))
|
||||
)
|
||||
);
|
||||
// localStorage.removeItem('store')
|
||||
}
|
||||
// 在页面刷新时将vuex里的信息保存到sessionStorage里
|
||||
window.addEventListener('beforeunload', () => {
|
||||
localStorage.setItem('store', JSON.stringify(this.$store.state));
|
||||
});
|
||||
},
|
||||
mounted: function () {},
|
||||
};
|
||||
</script>
|
||||
BIN
src/assets/404.png
Normal file
|
After Width: | Height: | Size: 7.1 KiB |
BIN
src/assets/check@3x.png
Normal file
|
After Width: | Height: | Size: 742 B |
BIN
src/assets/delete.png
Normal file
|
After Width: | Height: | Size: 223 B |
BIN
src/assets/down.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
src/assets/down1.png
Normal file
|
After Width: | Height: | Size: 504 B |
BIN
src/assets/dw.png
Normal file
|
After Width: | Height: | Size: 406 B |
BIN
src/assets/edit.png
Normal file
|
After Width: | Height: | Size: 227 B |
BIN
src/assets/equal.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
src/assets/equal1.png
Normal file
|
After Width: | Height: | Size: 323 B |
BIN
src/assets/error.png
Normal file
|
After Width: | Height: | Size: 3.9 KiB |
BIN
src/assets/flow@3x.png
Normal file
|
After Width: | Height: | Size: 600 B |
539
src/assets/font/demo.css
Normal file
@@ -0,0 +1,539 @@
|
||||
/* Logo 字体 */
|
||||
@font-face {
|
||||
font-family: "iconfont logo";
|
||||
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
|
||||
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
|
||||
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
|
||||
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
|
||||
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
|
||||
}
|
||||
|
||||
.logo {
|
||||
font-family: "iconfont logo";
|
||||
font-size: 160px;
|
||||
font-style: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
/* tabs */
|
||||
.nav-tabs {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.nav-tabs .nav-more {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
#tabs {
|
||||
border-bottom: 1px solid #eee;
|
||||
}
|
||||
|
||||
#tabs li {
|
||||
cursor: pointer;
|
||||
width: 100px;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
text-align: center;
|
||||
font-size: 16px;
|
||||
border-bottom: 2px solid transparent;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
margin-bottom: -1px;
|
||||
color: #666;
|
||||
}
|
||||
|
||||
|
||||
#tabs .active {
|
||||
border-bottom-color: #f00;
|
||||
color: #222;
|
||||
}
|
||||
|
||||
.tab-container .content {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* 页面布局 */
|
||||
.main {
|
||||
padding: 30px 100px;
|
||||
width: 960px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.main .el-scrollbar {
|
||||
color: #333;
|
||||
text-align: left;
|
||||
margin-bottom: 30px;
|
||||
line-height: 1;
|
||||
height: 110px;
|
||||
margin-top: -50px;
|
||||
overflow: hidden;
|
||||
*zoom: 1;
|
||||
}
|
||||
|
||||
.main .logo a {
|
||||
font-size: 160px;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.helps {
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
.helps pre {
|
||||
padding: 20px;
|
||||
margin: 10px 0;
|
||||
border: solid 1px #e7e1cd;
|
||||
background-color: #fffdef;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.icon_lists {
|
||||
width: 100% !important;
|
||||
overflow: hidden;
|
||||
*zoom: 1;
|
||||
}
|
||||
|
||||
.icon_lists li {
|
||||
width: 100px;
|
||||
margin-bottom: 10px;
|
||||
margin-right: 20px;
|
||||
text-align: center;
|
||||
list-style: none !important;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.icon_lists li .code-name {
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
.icon_lists .icon {
|
||||
display: block;
|
||||
height: 100px;
|
||||
line-height: 100px;
|
||||
font-size: 42px;
|
||||
margin: 10px auto;
|
||||
color: #333;
|
||||
-webkit-transition: font-size 0.25s linear, width 0.25s linear;
|
||||
-moz-transition: font-size 0.25s linear, width 0.25s linear;
|
||||
transition: font-size 0.25s linear, width 0.25s linear;
|
||||
}
|
||||
|
||||
.icon_lists .icon:hover {
|
||||
font-size: 100px;
|
||||
}
|
||||
|
||||
.icon_lists .svg-icon {
|
||||
/* 通过设置 font-size 来改变图标大小 */
|
||||
width: 1em;
|
||||
/* 图标和文字相邻时,垂直对齐 */
|
||||
vertical-align: -0.15em;
|
||||
/* 通过设置 color 来改变 SVG 的颜色/fill */
|
||||
fill: currentColor;
|
||||
/* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
|
||||
normalize.css 中也包含这行 */
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.icon_lists li .name,
|
||||
.icon_lists li .code-name {
|
||||
color: #666;
|
||||
}
|
||||
|
||||
/* markdown 样式 */
|
||||
.markdown {
|
||||
color: #666;
|
||||
font-size: 14px;
|
||||
line-height: 1.8;
|
||||
}
|
||||
|
||||
.highlight {
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
.markdown img {
|
||||
vertical-align: middle;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.markdown h1 {
|
||||
color: #404040;
|
||||
font-weight: 500;
|
||||
line-height: 40px;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
.markdown h2,
|
||||
.markdown h3,
|
||||
.markdown h4,
|
||||
.markdown h5,
|
||||
.markdown h6 {
|
||||
color: #404040;
|
||||
margin: 1.6em 0 0.6em 0;
|
||||
font-weight: 500;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.markdown h1 {
|
||||
font-size: 28px;
|
||||
}
|
||||
|
||||
.markdown h2 {
|
||||
font-size: 22px;
|
||||
}
|
||||
|
||||
.markdown h3 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.markdown h4 {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.markdown h5 {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.markdown h6 {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.markdown hr {
|
||||
height: 1px;
|
||||
border: 0;
|
||||
background: #e9e9e9;
|
||||
margin: 16px 0;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.markdown p {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
.markdown>p,
|
||||
.markdown>blockquote,
|
||||
.markdown>.highlight,
|
||||
.markdown>ol,
|
||||
.markdown>ul {
|
||||
width: 80%;
|
||||
}
|
||||
|
||||
.markdown ul>li {
|
||||
list-style: circle;
|
||||
}
|
||||
|
||||
.markdown>ul li,
|
||||
.markdown blockquote ul>li {
|
||||
margin-left: 20px;
|
||||
padding-left: 4px;
|
||||
}
|
||||
|
||||
.markdown>ul li p,
|
||||
.markdown>ol li p {
|
||||
margin: 0.6em 0;
|
||||
}
|
||||
|
||||
.markdown ol>li {
|
||||
list-style: decimal;
|
||||
}
|
||||
|
||||
.markdown>ol li,
|
||||
.markdown blockquote ol>li {
|
||||
margin-left: 20px;
|
||||
padding-left: 4px;
|
||||
}
|
||||
|
||||
.markdown code {
|
||||
margin: 0 3px;
|
||||
padding: 0 5px;
|
||||
background: #eee;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.markdown strong,
|
||||
.markdown b {
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.markdown>table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0px;
|
||||
empty-cells: show;
|
||||
border: 1px solid #e9e9e9;
|
||||
width: 95%;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
.markdown>table th {
|
||||
white-space: nowrap;
|
||||
color: #333;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.markdown>table th,
|
||||
.markdown>table td {
|
||||
border: 1px solid #e9e9e9;
|
||||
padding: 8px 16px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.markdown>table th {
|
||||
background: #F7F7F7;
|
||||
}
|
||||
|
||||
.markdown blockquote {
|
||||
font-size: 90%;
|
||||
color: #999;
|
||||
border-left: 4px solid #e9e9e9;
|
||||
padding-left: 0.8em;
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
.markdown blockquote p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.markdown .anchor {
|
||||
opacity: 0;
|
||||
transition: opacity 0.3s ease;
|
||||
margin-left: 8px;
|
||||
}
|
||||
|
||||
.markdown .waiting {
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.markdown h1:hover .anchor,
|
||||
.markdown h2:hover .anchor,
|
||||
.markdown h3:hover .anchor,
|
||||
.markdown h4:hover .anchor,
|
||||
.markdown h5:hover .anchor,
|
||||
.markdown h6:hover .anchor {
|
||||
opacity: 1;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.markdown>br,
|
||||
.markdown>p>br {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
|
||||
.hljs {
|
||||
display: block;
|
||||
background: white;
|
||||
padding: 0.5em;
|
||||
color: #333333;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
.hljs-comment,
|
||||
.hljs-meta {
|
||||
color: #969896;
|
||||
}
|
||||
|
||||
.hljs-string,
|
||||
.hljs-variable,
|
||||
.hljs-template-variable,
|
||||
.hljs-strong,
|
||||
.hljs-emphasis,
|
||||
.hljs-quote {
|
||||
color: #df5000;
|
||||
}
|
||||
|
||||
.hljs-keyword,
|
||||
.hljs-selector-tag,
|
||||
.hljs-type {
|
||||
color: #a71d5d;
|
||||
}
|
||||
|
||||
.hljs-literal,
|
||||
.hljs-symbol,
|
||||
.hljs-bullet,
|
||||
.hljs-attribute {
|
||||
color: #0086b3;
|
||||
}
|
||||
|
||||
.hljs-section,
|
||||
.hljs-name {
|
||||
color: #63a35c;
|
||||
}
|
||||
|
||||
.hljs-tag {
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.hljs-title,
|
||||
.hljs-attr,
|
||||
.hljs-selector-id,
|
||||
.hljs-selector-class,
|
||||
.hljs-selector-attr,
|
||||
.hljs-selector-pseudo {
|
||||
color: #795da3;
|
||||
}
|
||||
|
||||
.hljs-addition {
|
||||
color: #55a532;
|
||||
background-color: #eaffea;
|
||||
}
|
||||
|
||||
.hljs-deletion {
|
||||
color: #bd2c00;
|
||||
background-color: #ffecec;
|
||||
}
|
||||
|
||||
.hljs-link {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
/* 代码高亮 */
|
||||
/* PrismJS 1.15.0
|
||||
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
|
||||
/**
|
||||
* prism.js default theme for JavaScript, CSS and HTML
|
||||
* Based on dabblet (http://dabblet.com)
|
||||
* @author Lea Verou
|
||||
*/
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
color: black;
|
||||
background: none;
|
||||
text-shadow: 0 1px white;
|
||||
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
word-spacing: normal;
|
||||
word-break: normal;
|
||||
word-wrap: normal;
|
||||
line-height: 1.5;
|
||||
|
||||
-moz-tab-size: 4;
|
||||
-o-tab-size: 4;
|
||||
tab-size: 4;
|
||||
|
||||
-webkit-hyphens: none;
|
||||
-moz-hyphens: none;
|
||||
-ms-hyphens: none;
|
||||
hyphens: none;
|
||||
}
|
||||
|
||||
pre[class*="language-"]::-moz-selection,
|
||||
pre[class*="language-"] ::-moz-selection,
|
||||
code[class*="language-"]::-moz-selection,
|
||||
code[class*="language-"] ::-moz-selection {
|
||||
text-shadow: none;
|
||||
background: #b3d4fc;
|
||||
}
|
||||
|
||||
pre[class*="language-"]::selection,
|
||||
pre[class*="language-"] ::selection,
|
||||
code[class*="language-"]::selection,
|
||||
code[class*="language-"] ::selection {
|
||||
text-shadow: none;
|
||||
background: #b3d4fc;
|
||||
}
|
||||
|
||||
@media print {
|
||||
|
||||
code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
text-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* Code blocks */
|
||||
pre[class*="language-"] {
|
||||
padding: 1em;
|
||||
margin: .5em 0;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
:not(pre)>code[class*="language-"],
|
||||
pre[class*="language-"] {
|
||||
background: #f5f2f0;
|
||||
}
|
||||
|
||||
/* Inline code */
|
||||
:not(pre)>code[class*="language-"] {
|
||||
padding: .1em;
|
||||
border-radius: .3em;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
.token.comment,
|
||||
.token.prolog,
|
||||
.token.doctype,
|
||||
.token.cdata {
|
||||
color: slategray;
|
||||
}
|
||||
|
||||
.token.punctuation {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.namespace {
|
||||
opacity: .7;
|
||||
}
|
||||
|
||||
.token.property,
|
||||
.token.tag,
|
||||
.token.boolean,
|
||||
.token.number,
|
||||
.token.constant,
|
||||
.token.symbol,
|
||||
.token.deleted {
|
||||
color: #905;
|
||||
}
|
||||
|
||||
.token.selector,
|
||||
.token.attr-name,
|
||||
.token.string,
|
||||
.token.char,
|
||||
.token.builtin,
|
||||
.token.inserted {
|
||||
color: #690;
|
||||
}
|
||||
|
||||
.token.operator,
|
||||
.token.entity,
|
||||
.token.url,
|
||||
.language-css .token.string,
|
||||
.style .token.string {
|
||||
color: #9a6e3a;
|
||||
background: hsla(0, 0%, 100%, .5);
|
||||
}
|
||||
|
||||
.token.atrule,
|
||||
.token.attr-value,
|
||||
.token.keyword {
|
||||
color: #07a;
|
||||
}
|
||||
|
||||
.token.function,
|
||||
.token.class-name {
|
||||
color: #DD4A68;
|
||||
}
|
||||
|
||||
.token.regex,
|
||||
.token.important,
|
||||
.token.variable {
|
||||
color: #e90;
|
||||
}
|
||||
|
||||
.token.important,
|
||||
.token.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.token.italic {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.token.entity {
|
||||
cursor: help;
|
||||
}
|
||||
1384
src/assets/font/demo_index.html
Normal file
225
src/assets/font/iconfont.css
Normal file
@@ -0,0 +1,225 @@
|
||||
@font-face {
|
||||
font-family: 'iconfont'; /* Project id 2863944 */
|
||||
src: url('iconfont.woff2?t=1668760463258') format('woff2'), url('iconfont.woff?t=1668760463258') format('woff'),
|
||||
url('iconfont.ttf?t=1668760463258') format('truetype');
|
||||
}
|
||||
|
||||
.iconfont {
|
||||
font-family: 'iconfont' !important;
|
||||
font-size: 16px;
|
||||
font-style: normal;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
.icon-tianjia1:before {
|
||||
content: '\e65e';
|
||||
}
|
||||
|
||||
.icon-fuzhi:before {
|
||||
content: '\e65d';
|
||||
}
|
||||
|
||||
.icon-guanbi1:before {
|
||||
content: '\e65b';
|
||||
}
|
||||
|
||||
.icon-bianji1:before {
|
||||
content: '\e65a';
|
||||
margin-right: 4px;
|
||||
font-size: 14px;
|
||||
color: #c0c4cc;
|
||||
font-weight: 100;
|
||||
}
|
||||
|
||||
.icon-shuiwuguanli:before {
|
||||
content: '\e649';
|
||||
}
|
||||
|
||||
.icon-chengbenguanli:before {
|
||||
content: '\e645';
|
||||
}
|
||||
|
||||
.icon-yingshoukuanguanli:before {
|
||||
content: '\e642';
|
||||
}
|
||||
|
||||
.icon-zijinguanli:before {
|
||||
content: '\e643';
|
||||
}
|
||||
|
||||
.icon-feiyongguanli:before {
|
||||
content: '\e644';
|
||||
}
|
||||
|
||||
.icon-chunaguanli:before {
|
||||
content: '\e646';
|
||||
}
|
||||
|
||||
.icon-zichanguanli:before {
|
||||
content: '\e647';
|
||||
}
|
||||
|
||||
.icon-zongzhang:before {
|
||||
content: '\e648';
|
||||
}
|
||||
|
||||
.icon-yingfukuanguanli:before {
|
||||
content: '\e64a';
|
||||
}
|
||||
|
||||
.icon-caiwu:before {
|
||||
content: '\e641';
|
||||
}
|
||||
|
||||
.icon-daochu1:before {
|
||||
content: '\e63f';
|
||||
}
|
||||
|
||||
.icon-renminbi:before {
|
||||
content: '\e63b';
|
||||
}
|
||||
|
||||
.icon-xiazaiweikong:before {
|
||||
content: '\e63a';
|
||||
}
|
||||
|
||||
.icon-shanchu:before {
|
||||
content: '\e639';
|
||||
}
|
||||
|
||||
.icon-daochu:before {
|
||||
content: '\e636';
|
||||
}
|
||||
|
||||
.icon-xiadan:before {
|
||||
content: '\e637';
|
||||
}
|
||||
|
||||
.icon-piliang:before {
|
||||
content: '\e638';
|
||||
}
|
||||
|
||||
.icon-zhexiantu:before {
|
||||
content: '\e635';
|
||||
}
|
||||
|
||||
.icon-gengduo:before {
|
||||
content: '\e631';
|
||||
}
|
||||
|
||||
.icon-chenggong:before {
|
||||
content: '\e630';
|
||||
}
|
||||
|
||||
.icon-shijing:before {
|
||||
content: '\e62f';
|
||||
}
|
||||
|
||||
.icon-xinxi:before {
|
||||
content: '\e62e';
|
||||
}
|
||||
|
||||
.icon-renwuweikong:before {
|
||||
content: '\e62d';
|
||||
}
|
||||
|
||||
.icon-liulanjiluweikong:before {
|
||||
content: '\e62c';
|
||||
}
|
||||
|
||||
.icon-qingchu:before {
|
||||
content: '\e62b';
|
||||
}
|
||||
|
||||
.icon-zuobian:before {
|
||||
content: '\e629';
|
||||
}
|
||||
|
||||
.icon-youbian:before {
|
||||
content: '\e62a';
|
||||
}
|
||||
|
||||
.icon-xuanzhong:before {
|
||||
content: '\e628';
|
||||
}
|
||||
|
||||
.icon-shuangjiantoushouqi-shang:before {
|
||||
content: '\e626';
|
||||
}
|
||||
|
||||
.icon-shuangjiantouzhankai-xia:before {
|
||||
content: '\e627';
|
||||
}
|
||||
|
||||
.icon-shuaxin:before {
|
||||
content: '\e625';
|
||||
}
|
||||
|
||||
.icon-tianjia:before {
|
||||
content: '\e624';
|
||||
}
|
||||
|
||||
.icon-baocun:before {
|
||||
content: '\e623';
|
||||
}
|
||||
|
||||
.icon-you-zhankaigengduo:before {
|
||||
content: '\e61d';
|
||||
}
|
||||
|
||||
.icon-zuo-zhankaigengduo:before {
|
||||
content: '\e61e';
|
||||
}
|
||||
|
||||
.icon-xia-zhankai:before {
|
||||
content: '\e61f';
|
||||
}
|
||||
|
||||
.icon-guanbi:before {
|
||||
content: '\e620';
|
||||
}
|
||||
|
||||
.icon-baobiao:before {
|
||||
content: '\e612';
|
||||
}
|
||||
|
||||
.icon-caigou:before {
|
||||
content: '\e613';
|
||||
}
|
||||
|
||||
.icon-cangku:before {
|
||||
content: '\e614';
|
||||
}
|
||||
|
||||
.icon-shengchan:before {
|
||||
content: '\e615';
|
||||
}
|
||||
|
||||
.icon-xiaoshou:before {
|
||||
content: '\e616';
|
||||
}
|
||||
|
||||
.icon-tiaoma:before {
|
||||
content: '\e617';
|
||||
}
|
||||
|
||||
.icon-wuliao:before {
|
||||
content: '\e618';
|
||||
}
|
||||
|
||||
.icon-weiwai:before {
|
||||
content: '\e619';
|
||||
}
|
||||
|
||||
.icon-gongyingshang:before {
|
||||
content: '\e61a';
|
||||
}
|
||||
|
||||
.icon-shezhi:before {
|
||||
content: '\e61b';
|
||||
}
|
||||
|
||||
.icon-a-211:before {
|
||||
content: '\e61c';
|
||||
}
|
||||
1
src/assets/font/iconfont.js
Normal file
373
src/assets/font/iconfont.json
Normal file
@@ -0,0 +1,373 @@
|
||||
{
|
||||
"id": "2863944",
|
||||
"name": "OPS",
|
||||
"font_family": "iconfont",
|
||||
"css_prefix_text": "icon-",
|
||||
"description": "",
|
||||
"glyphs": [
|
||||
{
|
||||
"icon_id": "32937331",
|
||||
"name": "添加",
|
||||
"font_class": "tianjia1",
|
||||
"unicode": "e65e",
|
||||
"unicode_decimal": 58974
|
||||
},
|
||||
{
|
||||
"icon_id": "32936674",
|
||||
"name": "复制",
|
||||
"font_class": "fuzhi",
|
||||
"unicode": "e65d",
|
||||
"unicode_decimal": 58973
|
||||
},
|
||||
{
|
||||
"icon_id": "31372064",
|
||||
"name": "关闭",
|
||||
"font_class": "guanbi1",
|
||||
"unicode": "e65b",
|
||||
"unicode_decimal": 58971
|
||||
},
|
||||
{
|
||||
"icon_id": "31254227",
|
||||
"name": "编辑",
|
||||
"font_class": "bianji1",
|
||||
"unicode": "e65a",
|
||||
"unicode_decimal": 58970
|
||||
},
|
||||
{
|
||||
"icon_id": "28767114",
|
||||
"name": "税务管理",
|
||||
"font_class": "shuiwuguanli",
|
||||
"unicode": "e649",
|
||||
"unicode_decimal": 58953
|
||||
},
|
||||
{
|
||||
"icon_id": "28758569",
|
||||
"name": "成本管理",
|
||||
"font_class": "chengbenguanli",
|
||||
"unicode": "e645",
|
||||
"unicode_decimal": 58949
|
||||
},
|
||||
{
|
||||
"icon_id": "28756346",
|
||||
"name": "应收款管理",
|
||||
"font_class": "yingshoukuanguanli",
|
||||
"unicode": "e642",
|
||||
"unicode_decimal": 58946
|
||||
},
|
||||
{
|
||||
"icon_id": "28756347",
|
||||
"name": "资金管理",
|
||||
"font_class": "zijinguanli",
|
||||
"unicode": "e643",
|
||||
"unicode_decimal": 58947
|
||||
},
|
||||
{
|
||||
"icon_id": "28756349",
|
||||
"name": "费用管理",
|
||||
"font_class": "feiyongguanli",
|
||||
"unicode": "e644",
|
||||
"unicode_decimal": 58948
|
||||
},
|
||||
{
|
||||
"icon_id": "28756351",
|
||||
"name": "出纳管理",
|
||||
"font_class": "chunaguanli",
|
||||
"unicode": "e646",
|
||||
"unicode_decimal": 58950
|
||||
},
|
||||
{
|
||||
"icon_id": "28756352",
|
||||
"name": "资产管理",
|
||||
"font_class": "zichanguanli",
|
||||
"unicode": "e647",
|
||||
"unicode_decimal": 58951
|
||||
},
|
||||
{
|
||||
"icon_id": "28756353",
|
||||
"name": "总账",
|
||||
"font_class": "zongzhang",
|
||||
"unicode": "e648",
|
||||
"unicode_decimal": 58952
|
||||
},
|
||||
{
|
||||
"icon_id": "28756355",
|
||||
"name": "应付款管理",
|
||||
"font_class": "yingfukuanguanli",
|
||||
"unicode": "e64a",
|
||||
"unicode_decimal": 58954
|
||||
},
|
||||
{
|
||||
"icon_id": "28442176",
|
||||
"name": "财务",
|
||||
"font_class": "caiwu",
|
||||
"unicode": "e641",
|
||||
"unicode_decimal": 58945
|
||||
},
|
||||
{
|
||||
"icon_id": "28373960",
|
||||
"name": "导出",
|
||||
"font_class": "daochu1",
|
||||
"unicode": "e63f",
|
||||
"unicode_decimal": 58943
|
||||
},
|
||||
{
|
||||
"icon_id": "28043356",
|
||||
"name": "人民币",
|
||||
"font_class": "renminbi",
|
||||
"unicode": "e63b",
|
||||
"unicode_decimal": 58939
|
||||
},
|
||||
{
|
||||
"icon_id": "27909200",
|
||||
"name": "下载为空",
|
||||
"font_class": "xiazaiweikong",
|
||||
"unicode": "e63a",
|
||||
"unicode_decimal": 58938
|
||||
},
|
||||
{
|
||||
"icon_id": "26973680",
|
||||
"name": "删除",
|
||||
"font_class": "shanchu",
|
||||
"unicode": "e639",
|
||||
"unicode_decimal": 58937
|
||||
},
|
||||
{
|
||||
"icon_id": "26955368",
|
||||
"name": "导出",
|
||||
"font_class": "daochu",
|
||||
"unicode": "e636",
|
||||
"unicode_decimal": 58934
|
||||
},
|
||||
{
|
||||
"icon_id": "26955369",
|
||||
"name": "下单",
|
||||
"font_class": "xiadan",
|
||||
"unicode": "e637",
|
||||
"unicode_decimal": 58935
|
||||
},
|
||||
{
|
||||
"icon_id": "26955370",
|
||||
"name": "批量",
|
||||
"font_class": "piliang",
|
||||
"unicode": "e638",
|
||||
"unicode_decimal": 58936
|
||||
},
|
||||
{
|
||||
"icon_id": "26954331",
|
||||
"name": "折线图",
|
||||
"font_class": "zhexiantu",
|
||||
"unicode": "e635",
|
||||
"unicode_decimal": 58933
|
||||
},
|
||||
{
|
||||
"icon_id": "25254824",
|
||||
"name": "更多",
|
||||
"font_class": "gengduo",
|
||||
"unicode": "e631",
|
||||
"unicode_decimal": 58929
|
||||
},
|
||||
{
|
||||
"icon_id": "25181240",
|
||||
"name": "成功",
|
||||
"font_class": "chenggong",
|
||||
"unicode": "e630",
|
||||
"unicode_decimal": 58928
|
||||
},
|
||||
{
|
||||
"icon_id": "25181198",
|
||||
"name": "示警",
|
||||
"font_class": "shijing",
|
||||
"unicode": "e62f",
|
||||
"unicode_decimal": 58927
|
||||
},
|
||||
{
|
||||
"icon_id": "25181181",
|
||||
"name": "信息",
|
||||
"font_class": "xinxi",
|
||||
"unicode": "e62e",
|
||||
"unicode_decimal": 58926
|
||||
},
|
||||
{
|
||||
"icon_id": "25176785",
|
||||
"name": "任务为空",
|
||||
"font_class": "renwuweikong",
|
||||
"unicode": "e62d",
|
||||
"unicode_decimal": 58925
|
||||
},
|
||||
{
|
||||
"icon_id": "25176783",
|
||||
"name": "浏览记录为空",
|
||||
"font_class": "liulanjiluweikong",
|
||||
"unicode": "e62c",
|
||||
"unicode_decimal": 58924
|
||||
},
|
||||
{
|
||||
"icon_id": "25162308",
|
||||
"name": "清除",
|
||||
"font_class": "qingchu",
|
||||
"unicode": "e62b",
|
||||
"unicode_decimal": 58923
|
||||
},
|
||||
{
|
||||
"icon_id": "25148507",
|
||||
"name": "左边",
|
||||
"font_class": "zuobian",
|
||||
"unicode": "e629",
|
||||
"unicode_decimal": 58921
|
||||
},
|
||||
{
|
||||
"icon_id": "25148508",
|
||||
"name": "右边",
|
||||
"font_class": "youbian",
|
||||
"unicode": "e62a",
|
||||
"unicode_decimal": 58922
|
||||
},
|
||||
{
|
||||
"icon_id": "25100884",
|
||||
"name": "选中",
|
||||
"font_class": "xuanzhong",
|
||||
"unicode": "e628",
|
||||
"unicode_decimal": 58920
|
||||
},
|
||||
{
|
||||
"icon_id": "25097364",
|
||||
"name": "双箭头收起-上",
|
||||
"font_class": "shuangjiantoushouqi-shang",
|
||||
"unicode": "e626",
|
||||
"unicode_decimal": 58918
|
||||
},
|
||||
{
|
||||
"icon_id": "25097365",
|
||||
"name": "双箭头展开-下",
|
||||
"font_class": "shuangjiantouzhankai-xia",
|
||||
"unicode": "e627",
|
||||
"unicode_decimal": 58919
|
||||
},
|
||||
{
|
||||
"icon_id": "25097087",
|
||||
"name": "刷新",
|
||||
"font_class": "shuaxin",
|
||||
"unicode": "e625",
|
||||
"unicode_decimal": 58917
|
||||
},
|
||||
{
|
||||
"icon_id": "25097062",
|
||||
"name": "添加",
|
||||
"font_class": "tianjia",
|
||||
"unicode": "e624",
|
||||
"unicode_decimal": 58916
|
||||
},
|
||||
{
|
||||
"icon_id": "25097053",
|
||||
"name": "保存",
|
||||
"font_class": "baocun",
|
||||
"unicode": "e623",
|
||||
"unicode_decimal": 58915
|
||||
},
|
||||
{
|
||||
"icon_id": "24910721",
|
||||
"name": "右-展开更多",
|
||||
"font_class": "you-zhankaigengduo",
|
||||
"unicode": "e61d",
|
||||
"unicode_decimal": 58909
|
||||
},
|
||||
{
|
||||
"icon_id": "24910731",
|
||||
"name": "左-展开更多",
|
||||
"font_class": "zuo-zhankaigengduo",
|
||||
"unicode": "e61e",
|
||||
"unicode_decimal": 58910
|
||||
},
|
||||
{
|
||||
"icon_id": "24910740",
|
||||
"name": "下-展开",
|
||||
"font_class": "xia-zhankai",
|
||||
"unicode": "e61f",
|
||||
"unicode_decimal": 58911
|
||||
},
|
||||
{
|
||||
"icon_id": "24910742",
|
||||
"name": "关闭",
|
||||
"font_class": "guanbi",
|
||||
"unicode": "e620",
|
||||
"unicode_decimal": 58912
|
||||
},
|
||||
{
|
||||
"icon_id": "24903722",
|
||||
"name": "报表",
|
||||
"font_class": "baobiao",
|
||||
"unicode": "e612",
|
||||
"unicode_decimal": 58898
|
||||
},
|
||||
{
|
||||
"icon_id": "24903723",
|
||||
"name": "采购",
|
||||
"font_class": "caigou",
|
||||
"unicode": "e613",
|
||||
"unicode_decimal": 58899
|
||||
},
|
||||
{
|
||||
"icon_id": "24903733",
|
||||
"name": "仓库",
|
||||
"font_class": "cangku",
|
||||
"unicode": "e614",
|
||||
"unicode_decimal": 58900
|
||||
},
|
||||
{
|
||||
"icon_id": "24903735",
|
||||
"name": "生产",
|
||||
"font_class": "shengchan",
|
||||
"unicode": "e615",
|
||||
"unicode_decimal": 58901
|
||||
},
|
||||
{
|
||||
"icon_id": "24903736",
|
||||
"name": "销售",
|
||||
"font_class": "xiaoshou",
|
||||
"unicode": "e616",
|
||||
"unicode_decimal": 58902
|
||||
},
|
||||
{
|
||||
"icon_id": "24903737",
|
||||
"name": "条码",
|
||||
"font_class": "tiaoma",
|
||||
"unicode": "e617",
|
||||
"unicode_decimal": 58903
|
||||
},
|
||||
{
|
||||
"icon_id": "24903738",
|
||||
"name": "物料",
|
||||
"font_class": "wuliao",
|
||||
"unicode": "e618",
|
||||
"unicode_decimal": 58904
|
||||
},
|
||||
{
|
||||
"icon_id": "24903739",
|
||||
"name": "委外",
|
||||
"font_class": "weiwai",
|
||||
"unicode": "e619",
|
||||
"unicode_decimal": 58905
|
||||
},
|
||||
{
|
||||
"icon_id": "24903740",
|
||||
"name": "供应商",
|
||||
"font_class": "gongyingshang",
|
||||
"unicode": "e61a",
|
||||
"unicode_decimal": 58906
|
||||
},
|
||||
{
|
||||
"icon_id": "24903741",
|
||||
"name": "设置",
|
||||
"font_class": "shezhi",
|
||||
"unicode": "e61b",
|
||||
"unicode_decimal": 58907
|
||||
},
|
||||
{
|
||||
"icon_id": "24903806",
|
||||
"name": "211",
|
||||
"font_class": "a-211",
|
||||
"unicode": "e61c",
|
||||
"unicode_decimal": 58908
|
||||
}
|
||||
]
|
||||
}
|
||||
BIN
src/assets/font/iconfont.ttf
Normal file
BIN
src/assets/font/iconfont.woff
Normal file
BIN
src/assets/font/iconfont.woff2
Normal file
BIN
src/assets/gou@3x.png
Normal file
|
After Width: | Height: | Size: 384 B |
BIN
src/assets/ico-quesheng.png
Normal file
|
After Width: | Height: | Size: 4.9 KiB |
BIN
src/assets/log_down.png
Normal file
|
After Width: | Height: | Size: 266 B |
BIN
src/assets/logo.png
Normal file
|
After Width: | Height: | Size: 933 B |
BIN
src/assets/nocheck@3x.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
src/assets/refresh.png
Normal file
|
After Width: | Height: | Size: 295 B |
BIN
src/assets/refresh1.png
Normal file
|
After Width: | Height: | Size: 228 B |
BIN
src/assets/reviewed_ico.png
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
src/assets/rise.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
src/assets/rise1.png
Normal file
|
After Width: | Height: | Size: 371 B |
BIN
src/assets/serch.png
Normal file
|
After Width: | Height: | Size: 291 B |
42
src/assets/style/211/play.scss
Normal file
@@ -0,0 +1,42 @@
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__decrease),
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__increase) {
|
||||
line-height: 12px !important;
|
||||
}
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__decrease) {
|
||||
bottom: 6px !important;
|
||||
}
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__increase) {
|
||||
top: 8px !important;
|
||||
}
|
||||
::v-deep(.el-input-number) {
|
||||
width: 120px !important;
|
||||
}
|
||||
.dialog-top {
|
||||
display: flex;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.dialog-top span {
|
||||
display: flex;
|
||||
justify-content: left;
|
||||
align-items: center;
|
||||
}
|
||||
.dialog-top div:nth-child(1),
|
||||
.dialog-top div:nth-child(2) {
|
||||
display: flex;
|
||||
width: 18%;
|
||||
}
|
||||
.dialog-top div:nth-child(3) {
|
||||
display: flex;
|
||||
width: 64%;
|
||||
overflow: hidden;
|
||||
}
|
||||
.hover-line:hover {
|
||||
text-decoration: underline;
|
||||
cursor: pointer;
|
||||
}
|
||||
::v-deep(.item-date .el-input__inner) {
|
||||
padding: 0 8px 0 30px !important;
|
||||
}
|
||||
::v-deep(.item-date .el-input__suffix ){
|
||||
right: 15% !important;
|
||||
}
|
||||
37
src/assets/style/211/playCom.scss
Normal file
@@ -0,0 +1,37 @@
|
||||
::v-deep(.el-date-editor--date .el-input__inner) {
|
||||
width: 160px;
|
||||
}
|
||||
|
||||
.sale-container ::v-deep(.s-p-t-g1::after),
|
||||
.sale-container ::v-deep(.s-p-t-g2::after),
|
||||
.sale-container ::v-deep(.s-p-t-g3::after),
|
||||
.sale-container ::v-deep(.s-p-t-g4::after),
|
||||
.sale-container ::v-deep(.s-p-t-g5::after),
|
||||
.sale-container ::v-deep(.s-p-t-g6::after),
|
||||
.sale-container ::v-deep(.s-p-t-g8::after),
|
||||
.sale-container ::v-deep(.s-p-t-g9::after),
|
||||
.sale-container ::v-deep(.s-p-t-g10::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.sale-container ::v-deep(.s-p-t-g1),
|
||||
.sale-container ::v-deep(.s-p-t-g2),
|
||||
.sale-container ::v-deep(.s-p-t-g3),
|
||||
.sale-container ::v-deep(.s-p-t-g4),
|
||||
.sale-container ::v-deep(.s-p-t-g5),
|
||||
.sale-container ::v-deep(.s-p-t-g6),
|
||||
.sale-container ::v-deep(.s-p-t-g10) {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.sale-container ::v-deep(.s-p-t-g7) {
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.sale-container ::v-deep(.s-p-t-g8) {
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
.f-c-r {
|
||||
color: red;
|
||||
}
|
||||
48
src/assets/style/211/saleindex.scss
Normal file
@@ -0,0 +1,48 @@
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__decrease),
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__increase) {
|
||||
line-height: 12px !important;
|
||||
}
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__decrease) {
|
||||
bottom: 6px !important;
|
||||
}
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__increase) {
|
||||
top: 8px !important;
|
||||
}
|
||||
::v-deep(.el-input-number) {
|
||||
width: 100px !important;
|
||||
}
|
||||
.dialog-top {
|
||||
display: flex;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.dialog-top span {
|
||||
display: flex;
|
||||
justify-content: left;
|
||||
align-items: center;
|
||||
}
|
||||
.dialog-top div:nth-child(1),
|
||||
.dialog-top div:nth-child(2) {
|
||||
display: flex;
|
||||
width: 18%;
|
||||
}
|
||||
.dialog-top div:nth-child(3) {
|
||||
display: flex;
|
||||
width: 64%;
|
||||
overflow: hidden;
|
||||
}
|
||||
#main {
|
||||
height: 500px;
|
||||
}
|
||||
.dialog-header {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.icon-zxt-sty {
|
||||
color: #4178d5;
|
||||
}
|
||||
::v-deep(.overflow) {
|
||||
overflow: hidden !important;
|
||||
white-space: nowrap !important;
|
||||
text-overflow: ellipsis !important;
|
||||
}
|
||||
82
src/assets/style/211/semiProdut.scss
Normal file
@@ -0,0 +1,82 @@
|
||||
::v-deep(.table-header-row) {
|
||||
background: #f5f7fa;
|
||||
color: #000;
|
||||
height: 41px;
|
||||
font-size: 12px;
|
||||
}
|
||||
::v-deep(.table-body-row) {
|
||||
height: 50px;
|
||||
font-size: 12px;
|
||||
}
|
||||
::v-deep(.el-input__suffix) {
|
||||
display: flex !important;
|
||||
align-items: center !important;
|
||||
}
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__decrease),
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__increase) {
|
||||
line-height: 12px !important;
|
||||
}
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__decrease) {
|
||||
bottom: 6px !important;
|
||||
}
|
||||
::v-deep(.el-input-number.is-controls-right .el-input-number__increase) {
|
||||
top: 8px !important;
|
||||
}
|
||||
::v-deep(.el-input-number) {
|
||||
width: 100px !important;
|
||||
}
|
||||
.dialog-top {
|
||||
display: flex;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.dialog-top span {
|
||||
display: flex;
|
||||
justify-content: left;
|
||||
align-items: center;
|
||||
}
|
||||
.dialog-top div:nth-child(1),
|
||||
.dialog-top div:nth-child(2) {
|
||||
display: flex;
|
||||
width: 18%;
|
||||
}
|
||||
.dialog-top div:nth-child(3) {
|
||||
display: flex;
|
||||
width: 64%;
|
||||
overflow: hidden;
|
||||
}
|
||||
#main {
|
||||
height: 500px;
|
||||
}
|
||||
.dialog-header {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
// ::v-deep(.el-table .el-input__suffix) {
|
||||
// top: -5px !important;
|
||||
// }
|
||||
.editDialog {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin: 10px 0;
|
||||
}
|
||||
.editDialog span:nth-child(1) {
|
||||
width: 35%;
|
||||
display: block;
|
||||
text-align: right;
|
||||
margin-right: 5px;
|
||||
}
|
||||
.editDialog span:nth-child(2) {
|
||||
width: 45%;
|
||||
display: block;
|
||||
text-align: right;
|
||||
margin-right: 5px;
|
||||
}
|
||||
::v-deep(.el-dialog .el-input__suffix) {
|
||||
top: -5px !important;
|
||||
}
|
||||
|
||||
.el-input__prefix {
|
||||
color: #606266;
|
||||
}
|
||||
33
src/assets/style/activeDirect.scss
Normal file
@@ -0,0 +1,33 @@
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
}
|
||||
|
||||
::v-deep(.is-checkbox .cell .el-checkbox .el-checkbox__input .el-checkbox__inner) {
|
||||
background-color: var(--el-checkbox-disabled-input-fill) !important;
|
||||
border-color: var(--el-checkbox-disabled-border-color) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__label) {
|
||||
width: 100px !important;
|
||||
}
|
||||
|
||||
.order-com-rr {
|
||||
::v-deep(.el-form-item__content .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 16px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.item-date {
|
||||
::v-deep(.el-form-item__content .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 16px !important;
|
||||
}
|
||||
}
|
||||
::v-deep(.div-col .el-textarea__inner) {
|
||||
padding: 0 8px !important ;
|
||||
}
|
||||
::v-deep(.el-textarea__inner) {
|
||||
width: 172px;
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px 0 8px !important;
|
||||
}
|
||||
464
src/assets/style/global.scss
Normal file
@@ -0,0 +1,464 @@
|
||||
/*全局公共样式文件*/
|
||||
html,
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
color: #333;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/*去掉项目标签*/
|
||||
ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
.f-12 {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
.f-14 {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.main-container {
|
||||
width: -moz-available;
|
||||
width: -webkit-fill-available;
|
||||
width: stretch;
|
||||
height: -moz-available;
|
||||
height: -webkit-fill-available;
|
||||
height: stretch;
|
||||
height: 100% !important;
|
||||
margin: 0 16px;
|
||||
}
|
||||
|
||||
.el-main {
|
||||
padding: 0;
|
||||
margin-top: 16px;
|
||||
}
|
||||
|
||||
.min-height-fill4parent {
|
||||
height: -moz-available;
|
||||
height: -webkit-fill-available;
|
||||
height: stretch;
|
||||
}
|
||||
|
||||
.bg-green {
|
||||
background-color: #018a6d;
|
||||
}
|
||||
|
||||
.bg-green-light {
|
||||
background-color: #38b48b;
|
||||
}
|
||||
|
||||
.bg-green-deep {
|
||||
background-color: #006e54;
|
||||
}
|
||||
|
||||
.bg-gray-light {
|
||||
background-color: #ebeef5;
|
||||
}
|
||||
|
||||
.bg-white {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.text-grey {
|
||||
color: #c1cad5;
|
||||
}
|
||||
|
||||
.text-green {
|
||||
color: #38b48b;
|
||||
}
|
||||
|
||||
.text-blue {
|
||||
color: #2c74fa;
|
||||
}
|
||||
|
||||
.text-black {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.text-black-light {
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.text-gray {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.text-red {
|
||||
color: #e73235;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.text-blue {
|
||||
color: #3275f8;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.text-popor {
|
||||
color: #796dff;
|
||||
}
|
||||
|
||||
.text-skyblue {
|
||||
color: #60d1ff;
|
||||
}
|
||||
|
||||
.text-skyblue1 {
|
||||
color: #59dcf1;
|
||||
}
|
||||
|
||||
.text-pink {
|
||||
color: #ff7e9d;
|
||||
}
|
||||
|
||||
.text-yellow {
|
||||
color: #fdc027;
|
||||
}
|
||||
|
||||
.button-green-bg {
|
||||
background-color: rgba(56, 180, 139, 0.3);
|
||||
border-radius: 3px;
|
||||
padding: 7px 16px;
|
||||
}
|
||||
|
||||
.button-green-border {
|
||||
border: 1px solid #38b48b;
|
||||
border-radius: 3px;
|
||||
padding: 7px 24px;
|
||||
color: #38b48b;
|
||||
}
|
||||
|
||||
.button-green {
|
||||
background-color: #38b48b;
|
||||
padding: 9px 24px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.button-green-four {
|
||||
background-color: #38b48b;
|
||||
padding: 9px 16px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
/*字体居中*/
|
||||
.text-l {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.text-c {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.text-r {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.txt-Red {
|
||||
color: red;
|
||||
}
|
||||
|
||||
/*页面宽度*/
|
||||
.content-w {
|
||||
width: 100%;
|
||||
padding-left: 32px;
|
||||
padding-right: 32px;
|
||||
}
|
||||
|
||||
/*边距*/
|
||||
.p-t-16 {
|
||||
padding-top: 16px;
|
||||
}
|
||||
|
||||
.m-r-24 {
|
||||
margin-right: 24px;
|
||||
}
|
||||
|
||||
.el-tabs__nav-wrap::after {
|
||||
height: 1px !important;
|
||||
}
|
||||
|
||||
.el-tabs__item {
|
||||
height: 45px !important;
|
||||
line-height: 45px !important;
|
||||
}
|
||||
|
||||
.el-container.is-vertical {
|
||||
background: #e8edef;
|
||||
}
|
||||
|
||||
/*缺省页样式*/
|
||||
.page-quesheng {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 80%;
|
||||
}
|
||||
|
||||
/*滚动条样式*/
|
||||
//滚动条的宽度
|
||||
.el-table__body-wrapper::-webkit-scrollbar {
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
}
|
||||
|
||||
//滚动条的滑块
|
||||
.el-table__body-wrapper::-webkit-scrollbar-thumb {
|
||||
background-color: #bcc3c9;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
//滚动条的宽度
|
||||
::-webkit-scrollbar {
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
}
|
||||
|
||||
//滚动条的滑块
|
||||
::-webkit-scrollbar-thumb {
|
||||
background-color: #acb7c0;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.el-table--fluid-height .el-table__fixed,
|
||||
.el-table--fluid-height .el-table__fixed-right {
|
||||
bottom: 8px !important;
|
||||
}
|
||||
|
||||
/*公按钮下拉*/
|
||||
.btn-action {
|
||||
float: left;
|
||||
cursor: pointer;
|
||||
font-size: 12px;
|
||||
margin-top: 14px;
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.btn-action:hover .insert-row {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.dropdownselect {
|
||||
font-size: 12px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
padding: 0 12px;
|
||||
}
|
||||
|
||||
.dropdownselect .zdyspan {
|
||||
position: relative;
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
.dropdownselect .zdyspan i {
|
||||
position: relative;
|
||||
right: -10px;
|
||||
top: 1px;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.cell span {
|
||||
line-height: 0px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.el-form-item__content {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.div-col span {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.input-number-box {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.el-input__inner {
|
||||
padding: 0 16px 0 8px !important;
|
||||
// padding-right: 15px;
|
||||
height: 28px !important;
|
||||
font-size: 12px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
.el-dialog__title {
|
||||
font-size: 15px !important;
|
||||
}
|
||||
|
||||
.el-dialog__body {
|
||||
padding: 0 20px !important;
|
||||
}
|
||||
|
||||
.el-table .cell {
|
||||
font-size: 12px;
|
||||
line-height: 20px !important;
|
||||
}
|
||||
|
||||
// 按钮禁用
|
||||
.btn-dsable {
|
||||
cursor: no-drop;
|
||||
}
|
||||
|
||||
.el-input.is-disabled .el-input__inner,
|
||||
.el-select .el-input.is-disabled .el-input__inner {
|
||||
color: #99a0af;
|
||||
cursor: auto;
|
||||
}
|
||||
|
||||
.el-date-editor .el-range-separator {
|
||||
font-size: 12px;
|
||||
line-height: 22px;
|
||||
}
|
||||
|
||||
.el-range-input {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.tell-info-query span,
|
||||
.tell-info-delete-row span,
|
||||
.el-dropdown-selfdefine,
|
||||
.tell-info-copy-row span {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.tell-info-query span:hover,
|
||||
.tell-info-delete-row span:hover,
|
||||
.el-dropdown-selfdefine:hover,
|
||||
.tell-info-copy-row span:hover {
|
||||
color: #66b1ff;
|
||||
}
|
||||
|
||||
.TopInfo {
|
||||
font-size: 12px;
|
||||
padding-bottom: 5px;
|
||||
margin-bottom: 10px;
|
||||
background-color: rgba(84, 128, 240, 0.2);
|
||||
color: #5480f0;
|
||||
height: 20px;
|
||||
padding-top: 5px;
|
||||
padding-left: 20px;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.span_tips {
|
||||
width: 200px;
|
||||
cursor: pointer;
|
||||
white-space: nowrap; //不换行
|
||||
overflow: hidden; //超出隐藏
|
||||
text-overflow: ellipsis; //变成...
|
||||
}
|
||||
|
||||
.el-date-editor .el-range__icon {
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.el-table .success-row {
|
||||
color: red !important;
|
||||
}
|
||||
|
||||
.sale-details-base-info,
|
||||
.order-create-base-info {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.reviewIconImg {
|
||||
width: 4%;
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
top: 16%;
|
||||
left: 65px;
|
||||
transform: rotate(-20deg);
|
||||
}
|
||||
|
||||
.reviewIconImg-pur {
|
||||
width: 4%;
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
top: 18%;
|
||||
left: 145px;
|
||||
transform: rotate(-20deg);
|
||||
}
|
||||
|
||||
.el-cascader {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
line-height: 28px !important;
|
||||
height: 28px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.el-cascader-panel .el-radio {
|
||||
position: absolute;
|
||||
z-index: 10;
|
||||
padding: 0 10px;
|
||||
width: 132px;
|
||||
height: 28px;
|
||||
line-height: 28px;
|
||||
}
|
||||
|
||||
.el-cascader-panel .el-radio__input {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.el-cascader-panel .el-input-node__postfix {
|
||||
top: 10px;
|
||||
}
|
||||
|
||||
:v-deep(.el-select .el-input.is-disabled .el-input__inner) {
|
||||
cursor: pointer !important;
|
||||
}
|
||||
|
||||
input::-webkit-outer-spin-button,
|
||||
input::-webkit-inner-spin-button {
|
||||
-webkit-appearance: none !important;
|
||||
}
|
||||
|
||||
input[type='number'] {
|
||||
-moz-appearance: textfield !important;
|
||||
}
|
||||
|
||||
.sc {
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
.zp .el-input__suffix {
|
||||
top: -5px !important;
|
||||
}
|
||||
|
||||
.zp .el-input__inner {
|
||||
padding-left: 100px;
|
||||
}
|
||||
|
||||
.rq .el-icon-date {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.bounce-enter-active {
|
||||
animation: bounce-in 0.5s;
|
||||
}
|
||||
.bounce-leave-active {
|
||||
animation: bounce-in 0.5s reverse;
|
||||
}
|
||||
@keyframes bounce-in {
|
||||
0% {
|
||||
transform: scale(0);
|
||||
}
|
||||
50% {
|
||||
transform: scale(1.03);
|
||||
}
|
||||
100% {
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
198
src/assets/style/index.scss
Normal file
@@ -0,0 +1,198 @@
|
||||
/*首页*/
|
||||
.mainlayout-flex {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.page-main {
|
||||
margin: 0 16px;
|
||||
}
|
||||
|
||||
.page-title {
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
line-height: 19px;
|
||||
color: #303133;
|
||||
margin: 16px;
|
||||
}
|
||||
|
||||
.page-left {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
.page-left-1 {
|
||||
width: 100%;
|
||||
height: 300px;
|
||||
margin-bottom: 16px;
|
||||
|
||||
.tag_main {
|
||||
margin: 0 16px;
|
||||
margin-bottom: 24px;
|
||||
|
||||
.el-tag {
|
||||
color: #303133;
|
||||
padding: 7px 16px;
|
||||
border: 1px solid #E4E7ED;
|
||||
opacity: 1;
|
||||
background: white;
|
||||
height: auto;
|
||||
width: auto;
|
||||
line-height: inherit;
|
||||
margin-right: 16px;
|
||||
margin-bottom: 15px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.page-left-2 {
|
||||
width: 100%;
|
||||
height: 518px;
|
||||
position: relative;
|
||||
|
||||
.page-title {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.time {
|
||||
width: 166px;
|
||||
font-size: 12px;
|
||||
position: absolute;
|
||||
right: 16px;
|
||||
color: #909399;
|
||||
top: 65px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.page-left,
|
||||
.page-right {
|
||||
width: 906px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.page-right {
|
||||
max-height: 835px;
|
||||
}
|
||||
|
||||
.page-left div,
|
||||
.page-right {
|
||||
background: white;
|
||||
}
|
||||
|
||||
.hxsj-mian {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
display: -webkit-flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.item {
|
||||
width: 281px;
|
||||
height: 192px;
|
||||
border: 1px solid #E4E7ED;
|
||||
margin-bottom: 8px;
|
||||
margin-right: 8px;
|
||||
|
||||
p {
|
||||
font-size: 16px;
|
||||
font-family: D-DIN DIN;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.numpoint {
|
||||
text-align: center;
|
||||
// margin-left: 95px;
|
||||
margin-top: 72px;
|
||||
color: #AAB2C2;
|
||||
margin-bottom: 0;
|
||||
|
||||
.num {
|
||||
font-weight: bold;
|
||||
font-size: 30px;
|
||||
font-family: D-DIN DIN;
|
||||
}
|
||||
}
|
||||
|
||||
.sm {
|
||||
font-size: 14px;
|
||||
color: #606266;
|
||||
// margin-left: 95px;
|
||||
text-align: center;
|
||||
margin-top: 2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.hxsj-mian:after {
|
||||
content: ' ';
|
||||
width: 271px;
|
||||
flex: auto;
|
||||
}
|
||||
|
||||
.dbrw-main {
|
||||
display: flex;
|
||||
width: 96%;
|
||||
height: 672px;
|
||||
margin: 0 16px;
|
||||
position: relative;
|
||||
overflow-y: auto;
|
||||
flex-direction: column;
|
||||
|
||||
.dbitem {
|
||||
width: 100%;
|
||||
width: 834px;
|
||||
height: 82px;
|
||||
border: 1px solid #E4E7ED;
|
||||
margin-bottom: 15px;
|
||||
|
||||
div {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding-top: 12px;
|
||||
padding-bottom: 5px;
|
||||
align-items: center;
|
||||
|
||||
.title {
|
||||
font-size: 12px;
|
||||
color: #303133;
|
||||
font-weight: bold;
|
||||
margin-left: 12px;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 13px;
|
||||
color: #909399;
|
||||
margin-right: 12px;
|
||||
}
|
||||
}
|
||||
|
||||
.content {
|
||||
font-size: 12px;
|
||||
color: #606266;
|
||||
padding-top: 0;
|
||||
width: 100%;
|
||||
|
||||
span {
|
||||
width: 100%;
|
||||
margin: 0 12px;
|
||||
text-overflow: -o-ellipsis-lastline;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2;
|
||||
line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
:v-deep(.el-table--scrollable-y ::-webkit-scrollbar) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
378
src/assets/style/index1.scss
Normal file
@@ -0,0 +1,378 @@
|
||||
/*首页*/
|
||||
.mainlayout-flex {
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.page-main {
|
||||
margin: 0 16px;
|
||||
}
|
||||
.page-title {
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
line-height: 19px;
|
||||
color: #303133;
|
||||
margin: 16px;
|
||||
}
|
||||
.page-title-1 {
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
line-height: 0px;
|
||||
color: #303133;
|
||||
margin-top: 16px;
|
||||
}
|
||||
|
||||
.page-left {
|
||||
height: 377px;
|
||||
display: flex;
|
||||
|
||||
.page-left-1 {
|
||||
width: 100%;
|
||||
// height: 477px;
|
||||
.serch{
|
||||
margin: 0 16px;
|
||||
margin-bottom:32px;
|
||||
input{
|
||||
width: 320px;
|
||||
height: 32px;
|
||||
padding-left: 3%;
|
||||
opacity: 1;
|
||||
border-radius: 2px;
|
||||
background: rgba(255, 255, 255, 1);
|
||||
background-image: url(../style/img/serch.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: 2%;
|
||||
border: 1px solid rgba(220, 223, 230, 1);
|
||||
}
|
||||
}
|
||||
|
||||
.tag_main {
|
||||
margin: 0 16px;
|
||||
margin-bottom: 16px;
|
||||
overflow: hidden;
|
||||
.el-tag {
|
||||
color: #303133;
|
||||
padding: 7px 16px;
|
||||
border: 1px solid #E4E7ED;
|
||||
opacity: 1;
|
||||
background: white;
|
||||
height: auto;
|
||||
width: auto;
|
||||
line-height: inherit;
|
||||
margin-right: 16px;
|
||||
margin-bottom: 15px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
.page-left,
|
||||
.page-right {
|
||||
width: 900px;
|
||||
// height: 100%;
|
||||
}
|
||||
|
||||
.page-right {
|
||||
margin-left: 16px;
|
||||
max-height: 377px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.page-left div {
|
||||
background: white;
|
||||
}
|
||||
.page-right-1 {
|
||||
width: 100%;
|
||||
height: 377px;
|
||||
background: white;
|
||||
overflow: hidden;
|
||||
|
||||
.tag_main {
|
||||
margin: 0 16px;
|
||||
margin-bottom: 24px;
|
||||
.page-main>div{
|
||||
max-height: 290px !important;
|
||||
}
|
||||
.el-table__body-wrapper {
|
||||
max-height: 290px !important;
|
||||
.el-table__body{
|
||||
|
||||
max-height: 290px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .el-table__row > td {
|
||||
/* 去除表格线 */
|
||||
border: none;
|
||||
border-bottom: 1px solid #EBEEF7;
|
||||
|
||||
}
|
||||
|
||||
.xiaoshou{
|
||||
width: 100%;
|
||||
height: 1166px;
|
||||
background-color: white;
|
||||
}
|
||||
.kucun{
|
||||
margin-top: 28px;
|
||||
overflow: hidden;
|
||||
width: 100%;
|
||||
height: 975px;
|
||||
background-color: white;
|
||||
}
|
||||
.sales{
|
||||
display: flex;
|
||||
width: 100%;
|
||||
height: 220px;
|
||||
background-color: white;
|
||||
.sales-1 {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
margin-bottom: 16px;
|
||||
.amount{
|
||||
position: relative;
|
||||
float: left;
|
||||
margin-left: 16px;
|
||||
margin-top: 16px;
|
||||
margin-bottom: 32px;
|
||||
width: 435px;
|
||||
height: 148px;
|
||||
opacity: 1;
|
||||
border-radius: 4px;
|
||||
background: rgba(255, 255, 255, 1);
|
||||
box-shadow: 0px 7px 29px 0px rgba(151, 154, 161, 0.2);
|
||||
.amount-r1{
|
||||
position: absolute;
|
||||
top: 18px;
|
||||
right: 32px;
|
||||
}
|
||||
.amount-r2{
|
||||
position: absolute;
|
||||
bottom: 32px;
|
||||
right: 37px;
|
||||
}
|
||||
}
|
||||
.amount-p{
|
||||
padding: 16px 16px 16px 32px;
|
||||
font-size: 14px;
|
||||
font-weight: 500;
|
||||
letter-spacing: 0px;
|
||||
line-height: 0px;
|
||||
color: rgba(153, 153, 153, 1);
|
||||
text-align: left;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.jine{
|
||||
margin-left: 32px;
|
||||
font-size: 32px;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0px;
|
||||
line-height: 0px;
|
||||
color: rgba(31, 31, 31, 1);
|
||||
text-align: left;
|
||||
}
|
||||
.bagcolorg{
|
||||
margin-top: 10px;
|
||||
margin-left: 32px;
|
||||
width: 146px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
padding-left: 16px;
|
||||
border-radius: 18px;
|
||||
background: linear-gradient(90deg, rgba(4, 204, 141, 0.15) 0%, rgba(4, 204, 141, 0) 100%);
|
||||
.span1{
|
||||
margin-left: 24px;
|
||||
}
|
||||
span{
|
||||
color: #04CC8DFF;
|
||||
}
|
||||
}
|
||||
.bagcolorr{
|
||||
margin-top: 10px;
|
||||
margin-left: 32px;
|
||||
width: 146px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
padding-left: 16px;
|
||||
border-radius: 18px;
|
||||
background: linear-gradient(90deg, rgba(250, 87, 87, 0.15) 0%, rgba(250, 87, 87, 0) 100%);
|
||||
.span1{
|
||||
margin-left: 24px;
|
||||
}
|
||||
span{
|
||||
color: #FA5757;
|
||||
}
|
||||
}
|
||||
.bagcolory{
|
||||
margin-top: 10px;
|
||||
margin-left: 32px;
|
||||
width: 146px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
padding-left: 16px;
|
||||
border-radius: 18px;
|
||||
background: linear-gradient(90deg, rgb(255, 189,1, 0.15) 0%, rgb(255, 189,1, 0) 100%);
|
||||
.span1{
|
||||
margin-left: 24px;
|
||||
}
|
||||
span{
|
||||
color: #FFBD00;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
.tishi{
|
||||
height: 56px;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
position: relative;
|
||||
}
|
||||
.tishi ul{
|
||||
padding-left: 16px;
|
||||
}
|
||||
.tishi .xx{
|
||||
position: absolute;
|
||||
right:45px;
|
||||
top:15px;
|
||||
padding-right: 10px;
|
||||
border-right: 1px solid #CED1D9;
|
||||
}
|
||||
.tishi .update{
|
||||
position: absolute;
|
||||
right: 16px;
|
||||
top:15px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.tishi .update :hover{
|
||||
|
||||
color: #4178D5;
|
||||
}
|
||||
.tishi img{
|
||||
padding: 16px;
|
||||
vertical-align:bottom;
|
||||
cursor: pointer;
|
||||
}
|
||||
.bb{
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
margin-top: 16px;
|
||||
width: 100%;
|
||||
height: 462px;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
.Saleslist{
|
||||
margin-bottom: 85px;
|
||||
margin-top: 16px;
|
||||
overflow: hidden;
|
||||
height: 600px;
|
||||
background-color: white;
|
||||
position: relative;
|
||||
}
|
||||
.bb .tian,.Saleslist .tian{
|
||||
position: absolute;
|
||||
display: flex;
|
||||
right: 5%;
|
||||
top: 16px;
|
||||
width: 120px;
|
||||
height: 30px;
|
||||
opacity: 1;
|
||||
border-radius: 2px;
|
||||
background: #FFFFFF;
|
||||
padding: 0;
|
||||
border: 1px solid #DCDFE6;
|
||||
}
|
||||
.bb-bumen{
|
||||
position: absolute;
|
||||
right:5%;
|
||||
top: 16px;
|
||||
width: 80px;
|
||||
// height: 30px;
|
||||
opacity: 1;
|
||||
border-radius: 2px;
|
||||
}
|
||||
.bb .bumen{
|
||||
position: absolute;
|
||||
right:12%;
|
||||
top: 34px;
|
||||
width: 80px;
|
||||
// height: 30px;
|
||||
opacity: 1;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
.bb .tian li,.Saleslist .tian li{
|
||||
margin-top: 2px;
|
||||
margin-left: 1px;
|
||||
width: 56px;
|
||||
height: 22px;
|
||||
opacity: 1;
|
||||
border-radius: 2px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
line-height: 22px;
|
||||
padding: 2px 3px 2px 3px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.active{
|
||||
font-weight: 600;
|
||||
margin-top: 2px;
|
||||
margin-left: 1px;
|
||||
width: 56px;
|
||||
height: 22px;
|
||||
opacity: 1;
|
||||
border-radius: 2px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-align: center;
|
||||
line-height: 22px;
|
||||
background: rgb(242, 243, 245);
|
||||
padding: 2px 3px 2px 3px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.Saleslist .tian{
|
||||
position: absolute;
|
||||
margin: 0;
|
||||
right: 5%;
|
||||
top: 10px;
|
||||
width: 178px;
|
||||
height: 30px;
|
||||
opacity: 1;
|
||||
border-radius: 2px;
|
||||
background: #FFFFFF;
|
||||
padding: 0;
|
||||
border: 1px solid #DCDFE6;
|
||||
}
|
||||
.main3-tit{
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
height: 19px;
|
||||
line-height: 19px;
|
||||
color: #303133;
|
||||
padding-left: 16px;
|
||||
|
||||
}
|
||||
.main3-tit li{
|
||||
width: 120px;
|
||||
height: 20px;
|
||||
display: block;
|
||||
float: left;
|
||||
line-height: 22px;
|
||||
cursor: pointer;
|
||||
text-align: center;
|
||||
|
||||
border-right: 1px solid #D5D9E0;
|
||||
}
|
||||
|
||||
.tit1{
|
||||
color: blue;
|
||||
}
|
||||
74
src/assets/style/materialBom/bom.scss
Normal file
@@ -0,0 +1,74 @@
|
||||
.base-info-form-box,
|
||||
.pro-info-form-box,
|
||||
.size-info-form-box {
|
||||
.item-bt-s {
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.org-info-form-box {
|
||||
.tell-info-button-group {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
box-sizing: border-box;
|
||||
padding-left: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.sale-details-base-info .tell-info-table {
|
||||
margin-top: 13px;
|
||||
}
|
||||
|
||||
:deep(.el-upload--picture-card) {
|
||||
width: 120px;
|
||||
height: 120px;
|
||||
}
|
||||
|
||||
.sale-details-base-info {
|
||||
margin-top: 12px;
|
||||
}
|
||||
|
||||
.sale-details-base-info :deep(.el-form-item .el-form-item__label) {
|
||||
width: 120px!important;
|
||||
}
|
||||
|
||||
.sale-details-base-info .search-group-one :deep(.el-form-item__label) {
|
||||
width: 30px!important;
|
||||
}
|
||||
|
||||
.sale-details-base-info .search-group-invalid :deep(.el-form-item__label) {
|
||||
width: 115px!important;
|
||||
}
|
||||
|
||||
.sale-details-base-info .search-group-supplier :deep(.el-form-item__label) {
|
||||
width: 130px!important;
|
||||
}
|
||||
|
||||
.tableData{
|
||||
margin-top: 12px;
|
||||
}
|
||||
|
||||
.sale-details-btn-group :deep(.page-top .s-p-t-g5 .el-button){
|
||||
padding: 7px 0 7px 0!important;
|
||||
}
|
||||
|
||||
.pro-info-form-box {
|
||||
:deep(.el-form-item__label) {
|
||||
width: 120px !important;
|
||||
}
|
||||
}
|
||||
.size-info-form-box {
|
||||
:deep(.el-form-item__label) {
|
||||
width: 120px !important;
|
||||
}
|
||||
}
|
||||
.other-info-form-box {
|
||||
:deep(.el-form-item__label) {
|
||||
width: 60px !important;
|
||||
}
|
||||
}
|
||||
.arrow_none {
|
||||
:deep(.el-icon-arrow-up:before) {
|
||||
content: '';
|
||||
}
|
||||
}
|
||||
54
src/assets/style/purchase/common.scss
Normal file
@@ -0,0 +1,54 @@
|
||||
// 采购订单
|
||||
.order-com-r {
|
||||
::v-deep(.el-form-item .el-form-item__content .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important ;
|
||||
}
|
||||
}
|
||||
|
||||
.order-com-rr {
|
||||
::v-deep(.el-form-item__content .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important ;
|
||||
}
|
||||
}
|
||||
|
||||
.item-date {
|
||||
::v-deep(.el-form-item__content .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important ;
|
||||
width: 173px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.address-textarea {
|
||||
::v-deep(.el-form-item__content .el-textarea .el-textarea__inner) {
|
||||
padding: 0 16px 0 8px !important ;
|
||||
}
|
||||
}
|
||||
.click-cell-show ::v-deep(.el-input__suffix) {
|
||||
display: block !important;
|
||||
}
|
||||
.click-cell-show ::v-deep(.el-input__suffix .el-input__suffix-inner .el-input__icon) {
|
||||
line-height: 30px !important;
|
||||
}
|
||||
|
||||
// 采购入库
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
}
|
||||
::v-deep(.is-checkbox .cell .el-checkbox .el-checkbox__input .el-checkbox__inner) {
|
||||
background-color: var(--el-checkbox-disabled-input-fill) !important;
|
||||
border-color: var(--el-checkbox-disabled-border-color) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
:v-deep(.el-form-item__label) {
|
||||
width: 90px !important;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-issue .select-trigger .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
.createdRow {
|
||||
cursor: pointer;
|
||||
}
|
||||
.createdRow:hover {
|
||||
color: #66b1ff;
|
||||
}
|
||||
355
src/assets/style/purchase/createOrgNeeds.scss
Normal file
@@ -0,0 +1,355 @@
|
||||
::v-deep(.el-form-item) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__label) {
|
||||
font-size: 12px;
|
||||
padding-right: 6px;
|
||||
height: 27px;
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
align-items: center;
|
||||
width: 88px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
// padding: 0 8px;
|
||||
height: 27px;
|
||||
font-size: 12px;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-issue .select-trigger .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__content) {
|
||||
line-height: 28px;
|
||||
}
|
||||
|
||||
::v-deep(input::-webkit-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-moz-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-ms-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item) {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__suffix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-select-dropdown__item) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before) {
|
||||
content: '' !important;
|
||||
color: #fff !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:after) {
|
||||
content: '*' !important;
|
||||
color: var(--el-color-danger) !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__prefix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor) {
|
||||
--el-date-editor-width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-dropdown) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
text-align: left;
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td) {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
|
||||
::v-deep(.lead-time-style .el-input__inner) {
|
||||
padding-left: 0px !important;
|
||||
border: none;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__prefix) {
|
||||
justify-content: right !important;
|
||||
left: 0 !important;
|
||||
right: 1px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-row) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.el-select) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.sale-details-container .sale-details-base-info .base-info-form-box .div-col .item-date[data-v-fae5bece] .el-input__inner) {
|
||||
padding-right: 2px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table th.must>.cell::after) {
|
||||
content: '*';
|
||||
color: var(--el-color-danger) !important;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position) {
|
||||
height: 50px;
|
||||
color: #fff;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position text) {
|
||||
height: inherit !important;
|
||||
width: inherit !important;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.tooltipNote {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.getTextWidth {
|
||||
font-size: 12px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-enter-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-leave-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:visited) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:focus) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
// ::v-deep(.el-button:hover) {
|
||||
// background-color: #fff;
|
||||
// }
|
||||
|
||||
::v-deep(.el-table--border .el-table__cell:first-child .cell) {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-autocomplete-suggestion li) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-autocomplete) {
|
||||
width: 100% !important;
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
::v-deep(tbody .el-autocomplete .el-input__inner) {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__inner) {
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-autocomplete-suggestion li) {
|
||||
width: 100%;
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover>td) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover .el-input__inner) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(.el-table--enable-row-transition .el-table__body td.el-table__cell) {
|
||||
transition: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__suffix) {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-table__cell .cell) {
|
||||
height: inherit !important;
|
||||
line-height: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-textarea__inner) {
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px !important;
|
||||
}
|
||||
|
||||
.address-textarea {
|
||||
align-items: flex-start !important;
|
||||
}
|
||||
|
||||
.checkbox-style {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.disable {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.disable ::v-deep(.el-input__inner) {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.isDisable {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.isDisable ::v-deep(.el-input__inner) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.t-r {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.t-r ::v-deep(.el-input__inner) {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card) {
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active) {
|
||||
border: 1px solid #909399 !important;
|
||||
color: #303133 !important;
|
||||
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item) {
|
||||
color: #909399 !important;
|
||||
font-weight: 600;
|
||||
border: 1px solid #909399 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__item) {
|
||||
padding: 0 8px !important;
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child) {
|
||||
margin-left: 0 !important;
|
||||
margin-top: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
padding-left: 12px !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child::before) {
|
||||
content: '';
|
||||
width: 4px;
|
||||
height: 50%;
|
||||
background-color: #4178D5;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -12px;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
// ::v-deep(.el-tabs__nav-scroll::before) {
|
||||
// content: '';
|
||||
// width: calc(100% - 168px);
|
||||
// height: 1px;
|
||||
// background-color: #EDEFF5;
|
||||
// position: absolute;
|
||||
// top: 50%;
|
||||
// left: 168px;
|
||||
// z-index: 1;
|
||||
// }
|
||||
|
||||
.create-purchase-container ::v-deep(.s-p-t-g4::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio-group) {
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio) {
|
||||
width: 50% !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
371
src/assets/style/purchase/createPurchase.scss
Normal file
@@ -0,0 +1,371 @@
|
||||
::v-deep(.el-form-item) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__label) {
|
||||
font-size: 12px;
|
||||
padding-right: 6px;
|
||||
height: 28px;
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
align-items: center;
|
||||
min-width: 97px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
height: 27px;
|
||||
font-size: 12px;
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__content) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(input::-webkit-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-moz-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-ms-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item) {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__suffix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-select-dropdown__item) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before) {
|
||||
content: '' !important;
|
||||
color: #fff !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label::before) {
|
||||
content: '*' !important;
|
||||
color: var(--el-color-danger) !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__prefix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor) {
|
||||
--el-date-editor-width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-dropdown) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
text-align: left;
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td) {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
|
||||
::v-deep(.lead-time-style .el-input__inner) {
|
||||
padding: 0px 30px 0 8px !important;
|
||||
// border: none;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-issue .select-trigger .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-c .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__prefix) {
|
||||
justify-content: right !important;
|
||||
left: 0 !important;
|
||||
right: 1px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-row) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.el-select) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.sale-details-container .sale-details-base-info .base-info-form-box .div-col .item-date[data-v-fae5bece] .el-input__inner) {
|
||||
padding-right: 2px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table th.must>.cell::after) {
|
||||
content: '*';
|
||||
color: var(--el-color-danger) !important;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position) {
|
||||
height: 50px;
|
||||
color: #fff;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position text) {
|
||||
height: inherit !important;
|
||||
width: inherit !important;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.tooltipNote {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.getTextWidth {
|
||||
font-size: 12px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-enter-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-leave-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:visited) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:focus) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
// ::v-deep(.el-button:hover) {
|
||||
// background-color: #fff;
|
||||
// }
|
||||
|
||||
::v-deep(.el-table--border .el-table__cell:first-child .cell) {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-autocomplete-suggestion li) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-autocomplete) {
|
||||
width: 100% !important;
|
||||
// border: none !important;
|
||||
}
|
||||
|
||||
::v-deep(tbody .el-autocomplete .el-input__inner) {
|
||||
// border: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__inner) {
|
||||
// border: none !important;
|
||||
font-size: 12px;
|
||||
// padding: 0;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-autocomplete-suggestion li) {
|
||||
width: 100%;
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover>td) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover .el-input__inner) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(.el-table--enable-row-transition .el-table__body td.el-table__cell) {
|
||||
transition: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__suffix) {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-table__cell .cell) {
|
||||
height: inherit !important;
|
||||
line-height: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-textarea__inner) {
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px !important;
|
||||
}
|
||||
|
||||
.address-textarea {
|
||||
align-items: flex-start !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-textarea) {
|
||||
padding-right: 8px;
|
||||
}
|
||||
|
||||
.checkbox-style {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.disable {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.disable ::v-deep(.el-input__inner) {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.isDisable {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.isDisable ::v-deep(.el-input__inner) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.t-r {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.t-r ::v-deep(.el-input__inner) {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card) {
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active) {
|
||||
border: 1px solid #909399 !important;
|
||||
color: #303133 !important;
|
||||
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item) {
|
||||
color: #909399 !important;
|
||||
font-weight: 600;
|
||||
border: 1px solid #909399 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__item) {
|
||||
padding: 0 8px !important;
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child) {
|
||||
margin-left: 0 !important;
|
||||
margin-top: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
padding-top: 16px !important;
|
||||
padding-left: 12px !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child::before) {
|
||||
content: '';
|
||||
width: 4px;
|
||||
height: 50%;
|
||||
background-color: #4178D5;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -12px;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll::before) {
|
||||
content: '';
|
||||
width: calc(100% - 168px);
|
||||
height: 1px;
|
||||
background-color: #EDEFF5;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 168px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.create-purchase-container ::v-deep(.s-p-t-g4::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio-group) {
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio) {
|
||||
width: 50% !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
60
src/assets/style/purchase/orgNeedsList.scss
Normal file
@@ -0,0 +1,60 @@
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
padding: 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row td) {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
}
|
||||
|
||||
.noteOrder {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.total-select-item) {
|
||||
margin-right: 24px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-pagination__sizes) {
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-pagination__total) {
|
||||
margin-right: 24px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table .headerRight) {
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor) {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor .el-range-separator) {
|
||||
display: flex !important;
|
||||
justify-content: center !important;
|
||||
align-items: center !important;
|
||||
color: #9b9fa5 !important
|
||||
}
|
||||
|
||||
::v-deep(.el-radio-group) {
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio) {
|
||||
width: 50% !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
1169
src/assets/style/purchase/purchaseCommon.scss
Normal file
299
src/assets/style/purchase/purchaseDetails.scss
Normal file
@@ -0,0 +1,299 @@
|
||||
::v-deep(.el-form-item) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__label) {
|
||||
font-size: 12px;
|
||||
padding-right: 6px;
|
||||
height: 27px;
|
||||
// line-height: 38px;
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
align-items: center;
|
||||
min-width: 97px !important;
|
||||
;
|
||||
}
|
||||
|
||||
::v-deep(.el-input) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
|
||||
::v-deep(.el-form-item__content) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(input::-webkit-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-moz-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-ms-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item) {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__suffix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-select-dropdown__item) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before) {
|
||||
content: '' !important;
|
||||
color: #fff !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:after) {
|
||||
content: '*' !important;
|
||||
color: var(--el-color-danger) !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__prefix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor) {
|
||||
// --el-date-editor-width: 200px !important;
|
||||
--el-date-editor-width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-dropdown) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
text-align: left;
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th .cell) {
|
||||
// text-align: left;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td) {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td .cell) {
|
||||
// display: -webkit-box;
|
||||
// white-space:normal;
|
||||
// text-overflow: ellipsis;
|
||||
// overflow: hidden;
|
||||
// -webkit-line-clamp: 2;
|
||||
// -webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-row) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.el-select) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.sale-details-container .sale-details-base-info .base-info-form-box .div-col .item-date[data-v-fae5bece] .el-input__inner) {
|
||||
padding-right: 2px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table th.must>.cell::after) {
|
||||
content: '*';
|
||||
color: var(--el-color-danger) !important;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position) {
|
||||
height: 50px;
|
||||
color: #fff;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position text) {
|
||||
height: inherit !important;
|
||||
width: inherit !important;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.myNote {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.getTextWidth {
|
||||
font-size: 12px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-enter-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-leave-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:visited) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:focus) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
|
||||
::v-deep(.el-table--border .el-table__cell:first-child .cell) {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card) {
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active) {
|
||||
border: 1px solid #909399 !important;
|
||||
color: #303133 !important;
|
||||
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item) {
|
||||
color: #909399 !important;
|
||||
font-weight: 600;
|
||||
border: 1px solid #909399 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__item) {
|
||||
padding: 0 8px !important;
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child) {
|
||||
margin-left: 0 !important;
|
||||
margin-top: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
padding-left: 12px !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child::before) {
|
||||
content: '';
|
||||
width: 4px;
|
||||
height: 100%;
|
||||
background-color: #4178D5;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: -12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll::before) {
|
||||
content: '';
|
||||
width: 100%;
|
||||
height: 1px;
|
||||
background-color: #EDEFF5;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__inner) {
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
// background-color: var(--el-table-row-hover-background-color);
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-autocomplete-suggestion li) {
|
||||
width: 100%;
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover>td) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover .el-input__inner) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(.el-table--enable-row-transition .el-table__body td.el-table__cell) {
|
||||
transition: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__suffix) {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-table__cell .cell) {
|
||||
height: inherit !important;
|
||||
line-height: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__inner) {
|
||||
padding-left: 0px !important;
|
||||
border: none;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__prefix) {
|
||||
justify-content: right !important;
|
||||
left: 0 !important;
|
||||
right: 1px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__content) {
|
||||
overflow: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.matter-code-box .el-input__inner) {
|
||||
border: none !important;
|
||||
padding-left: 0 !important;
|
||||
padding-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-textarea__inner) {
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px !important;
|
||||
}
|
||||
|
||||
.address-textarea {
|
||||
align-items: flex-start !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-textarea) {
|
||||
padding-right: 8px;
|
||||
}
|
||||
71
src/assets/style/purchase/purchaseList.scss
Normal file
@@ -0,0 +1,71 @@
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
padding: 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row td) {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
}
|
||||
|
||||
.noteOrder {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.total-select-item) {
|
||||
margin-right: 24px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-pagination__sizes) {
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-pagination__total) {
|
||||
margin-right: 24px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table .headerRight) {
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio-group) {
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio) {
|
||||
width: 50% !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
.sale-container ::v-deep(.s-p-t-g7::after),
|
||||
.sale-container::v-deep(.s-p-t-g8::after),
|
||||
.sale-container ::v-deep(.s-p-t-g9::after),
|
||||
.sale-container ::v-deep(.s-p-t-g10::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.sale-container ::v-deep(.s-p-t-g7),
|
||||
.sale-container ::v-deep(.s-p-t-g8),
|
||||
.sale-container ::v-deep(.s-p-t-g9),
|
||||
.sale-container ::v-deep(.s-p-t-g10) {
|
||||
padding: 0;
|
||||
}
|
||||
142
src/assets/style/saleOrder/common.scss
Normal file
@@ -0,0 +1,142 @@
|
||||
// 销售订单
|
||||
::v-deep(.el-cascader-node__label) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.item-date .el-input__inner) {
|
||||
padding: 0 16px 0 30px !important;
|
||||
}
|
||||
|
||||
.isEisShow {
|
||||
overflow: none !important;
|
||||
white-space: none !important;
|
||||
text-overflow: none !important;
|
||||
}
|
||||
.Iisshow :hover>.copyBtn{
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
.copyBtn {
|
||||
position: absolute;
|
||||
left: 88%;
|
||||
top: 2%;
|
||||
display: none;
|
||||
}
|
||||
|
||||
.copyBtnA {
|
||||
position: absolute;
|
||||
left: 95%;
|
||||
top: 2%;
|
||||
}
|
||||
.copyBtnB{
|
||||
z-index: 9999;
|
||||
position: absolute;
|
||||
left: 78%;
|
||||
top: 2%;
|
||||
}
|
||||
.copyBtnC{
|
||||
position: absolute;
|
||||
left: 88%;
|
||||
top: 30%;
|
||||
}
|
||||
.copyBtnS{
|
||||
position: absolute;
|
||||
left: 88%;
|
||||
top: 30%;
|
||||
display: none !important;
|
||||
}
|
||||
// 销售退货
|
||||
|
||||
::v-deep(.el-textarea__inner) {
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px 0 8px !important;
|
||||
}
|
||||
.copyBtn1 {
|
||||
position: absolute;
|
||||
left: 85%;
|
||||
top: 2%;
|
||||
}
|
||||
::v-deep(.table-header-row) {
|
||||
background: #f5f7fa;
|
||||
color: #000;
|
||||
height: 41px;
|
||||
font-size: 12px;
|
||||
}
|
||||
::v-deep(.table-body-row) {
|
||||
height: 50px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.my-dropdown1 {
|
||||
height: 200px;
|
||||
overflow: auto;
|
||||
border-radius: 4px;
|
||||
border: 1px solid #dcdfe6;
|
||||
background-color: #fff;
|
||||
}
|
||||
.list-item1:hover {
|
||||
background-color: #f5f7fa;
|
||||
}
|
||||
// ::v-deep(.must){}
|
||||
// ::v-deep(.must>.cell::after) {
|
||||
// content: '*';
|
||||
// color: var(--el-color-danger) !important;
|
||||
// }
|
||||
|
||||
//物料列表
|
||||
.mate-col-width {
|
||||
::v-deep(.el-col .el-form-item .el-form-item__content .el-cascader .el-input .el-input__inner) {
|
||||
width: 180px !important;
|
||||
}
|
||||
}
|
||||
.mate-col-width {
|
||||
::v-deep(.el-col .el-form-item .el-form-item__content .el-select .el-input .el-input__inner) {
|
||||
width: 180px !important;
|
||||
}
|
||||
}
|
||||
.mate-col-width {
|
||||
::v-deep(.el-col .el-form-item .el-form-item__content .el-input .el-input__inner) {
|
||||
width: 180px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.mate-lable-padding {
|
||||
::v-deep(.el-col .el-form-item .el-form-item__label) {
|
||||
padding: 0 8px 0 0 !important;
|
||||
}
|
||||
}
|
||||
.img-box {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
//物料
|
||||
.pro-info-form-box {
|
||||
:deep(.el-form-item__label) {
|
||||
width: 120px !important;
|
||||
}
|
||||
}
|
||||
.size-info-form-box {
|
||||
:deep(.el-form-item__label) {
|
||||
width: 120px !important;
|
||||
}
|
||||
}
|
||||
.other-info-form-box {
|
||||
:deep(.el-form-item__label) {
|
||||
width: 60px !important;
|
||||
}
|
||||
}
|
||||
:deep(.el-upload-list--picture-card .el-upload-list__item) {
|
||||
width: 120px;
|
||||
height: 120px;
|
||||
}
|
||||
.line-28 {
|
||||
line-height: 28px;
|
||||
}
|
||||
.tell-container .tell-info-query {
|
||||
margin-left: 0 !important;
|
||||
}
|
||||
::v-deep(.xinxi .el-input___inner) {
|
||||
width: 175px !important;
|
||||
}
|
||||
363
src/assets/style/saleOrder/createReturnOrder.scss
Normal file
@@ -0,0 +1,363 @@
|
||||
::v-deep(.el-form-item) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__label) {
|
||||
font-size: 12px;
|
||||
padding-right: 6px;
|
||||
height: 27px;
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
align-items: center;
|
||||
min-width: 95px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
height: 27px;
|
||||
font-size: 12px;
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__content) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(input::-webkit-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-moz-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-ms-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item) {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__suffix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-select-dropdown__item) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before) {
|
||||
content: '' !important;
|
||||
color: #fff !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label::before) {
|
||||
content: '*' !important;
|
||||
color: var(--el-color-danger) !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__prefix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor) {
|
||||
--el-date-editor-width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-dropdown) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
text-align: left;
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td) {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-row) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.el-select) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.sale-details-container .sale-details-base-info .base-info-form-box .div-col .item-date[data-v-fae5bece] .el-input__inner) {
|
||||
padding-right: 2px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table th.must>.cell::after) {
|
||||
content: '*';
|
||||
color: var(--el-color-danger) !important;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position) {
|
||||
height: 50px;
|
||||
color: #fff;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position text) {
|
||||
height: inherit !important;
|
||||
width: inherit !important;
|
||||
display: block;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.getTextWidth {
|
||||
font-size: 12px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-enter-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-leave-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table--border .el-table__cell:first-child .cell) {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-autocomplete-suggestion li) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card) {
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active) {
|
||||
border: 1px solid #909399 !important;
|
||||
color: #303133 !important;
|
||||
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item) {
|
||||
color: #909399 !important;
|
||||
font-weight: 600;
|
||||
border: 1px solid #909399 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__item) {
|
||||
padding: 0 8px !important;
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child) {
|
||||
margin-left: 0 !important;
|
||||
margin-top: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
padding-top: 15px !important;
|
||||
padding-left: 12px !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child::before) {
|
||||
content: '';
|
||||
width: 4px;
|
||||
height: 50%;
|
||||
background-color: #4178D5;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -12px;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
// ::v-deep(.el-tabs__nav-scroll::before) {
|
||||
// content: '';
|
||||
// width: calc(100% - 168px);
|
||||
// height: 1px;
|
||||
// background-color: #EDEFF5;
|
||||
// position: absolute;
|
||||
// top: 50%;
|
||||
// left: 168px;
|
||||
// z-index: 1;
|
||||
// }
|
||||
|
||||
::v-deep(.el-autocomplete) {
|
||||
width: 100% !important;
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
::v-deep(tbody .el-autocomplete .el-input__inner) {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__inner) {
|
||||
// border: none !important;
|
||||
font-size: 12px;
|
||||
// padding: 0;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-issue .select-trigger .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-c .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-autocomplete-suggestion li) {
|
||||
width: 100%;
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table--enable-row-transition .el-table__body td.el-table__cell) {
|
||||
transition: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__suffix) {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-table__cell .cell) {
|
||||
height: inherit !important;
|
||||
line-height: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__content) {
|
||||
overflow: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row .el-select .el-input__inner) {
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
// border: none;
|
||||
}
|
||||
|
||||
|
||||
|
||||
::v-deep(.lead-time-style .el-input__inner) {
|
||||
padding-left: 0px !important;
|
||||
// border: none;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__prefix) {
|
||||
justify-content: right !important;
|
||||
left: 0 !important;
|
||||
right: 1px !important;
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover>td) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover .el-input__inner) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
.t-r {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.t-r ::v-deep(.el-input__inner) {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.disable {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.disable ::v-deep(.el-input__inner) {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
::v-deep(.el-textarea__inner) {
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px 0 8px !important;
|
||||
}
|
||||
|
||||
.address-textarea {
|
||||
align-items: flex-start !important;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g4::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
}
|
||||
|
||||
::v-deep(.is-checkbox .cell .el-checkbox .el-checkbox__input .el-checkbox__inner) {
|
||||
background-color: var(--el-checkbox-disabled-input-fill) !important;
|
||||
border-color: var(--el-checkbox-disabled-border-color) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g7::after),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g8::after),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g9::after),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g10::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g7),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g8),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g9),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g10) {
|
||||
padding: 0;
|
||||
}
|
||||
::v-deep(.el-textarea__inner) {
|
||||
width: 172px;
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px 0 8px !important;
|
||||
}
|
||||
363
src/assets/style/saleOrder/issueDetails.scss
Normal file
@@ -0,0 +1,363 @@
|
||||
::v-deep(.el-form-item) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__label) {
|
||||
font-size: 12px;
|
||||
padding-right: 6px;
|
||||
height: 27px;
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
align-items: center;
|
||||
width: 96px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
height: 27px;
|
||||
font-size: 12px;
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-issue .select-trigger .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-c .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__content) {
|
||||
line-height: 28px;
|
||||
}
|
||||
|
||||
::v-deep(input::-webkit-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-moz-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-ms-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item) {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__suffix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-select-dropdown__item) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before) {
|
||||
content: '' !important;
|
||||
color: #fff !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label::before) {
|
||||
content: '*' !important;
|
||||
color: var(--el-color-danger) !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__prefix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor) {
|
||||
--el-date-editor-width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-dropdown) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
text-align: left;
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td) {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-row) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.el-select) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.sale-details-container .sale-details-base-info .base-info-form-box .div-col .item-date[data-v-fae5bece] .el-input__inner) {
|
||||
padding-right: 2px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table th.must>.cell::after) {
|
||||
content: '*';
|
||||
color: var(--el-color-danger) !important;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position) {
|
||||
height: 50px;
|
||||
color: #fff;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position text) {
|
||||
height: inherit !important;
|
||||
width: inherit !important;
|
||||
display: block;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.getTextWidth {
|
||||
font-size: 12px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-enter-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-leave-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table--border .el-table__cell:first-child .cell) {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-autocomplete-suggestion li) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card) {
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active) {
|
||||
border: 1px solid #909399 !important;
|
||||
color: #303133 !important;
|
||||
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item) {
|
||||
color: #909399 !important;
|
||||
font-weight: 600;
|
||||
border: 1px solid #909399 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__item) {
|
||||
padding: 0 8px !important;
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child) {
|
||||
margin-left: 0 !important;
|
||||
margin-top: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
padding-top: 15px !important;
|
||||
padding-left: 12px !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child::before) {
|
||||
content: '';
|
||||
width: 4px;
|
||||
height: 50%;
|
||||
background-color: #4178D5;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -12px;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
// ::v-deep(.el-tabs__nav-scroll::before) {
|
||||
// content: '';
|
||||
// width: calc(100% - 168px);
|
||||
// height: 1px;
|
||||
// background-color: #EDEFF5;
|
||||
// position: absolute;
|
||||
// top: 50%;
|
||||
// left: 168px;
|
||||
// z-index: 1;
|
||||
// }
|
||||
|
||||
::v-deep(.el-autocomplete) {
|
||||
width: 100% !important;
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
::v-deep(tbody .el-autocomplete .el-input__inner) {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
// .click-cell-ipt ::v-deep(.el-input__inner) {
|
||||
// border: none !important;
|
||||
// font-size: 12px;
|
||||
// padding: 0;
|
||||
// }
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-autocomplete-suggestion li) {
|
||||
width: 100%;
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table--enable-row-transition .el-table__body td.el-table__cell) {
|
||||
transition: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__suffix) {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-table__cell .cell) {
|
||||
height: inherit !important;
|
||||
line-height: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__content) {
|
||||
overflow: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row .el-select .el-input__inner) {
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
// border: none;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g4::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__inner) {
|
||||
padding: 0px 30px 0 8px !important;
|
||||
// border: none;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__prefix) {
|
||||
justify-content: right !important;
|
||||
left: 0 !important;
|
||||
right: 1px !important;
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover>td) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover .el-input__inner) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
.t-r {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.t-r ::v-deep(.el-input__inner) {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.disable {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.disable ::v-deep(.el-input__inner) {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
}
|
||||
|
||||
::v-deep(.is-checkbox .cell .el-checkbox .el-checkbox__input .el-checkbox__inner) {
|
||||
background-color: var(--el-checkbox-disabled-input-fill) !important;
|
||||
border-color: var(--el-checkbox-disabled-border-color) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio-group) {
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio) {
|
||||
width: 50% !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g7::after),
|
||||
.order-create-btn-group::v-deep(.s-p-t-g8::after),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g9::after),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g10::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g7),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g8),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g9),
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g10) {
|
||||
padding: 0;
|
||||
}
|
||||
::v-deep(.el-textarea__inner) {
|
||||
width: 166px !important;
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px 0 8px !important;
|
||||
}
|
||||
357
src/assets/style/saleOrder/orderCreate.scss
Normal file
@@ -0,0 +1,357 @@
|
||||
::v-deep(.el-form-item) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__label) {
|
||||
font-size: 12px;
|
||||
padding-right: 6px;
|
||||
height: 27px;
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
align-items: center;
|
||||
width: 96px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
padding: 0 8px;
|
||||
height: 27px;
|
||||
font-size: 12px;
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__content) {
|
||||
line-height: 28px;
|
||||
}
|
||||
|
||||
::v-deep(input::-webkit-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-moz-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-ms-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item) {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__suffix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-select-dropdown__item) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before) {
|
||||
content: '' !important;
|
||||
color: #fff !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label::before) {
|
||||
content: '*' !important;
|
||||
color: var(--el-color-danger) !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__prefix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor) {
|
||||
--el-date-editor-width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-dropdown) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
text-align: left;
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td) {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-row) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.el-select) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.sale-details-container .sale-details-base-info .base-info-form-box .div-col .item-date[data-v-fae5bece] .el-input__inner) {
|
||||
padding-right: 2px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table th.must>.cell::after) {
|
||||
content: '*';
|
||||
color: var(--el-color-danger) !important;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position) {
|
||||
height: 50px;
|
||||
color: #fff;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position text) {
|
||||
height: inherit !important;
|
||||
width: inherit !important;
|
||||
display: block;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.getTextWidth {
|
||||
font-size: 12px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-enter-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-leave-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table--border .el-table__cell:first-child .cell) {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-autocomplete-suggestion li) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card) {
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active) {
|
||||
border: 1px solid #909399 !important;
|
||||
color: #303133 !important;
|
||||
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item) {
|
||||
color: #909399 !important;
|
||||
font-weight: 600;
|
||||
border: 1px solid #909399 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__item) {
|
||||
padding: 0 8px !important;
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child) {
|
||||
margin-left: 0 !important;
|
||||
margin-top: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
padding-top: 15px !important;
|
||||
padding-left: 12px !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child::before) {
|
||||
content: '';
|
||||
width: 4px;
|
||||
height: 50%;
|
||||
background-color: #4178D5;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -12px;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
// ::v-deep(.el-tabs__nav-scroll::before) {
|
||||
// content: '';
|
||||
// width: calc(100% - 168px);
|
||||
// height: 1px;
|
||||
// background-color: #EDEFF5;
|
||||
// position: absolute;
|
||||
// top: 50%;
|
||||
// left: 168px;
|
||||
// z-index: 1;
|
||||
// }
|
||||
|
||||
::v-deep(.el-autocomplete) {
|
||||
width: 100% !important;
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
::v-deep(tbody .el-autocomplete .el-input__inner) {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
// .click-cell-ipt ::v-deep(.el-input__inner) {
|
||||
// border: none !important;
|
||||
// font-size: 12px;
|
||||
// padding: 0;
|
||||
// }
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-autocomplete-suggestion li) {
|
||||
width: 100%;
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table--enable-row-transition .el-table__body td.el-table__cell) {
|
||||
transition: none !important;
|
||||
}
|
||||
|
||||
// .click-cell-ipt ::v-deep(.el-input__suffix) {
|
||||
// display: none !important;
|
||||
// }
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-table__cell .cell) {
|
||||
height: inherit !important;
|
||||
line-height: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__content) {
|
||||
overflow: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row .el-select .el-input__inner) {
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
// border: none;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g4::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__inner) {
|
||||
padding: 0px 30px 0 8px !important;
|
||||
// border: none;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-issue .select-trigger .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.click-cell-ipt-c .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__prefix) {
|
||||
justify-content: right !important;
|
||||
left: 0 !important;
|
||||
right: 1px !important;
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover>td) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover .el-input__inner) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
.t-r {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
// .t-r ::v-deep(.el-input__inner) {
|
||||
// text-align: right;
|
||||
// }
|
||||
|
||||
.disable {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.disable ::v-deep(.el-input__inner) {
|
||||
background: rgb(245, 247, 250)
|
||||
}
|
||||
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
}
|
||||
|
||||
::v-deep(.is-checkbox .cell .el-checkbox .el-checkbox__input .el-checkbox__inner) {
|
||||
background-color: var(--el-checkbox-disabled-input-fill) !important;
|
||||
border-color: var(--el-checkbox-disabled-border-color) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio-group) {
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio) {
|
||||
width: 50% !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g7::after),
|
||||
.order-create-btn-group::v-deep(.s-p-t-g8::after),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g9::after),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g10::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g7),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g8),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g9),
|
||||
.order-create-btn-group ::v-deep(.s-p-t-g10) {
|
||||
padding: 0;
|
||||
}
|
||||
303
src/assets/style/saleOrder/orderDetails.scss
Normal file
@@ -0,0 +1,303 @@
|
||||
::v-deep(.el-form-item) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item__label) {
|
||||
font-size: 12px;
|
||||
padding-right: 6px;
|
||||
height: 28px;
|
||||
// line-height: 38px;
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
align-items: center;
|
||||
width: 97px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
|
||||
::v-deep(.el-input-deta) {
|
||||
|
||||
padding-left: 30px !important;
|
||||
}
|
||||
|
||||
|
||||
|
||||
::v-deep(.el-form-item__content) {
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
::v-deep(input::-webkit-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-moz-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(input::-ms-input-placeholder) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item) {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__suffix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-select-dropdown__item) {
|
||||
font-size: 12px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before) {
|
||||
content: '' !important;
|
||||
color: #fff !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label::before) {
|
||||
content: '*' !important;
|
||||
color: var(--el-color-danger) !important;
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__prefix) {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor) {
|
||||
// --el-date-editor-width: 200px !important;
|
||||
--el-date-editor-width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-dropdown) {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
text-align: left;
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th .cell) {
|
||||
// text-align: left;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td) {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__body tbody tr td .cell) {
|
||||
// display: -webkit-box;
|
||||
// white-space:normal;
|
||||
// text-overflow: ellipsis;
|
||||
// overflow: hidden;
|
||||
// -webkit-line-clamp: 2;
|
||||
// -webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-row) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.el-select) {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
::v-deep(.sale-details-container .sale-details-base-info .base-info-form-box .div-col .item-date[data-v-fae5bece] .el-input__inner) {
|
||||
// padding-right: 30px;
|
||||
padding: 0 8px 0 30px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table th.must>.cell::after) {
|
||||
content: '*';
|
||||
color: var(--el-color-danger) !important;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position) {
|
||||
height: 50px;
|
||||
color: #fff;
|
||||
position: absolute;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
::v-deep(.tooltips-position text) {
|
||||
height: inherit !important;
|
||||
width: inherit !important;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.myNote {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.getTextWidth {
|
||||
font-size: 12px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-enter-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.slide-fade-leave-active) {
|
||||
transition: all 0s ease !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:visited) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-table--border .el-table__cell:first-child .cell) {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card) {
|
||||
border: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active) {
|
||||
border: 1px solid #909399 !important;
|
||||
color: #303133 !important;
|
||||
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item) {
|
||||
color: #909399 !important;
|
||||
font-weight: 600;
|
||||
border: 1px solid #909399 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__item) {
|
||||
padding: 0 8px !important;
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child) {
|
||||
margin-left: 0 !important;
|
||||
margin-top: 0 !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__nav-scroll) {
|
||||
padding-top: 15px !important;
|
||||
padding-left: 12px !important;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child::before) {
|
||||
content: '';
|
||||
width: 4px;
|
||||
height: 100%;
|
||||
background-color: #4178D5;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: -12px;
|
||||
}
|
||||
|
||||
// ::v-deep(.el-tabs__nav-scroll::before) {
|
||||
// content: '';
|
||||
// width: 100%;
|
||||
// height: 1px;
|
||||
// background-color: #EDEFF5;
|
||||
// position: absolute;
|
||||
// top: 50%;
|
||||
// z-index: 1;
|
||||
// }
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__inner) {
|
||||
// border: none !important;
|
||||
font-size: 12px;
|
||||
// background-color: var(--el-table-row-hover-background-color);
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-autocomplete-suggestion li) {
|
||||
width: 100%;
|
||||
border: none !important;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover>td) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(tbody tr:hover .el-input__inner) {
|
||||
background-color: var(--el-table-row-hover-background-color);
|
||||
}
|
||||
|
||||
::v-deep(.el-table--enable-row-transition .el-table__body td.el-table__cell) {
|
||||
transition: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-input__suffix) {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.click-cell-ipt ::v-deep(.el-table__cell .cell) {
|
||||
height: inherit !important;
|
||||
line-height: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__inner) {
|
||||
padding-left: 0px !important;
|
||||
border: none;
|
||||
}
|
||||
|
||||
::v-deep(.lead-time-style .el-input__prefix) {
|
||||
justify-content: right !important;
|
||||
left: 0 !important;
|
||||
right: 1px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-tabs__content) {
|
||||
overflow: inherit !important;
|
||||
}
|
||||
|
||||
::v-deep(.matter-code-box .el-input__inner) {
|
||||
border: none !important;
|
||||
padding-left: 0 !important;
|
||||
padding-right: 0 !important;
|
||||
}
|
||||
|
||||
.sale-details-btn-group ::v-deep(.s-p-t-g7::after),
|
||||
.sale-details-btn-group::v-deep(.s-p-t-g8::after),
|
||||
.sale-details-btn-group ::v-deep(.s-p-t-g9::after),
|
||||
.sale-details-btn-group ::v-deep(.s-p-t-g10::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.sale-details-btn-group ::v-deep(.s-p-t-g7),
|
||||
.sale-details-btn-group ::v-deep(.s-p-t-g8),
|
||||
.sale-details-btn-group ::v-deep(.s-p-t-g9),
|
||||
.sale-details-btn-group ::v-deep(.s-p-t-g10) {
|
||||
padding: 0;
|
||||
}
|
||||
95
src/assets/style/saleOrder/orderList.scss
Normal file
@@ -0,0 +1,95 @@
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
padding: 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row td) {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
text-align: left;
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.noteOrder {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.total-select-item) {
|
||||
margin-right: 24px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-pagination__sizes) {
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-pagination__total) {
|
||||
margin-right: 24px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table .headerRight) {
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.caidandiv {
|
||||
margin-bottom: 15px;
|
||||
|
||||
span {
|
||||
cursor: pointer;
|
||||
margin-right: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep(.el-radio-group) {
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio) {
|
||||
width: 50% !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div),
|
||||
::v-deep(.el-table th.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
// line-height: 20px;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
// ::v-deep(.el-table th.el-table__cell div .el-input___inner) {
|
||||
// padding: 0 30px 0 8px !important;
|
||||
// }
|
||||
|
||||
.sale-container ::v-deep(.s-p-t-g7::after),
|
||||
.sale-container::v-deep(.s-p-t-g8::after),
|
||||
.sale-container ::v-deep(.s-p-t-g9::after),
|
||||
.sale-container ::v-deep(.s-p-t-g10::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.sale-container ::v-deep(.s-p-t-g7),
|
||||
.sale-container ::v-deep(.s-p-t-g8),
|
||||
.sale-container ::v-deep(.s-p-t-g9),
|
||||
.sale-container ::v-deep(.s-p-t-g10) {
|
||||
padding: 0;
|
||||
}
|
||||
83
src/assets/style/saleOrder/returnOrder.scss
Normal file
@@ -0,0 +1,83 @@
|
||||
::v-deep(.el-table__row) {
|
||||
height: 50px !important;
|
||||
padding: 8px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table__row td) {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
::v-deep(.el-table thead tr th) {
|
||||
padding: 0 !important;
|
||||
height: 40px;
|
||||
max-height: 40px;
|
||||
}
|
||||
|
||||
.noteOrder {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.total-select-item) {
|
||||
margin-right: 24px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-pagination__sizes) {
|
||||
margin-right: 0 !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-pagination__total) {
|
||||
margin-right: 24px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-table .headerRight) {
|
||||
background: #F2F5F9;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
::v-deep(.el-date-editor .el-range-separator) {
|
||||
display: flex !important;
|
||||
justify-content: center !important;
|
||||
align-items: center !important;
|
||||
color: #9b9fa5 !important
|
||||
}
|
||||
|
||||
::v-deep(.el-table td.el-table__cell div) {
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-box-orient: vertical;
|
||||
}
|
||||
|
||||
.return-order-page-top ::v-deep(.s-p-t-g7::after),
|
||||
.return-order-page-top::v-deep(.s-p-t-g8::after),
|
||||
.return-order-page-top ::v-deep(.s-p-t-g9::after),
|
||||
.return-order-page-top ::v-deep(.s-p-t-g10::after) {
|
||||
background: #fff !important;
|
||||
}
|
||||
|
||||
.return-order-page-top ::v-deep(.s-p-t-g7),
|
||||
.return-order-page-top ::v-deep(.s-p-t-g8),
|
||||
.return-order-page-top ::v-deep(.s-p-t-g9),
|
||||
.return-order-page-top ::v-deep(.s-p-t-g10) {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
|
||||
::v-deep(.el-textarea__inner) {
|
||||
width: 172px;
|
||||
font-size: 12px !important;
|
||||
padding: 0 8px 0 8px !important;
|
||||
}
|
||||
1309
src/assets/style/saleOrder/saleOrderCommon.scss
Normal file
60
src/assets/style/saleOrder/stepByStepCom.scss
Normal file
@@ -0,0 +1,60 @@
|
||||
// 分步式调出单
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
}
|
||||
|
||||
::v-deep(.is-checkbox .cell .el-checkbox .el-checkbox__input .el-checkbox__inner) {
|
||||
background-color: var(--el-checkbox-disabled-input-fill) !important;
|
||||
border-color: var(--el-checkbox-disabled-border-color) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
:v-deep(.el-form-item__label) {
|
||||
width: 90px !important;
|
||||
}
|
||||
|
||||
.order-com-rr {
|
||||
::v-deep(.el-form-item__content .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
}
|
||||
::v-deep(.div-col .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
width: 165px !important;
|
||||
}
|
||||
::v-deep(.div-col .el-textarea__inner) {
|
||||
padding: 0 8px !important ;
|
||||
}
|
||||
::v-deep(.div-col .icon-sty .el-input__suffix) {
|
||||
margin: 0 20px 0 0 !important ;
|
||||
}
|
||||
::v-deep(.icon-x .el-input__suffix-inner) {
|
||||
position: absolute;
|
||||
left: -45px;
|
||||
top: -5px;
|
||||
}
|
||||
|
||||
// 分步式调入单
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
}
|
||||
::v-deep(.is-checkbox .cell .el-checkbox .el-checkbox__input .el-checkbox__inner) {
|
||||
background-color: var(--el-checkbox-disabled-input-fill) !important;
|
||||
border-color: var(--el-checkbox-disabled-border-color) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
:v-deep(.el-form-item__label) {
|
||||
width: 90px !important;
|
||||
}
|
||||
|
||||
.order-com-rr {
|
||||
::v-deep(.el-form-item__content .el-input .el-input__inner) {
|
||||
padding: 0 16px 0 8px !important;
|
||||
}
|
||||
}
|
||||
::v-deep(.input-width .el-input__inner) {
|
||||
width: 165px !important ;
|
||||
}
|
||||
::v-deep(.div-col .icon-sty .el-input__suffix) {
|
||||
margin: 0 20px 0 0 !important ;
|
||||
}
|
||||
BIN
src/assets/up@3x.png
Normal file
|
After Width: | Height: | Size: 311 B |
1
src/assets/vue.svg
Normal 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="37.07" height="36" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 198"><path fill="#41B883" d="M204.8 0H256L128 220.8L0 0h97.92L128 51.2L157.44 0h47.36Z"></path><path fill="#41B883" d="m0 0l128 220.8L256 0h-51.2L128 132.48L50.56 0H0Z"></path><path fill="#35495E" d="M50.56 0L128 133.12L204.8 0h-47.36L128 51.2L97.92 0H50.56Z"></path></svg>
|
||||
|
After Width: | Height: | Size: 496 B |
BIN
src/assets/wrong@3x.png
Normal file
|
After Width: | Height: | Size: 408 B |
BIN
src/assets/wuliao.png
Normal file
|
After Width: | Height: | Size: 478 B |
64
src/components/Btns/index.vue
Normal file
@@ -0,0 +1,64 @@
|
||||
<template>
|
||||
<div class="btns_box">
|
||||
<div
|
||||
v-for="item in props.btns"
|
||||
:key="item.name"
|
||||
:style="item.style"
|
||||
class="btns_item"
|
||||
@click="handleBtnItemClick(item)"
|
||||
>
|
||||
<!-- CirclePlus -->
|
||||
<i :class="item.icon" style="margin-right: 6px" v-if="item.icon" />
|
||||
<span>{{ item.name }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { msg } from '@/utils/lodash/msg.js';
|
||||
import { ref } from 'vue';
|
||||
const props = defineProps({
|
||||
btns: {
|
||||
type: Array,
|
||||
default: [],
|
||||
required: true,
|
||||
},
|
||||
isOperate: {
|
||||
type: Boolean,
|
||||
},
|
||||
handleBtnItemClick: {
|
||||
type: Function,
|
||||
default: () => {},
|
||||
required: true,
|
||||
},
|
||||
});
|
||||
|
||||
const emits = defineEmits(['handleBtnItemClick']);
|
||||
|
||||
const handleBtnItemClick = (item) => {
|
||||
if (props.isOperate && item.name !== '新增') {
|
||||
// msg('warning', '请等待结果返回后再进行操作!');
|
||||
return;
|
||||
}
|
||||
emits('handleBtnItemClick', item);
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.btns_box {
|
||||
display: flex;
|
||||
margin: 16px 16px 0 16px;
|
||||
.btns_item {
|
||||
cursor: pointer;
|
||||
border-radius: 4px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
color: #000;
|
||||
font-size: 12px;
|
||||
:hover {
|
||||
opacity: 0.5;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
40
src/components/HelloWorld.vue
Normal file
@@ -0,0 +1,40 @@
|
||||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
|
||||
defineProps({
|
||||
msg: String
|
||||
})
|
||||
|
||||
const count = ref(0)
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<h1>{{ msg }}</h1>
|
||||
|
||||
<div class="card">
|
||||
<button type="button" @click="count++">count is {{ count }}</button>
|
||||
<p>
|
||||
Edit
|
||||
<code>components/HelloWorld.vue</code> to test HMR
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
Check out
|
||||
<a href="https://vuejs.org/guide/quick-start.html#local" target="_blank"
|
||||
>create-vue</a
|
||||
>, the official Vue + Vite starter
|
||||
</p>
|
||||
<p>
|
||||
Install
|
||||
<a href="https://github.com/johnsoncodehk/volar" target="_blank">Volar</a>
|
||||
in your IDE for a better DX
|
||||
</p>
|
||||
<p class="read-the-docs">Click on the Vite and Vue logos to learn more</p>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.read-the-docs {
|
||||
color: #888;
|
||||
}
|
||||
</style>
|
||||
106
src/components/examineTop/index.scss
Normal file
@@ -0,0 +1,106 @@
|
||||
.examineTop_box {
|
||||
margin-left: 16px;
|
||||
margin-right: 16px;
|
||||
.btns_box {
|
||||
display: flex;
|
||||
margin: 16px 0;
|
||||
.btns_item {
|
||||
cursor: pointer;
|
||||
width: 76px;
|
||||
height: 30px;
|
||||
border-radius: 4px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background: rgba(65, 120, 213, 1);
|
||||
color: #fff;
|
||||
font-size: 12px;
|
||||
:hover {
|
||||
opacity: 0.5;
|
||||
}
|
||||
span {
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
.btns_item1 {
|
||||
cursor: pointer;
|
||||
width: 76px;
|
||||
height: 30px;
|
||||
border-radius: 4px;
|
||||
display: flex;
|
||||
background: #fff;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
color: #000;
|
||||
font-size: 12px;
|
||||
margin-left: 8px;
|
||||
:hover {
|
||||
opacity: 0.5;
|
||||
}
|
||||
span {
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.examine_box {
|
||||
width: 100%;
|
||||
height: 139px;
|
||||
border-radius: 4px;
|
||||
background: #fff;
|
||||
// margin-left: 16px;
|
||||
// margin-right: 16px;
|
||||
}
|
||||
.detailed_box {
|
||||
display: flex;
|
||||
padding-left: 24px;
|
||||
padding-top: 14px;
|
||||
|
||||
align-items: center;
|
||||
.detailed_line {
|
||||
width: 4px;
|
||||
height: 14px;
|
||||
background: rgba(65, 120, 213, 1);
|
||||
margin-right: 8px;
|
||||
}
|
||||
.detailed_title {
|
||||
font-size: 14px;
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
.look {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin-left: 18px;
|
||||
cursor: pointer;
|
||||
.look-text {
|
||||
color: rgba(31, 31, 31, 1);
|
||||
margin-left: 5px;
|
||||
font-size: 12px;
|
||||
}
|
||||
}
|
||||
.input-style {
|
||||
width: 400px;
|
||||
height: 36px;
|
||||
margin-left: 40px;
|
||||
}
|
||||
::v-deep(.el-radio__input.is-checked + .el-radio__labell) {
|
||||
color: #333 !important;
|
||||
}
|
||||
::v-deep(.el-input__inner) {
|
||||
height: 36px !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio__input.is-checked .el-radio__inner) {
|
||||
border-color: rgb(65, 120, 213);
|
||||
background: rgb(65, 120, 213);
|
||||
}
|
||||
::v-deep(.el-radio__input.is-checked + .el-radio__label) {
|
||||
color: #333;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
::v-deep(.el-radio__label) {
|
||||
font-size: 12px;
|
||||
}
|
||||
}
|
||||
177
src/components/examineTop/index.vue
Normal file
@@ -0,0 +1,177 @@
|
||||
<template>
|
||||
<div class="examineTop_box">
|
||||
<div class="btns_box">
|
||||
<div class="btns_item" @click="handleBtns('commit')">
|
||||
<img
|
||||
src="/src/assets/up@3x.png"
|
||||
alt=""
|
||||
style="width: 14px; height: 14px"
|
||||
/>
|
||||
<span>提交</span>
|
||||
</div>
|
||||
<!-- <div class="btns_item1" @click="handleBtns('out')">
|
||||
<img
|
||||
src="/src/assets/dw.png"
|
||||
alt=""
|
||||
style="width: 14px; height: 14px"
|
||||
/>
|
||||
<span>退出</span>
|
||||
</div> -->
|
||||
</div>
|
||||
<div class="examine_box">
|
||||
<div class="detailed_box" style="padding-bottom: 16px">
|
||||
<div class="detailed_line"></div>
|
||||
<div class="detailed_title">处理意见</div>
|
||||
</div>
|
||||
<div>
|
||||
<el-radio-group
|
||||
v-model="radioValue"
|
||||
style="margin-left: 14px"
|
||||
text-color="#333"
|
||||
>
|
||||
<div
|
||||
v-for="item in checks"
|
||||
:key="item.label"
|
||||
style="width: 73px; margin-left: 24px"
|
||||
>
|
||||
<el-radio :label="item.value">{{
|
||||
item.label
|
||||
}}</el-radio>
|
||||
</div>
|
||||
</el-radio-group>
|
||||
<div style="display: flex; align-items: center">
|
||||
<el-input
|
||||
class="input-style"
|
||||
v-model="inputValue"
|
||||
placeholder="请输入审批意见"
|
||||
maxlength="20"
|
||||
/>
|
||||
<span class="look" style="" @click="handleOpen"
|
||||
><img
|
||||
src="/src/assets/flow@3x.png"
|
||||
alt=""
|
||||
style="width: 14px; height: 14px"
|
||||
/>
|
||||
<spna class="look-text" style="">查看流程图</spna>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'examineTop',
|
||||
};
|
||||
</script>
|
||||
<script setup>
|
||||
import { ref, toRefs, watch, getCurrentInstance } from 'vue';
|
||||
import { useStore } from 'vuex';
|
||||
|
||||
import { msg } from '@/utils/lodash/msg.js';
|
||||
const radioValue = ref('1');
|
||||
const inputValue = ref(null);
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { $http } = proxy;
|
||||
const props = defineProps({
|
||||
handleBtns: {
|
||||
type: Function,
|
||||
},
|
||||
radios: {
|
||||
type: Object,
|
||||
},
|
||||
handleOpen: {
|
||||
type: Function,
|
||||
},
|
||||
isexamineBtns: {
|
||||
type: Boolean,
|
||||
},
|
||||
});
|
||||
const emits = defineEmits(['handleBtns', 'handleOpen']);
|
||||
// const status = localStorage.getItem('examineStatus')
|
||||
const store = useStore();
|
||||
const { dispatch } = store;
|
||||
const { radios, isexamineBtns } = toRefs(props);
|
||||
console.log(radios.value);
|
||||
let checks = ref([]);
|
||||
const initSelectArray = (data) => {
|
||||
let arr = [];
|
||||
if (!data || JSON.stringify(data) === '{}') {
|
||||
console.error('initSelectArray方法接受一个对象并转为数组');
|
||||
return [];
|
||||
}
|
||||
for (let key in data) {
|
||||
let obj = {};
|
||||
obj.value = key;
|
||||
obj.label = data[key];
|
||||
arr.push(obj);
|
||||
}
|
||||
return arr;
|
||||
};
|
||||
//获取审批流的select
|
||||
const getStatus = () => {
|
||||
//防止上次账号的缓存
|
||||
// dispatch('examine/deleteAll');
|
||||
// dispatch('examine/deleteStaffAllList');
|
||||
$http.get('ApprovalFlow/status').then((res) => {
|
||||
if (res.status === 200) {
|
||||
res.data.useOrderType = initSelectArray(res.data.useOrderType);
|
||||
res.data.approvalWayType = initSelectArray(
|
||||
res.data.approvalWayType
|
||||
);
|
||||
res.data.method = initSelectArray(res.data.method);
|
||||
//approvalResult
|
||||
checks.value = res.data.approvalResult = initSelectArray(
|
||||
res.data.approvalResult
|
||||
);
|
||||
dispatch('examine/setExamine', res.data);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
watch(
|
||||
checks.value,
|
||||
(newVal) => {
|
||||
if (!newVal || !checks.value.length) {
|
||||
let examineStatus = localStorage.getItem('examineStatus');
|
||||
if (examineStatus) {
|
||||
let status = JSON.parse(examineStatus);
|
||||
checks.value = status.approvalResult;
|
||||
} else {
|
||||
getStatus();
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
deep: true,
|
||||
immediate: true,
|
||||
}
|
||||
);
|
||||
|
||||
const handleBtns = (type) => {
|
||||
if (isexamineBtns.value) {
|
||||
msg('warning', '请稍后再进行操作!');
|
||||
return;
|
||||
}
|
||||
if (radioValue.value != '1' && !inputValue.value) {
|
||||
msg('warning', '驳回和终止必须填写审批意见描述!');
|
||||
return;
|
||||
}
|
||||
emits('handleBtns', {
|
||||
type,
|
||||
approvalResult: Number(radioValue.value),
|
||||
remark: inputValue.value,
|
||||
});
|
||||
inputValue.value = '';
|
||||
radioValue.value = '1';
|
||||
};
|
||||
const handleOpen = () => {
|
||||
emits('handleOpen');
|
||||
// $router.push({ path: '/examine/mange/examineFollow' });
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import './index.scss';
|
||||
</style>
|
||||
20
src/components/index.js
Normal file
@@ -0,0 +1,20 @@
|
||||
import Layout from './layout/index'
|
||||
import toolBtn from './public/toolBtn/toolBtn.vue'
|
||||
import InputMini from './public/InputMini.vue'
|
||||
import operaRecorde from './public/operaRecorde.vue'
|
||||
import DetailsOperation from './public/DetailsOperation.vue'
|
||||
import CustomCondition from './public/CustomCondition.vue'
|
||||
import DownPdf from './public/DownPdf.vue'
|
||||
import PrintModel from './public/PrintModel.vue'
|
||||
import prtMoled from './public/printviews/prtMoled.vue'
|
||||
export {
|
||||
toolBtn,
|
||||
Layout,
|
||||
InputMini,
|
||||
operaRecorde,
|
||||
DetailsOperation,
|
||||
CustomCondition,
|
||||
DownPdf,
|
||||
PrintModel,
|
||||
prtMoled
|
||||
}
|
||||
133
src/components/layout/index.vue
Normal file
@@ -0,0 +1,133 @@
|
||||
<template>
|
||||
<el-container>
|
||||
<el-aside :width="'60px'">
|
||||
<layout-aside />
|
||||
</el-aside>
|
||||
<el-container>
|
||||
<!-- 头部 -->
|
||||
<el-header height="71px">
|
||||
<layout-header />
|
||||
</el-header>
|
||||
<!-- 主体 -->
|
||||
<div class="app-main">
|
||||
<router-view v-slot="{ Component, route }">
|
||||
<keep-alive :include="keepAliveIncludes">
|
||||
<component
|
||||
:is="Component"
|
||||
:key="route.fullPath"
|
||||
v-if="!route.meta.keepAlive"
|
||||
/>
|
||||
</keep-alive>
|
||||
</router-view>
|
||||
</div>
|
||||
</el-container>
|
||||
</el-container>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
.el-aside {
|
||||
background-color: #161616;
|
||||
z-index: 2000;
|
||||
}
|
||||
.el-header {
|
||||
background-color: #e8edef;
|
||||
padding: 0;
|
||||
}
|
||||
.app-main {
|
||||
height: -moz-calc(100vh - 16px);
|
||||
height: -webkit-calc(100vh - 16px);
|
||||
height: calc(100vh - 16px);
|
||||
background-color: #e8edef;
|
||||
}
|
||||
@import '@/assets/style/saleOrder/orderList.scss';
|
||||
</style>
|
||||
<script>
|
||||
import { LayoutAside, LayoutHeader } from '@/components/layout/libs/index.js';
|
||||
import { mapState } from 'vuex';
|
||||
export default {
|
||||
name: 'Layout',
|
||||
components: {
|
||||
'layout-aside': LayoutAside,
|
||||
'layout-header': LayoutHeader,
|
||||
},
|
||||
created() {
|
||||
let status = localStorage.getItem('examineStatus') || '';
|
||||
this.online();
|
||||
if (!status) {
|
||||
this.getStatus();
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
initSelectArray(data) {
|
||||
let arr = [];
|
||||
if (!data || JSON.stringify(data) === '{}') {
|
||||
console.error('initSelectArray方法接受一个对象并转为数组');
|
||||
return [];
|
||||
}
|
||||
for (let key in data) {
|
||||
let obj = {};
|
||||
obj.value = key;
|
||||
obj.label = data[key];
|
||||
arr.push(obj);
|
||||
}
|
||||
return arr;
|
||||
},
|
||||
//获取审批流的select
|
||||
getStatus() {
|
||||
//防止上次账号的缓存
|
||||
this.$store.dispatch('examine/deleteAll');
|
||||
this.$store.dispatch('examine/deleteStaffAllList');
|
||||
|
||||
const { examineStatus } = this.$store.state.storeData;
|
||||
if (examineStatus && JSON.stringify(examineStatus) !== '{}') {
|
||||
return;
|
||||
}
|
||||
|
||||
this.$http.get('ApprovalFlow/status').then((res) => {
|
||||
if (res.status === 200) {
|
||||
res.data.useOrderType = this.initSelectArray(
|
||||
res.data.useOrderType
|
||||
);
|
||||
res.data.approvalWayType = this.initSelectArray(
|
||||
res.data.approvalWayType
|
||||
);
|
||||
res.data.method = this.initSelectArray(res.data.method);
|
||||
//approvalResult
|
||||
res.data.approvalResult = this.initSelectArray(
|
||||
res.data.approvalResult
|
||||
);
|
||||
this.$store.dispatch('examine/setExamine', res.data);
|
||||
}
|
||||
});
|
||||
},
|
||||
online() {
|
||||
//http://login.ops.f2b211.com/api/ 'https://api.mingpin.f2b211.com/api/v1/Public/get/online'
|
||||
let pathurl = `https://proxy.ops.f2b211.com/api/v1/Public/get/online?c=${localStorage.getItem(
|
||||
'companyId'
|
||||
)}`;
|
||||
|
||||
// let pathurl = `https://login.ops.f2b211.com/api/v1/Public/get/online?c=${localStorage.getItem(
|
||||
// 'companyId'
|
||||
// )}`;
|
||||
fetch(pathurl, {
|
||||
method: 'GET',
|
||||
credentials: 'include',
|
||||
keepalive: true,
|
||||
headers: {
|
||||
Authorization: window.localStorage.getItem('userToken'),
|
||||
},
|
||||
});
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
...mapState('leftAside', {
|
||||
leftMenuWidth: (state) => state.leftMenuWidth,
|
||||
}),
|
||||
...mapState('topNavTag', {
|
||||
keepAliveIncludes: (state) =>
|
||||
state && state.keepAliveIncludes
|
||||
? state.keepAliveIncludes.join(',')
|
||||
: [],
|
||||
}),
|
||||
},
|
||||
};
|
||||
</script>
|
||||
5
src/components/layout/libs/index.js
Normal file
@@ -0,0 +1,5 @@
|
||||
import LayoutAside from './layout-aside/index.vue';
|
||||
import LayoutHeader from './layout-header/index.vue';
|
||||
import LayoutFooter from './layout-footer/index.vue';
|
||||
|
||||
export { LayoutAside, LayoutHeader, LayoutFooter };
|
||||
75
src/components/layout/libs/layout-aside/index.vue
Normal file
@@ -0,0 +1,75 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2022-04-01 18:30:52
|
||||
* @LastEditTime: 2022-04-18 14:34:20
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \orico_ops_admin\src\components\layout\libs\layout-aside\index.vue
|
||||
-->
|
||||
<template>
|
||||
<div @mouseleave="handleHideSubMenus">
|
||||
<el-scrollbar height="100vh">
|
||||
<lv1-menu :menus="menus" @change="handleShowSubMenus" />
|
||||
</el-scrollbar>
|
||||
<el-scrollbar class="sub-menu" v-if="displaySubMenus">
|
||||
<lv2-menu :menus="activedMenu" />
|
||||
</el-scrollbar>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
.sub-menu {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 60px;
|
||||
width: 210px;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
background-color: #fff;
|
||||
border-radius: 0 24px 24px 0;
|
||||
box-shadow: 24px 0 26px -23px rgba(223, 228, 237, 0.6);
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
import { mapState } from 'vuex';
|
||||
import Menu from './menu';
|
||||
import SubMenu from './submenu';
|
||||
export default {
|
||||
components: {
|
||||
'lv1-menu': Menu,
|
||||
'lv2-menu': SubMenu,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
displaySubMenus: false,
|
||||
activedMenu: [],
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapState({
|
||||
menus: (state) =>
|
||||
JSON.stringify(state) !== '{}' &&
|
||||
state.routes.routes &&
|
||||
state.routes.routes
|
||||
? state.routes.routes
|
||||
: [],
|
||||
}),
|
||||
},
|
||||
watch: {
|
||||
// 监听路由变化
|
||||
$route(to, from) {
|
||||
this.displaySubMenus = false;
|
||||
},
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
handleShowSubMenus(menu) {
|
||||
this.activedMenu = menu;
|
||||
this.displaySubMenus = true;
|
||||
},
|
||||
handleHideSubMenus() {
|
||||
this.activedMenu = [];
|
||||
this.displaySubMenus = false;
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
75
src/components/layout/libs/layout-aside/menu.vue
Normal file
@@ -0,0 +1,75 @@
|
||||
<template>
|
||||
<div>
|
||||
<ul class="menu">
|
||||
<template v-for="(menu, idx) in menus">
|
||||
<li :key="idx" :class="['menu-item ', actived === menu.name ? 'actived' : '']" v-if="!menu.hidden" @mouseover="mouseover(menu)">
|
||||
<div>
|
||||
<i v-if="menu.meta.icon" :class="['iconfont', menu.meta.icon]"></i>
|
||||
<span class="menu-title">{{ menu.meta.title }}</span>
|
||||
</div>
|
||||
</li>
|
||||
</template>
|
||||
</ul>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
.menu {
|
||||
list-style: none;
|
||||
width: 60px;
|
||||
padding: 10px 0 0 0;
|
||||
margin: 0;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
.menu .menu-item {
|
||||
font-size: 26px;
|
||||
color: #797979;
|
||||
text-align: center;
|
||||
padding: 8px 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
.menu .menu-item.actived {
|
||||
position: relative;
|
||||
color: #4178d5;
|
||||
}
|
||||
.menu .menu-item.actived::after {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
content: '';
|
||||
display: block;
|
||||
height: 100%;
|
||||
border-right: 4px solid #4178d5;
|
||||
}
|
||||
.menu i.iconfont {
|
||||
font-size: 22px;
|
||||
}
|
||||
.menu .menu-title {
|
||||
display: block;
|
||||
font-size: 14px;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
export default {
|
||||
name: 'Menu',
|
||||
data() {
|
||||
return {
|
||||
actived: this.$route.name
|
||||
}
|
||||
},
|
||||
props: {
|
||||
menus: {
|
||||
type: Object,
|
||||
required: false,
|
||||
default: () => {
|
||||
return {}
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
mouseover: function (menu) {
|
||||
this.$emit('change', menu)
|
||||
this.actived = menu.name
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
111
src/components/layout/libs/layout-aside/submenu.vue
Normal file
@@ -0,0 +1,111 @@
|
||||
<template>
|
||||
<div class="wrap">
|
||||
<h4 class="wrap-tag">{{ menus.meta.title }}</h4>
|
||||
<div class="menu-wrap" v-for="(menu, idx) in menus.children" :key="idx">
|
||||
<p class="title">{{ menu.meta.title }}</p>
|
||||
<ul class="menu">
|
||||
<li v-for="(item, key) in menu.children" :key="key">
|
||||
<a
|
||||
href="javascript:void(0);"
|
||||
:class="{ actived: item.path == path }"
|
||||
@click="handleOpenPage(item)"
|
||||
v-if="!item.hidden"
|
||||
>{{ item.meta.title }}</a
|
||||
>
|
||||
<a
|
||||
target="_blank"
|
||||
:class="{ actived: item.path == path }"
|
||||
:href="item.path"
|
||||
v-else-if="
|
||||
(item.hidden &&
|
||||
item.path.indexOf('https://') !== -1) ||
|
||||
item.path.indexOf('http://') !== -1
|
||||
"
|
||||
>{{ item.meta.title }}</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
.wrap {
|
||||
padding: 24px 24px;
|
||||
}
|
||||
.wrap-tag {
|
||||
font-size: 18px;
|
||||
color: #303133;
|
||||
}
|
||||
.menu-wrap {
|
||||
margin: 24px 0;
|
||||
}
|
||||
.menu-wrap .title {
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
color: #303133;
|
||||
}
|
||||
.menu-wrap .menu {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
border-left: 1px solid #dcdfe6;
|
||||
}
|
||||
.menu-wrap .menu li {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.menu-wrap .menu li:not(:last-child) {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.menu-wrap .menu li a {
|
||||
display: block;
|
||||
margin-left: -1px;
|
||||
font-size: 14px;
|
||||
color: #303133;
|
||||
padding-left: 24px;
|
||||
}
|
||||
.menu-wrap .menu li a.actived,
|
||||
.menu-wrap .menu li a:hover {
|
||||
color: #4178d5;
|
||||
border-left: 2px solid #4178d5;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
export default {
|
||||
name: 'SubMenu',
|
||||
data() {
|
||||
return {
|
||||
path: '/index',
|
||||
subMenus: [],
|
||||
};
|
||||
},
|
||||
props: {
|
||||
menus: {
|
||||
type: Object,
|
||||
required: false,
|
||||
default: () => {
|
||||
return {};
|
||||
},
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
// 监听路由变化
|
||||
$route(to, from) {
|
||||
this.path = to.path;
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.path = this.$route.path;
|
||||
},
|
||||
methods: {
|
||||
handleOpenPage(item) {
|
||||
// console.log(item.hidden)
|
||||
this.$router.push({
|
||||
path: item.path,
|
||||
});
|
||||
console.log(this.path, '=this.path=');
|
||||
//记录最近打开菜单
|
||||
this.$http.post('Home/open', { menuId: item.id });
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
6
src/components/layout/libs/layout-footer/index.vue
Normal file
@@ -0,0 +1,6 @@
|
||||
<template>
|
||||
<div>footer</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {}
|
||||
</script>
|
||||
284
src/components/layout/libs/layout-header/index.vue
Normal file
@@ -0,0 +1,284 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="header-container">
|
||||
<div class="logo">
|
||||
<router-link to="/">
|
||||
<img src="@/assets/logo.png" alt />
|
||||
<span>OPS211供应链管理系统</span>
|
||||
</router-link>
|
||||
<ul class="system-info text-r">
|
||||
<li>
|
||||
<span>{{ companyName }}</span>
|
||||
</li>
|
||||
<li
|
||||
v-if="
|
||||
orgIdArr &&
|
||||
orgIdArr.length &&
|
||||
userInfo.identity !== 2
|
||||
"
|
||||
>
|
||||
<el-dropdown
|
||||
@command="handleCommand"
|
||||
v-if="userInfo.identity !== 2"
|
||||
>
|
||||
<span class="el-dropdown-link">
|
||||
{{ orgName }}
|
||||
<i
|
||||
class="el-icon-arrow-down el-icon--right"
|
||||
></i>
|
||||
</span>
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<el-dropdown-item
|
||||
:command="it.id"
|
||||
v-for="(it, index) in orgIdArr"
|
||||
:value="it.name"
|
||||
:key="index"
|
||||
:style="{
|
||||
height: it.disable ? '0px' : 'auto',
|
||||
}"
|
||||
>
|
||||
{{
|
||||
!it.disable ? it.name : ''
|
||||
}}</el-dropdown-item
|
||||
>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown>
|
||||
<span v-else>{{ orgName }}</span>
|
||||
</li>
|
||||
<li>
|
||||
<el-dropdown>
|
||||
<span class="el-dropdown-link">
|
||||
{{ userInfo.nickname }}
|
||||
<i
|
||||
class="el-icon-arrow-down el-icon--right"
|
||||
></i>
|
||||
</span>
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<el-dropdown-item
|
||||
@click.stop="handleSigninOut"
|
||||
>退出</el-dropdown-item
|
||||
>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 页面标签 -->
|
||||
<page-labels />
|
||||
</div>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
.header-container {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.header-container .logo {
|
||||
background: #fff;
|
||||
display: flex;
|
||||
width: 100%;
|
||||
height: 40px;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.header-container .logo img {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
margin-right: 16px;
|
||||
margin-left: 16px;
|
||||
}
|
||||
|
||||
.header-container .logo span {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
color: #303133;
|
||||
}
|
||||
|
||||
.header-container ul.system-info {
|
||||
display: inline-block;
|
||||
list-style: none;
|
||||
font-size: 12px;
|
||||
color: #303133 !important;
|
||||
height: 34px;
|
||||
line-height: 34px;
|
||||
background-color: #fff;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.header-container ul ::v-deep(.el-dropdown) {
|
||||
line-height: inherit;
|
||||
}
|
||||
|
||||
.header-container ul ::v-deep(.el-dropdown-link) {
|
||||
color: #303133 !important;
|
||||
}
|
||||
|
||||
.header-container ul.system-info li:first-child {
|
||||
padding-right: 16px;
|
||||
}
|
||||
|
||||
.header-container ul.system-info li:not(:first-child),
|
||||
.header-container ul.system-info li:not(:last-child) {
|
||||
display: inline-block;
|
||||
padding: 0 16px;
|
||||
}
|
||||
|
||||
.header-container ul.system-info li:last-child {
|
||||
padding-left: 16px;
|
||||
}
|
||||
|
||||
.header-container ul.system-info li:nth-child(2) {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.header-container ul.system-info li:nth-child(2)::before,
|
||||
.header-container ul.system-info li:nth-child(2)::after {
|
||||
content: '';
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
height: 20px;
|
||||
border-left: 1px solid #e4e7ed;
|
||||
}
|
||||
|
||||
.header-container ul.system-info li:nth-child(2)::before {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.header-container ul.system-info li:nth-child(2)::after {
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.header-container ul.system-info li span {
|
||||
font-size: 12px;
|
||||
font-weight: 500;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
import { mapActions, mapState } from 'vuex';
|
||||
import Labels from './labels';
|
||||
import { SigninOut } from '../../../../utils/pubulic';
|
||||
export default {
|
||||
components: {
|
||||
'page-labels': Labels,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
path: '/index',
|
||||
companyName: '',
|
||||
orgName: '',
|
||||
org: [],
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapState({
|
||||
// 取出页面标签
|
||||
userInfo: (state) =>
|
||||
JSON.stringify(state) !== '{}' &&
|
||||
state.user &&
|
||||
state.user.userInfo
|
||||
? state.user.userInfo
|
||||
: {},
|
||||
orgId: (state) =>
|
||||
JSON.stringify(state) !== '{}' && state.user
|
||||
? state.user.orgId
|
||||
: null,
|
||||
orgIdArr: (state) =>
|
||||
JSON.stringify(state) !== '{}' ? state.user.orgIdArr : null,
|
||||
setOrgDeptId: (state) =>
|
||||
JSON.stringify(state) !== '{}' ? state.org.orgId : null,
|
||||
}),
|
||||
},
|
||||
watch: {
|
||||
// 监听路由变化
|
||||
$route(to, from) {
|
||||
this.path = to.path;
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.path = this.$route.path;
|
||||
// 避免刷新重置
|
||||
if (this.$store.state.org.orgId) {
|
||||
this.companyName =
|
||||
this.userInfo.identity === 1
|
||||
? this.userInfo.companyName
|
||||
: this.userInfo.identity === 2
|
||||
? this.userInfo.supplierName
|
||||
: this.userInfo.identity === 2
|
||||
? this.userInfo.customerName
|
||||
: null;
|
||||
this.handleCommand(this.$store.state.org.orgId);
|
||||
} else {
|
||||
let theorgtID = null;
|
||||
let thename = null;
|
||||
if (this.userInfo.identity === 1) {
|
||||
// 正常用户
|
||||
theorgtID = this.userInfo.orgId;
|
||||
thename = this.userInfo.companyName;
|
||||
this.initset(theorgtID, thename);
|
||||
}
|
||||
if (this.userInfo.identity === 2) {
|
||||
// 供应商
|
||||
theorgtID = this.userInfo.supplierId;
|
||||
thename = this.userInfo.supplierName;
|
||||
this.initset(theorgtID, thename);
|
||||
}
|
||||
if (this.userInfo.identity === 3) {
|
||||
// 客户
|
||||
theorgtID = this.userInfo.customerId;
|
||||
thename = this.userInfo.customerName;
|
||||
this.initset(theorgtID, thename);
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
...mapActions({
|
||||
// 关闭标签及页面
|
||||
handleCloseTag: 'topNavTag/removeNavTag',
|
||||
handleSetorgId: 'user/setorgId',
|
||||
handleSetOrgDeptId: 'org/setorgId',
|
||||
}),
|
||||
initset(id, name) {
|
||||
this.handleSetorgId(id);
|
||||
this.handleSetOrgDeptId(id);
|
||||
if (!this.$store.state.org.orgId) {
|
||||
this.handleCommand(id);
|
||||
}
|
||||
this.companyName = name;
|
||||
},
|
||||
handleCommand(command) {
|
||||
let idx = this.orgIdArr.findIndex((it) => {
|
||||
return it.id === command;
|
||||
});
|
||||
this.orgName = idx !== -1 ? this.orgIdArr[idx].name : '';
|
||||
this.userInfo.orgName = this.orgName;
|
||||
this.handleSetorgId(command);
|
||||
this.handleSetOrgDeptId(command);
|
||||
},
|
||||
|
||||
// 个人中心
|
||||
handleNavigatorPersonCenter() {
|
||||
window.open(import.meta.env.VITE_SSO_BASEURL + 'user/index.html');
|
||||
},
|
||||
// 退出
|
||||
handleSigninOut() {
|
||||
SigninOut();
|
||||
},
|
||||
orgChange(val) {
|
||||
console.log(val);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
398
src/components/layout/libs/layout-header/labels.vue
Normal file
@@ -0,0 +1,398 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="tags-container" ref="tagsContainer">
|
||||
<a
|
||||
@click="handleLeftView"
|
||||
class="tags-operate left"
|
||||
href="javascript:void(0);"
|
||||
title="左翻"
|
||||
>
|
||||
<i class="iconfont icon-zuo-zhankaigengduo"></i>
|
||||
</a>
|
||||
<div class="tags-wrap" ref="tagsWrap">
|
||||
<ul class="tags" ref="tags">
|
||||
<li
|
||||
:class="{ actived: tag.fullPath == path }"
|
||||
:key="idx"
|
||||
@click.stop="handleChooseTag(tag)"
|
||||
v-for="(tag, idx) in tags"
|
||||
>
|
||||
<span>{{ tag.meta.title }}</span>
|
||||
<span
|
||||
@click.stop="handleCloseTag(idx)"
|
||||
class="tag-close"
|
||||
>
|
||||
<i
|
||||
class="iconfont icon-guanbi"
|
||||
v-if="idx !== 0"
|
||||
></i>
|
||||
</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<a
|
||||
@click="handleRightView"
|
||||
class="tags-operate right"
|
||||
href="javascript:void(0);"
|
||||
title="右翻"
|
||||
>
|
||||
<i class="iconfont icon-you-zhankaigengduo"></i>
|
||||
</a>
|
||||
<a
|
||||
@click="mytest"
|
||||
class="tags-btn"
|
||||
href="javascript:void(0);"
|
||||
title="关闭所有页签"
|
||||
>
|
||||
<i class="iconfont icon-guanbi1 closebtn"></i>
|
||||
</a>
|
||||
<a
|
||||
@click="synchroData"
|
||||
class="tags-sync"
|
||||
href="javascript:void(0);"
|
||||
title="数据同步"
|
||||
>
|
||||
<i class="iconfont icon-shuaxin syncDataBtn"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="scss">
|
||||
.tags-container {
|
||||
width: 100%;
|
||||
height: 30px;
|
||||
padding-left: 6px;
|
||||
background: #fff;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.tags-container .tags-operate {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
font-size: 11px;
|
||||
color: #606266;
|
||||
width: 34px;
|
||||
height: 34px;
|
||||
line-height: 34px;
|
||||
text-align: center;
|
||||
margin-left: 2px;
|
||||
}
|
||||
|
||||
.tags-container .tags-operate .icon-you-zhankaigengduo::before,
|
||||
.tags-container .tags-operate .icon-zuo-zhankaigengduo::before {
|
||||
font-size: 18px !important;
|
||||
}
|
||||
|
||||
.tags-container .tags-wrap {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
width: calc(100% - 140px);
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
box-sizing: border-box;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.tags-container .tags {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.tags-container .tags li:hover .tag-close {
|
||||
display: block;
|
||||
right: 7%;
|
||||
top: 45%;
|
||||
}
|
||||
|
||||
.tags-container .tags li {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
height: 100%;
|
||||
font-size: 12px;
|
||||
color: #606266;
|
||||
padding: 0 34px 0 16px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.tags-container .tags li .tag-close {
|
||||
display: none;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 8px;
|
||||
transform: translateY(-50%);
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
line-height: 20px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.tags-container .tags li.actived {
|
||||
background-color: #eaeef1;
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
}
|
||||
|
||||
.tags-container .tags li.actived .tag-close {
|
||||
display: block;
|
||||
top: 50%;
|
||||
right: 8px;
|
||||
}
|
||||
|
||||
.tags-container .tags li:not(:last-child)::after {
|
||||
content: '';
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 0;
|
||||
transform: translateY(-50%);
|
||||
height: 18px;
|
||||
border-left: 1px solid #cbcfd3;
|
||||
}
|
||||
|
||||
.actived span:nth-child(1) {
|
||||
padding-right: 8px;
|
||||
}
|
||||
|
||||
.tags-container .tags-btn {
|
||||
position: absolute;
|
||||
right: 42px;
|
||||
top: 42px;
|
||||
padding: 2px 6px !important;
|
||||
}
|
||||
|
||||
.tags-container .tags-sync {
|
||||
position: absolute;
|
||||
right: 15px;
|
||||
top: 42px;
|
||||
padding: 2px 6px !important;
|
||||
}
|
||||
|
||||
.closebtn,
|
||||
.syncDataBtn {
|
||||
font-size: 18px !important;
|
||||
display: block;
|
||||
margin-top: 3px;
|
||||
color: gray;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
import { mapActions, mapState } from 'vuex';
|
||||
export default {
|
||||
inject: ['reload'],
|
||||
name: 'Labels',
|
||||
data() {
|
||||
return {
|
||||
currentTagIndex: 0,
|
||||
leftWithTags: 0, // 标签栏left值
|
||||
positionLeftLogs: [],
|
||||
path: this.$route.fullPath,
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapState({
|
||||
tags: (state) =>
|
||||
JSON.stringify(state) !== '{}' ? state.topNavTag.tags : null,
|
||||
}),
|
||||
},
|
||||
watch: {
|
||||
// 监听路由变化
|
||||
$route(to, from) {
|
||||
// console.log('to.fullPath',to.fullPath)
|
||||
this.path = to.fullPath;
|
||||
// 计算标签栏的初始left
|
||||
this.initTagsLeftPos();
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.currentTagIndex = this.tags.length - 1;
|
||||
// 计算标签栏的初始left
|
||||
this.initTagsLeftPos();
|
||||
// console.log('mounted init')
|
||||
},
|
||||
methods: {
|
||||
...mapActions({
|
||||
// 关闭标签及页面
|
||||
handleCloseTag: 'topNavTag/removeNavTag',
|
||||
// 关闭所有标签及页面
|
||||
handleCloseAllTag: 'topNavTag/removeAllNavTag',
|
||||
deleteUnit: 'storeData/deleteUnit',
|
||||
deleteRecondtion: 'storeData/deleteRecondtion',
|
||||
deleteSettletype: 'storeData/deleteSettletype',
|
||||
deleteDcurrency: 'storeData/deleteDcurrency',
|
||||
deleteRateType: 'storeData/deleteRateType',
|
||||
deleteTaxRate: 'storeData/deleteTaxRate',
|
||||
deleteCustomer: 'storeData/deleteCustomer',
|
||||
deletePaymentTerm: 'storeData/deletePaymentTerm',
|
||||
deleteSupplierSelect: 'storeData/deleteSupplierSelect',
|
||||
deleteWarehouseAll: 'storeData/deleteWarehouseAll',
|
||||
deleteEnumType: 'storeData/deleteEnumType',
|
||||
deleteStatusType: 'storeData/deleteStatusType',
|
||||
deleteStatusGetType: 'storeData/deleteStatusGetType',
|
||||
deleteInStockType: 'storeData/deleteInStockType',
|
||||
deleteReturnMatType: 'storeData/deleteReturnMatType',
|
||||
deleteStktranStatus: 'storeData/deleteStktranStatus',
|
||||
deleteStktransInst: 'storeData/deleteStktransInst',
|
||||
deleteStkdirecttrStatus: 'storeData/deleteStkdirecttrStatus',
|
||||
deleteBomMaterilasObj: 'storeData/deleteBomMaterilasObj',
|
||||
deleteListGetStatus: 'storeData/deleteListGetStatus',
|
||||
deleteDicSale: 'storeData/deleteDicSale',
|
||||
deleteDicRetrunOrder: 'storeData/deleteDicRetrunOrder',
|
||||
deletePurOrderStatus: 'storeData/deletePurOrderStatus',
|
||||
deleteDicPurOrder: 'storeData/deleteDicPurOrder',
|
||||
deleteDicOrgani: 'storeData/deleteDicOrgani',
|
||||
deleteDicPurInstock: 'storeData/deleteDicPurInstock',
|
||||
deleteDicPurReturn: 'storeData/deleteDicPurReturn',
|
||||
deleteDicStktrOut: 'storeData/deleteDicStktrOut',
|
||||
deleteDicStktrInst: 'storeData/deleteDicStktrInst',
|
||||
deleteDicStkdirFers: 'storeData/deleteDicStkdirFers',
|
||||
deleteGetAllUserList: 'storeData/deleteGetAllUserList',
|
||||
deleteAll: 'examine/deleteAll',
|
||||
//deleteExamine: 'storeData/deleteExamine',
|
||||
deleteStaffAllList: 'examine/deleteStaffAllList',
|
||||
setAllUnit: 'storeData/setAllUnit',
|
||||
setTaxRate: 'storeData/setTaxRate',
|
||||
}),
|
||||
|
||||
mytest() {
|
||||
this.handleCloseAllTag();
|
||||
this.$refs.tags.style.left = 0;
|
||||
},
|
||||
// ljmstroe清空
|
||||
clearnstore() {
|
||||
if (this.$store.state && this.$store.state.storeData) {
|
||||
this.$store.state.storeData.infoStatus = {}; //生产基础信息数据
|
||||
this.$store.state.storeData.infoStatusww = {}; // 委外基础信息数据
|
||||
this.$store.state.storeData.infoStatusck = {}; // 销售出库基础信息数据
|
||||
this.$store.state.storeData.infoNoticeStatus = {}; // 通知基础信息数据
|
||||
this.$store.state.storeData.infockStatus = {}; // 通知基础信息数据
|
||||
this.$store.state.storeData.customerlist = []; // 客户数据
|
||||
}
|
||||
},
|
||||
// Calibration() {
|
||||
// console.log(
|
||||
// this.$store.state.org.orgId,
|
||||
// '=============this.$store.state.storeData==========='
|
||||
// );
|
||||
// this.$http
|
||||
// .post('Public/Calibration', {
|
||||
// orgId: this.$store.state.org.orgId,
|
||||
// materialId: null,
|
||||
// })
|
||||
// .then((res) => {
|
||||
// console.log(res);
|
||||
// });
|
||||
// },
|
||||
synchroData() {
|
||||
this.$http.get('SysConfig/CacheClear').then((res) => {
|
||||
if (res.status == 200) {
|
||||
this.$message.success({
|
||||
message: '数据同步成功!',
|
||||
showClose: true,
|
||||
});
|
||||
this.deleteUnit();
|
||||
this.deleteRecondtion();
|
||||
this.deleteSettletype();
|
||||
this.deleteDcurrency();
|
||||
this.deleteRateType();
|
||||
this.deleteTaxRate();
|
||||
this.deleteCustomer();
|
||||
this.deletePaymentTerm();
|
||||
this.deleteSupplierSelect();
|
||||
this.deleteWarehouseAll();
|
||||
this.deleteEnumType();
|
||||
this.deleteStatusType();
|
||||
this.deleteStatusGetType();
|
||||
this.deleteInStockType();
|
||||
this.deleteReturnMatType();
|
||||
this.deleteStktranStatus();
|
||||
this.deleteStktransInst();
|
||||
this.deleteStkdirecttrStatus();
|
||||
this.deleteBomMaterilasObj();
|
||||
this.deleteListGetStatus();
|
||||
this.deleteDicSale();
|
||||
this.deleteDicRetrunOrder();
|
||||
this.deletePurOrderStatus();
|
||||
this.deleteDicPurOrder();
|
||||
this.deleteDicOrgani();
|
||||
this.deleteDicPurInstock();
|
||||
this.deleteDicPurReturn();
|
||||
this.deleteDicStktrOut();
|
||||
this.deleteDicStktrInst();
|
||||
this.deleteDicStkdirFers();
|
||||
this.deleteGetAllUserList();
|
||||
this.deleteAll();
|
||||
// this.deleteExamine();
|
||||
this.deleteStaffAllList();
|
||||
// this.Calibration();
|
||||
this.clearnstore();
|
||||
this.reload();
|
||||
} else {
|
||||
this.$message.error({
|
||||
message: '数据同步失败!',
|
||||
showClose: true,
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
// 初始化顶部标签栏left值
|
||||
initTagsLeftPos() {
|
||||
const leftWithTags =
|
||||
this.$refs.tags.offsetWidth - this.$refs.tagsWrap.offsetWidth;
|
||||
if (leftWithTags > 0) {
|
||||
this.positionLeftLogs.push(-leftWithTags);
|
||||
this.$refs.tags.style.left = -leftWithTags + 'px';
|
||||
}
|
||||
},
|
||||
// 标签左翻
|
||||
handleLeftView(event) {
|
||||
let positionLeft = 0;
|
||||
const tagsPositionLeft = Math.abs(
|
||||
this.$refs.tags.getBoundingClientRect().left
|
||||
); // 标签栏的left
|
||||
const parentPaddingLeft = parseInt(
|
||||
window
|
||||
.getComputedStyle(this.$refs.tagsContainer)
|
||||
.paddingLeft.replace('px', '')
|
||||
); // 标签栏父级padding left
|
||||
const leftBtnWidth = event.currentTarget.offsetWidth; // 左翻按钮宽度
|
||||
const scrollLeft =
|
||||
tagsPositionLeft - (parentPaddingLeft + leftBtnWidth);
|
||||
for (let i = 0; i <= this.$refs.tags.children.length; i++) {
|
||||
const itemWidth = this.$refs.tags.children[i].offsetWidth;
|
||||
positionLeft += itemWidth;
|
||||
if (scrollLeft <= positionLeft) {
|
||||
positionLeft -= itemWidth;
|
||||
positionLeft = -positionLeft;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (this.positionLeftLogs[this.positionLeftLogs.length - 1] != 0) {
|
||||
this.positionLeftLogs.push(positionLeft);
|
||||
}
|
||||
this.$refs.tags.style.left = positionLeft + 'px';
|
||||
},
|
||||
// 标签右翻
|
||||
handleRightView() {
|
||||
if (this.positionLeftLogs.length > 1) {
|
||||
this.positionLeftLogs.pop();
|
||||
}
|
||||
const positionLeft = this.positionLeftLogs.pop();
|
||||
if (this.positionLeftLogs.length == 0) {
|
||||
this.positionLeftLogs.push(positionLeft);
|
||||
}
|
||||
this.$refs.tags.style.left = positionLeft + 'px';
|
||||
},
|
||||
|
||||
// 页面标签点击事件
|
||||
handleChooseTag(tag) {
|
||||
this.$router.push(tag);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
330
src/components/public/CustomCondition.vue
Normal file
@@ -0,0 +1,330 @@
|
||||
<template>
|
||||
<div class="customCondition-container">
|
||||
<el-select :clearable="true" @clear="clearSel" filterable placeholder="请选择条件" v-model="formcustomCondition">
|
||||
<el-option :key="item.id" :label="item.queryName" :value="item.queryName"
|
||||
@click="formCustomChange(item.queryName, item.id)" class="f_12" v-for="item in getCustomerItem.customCondition">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-input :disabled="isDisabled" @input="iptChange" placeholder="请输入搜索关键词" v-if="showInput" v-model="iptVal" />
|
||||
<el-select :disabled="isDisabled" @clear="lastClearSel" clearable filterable placeholder="请选择搜索关键词" v-model="val"
|
||||
v-show="showSelect">
|
||||
<el-option :key="item.id" :label="item.name" :value="item.id" @click="selChange(item.name, item.id)"
|
||||
v-for="item in childSelect"></el-option>
|
||||
</el-select>
|
||||
<div class="input-number-box" v-show="showNumber">
|
||||
<!-- <el-input :disabled="isDisabled" @input="numStVal" @keyup="statusProving" maxlength="12" placeholder="起始值"
|
||||
size="mini" v-model="numStatus" /> -->
|
||||
<el-input :disabled="isDisabled" @input="numStVal" @blur="stIpt" maxlength="15" placeholder="起始值" size="mini"
|
||||
v-model="numStatus" />
|
||||
<span>-</span>
|
||||
<!-- <el-input :disabled="isDisabled" @blur="lastIpt" @input="numEnVal" @keyup="endProving" maxlength="15"
|
||||
placeholder="结束值" size="mini" v-model="numEnd" /> -->
|
||||
<el-input :disabled="isDisabled" @blur="lastIpt" @input="numEnVal" maxlength="15" placeholder="结束值" size="mini"
|
||||
v-model="numEnd" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { numberRexgu } from '@/utils/takeMethods.js'
|
||||
export default {
|
||||
props: {
|
||||
getCustomerItem: Object,
|
||||
reset: Boolean
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
formcustomCondition: '',
|
||||
val: '',
|
||||
iptVal: '',
|
||||
dateVal: '',
|
||||
numStatus: '',
|
||||
numEnd: '',
|
||||
showInput: true,
|
||||
showSelect: false,
|
||||
showNumber: false,
|
||||
isDisabled: true,
|
||||
childSelect: [],
|
||||
currSelect: {},
|
||||
backResult: {
|
||||
currVal: '',
|
||||
outResult: {}
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// statusProving () {
|
||||
// this.numStatus = this.numStatus.replace(/[^.\d]/g, '')
|
||||
// this.numStatus = this.numStatus.replace('.', '')
|
||||
// },
|
||||
endProving () {
|
||||
this.numEnd = this.numEnd.replace(/[^.\d]/g, '')
|
||||
this.numEnd = this.numEnd.replace('.', '')
|
||||
},
|
||||
clearSel (value) {
|
||||
if (value == undefined) {
|
||||
this.val = ''
|
||||
this.iptVal = ''
|
||||
this.numStatus = ''
|
||||
this.numEnd = ''
|
||||
this.isDisabled = true
|
||||
this.backResult.currVal = value
|
||||
this.$emit('result', this.backResult)
|
||||
}
|
||||
},
|
||||
formCustomChange (name, id) {
|
||||
this.backResult.outResult = {}
|
||||
this.isDisabled = false
|
||||
this.val = ''
|
||||
this.iptVal = ''
|
||||
this.numStatus = ''
|
||||
this.numEnd = ''
|
||||
this.childSelect = []
|
||||
this.backResult.currVal = name
|
||||
this.$emit('result', this.backResult)
|
||||
this.getCustomerItem.customCondition.forEach(element => {
|
||||
if (name == element.queryName) {
|
||||
if (element.inputType == 1) {
|
||||
this.dateVal = ''
|
||||
this.showInput = true
|
||||
this.showSelect = false
|
||||
this.showNumber = false
|
||||
this.currSelect = element
|
||||
} else if (element.inputType == 2) {
|
||||
this.currSelect = element
|
||||
this.dateVal = ''
|
||||
this.showInput = false
|
||||
this.showSelect = true
|
||||
this.showNumber = false
|
||||
if (element.queryName == '关闭状态') {
|
||||
this.childSelect = this.getCustomerItem.cloStatus
|
||||
} else if (element.queryName == '是否211' || element.queryName == '是否是211型号') {
|
||||
// this.childSelect = this.getCustomerItem.is211
|
||||
this.childSelect = [{ id: false, name: '否' }, { id: true, name: '是' }]
|
||||
} else if (element.queryName == '仓库') {
|
||||
this.childSelect = this.getCustomerItem.warehouse
|
||||
} else if (element.queryName == '是否赠品' || element.queryName == '是否是赠品') {
|
||||
// this.childSelect = this.getCustomerItem.isFree
|
||||
this.childSelect = [{ id: false, name: '否' }, { id: true, name: '是' }]
|
||||
} else if (element.queryName == '收款条件' || element.queryName == '付款条件') {
|
||||
this.childSelect = this.getCustomerItem.reccondition
|
||||
} else if (element.queryName == '仓位' || element.queryName == '子仓库') {
|
||||
this.childSelect = this.getCustomerItem.childWarehouse
|
||||
} else if (element.queryName == '供应链' || element.queryName == '东莞/深圳') {
|
||||
this.childSelect = this.getCustomerItem.supplyChainType
|
||||
} else if (element.queryName == '供应组织') {
|
||||
this.childSelect = this.getCustomerItem.supplys
|
||||
} else if (element.queryName == '结算组织') {
|
||||
this.childSelect = this.getCustomerItem.settleOrg
|
||||
} else if (element.queryName == '结算币别') {
|
||||
this.childSelect = this.getCustomerItem.dcurrency
|
||||
} else if (element.queryName == '结算方式') {
|
||||
this.childSelect = this.getCustomerItem.settleType
|
||||
} else if (element.queryName == '跟单员') {
|
||||
this.childSelect = this.getCustomerItem.orgAllPerson
|
||||
} else if (element.queryName == '默认供应商') {
|
||||
this.childSelect = this.getCustomerItem.suppliers
|
||||
} else if (element.queryName == '销售员') {
|
||||
this.childSelect = this.getCustomerItem.salePersons ? this.getCustomerItem.salePersons : this.getCustomerItem.orgAllPerson
|
||||
} else if (element.queryName == '退货类型') {
|
||||
this.childSelect = this.getCustomerItem.returnTypes
|
||||
} else if (element.queryName == '销售部门') {
|
||||
this.childSelect = this.getCustomerItem.saleDept
|
||||
} else if (element.queryName == '单据状态') {
|
||||
this.childSelect = this.getCustomerItem.documentStatus
|
||||
} else if (element.queryName == '库存部门') {
|
||||
this.childSelect = this.getCustomerItem.stockDept
|
||||
} else if (element.queryName == '收料组织') {
|
||||
this.childSelect = this.getCustomerItem.receivingOrg
|
||||
} else if (element.queryName == '采购组织') {
|
||||
this.childSelect = this.getCustomerItem.purchaseOrg
|
||||
} else if (element.queryName == '采购部门') {
|
||||
this.childSelect = this.getCustomerItem.purchaseDept
|
||||
} else if (element.queryName == '收料部门') {
|
||||
this.childSelect = this.getCustomerItem.receivingDept
|
||||
} else if (element.queryName == '采购员') {
|
||||
this.childSelect = this.getCustomerItem.purchasePerson
|
||||
} else if (element.queryName == '仓管员') {
|
||||
this.childSelect = this.getCustomerItem.followPersons ? this.getCustomerItem.followPersons : this.getCustomerItem.orgAllPerson
|
||||
} else if (element.queryName == '退料组织') {
|
||||
this.childSelect = this.getCustomerItem.returnMaterialOrg
|
||||
} else if (element.queryName == '退料部门') {
|
||||
this.childSelect = this.getCustomerItem.returnMaterialDept
|
||||
} else if (element.queryName == '退料方式') {
|
||||
this.childSelect = this.getCustomerItem.returnMaterial
|
||||
} else if (element.queryName == '补料方式') {
|
||||
this.childSelect = this.getCustomerItem.replenishment
|
||||
} else if (element.queryName == '单据类型') {
|
||||
this.childSelect = this.getCustomerItem.billType
|
||||
} else if (element.queryName == '物料属性') {
|
||||
this.childSelect = this.getCustomerItem.MaterialProperty
|
||||
} else if (element.queryName == '产品定位') {
|
||||
this.childSelect = this.getCustomerItem.productLocation
|
||||
} else if (element.queryName == '生命周期') {
|
||||
this.childSelect = this.getCustomerItem.lifeCycle
|
||||
} else if (element.queryName == '安规') {
|
||||
this.childSelect = this.getCustomerItem.safety
|
||||
} else if (element.queryName == '品牌类型') {
|
||||
this.childSelect = this.getCustomerItem.brand
|
||||
} else if (element.queryName == '禁用状态') {
|
||||
this.childSelect = this.getCustomerItem.isDisable
|
||||
} else if (element.queryName == '销售组织') {
|
||||
this.childSelect = this.getCustomerItem.saleOrgs
|
||||
} else if (element.queryName == '供应商') {
|
||||
this.childSelect = this.getCustomerItem.supplier
|
||||
} else if (element.queryName == '数据来源') {
|
||||
this.childSelect = this.getCustomerItem.dataSourceTypes
|
||||
} else if (element.queryName == '单位' || element.queryName == '子单位') {
|
||||
this.childSelect = this.getCustomerItem.unitlist
|
||||
} else if (element.queryName == '存货类别') {
|
||||
this.childSelect = this.getCustomerItem.InventoryType
|
||||
}
|
||||
} else if (element.inputType == 3) {
|
||||
this.val = ''
|
||||
this.iptVal = ''
|
||||
this.showInput = false
|
||||
this.showSelect = false
|
||||
this.showNumber = true
|
||||
this.currSelect = element
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
iptChange (val) {
|
||||
console.log('切换的输入框', this.currSelect)
|
||||
this.dateVal = ''
|
||||
this.val = ''
|
||||
this.backResult.outResult = {}
|
||||
if (val == '') {
|
||||
this.iptVal = ''
|
||||
delete this.backResult.outResult[`${this.currSelect.queryField}`]
|
||||
this.$emit('result', this.backResult)
|
||||
} else {
|
||||
this.backResult.outResult[`${this.currSelect.queryField}`] = val
|
||||
this.$emit('result', this.backResult)
|
||||
}
|
||||
},
|
||||
selChange (name, id) {
|
||||
this.dateVal = ''
|
||||
this.backResult.outResult = {}
|
||||
this.childSelect.forEach(element => {
|
||||
if (element.name == name) {
|
||||
this.backResult.outResult[`${this.currSelect.queryField}`] = element.id
|
||||
}
|
||||
})
|
||||
this.$emit('result', this.backResult)
|
||||
},
|
||||
lastClearSel (value) {
|
||||
delete this.backResult.outResult[`${this.currSelect.queryField}`]
|
||||
this.$emit('result', this.backResult)
|
||||
},
|
||||
numStVal (val) {
|
||||
this.numStatus = numberRexgu(val)
|
||||
this.val = ''
|
||||
this.dateVal = ''
|
||||
if (this.numStatus == '' && this.numEnd == '') {
|
||||
this.backResult.outResult = {}
|
||||
}
|
||||
if (this.numStatus) {
|
||||
this.dateVal = this.numStatus + '|' + this.numEnd
|
||||
this.backResult.outResult[`${this.currSelect.queryField}`] = this.dateVal
|
||||
this.$emit('result', this.backResult)
|
||||
}else{
|
||||
this.numStatus = ''
|
||||
if (this.numEnd) {
|
||||
this.dateVal = this.numStatus + '|' + this.numEnd
|
||||
this.backResult.outResult[`${this.currSelect.queryField}`] = this.dateVal
|
||||
this.$emit('result', this.backResult)
|
||||
} else {
|
||||
this.dateVal = ''
|
||||
this.dateVal = this.numStatus + '|' + this.numEnd
|
||||
this.backResult.outResult[`${this.currSelect.queryField}`] = this.dateVal
|
||||
this.$emit('result', this.backResult)
|
||||
}
|
||||
}
|
||||
},
|
||||
numEnVal (val) {
|
||||
this.numEnd = numberRexgu(val)
|
||||
this.val = ''
|
||||
this.dateVal = ''
|
||||
if (this.numStatus == '' && this.numEnd == '') {
|
||||
this.backResult.outResult = {}
|
||||
}
|
||||
|
||||
if (this.numEnd) {
|
||||
this.dateVal = this.numStatus + '|' + this.numEnd
|
||||
this.backResult.outResult[`${this.currSelect.queryField}`] = this.dateVal
|
||||
this.$emit('result', this.backResult)
|
||||
} else {
|
||||
this.numEnd = ''
|
||||
if (this.numStatus || this.numStatus == 0) {
|
||||
this.dateVal = this.numStatus + '|' + this.numEnd
|
||||
this.backResult.outResult[`${this.currSelect.queryField}`] = this.dateVal
|
||||
this.$emit('result', this.backResult)
|
||||
} else {
|
||||
this.dateVal = ''
|
||||
this.dateVal = this.numStatus + '|' + this.numEnd
|
||||
this.backResult.outResult[`${this.currSelect.queryField}`] = this.dateVal
|
||||
this.$emit('result', this.backResult)
|
||||
}
|
||||
}
|
||||
},
|
||||
lastIpt () {
|
||||
if (this.numEnd) {
|
||||
this.numEnd = this.numEnd * 1
|
||||
}
|
||||
},
|
||||
stIpt () {
|
||||
if (this.numStatus) {
|
||||
this.numStatus = this.numStatus * 1
|
||||
}
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
reset: function (val) {
|
||||
if (val) {
|
||||
this.formcustomCondition = ''
|
||||
this.iptVal = ''
|
||||
this.val = ''
|
||||
this.numStatus = ''
|
||||
this.numEnd = ''
|
||||
this.isDisabled = true
|
||||
this.showInput = true
|
||||
this.showSelect = false
|
||||
this.showNumber = false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.customCondition-container {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
.input-number-box {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center !important;
|
||||
|
||||
span {
|
||||
margin: 0 4px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep(.el-select) {
|
||||
// width: 172px!important;
|
||||
margin-top: 1px !important;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
::v-deep(.el-autocomplete) {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
::v-deep(.el-input__inner) {
|
||||
height: 28px !important;
|
||||
line-height: 28px !important;
|
||||
}
|
||||
</style>
|
||||
166
src/components/public/DetailsOperation.vue
Normal file
@@ -0,0 +1,166 @@
|
||||
<!--
|
||||
* @作者: 金鑫
|
||||
* @时间: 2021-10-29 07:47:21
|
||||
* @描述: 控制表格增加行、删除行、向下复制行、单元格粘贴列
|
||||
-->
|
||||
<template>
|
||||
<div class="tell-container">
|
||||
<div class="tell-info-gift-row" @click="addGift" v-if="detailBtn.includes('gift')">
|
||||
<span :class="{'f-c':isEdit}">添加赠品</span>
|
||||
</div>
|
||||
<div class="tell-info-add-row span-add-row" @click="defaultAdd" v-if="!detailBtn.includes('add')">
|
||||
<span :class="{'f-c':isEdit}">增加行</span>
|
||||
<!-- <el-dropdown v-else :disabled="isEdit" trigger="click" :hide-on-click="false" @visible-change="dropDownEnter" placement="bottom-start">
|
||||
<span class="el-dropdown-link" :class="{'f-c':isEdit}">
|
||||
增加行
|
||||
<i class="el-icon-arrow-down el-icon--right"></i>
|
||||
</span>
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu class="insert-row" :disabled="isEdit" style="padding:0;">
|
||||
<el-dropdown-item style="font-size:12px;display:flex;justify-content: center;align-items: center;padding:0 12px;">
|
||||
<span style="margin-right:4px">插入</span>
|
||||
<InputMini @insertNumber="getBottomInputMiniVal" :msg="msg" :isClear="isClear" />
|
||||
<span style="margin-left:4px">行</span>
|
||||
</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown> -->
|
||||
</div>
|
||||
<div class="tell-info-copy-row" @click="copyRow" v-if="!detailBtn.includes('copy')">
|
||||
<span :class="{'f-c':isEdit}">复制行</span>
|
||||
</div>
|
||||
<div class="tell-info-delete-row" @click="deleteRow" v-if="!detailBtn.includes('delet')">
|
||||
<span :class="{'f-c':isEdit}">删除行</span>
|
||||
</div>
|
||||
<div class="tell-info-query" @click="copyCellColumn" v-if="!detailBtn.includes('allIn')">
|
||||
<span :class="{'f-c':isEdit}">批量填充</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
deviationSelectArr: Array,
|
||||
isEdit: Boolean,
|
||||
detailBtn: {
|
||||
type: Array,
|
||||
default: function () {
|
||||
return []
|
||||
}
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
insertObj: {
|
||||
insertBottomVal: ''
|
||||
},
|
||||
msg: '0',
|
||||
isClear: false,
|
||||
isCheck: false
|
||||
}
|
||||
},
|
||||
// 通过选择行 切换 末尾添加或下拉指定位置添加
|
||||
// updated:function(){
|
||||
// this.deviationSelectArr.length > 0 ? this.isCheck = true : this.isCheck = false
|
||||
// },
|
||||
methods: {
|
||||
defaultAdd(){
|
||||
// console.log('默认末尾添加行')
|
||||
if (this.isEdit) {
|
||||
return
|
||||
} else {
|
||||
this.$emit('insertObj', 1)
|
||||
}
|
||||
},
|
||||
// dropDownEnter(event) {
|
||||
// if (this.isEdit) {
|
||||
// return
|
||||
// } else {
|
||||
// if (event === false) {
|
||||
// if (this.deviationSelectArr.length == 1) {
|
||||
// if (parseInt(this.insertObj.insertBottomVal) !== 0) {
|
||||
// this.$emit('insertObj', this.insertObj)
|
||||
// }
|
||||
// } else {
|
||||
// this.$message.error('请选择一行,在操作!')
|
||||
// }
|
||||
// this.isClear = false
|
||||
// } else {
|
||||
// this.isClear = true
|
||||
// this.insertObj.insertBottomVal = '0'
|
||||
// if (parseInt(this.insertObj.insertBottomVal) !== 0) {
|
||||
// this.$emit('insertObj', this.insertObj)
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// getBottomInputMiniVal(data) {
|
||||
// this.insertObj.insertBottomVal = data
|
||||
// },
|
||||
copyRow() {
|
||||
if (this.isEdit) {
|
||||
return
|
||||
} else {
|
||||
this.$emit('copyRow', true)
|
||||
}
|
||||
},
|
||||
deleteRow() {
|
||||
if (this.isEdit) {
|
||||
return
|
||||
} else {
|
||||
this.$emit('deleteRow', true)
|
||||
}
|
||||
},
|
||||
copyCellColumn() {
|
||||
if (this.isEdit) {
|
||||
return
|
||||
} else {
|
||||
this.$emit('copyCellcolumn', true)
|
||||
}
|
||||
},
|
||||
addGift(){
|
||||
if (this.isEdit) {
|
||||
return
|
||||
} else {
|
||||
this.$emit('addGift', true)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
@mixin current-deviation {
|
||||
margin-left: 16px;
|
||||
}
|
||||
.tell-container {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
.tell-info-add-row {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.tell-info-gift-row:hover{
|
||||
color: #66b1ff;
|
||||
cursor: pointer;
|
||||
}
|
||||
.tell-info-copy-row {
|
||||
@include current-deviation;
|
||||
}
|
||||
.tell-info-delete-row {
|
||||
@include current-deviation;
|
||||
}
|
||||
.tell-info-query {
|
||||
@include current-deviation;
|
||||
}
|
||||
}
|
||||
.f-c {
|
||||
color: var(--el-disabled-color-base) !important;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
.span-add-row:hover {
|
||||
cursor: pointer;
|
||||
color: #66b1ff;
|
||||
}
|
||||
</style>
|
||||
239
src/components/public/DownPdf.vue
Normal file
@@ -0,0 +1,239 @@
|
||||
<template>
|
||||
<div class="container">
|
||||
<button @click="handleDown">导出</button>
|
||||
<div id="content">
|
||||
<div class="box qc orderInformation">
|
||||
<h1><img src="https://www.orico.com.cn//uploads/default/logo-black.png"><span id="cgzz"></span></h1>
|
||||
<h2>采购订单</h2>
|
||||
<ul class="InformationUl">
|
||||
<li>TO:<span id="gysname"></span></li>
|
||||
<li>日期:<span id="cgdate"></span></li>
|
||||
<li>地址:<span id="gysdz"></span></li>
|
||||
<li>电话:<span id="gyssj"></span></li>
|
||||
<li>联系人:<span id="gyslxr"></span></li>
|
||||
</ul>
|
||||
<div class="tableA">
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<td>采购订单号</td>
|
||||
<td>物料编码</td>
|
||||
<td>物料名称</td>
|
||||
<td>规格型号</td>
|
||||
<td>数量</td>
|
||||
<td>单位</td>
|
||||
<td>含税单价</td>
|
||||
<td>总价</td>
|
||||
<td>交货日期</td>
|
||||
<td>备注</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="t_body">
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td>合计</td>
|
||||
<td>人民币</td>
|
||||
<td colspan='2'><span id="sumprice_to_Chinese"></span></td>
|
||||
<td><span id="sum_count"></span></td>
|
||||
<td>Pcs</td>
|
||||
<td colspan='2'><strong id="sumprice"></strong></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
</div>
|
||||
<div class="InformationTxt">
|
||||
<p>1.包装方式:根据我司品质规定的包装方式;</p>
|
||||
<p>2.付款方式:<b id="fktype" style=" font-weight: normal;"> </b></p>
|
||||
<p>3.备品要求:<span></span>0.3%  <span></span>0.5%  <span></span>10%  <span></span>20%  <span></span>其他</p>
|
||||
<p>4.交货地点:<b id="sgdz" style=" font-weight: normal;"></b></p>
|
||||
<p>5.质量要求:供应商所提供的产品质量必须达到我国环保标准和我方客户所在地标准,如果供应商提供有质量问题或不符合环保标准的产品,我司可以无条件退货,且供应商需承担我司的一切损失;</p>
|
||||
<p>6.若供应商逾期交货,我司有权依照以逾期所交货物的货款为基数每日千分之三向供应商收取违约金,逾期10日交货的,我司有权单方解除合同;</p>
|
||||
<p>7.有关本采购单的任何争议,双方应协商解决,协商不成的,应向深圳市元创时代科技有限公司所在地法院诉讼;</p>
|
||||
<p>8.所送的物品请保证数量及质量 、送货前请通知我司采购,否则我司将拒收货物;</p>
|
||||
<p>9.送货时烦请在请货单上注明相应的PO号码,送货单上必需有我司收货专用章,否则无效,谢谢合作;</p>
|
||||
</div>
|
||||
<div class="confirm">
|
||||
<ul>
|
||||
<li>供应商确认:</li>
|
||||
<li>核准:</li>
|
||||
<li>审核:<span id="editer"></span> </li>
|
||||
<li>制表人:<span id="manperson"></span> </li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import htmlToPdf from '@/utils/htmlToPdf.js';
|
||||
export default {
|
||||
name: "OrderToPdf",
|
||||
data(){
|
||||
return {
|
||||
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleDown(){
|
||||
htmlToPdf.downloadPDF( document.querySelector('#content'),'订单合同');
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
* {
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
list-style: none
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
width: 100%
|
||||
}
|
||||
|
||||
tbody {
|
||||
display: table-row-group;
|
||||
vertical-align: middle;
|
||||
border-color: inherit
|
||||
}
|
||||
|
||||
tr {
|
||||
display: table-row;
|
||||
vertical-align: inherit;
|
||||
border-color: inherit
|
||||
}
|
||||
|
||||
td {
|
||||
padding: 5px 5px;
|
||||
border: 1px solid #333;
|
||||
vertical-align: middle
|
||||
}
|
||||
|
||||
.box {
|
||||
/*width: 900px;*/
|
||||
margin: 0 auto
|
||||
}
|
||||
|
||||
.qc:after {
|
||||
content: ".";
|
||||
display: block;
|
||||
height: 0;
|
||||
clear: both;
|
||||
visibility: hidden
|
||||
}
|
||||
|
||||
.orderInformation {
|
||||
/*box-shadow: 0 1px 4px 0 rgba(0,0,0,0.2);*/
|
||||
margin: 10px auto;
|
||||
padding: 10px
|
||||
}
|
||||
|
||||
.orderInformation h1 {
|
||||
padding: 10px 80px;
|
||||
font-weight: normal;
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
.orderInformation h1 img {
|
||||
position: relative;
|
||||
float: left;
|
||||
top: 2px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.orderInformation h2 {
|
||||
text-align: center;
|
||||
background: #f1f1f1;
|
||||
/*margin: 15px 0;*/
|
||||
font-weight: normal;
|
||||
font-size: 24px;
|
||||
padding: 5px 0;
|
||||
}
|
||||
|
||||
.InformationUl {
|
||||
margin-left: 35px;
|
||||
overflow: hidden
|
||||
}
|
||||
|
||||
.InformationUl li {
|
||||
/*width: 50%;*/
|
||||
float: left;
|
||||
font-size: 14px;
|
||||
margin-bottom: 10px
|
||||
}
|
||||
|
||||
.InformationUl li:nth-child(1) {
|
||||
width: 60%
|
||||
}
|
||||
|
||||
.InformationUl li:nth-child(3) {
|
||||
width: 60%
|
||||
}
|
||||
|
||||
.InformationUl li:nth-child(5) {
|
||||
width: 60%
|
||||
}
|
||||
|
||||
.tableA {
|
||||
margin-bottom: 5px
|
||||
}
|
||||
|
||||
.tableA table {
|
||||
}
|
||||
|
||||
.tableA td {
|
||||
font-size: 12px;
|
||||
border: 1px solid #000
|
||||
}
|
||||
|
||||
.tableA td * {
|
||||
font-size: 12px
|
||||
}
|
||||
|
||||
.tableA td:nth-child(1), .tableA td:nth-child(2), .tableA td:nth-child(3), .tableA td:nth-child(8), .tableA td:nth-child(9) {
|
||||
white-space: nowrap
|
||||
}
|
||||
|
||||
.tableA td:nth-child(10) {
|
||||
width: 6em
|
||||
}
|
||||
|
||||
.InformationTxt {
|
||||
}
|
||||
|
||||
.InformationTxt p {
|
||||
font-size: 14px;
|
||||
/*margin-bottom: 0.5em*/
|
||||
}
|
||||
|
||||
.InformationTxt p span {
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
border: 1px solid #000;
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
top: 1px;
|
||||
margin-right: 4px
|
||||
}
|
||||
|
||||
.confirm {
|
||||
}
|
||||
|
||||
.confirm ul {
|
||||
overflow: hidden;
|
||||
padding: 20px 0
|
||||
}
|
||||
|
||||
.confirm ul li {
|
||||
width: 25%;
|
||||
float: left;
|
||||
font-size: 14px
|
||||
}
|
||||
</style>
|
||||
68
src/components/public/InputMini.vue
Normal file
@@ -0,0 +1,68 @@
|
||||
|
||||
<!--
|
||||
* @作者: 金鑫
|
||||
* @时间: 2021-10-29 07:52:12
|
||||
* @描述: 个位数输入框
|
||||
-->
|
||||
<template>
|
||||
<div>
|
||||
<el-input v-model="value" @change="downEnter" @input="getVal" :oninput="saleNum(value)" maxlength="1"></el-input>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'InputMini',
|
||||
props: {
|
||||
msg: String,
|
||||
isClear: Boolean
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
value: '0'
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getVal(val) {
|
||||
this.value = val
|
||||
},
|
||||
downEnter(val) {
|
||||
if (val == '') {
|
||||
this.value = 0
|
||||
}
|
||||
this.$emit('insertNumber', this.value)
|
||||
},
|
||||
saleNum(val) {
|
||||
if (val) {
|
||||
if (val.length === 1) {
|
||||
this.value = val.toString().replace(/\D/g, '0')
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.value = this.msg
|
||||
},
|
||||
watch: {
|
||||
isClear: function (val) {
|
||||
if (val) {
|
||||
this.value = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
::v-deep(.el-input) {
|
||||
line-height: 28px;
|
||||
}
|
||||
::v-deep(.el-input__inner) {
|
||||
padding: 0 5px !important;
|
||||
height: 20px;
|
||||
font-size: 12px;
|
||||
line-height: 20px;
|
||||
width: 28px;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
485
src/components/public/PrintModel.vue
Normal file
@@ -0,0 +1,485 @@
|
||||
<!-- 打印摸版 -->
|
||||
<template lang="">
|
||||
<div v-if=' printData.tableData && printData.tableData.length > 0'>
|
||||
<div style="width:784px;overflow-y: hidden;text-align: center; overflow: hidden;" id='companyTilte'>
|
||||
<div style="width:784px;text-align: center;">
|
||||
<span style="font-size: 18px;margin-top: 30px;">{{ userInfo.identity==1 || userInfo.identity==3?userInfo.orgName:userInfo.customerName }}</span>
|
||||
<h1 style="font-size: 20px;margin-top: 10px;margin-bottom:20px;">{{ printData.orderName === '采购订单管理'? '采购订单' : printData.orderName }}</h1>
|
||||
<hr style="border:1px soild #000;width:1200px;" />
|
||||
</div>
|
||||
</div>
|
||||
<!-- 表头 -->
|
||||
<div style="width:784px;text-align:center; margin-bottom:300px" id='headhtml'>
|
||||
<div style='margin-top:20px;margin-left: 50px;height auto;position:relative'>
|
||||
<div style='width:350px;float: left;margin-left: 20px;' v-if='printData.orderName === "生产用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">销售订单号:</label>
|
||||
<span style="font-size: 14px;">{{ 100>printData.tableData[0].salBillNo.length>60?printData.tableData[0].salBillNo.slice(0,60)+"...": printData.tableData[0].salBillNo }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">生产订单号: </label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].moBillNo }}</span>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "生产用料清单"'>
|
||||
<br v-if='printData.orderName === "生产用料清单"&& printData.tableData[0].salBillNo.length>40 '>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产用料清单"||printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">物料编码:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].pMaterialNumber }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产用料清单"||printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">物料名称:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].pMaterialName }}</span>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "委外用料清单" ||printData.orderName === "生产用料清单"'>
|
||||
<div style='width:350px; max-height:300px;float: left;margin-left: 20px;' v-if='printData.orderName === "生产用料清单"||printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">规格型号:</label>
|
||||
<span style="font-size: 14px;"> {{ printData.tableData[0].pSpecification.length>100?printData.tableData[0].pSpecification.slice(0,100)+"...": printData.tableData[0].pSpecification }}</span>
|
||||
</div>
|
||||
<div style='width:300px;max-height:500px;float: left;margin-left: 20px;' v-if='printData.orderName === "生产用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">备注:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].orderRemark.length>55?printData.tableData[0].orderRemark.slice(0,55)+"...": printData.tableData[0].orderRemark }}</span>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "生产用料清单" &&(printData.tableData[0].orderRemark.length>20 || printData.tableData[0].pSpecification.length>20)' />
|
||||
<br v-if='printData.orderName === "生产用料清单" &&(printData.tableData[0].orderRemark.length>45 || printData.tableData[0].pSpecification.length>45)' />
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">单据编号:</label>
|
||||
<span style="font-size: 14px;" v-if="printData.orderName ==='委外用料清单'">{{ printData.tableData[0].outSourcMaterialNo }}</span>
|
||||
<span style="font-size: 14px;" v-else>{{ printData.tableData[0].produceMaterialNo }}</span>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "委外用料清单"'>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">委外订单号</label>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName !== "委外用料清单"'>{{ printData.tableData[0].moBillNo }}</span>
|
||||
<span style="font-size: 14px;" v-else>{{ printData.tableData[0].outSourcOrderNo }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">期望交期:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].expectDate }}</span>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "生产用料清单"||printData.orderName === "委外用料清单"'>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "委外用料清单" || printData.orderName === "生产领料单"||printData.orderName==="生产补料单"||printData.orderName==="生产退料单"||printData.orderName==="委外领料单"||printData.orderName==="委外补料单"||printData.orderName==="委外退料单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">{{ printData.orderName==='委外领料单'||printData.orderName==='委外补料单'||printData.orderName==='委外退料单'?'采购订单号:':'销售订单号:' }}</label>
|
||||
<span style="font-size: 14px;" v-if="printData.orderName==='委外领料单'||printData.orderName==='委外补料单'||printData.orderName==='委外退料单'">{{ printData.tableData[0].purorderNo }}</span>
|
||||
<span style="font-size: 14px;" v-if="printData.orderName==='生产用料清单'||printData.orderName==='委外用料清单'||printData.orderName==='生产领料单'||printData.orderName==='生产补料单'||printData.orderName==='生产退料单'">{{ printData.tableData[0].salBillNo }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产领料单"||printData.orderName==="生产补料单"||printData.orderName==="生产退料单"||printData.orderName==="委外领料单"||printData.orderName==="委外补料单"||printData.orderName==="委外退料单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">{{ printData.orderName === "生产领料单"||printData.orderName==="生产补料单"||printData.orderName==="生产退料单"?'生产订单号:':'供应商:' }}</label>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "生产领料单"||printData.orderName==="生产补料单"||printData.orderName==="生产退料单"'>{{ printData.tableData[0].moBillNo }}</span>
|
||||
<span style="font-size: 14px;" v-if="printData.orderName==='委外领料单'||printData.orderName==='委外补料单'||printData.orderName==='委外退料单'">{{ printData.tableData[0].supplier }}</span>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "生产领料单" ||printData.orderName==="生产补料单"||printData.orderName==="生产退料单"||printData.orderName==="委外领料单"||printData.orderName==="委外补料单"||printData.orderName==="委外退料单"'>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产领料单" ||printData.orderName==="生产补料单"||printData.orderName==="生产退料单"||printData.orderName==="委外领料单"||printData.orderName==="委外补料单"||printData.orderName==="委外退料单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">下单日期:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].date }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产领料单" ||printData.orderName==="生产补料单"||printData.orderName==="生产退料单"||printData.orderName==="委外领料单"||printData.orderName==="委外补料单"||printData.orderName==="委外退料单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">{{ printData.orderName }}号:</label>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "生产领料单"'>{{ printData.tableData[0].producePickNo }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "生产补料单"'>{{ printData.tableData[0].produceFeedNo }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "生产退料单"'>{{ printData.tableData[0].produceReturnNo }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "委外领料单"'>{{ printData.tableData[0].outSourcPickNo }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "委外补料单"'>{{ printData.tableData[0].outSourcFeedNo }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "委外退料单"'>{{ printData.tableData[0].outSourcReturnNo }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">生产部门:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].workShop }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">供应商:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].supplier }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">数量:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].number }}</span>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "委外用料清单"'>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "委外用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">{{ printData.orderName === "生产用料清单"?'生产订单备注:':'委外订单备注:' }}</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].orderRemark }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产用料清单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">条码:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].barCode }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "销售订单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">销售部门/销售员/跟单:</label>
|
||||
<span style="font-size: 14px;">{{ (printData.tableData[0].sellPart+'/'+ printData.tableData[0].sellPerson +'/'+ printData.tableData[0].qc).length>18?(printData.tableData[0].sellPart+'/'+ printData.tableData[0].sellPerson +'/'+ printData.tableData[0].qc).slice(0,18)+"...":(printData.tableData[0].sellPart+'/'+ printData.tableData[0].sellPerson +'/'+ printData.tableData[0].qc) }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "销售退货订单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">销售部门/销售员:</label>
|
||||
<span style="font-size: 14px;">{{ (printData.tableData[0].stockDept+'/'+ printData.tableData[0].saleDept).length>18?(printData.tableData[0].saleDept+'/'+ printData.tableData[0].salesMan).slice(0,18)+"...":(printData.tableData[0].saleDept+'/'+ printData.tableData[0].salesMan) }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "送货单"||printData.orderName === "采购订单管理"||printData.orderName === "采购备料订单"||printData.orderName === "采购备料订单"||printData.orderName === "采购退料单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">供应商:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].supplierName.length > 18 ? printData.tableData[0].supplierName.slice(0,18)+"...":printData.tableData[0].supplierName }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "采购入库单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">供应商:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].supplier.length > 18 ? printData.tableData[0].supplier.slice(0,18)+"...":printData.tableData[0].supplier }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "销售出库单" ||printData.orderName === "发货通知单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">销售部门/销售员:</label>
|
||||
<span style="font-size: 14px;">{{ (printData.tableData[0].sellDept+'/'+printData.tableData[0].sellStaff).length > 18 ? (printData.tableData[0].sellDept+'/'+printData.tableData[0].sellStaff).slice(0,18)+"...":(printData.tableData[0].sellDept+'/'+printData.tableData[0].sellStaff) }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "分步式调出单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">调入库存组织:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].stockinOrg.length > 18 ? printData.tableData[0].stockinOrg.slice(0,18)+"...":printData.tableData[0].stockinOrg }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "生产入库单" ||printData.orderName === "直接调拨单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">单据编号:</label>
|
||||
<span v-if='printData.orderName === "直接调拨单"' style="font-size: 14px;">{{ printData.tableData[0].billNo.length > 18 ? printData.tableData[0].billNo.slice(0,18)+"...":printData.tableData[0].billNo }}</span>
|
||||
<span v-else style="font-size: 14px;">{{ printData.tableData[0].produceInStockNo.length > 18 ? printData.tableData[0].produceInStockNo.slice(0,18)+"...":printData.tableData[0].produceInStockNo }}</span>
|
||||
</div>
|
||||
<!-- 日期 -->
|
||||
<div style='width:350px; float: left;margin-left: 20px;'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;"> {{ printData.orderName === "销售订单" ?'下单日期:':printData.orderName === "销售退货订单"? '退货日期:':printData.orderName === "送货单"?'送货日期:':printData.orderName === "采购订单管理" ? '日期:' : printData.orderName === "采购备料订单"?'备料日期:': printData.orderName === "采购退料单" ? '退料日期:' : printData.orderName === '采购入库单' ? '入库日期:' : printData.orderName === '销售出库单' ? '下单日期:' : printData.orderName === '发货通知单' ? '日期:' : printData.orderName === '直接调拨单' ? '下单日期:' : printData.orderName === '分步式调出单' ? '单据日期:' : printData.orderName === '生产入库单' ? '下单日期:' : '' }}</label>
|
||||
<span style="font-size: 14px;">{{ printData.orderName === "销售订单" ? printData.tableData[0].placeOrderDate : printData.orderName === '销售退货订单' ? printData.tableData[0].returnDate : printData.orderName === '送货单' ? printData.tableData[0].deliveryDate : printData.orderName === '采购订单管理' ? printData.tableData[0].date : printData.orderName === '采购备料订单' ? printData.tableData[0].date : printData.orderName === '采购退料单' ? printData.tableData[0].date : printData.orderName === '采购入库单' ? printData.tableData[0].date : printData.orderName === '销售出库单' ? printData.tableData[0].orderDate : printData.orderName === '发货通知单' ? printData.tableData[0].orderDate : printData.orderName === '直接调拨单' ? printData.tableData[0].date : printData.orderName === '分步式调出单' ? printData.tableData[0].date : printData.orderName === '生产入库单' ? printData.tableData[0].date : '' }}</span>
|
||||
</div>
|
||||
<br>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "销售订单" || printData.orderName === "发货通知单" || printData.orderName === "销售退货订单" || printData.orderName === "销售出库单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">客户:</label>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "销售订单"'>{{ (printData.tableData[0].custom).length>35?(printData.tableData[0].custom).slice(0,35)+"..." :(printData.tableData[0].custom) }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "销售退货订单"'>{{ (printData.tableData[0].retcust).length>35?(printData.tableData[0].retcust).slice(0,35)+"..." :(printData.tableData[0].retcust) }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "销售出库单"'>{{ (printData.tableData[0].customers).length>35?(printData.tableData[0].customers).slice(0,35)+"..." :(printData.tableData[0].customers) }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "发货通知单"'>{{ (printData.tableData[0].customers).length>35?(printData.tableData[0].customers).slice(0,35)+"..." :(printData.tableData[0].customers) }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "销售订单" || printData.orderName === "发货通知单"||printData.orderName === "采购订单管理"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">联系人/电话:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].linkMode }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "销售出库单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">打包方式:</label>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "分步式调出单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">单据编号:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].billNo.length > 18 ? printData.tableData[0].billNo.slice(0,18)+"...":printData.tableData[0].billNo }}</span>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "直接调拨单" || printData.orderName === "分步式调出单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">仓管员:</label>
|
||||
<span style="font-size: 14px;">{{ printData.tableData[0].stockerStaff }}</span>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "发货通知单" || printData.orderName === "销售出库单"'>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "销售出库单" || printData.orderName === "发货通知单"'>
|
||||
<label style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">发货方式:</label>
|
||||
</div>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "销售出库单" || printData.orderName === "发货通知单"'>
|
||||
<label style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">物流/快递公司:</label>
|
||||
</div>
|
||||
<br v-if='printData.orderName === "发货通知单"'>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "发货通知单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">打包方式:</label>
|
||||
</div>
|
||||
<br v-if='printData.orderName !== "采购订单管理" && printData.orderName !== "发货通知单" && printData.orderName !== "直接调拨单"'>
|
||||
<br v-if='printData.orderName === "采购订单管理"'>
|
||||
<div style='width:350px; float: left;margin-left: 20px;' v-if='printData.orderName === "分步式调出单" || printData.orderName === "直接调拨单" || printData.orderName === "销售出库单" || printData.orderName === "发货通知单"'>
|
||||
<label
|
||||
style="width:50px; font-size: 14px;font-weight: bold;margin-right: 3px;text-align: right;">收货地址:</label>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "销售出库单"'>{{ !printData.tableData[0].linkAdress ? '' : printData.tableData[0].linkAdress }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "发货通知单"'>{{ !printData.tableData[0].linkAdress ? '' : printData.tableData[0].linkAdress }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "直接调拨单"'>{{ !printData.tableData[0].linkAdress? '' : printData.tableData[0].linkAdress }}</span>
|
||||
<span style="font-size: 14px;" v-if='printData.orderName === "分步式调出单"'>{{ !printData.tableData[0].linkAdress? '' : printData.tableData[0].linkAdress }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 表体 -->
|
||||
<div id="div2">
|
||||
<table border=1 width="100%" style="border:solid 1px black;border-collapse:collapse;table-layout: fixed; word-wrap:break-all;">
|
||||
<thead>
|
||||
<!--表头 -->
|
||||
<tr>
|
||||
<th style="padding: 6px 0;font-weight: bold; font-size: 12px;" v-for='(itm,index) in theadDate' :key="itm.thName" :style="{width:itm.field ==='specification'?'30%':'auto'}">{{ itm.thName }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!--表体 -->
|
||||
<tr v-for='(it,ind) in printData.tableData' :key="ind">
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 5px;word-wrap:break-word; word-break:break-all;" v-for='(itm,index) in theadDate' :key="itm.field">
|
||||
{{ itm.field==='sendNumber' || (itm.field==='realNumber' &&printData.orderName === '生产入库单')|| itm.field==='realNumber'||itm.field==='mustNumber'||itm.field==='sendNumber'||itm.field==='receiveNumber' ?(it.subUnitMultiple ? it.subUnitMultiple : 1)*it[itm.field]:(itm.field? it[itm.field]:(ind+1)) }}
|
||||
</td>
|
||||
</tr>
|
||||
<!--合计 -->
|
||||
<tr v-if='printData.orderName === "销售订单"'>
|
||||
<td colspan="5" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="6">######</span></td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="7">¥######</span></td>
|
||||
<td></td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="9">¥######</span></td>
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "销售退货订单"||printData.orderName === "送货单"||printData.orderName === "采购订单管理"'>
|
||||
<td colspan="6" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue; word-break:break-all;width:100px" tdata="Sum" format="#,##0.00" tindex="7">######</span></td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue; word-break:break-all;width:100px" tdata="Sum" format="#,##0.00" tindex="8">{{ printData.orderName === "送货单"?'':'¥' }}######</span></td>
|
||||
<td></td>
|
||||
<td v-if='printData.orderName === "送货单"||printData.orderName === "采购订单管理"'></td>
|
||||
<td v-if='printData.orderName !== "送货单" && printData.orderName !== "采购订单管理"' style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue; word-break:break-all;width:100px" tdata="Sum" format="#,##0.00" tindex="10">¥######</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "采购备料订单"'>
|
||||
<td colspan="5" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="6">######</span>
|
||||
</td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "采购退料单"'>
|
||||
<td colspan="6" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="7">######</span></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "采购入库单"||printData.orderName === "销售出库单"||printData.orderName === "发货通知单"'>
|
||||
<td colspan="7" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="8">######</span></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "直接调拨单" || printData.orderName === "生产入库单"'>
|
||||
<td colspan="6" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="7">######</span></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "分步式调出单"'>
|
||||
<td colspan="6" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="7">######</span></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "生产用料清单"||printData.orderName === "委外用料清单"'>
|
||||
<td colspan="7" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="8">######</span></td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="9">######</span></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "生产领料单"||printData.orderName === "委外领料单"'>
|
||||
<td colspan="6" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="7">######</span></td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="8">######</span></td>
|
||||
<td v-if="printData.orderName === '生产领料单' ||printData.orderName === '委外领料单'"></td>
|
||||
<!-- <td></td> -->
|
||||
</tr>
|
||||
<tr v-if='printData.orderName === "生产补料单"||printData.orderName === "生产退料单"||printData.orderName === "委外补料单"||printData.orderName === "委外退料单"'>
|
||||
<td colspan="6" style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">合计</td>
|
||||
<td style="font-size: 10px;color:#303133 ;padding: 6px 0;word-wrap:break-word; word-break:break-all;">
|
||||
<span style="color:blue" tdata="Sum" format="#,##0.00" tindex="7">######</span>
|
||||
</td>
|
||||
<td></td>
|
||||
<!-- <td></td> -->
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- 表尾-->
|
||||
<div style="width:784px;overflow-y: hidden;text-align: center; overflow: hidden;" id='foothtml'>
|
||||
<div style="font-size: 14px; color: #303133;margin-top:30px;" v-if='printData.tableData.length > 0'>
|
||||
<div style="margin-bottom:10px;" v-if='printData.orderName === "销售订单" || printData.orderName === "分步式调出单" || printData.orderName === "直接调拨单" || printData.orderName === "发货通知单" || printData.orderName === "销售出库单" || printData.orderName === "采购订单管理" || printData.orderName === "采购备料订单"'>
|
||||
<span style='font-weight: bold;margin-right: 3px;'>联系人/电话:</span>
|
||||
<span>{{ printData.orderName === "销售订单" || printData.orderName === "采购订单管理" ? printData.tableData[0].linkMode : printData.orderName === "采购备料订单" ? printData.tableData[0].supplierContactName + '/' + printData.tableData[0].supplierTelphone : printData.orderName === "销售出库单" ? printData.tableData[0].linkMode : printData.orderName === '发货通知单' ? printData.tableData[0].linkMode : printData.orderName === '直接调拨单' ? printData.tableData[0].linkMode : printData.orderName === '分步式调出单' ? printData.tableData[0].linkMode : '' }}</span>
|
||||
</div>
|
||||
<div style="margin-bottom:10px;" v-if='printData.orderName === "销售订单" || printData.orderName === "分步式调出单" || printData.orderName === "直接调拨单" || printData.orderName === "发货通知单" || printData.orderName === "采购订单管理" || printData.orderName === "销售出库单"'>
|
||||
<span style='font-weight: bold;margin-right: 3px;'>{{ printData.orderName === "采购订单管理"? '送货地址:' :'收货地址:' }}</span>
|
||||
<span>{{ printData.orderName === "销售订单" ? printData.tableData[0].linkAdress : printData.orderName === "采购订单管理" ? printData.tableData[0].providerAddress : printData.orderName === "销售出库单" ? printData.tableData[0].linkAdress : printData.orderName === "发货通知单" ? printData.tableData[0].linkAdress : printData.orderName === "直接调拨单" ? printData.tableData[0].linkAdress : printData.orderName === '分步式调出单' ? printData.tableData[0].linkAdress : '' }}</span>
|
||||
</div>
|
||||
<div style="display: flex; flex-direction: inherit;">
|
||||
<div style="margin-bottom:5px;" v-if='printData.orderName === "采购备料订单"'>
|
||||
<span style='font-weight: bold;margin-right: 3px;'>供应商:</span>
|
||||
<span>{{ printData.tableData[0].supplierName }}</span>
|
||||
</div>
|
||||
<div style="margin-left: 4%;margin-bottom:5px;" v-if='printData.orderName === "采购备料订单"'>
|
||||
<span style='font-weight: bold;margin-right: 3px;'>确认日期:</span>
|
||||
<span>{{ printData.tableData[0].confirmeDate }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex; flex-direction: inherit;">
|
||||
<div style="margin-right: 4%;margin-bottom:5px;" v-if='printData.orderName === "销售订单" || printData.orderName === "采购订单管理"'>
|
||||
<span style='font-weight: bold;margin-right: 3px;'>税率(%):</span>
|
||||
<span>{{ printData.orderName === "销售订单" ? printData.tableData[0].taxRate : printData.orderName === "采购订单管理" ? printData.tableData[0].taxRate : '' }}</span>
|
||||
</div>
|
||||
<div style="margin-bottom:5px;" v-if='printData.orderName === "销售订单" || printData.orderName === "采购订单管理" || printData.orderName === "销售退货订单"'>
|
||||
<span style='font-weight: bold;margin-right: 3px;'>币别:</span>
|
||||
<span>{{ printData.tableData[0].settlecurr ? printData.tableData[0].settlecurr :printData.tableData[0].settleCurrName }}</span>
|
||||
</div>
|
||||
<div style="margin-left: 4%;margin-bottom:5px;" v-if='printData.orderName === "销售订单"'>
|
||||
<span style='font-weight: bold;margin-right: 3px;'>收款条件:</span>
|
||||
<span>{{ printData.tableData[0].reccondition }}</span>
|
||||
</div>
|
||||
<div style="margin-left: 4%;margin-bottom:5px;" v-if='printData.orderName === "采购订单管理"'>
|
||||
<span style='font-weight: bold;margin-right: 3px;'>付款条件:</span>
|
||||
<span>{{ printData.tableData[0].paymentConditionName }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
本订单执行过程中如遇到任何国家或地方政策变化或分歧、争议,依据双方签订的合作协议/合同充分友好沟通协商解决。
|
||||
</div>
|
||||
<div style="font-size: 14px;margin-top:30px;margin-left:70px;">
|
||||
<div style="float: left;width:200pxmargin-left:40px;" v-if='printData.orderName === "生产用料清单"||printData.orderName === "委外用料清单"'>
|
||||
<div style='margin-bottom:5px'>
|
||||
<span
|
||||
style='width:70px;text-align: right;font-weight: bold;margin-right: 3px;margin-bottom:5px;'>
|
||||
打印时间:</span>
|
||||
<span>{{ new Date().toLocaleString() }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="float: left;width:120px;margin-left:100px;" v-if='printData.orderName === "生产用料清单"||printData.orderName === "委外用料清单"'>
|
||||
<div style='margin-bottom:5px'>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>发料人:</span>
|
||||
<span>{{ printData.tableData[0].approverName }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="float: left;width:200px;margin-left:80px;" v-if='printData.orderName === "生产用料清单"||printData.orderName === "委外用料清单"'>
|
||||
<div style='margin-bottom:5px'>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>领料人:</span>
|
||||
<span>{{ printData.tableData[0].approverName }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="float: left;max-width:250px;min-width:200px;margin-left:20px;" v-if='printData.orderName !== "生产用料清单" &&printData.orderName !== "委外用料清单" &&printData.orderName !== "采购订单管理"'>
|
||||
<div style='margin-bottom:5px'>
|
||||
<span
|
||||
style='width:70px;text-align: right;font-weight: bold;margin-right: 3px;margin-bottom:5px;'>
|
||||
创建人:</span>
|
||||
<span>{{ printData.tableData[0].createName }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>创建日期:</span>
|
||||
<span>{{ printData.tableData[0].createDate }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="float: left;max-width:250px;min-width:200px;margin-left:100px;" v-if="printData.orderName !== '采购订单管理' && printData.orderName !== '生产用料清单'">
|
||||
<div style='margin-bottom:5px'>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>审核人:</span>
|
||||
<span>{{ printData.tableData[0].checkName }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>审核日期:</span>
|
||||
<span v-if="printData.orderName === '采购备料订单'">{{ printData.tableData[0].createDate }}</span>
|
||||
<span v-else>{{ printData.tableData[0].checkDate }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="printData.orderName === '采购订单管理'" style='margin-left:-40px'>
|
||||
<div style="float: left;max-width:250px;min-width:200px;">
|
||||
<div style='margin-bottom:5px'>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>采购:</span>
|
||||
<span>{{ printData.tableData[0].purchaserName }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>日期:</span>
|
||||
<span>{{ printData.tableData[0].date }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="float: left;max-width:250px;min-width:200px;margin-left:50px;">
|
||||
<div style='margin-bottom:5px'>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>审核人:</span>
|
||||
<span>{{ printData.tableData[0].checkName }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>日期:</span>
|
||||
<span>{{ printData.tableData[0].checkDate }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="float: left;max-width:250px;min-width:200px;margin-left:50px;">
|
||||
<div style='margin-bottom:5px'>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>供应商确认:</span>
|
||||
<span>{{ printData.tableData[0].confirmerName }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span style='width:70px;text-align: right;font-weight: bold'>日期:</span>
|
||||
<span>{{ printData.tableData[0].confirmeDate }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { mapState } from 'vuex'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
thlist: ['No.', '采购订单号', '物料编码', '物料名称', '数量', '物料编码单位', '含税合计', '备注'],
|
||||
table: []
|
||||
}
|
||||
},
|
||||
props: {
|
||||
//如果不要这个显示就传那个标识 如果不要保存显示 就 btnType=['save'] 'disabled, de-disabled' --存在再集合里面就是 显示
|
||||
printData: {
|
||||
type: Object,
|
||||
default: function () {
|
||||
return {
|
||||
orderName: '订单',
|
||||
tableData: []
|
||||
}
|
||||
}
|
||||
},
|
||||
//这个区分不同单据的要素
|
||||
theadDate: {
|
||||
type: Array,
|
||||
default: function () {
|
||||
return []
|
||||
}
|
||||
},
|
||||
//这个区分不同单据的要素
|
||||
includeTage: {
|
||||
type: Array,
|
||||
default: function () {
|
||||
return []
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapState({
|
||||
// 取出页面标签
|
||||
userInfo: state => (state && state.user && state.user.userInfo ? state.user.userInfo : {})
|
||||
})
|
||||
},
|
||||
mounted() {}
|
||||
}
|
||||
</script>
|
||||
111
src/components/public/operaRecorde.vue
Normal file
@@ -0,0 +1,111 @@
|
||||
<!-- 操作记录 -->
|
||||
<template lang="">
|
||||
<div class="base-info-form-box">
|
||||
<el-form ref="form" :model="form" label-width="80px">
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="4">
|
||||
<div class="div-col">
|
||||
<el-form-item label="关闭人" class="item-bt-s">
|
||||
<el-input v-model="form.exchangeRate" placeholder=""></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="创建日期" class="item-bt-s item-date">
|
||||
<el-date-picker
|
||||
v-model="placeOrder"
|
||||
type="date"
|
||||
placeholder="年/月/日">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<div class="div-col col-2">
|
||||
<el-form-item label="最后修改人" class="item-bt-s" :required="true">
|
||||
<el-select v-model="saleOrigin" placeholder="请选择" @change="originSelect">
|
||||
<el-option
|
||||
style="font-size:12px;"
|
||||
v-for="item in saleOrigins"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="最后修改时间" class="item-bt-s" :required="true">
|
||||
<el-select v-model="salePart" placeholder="请选择" :disabled="isSaleOrigin" @change="partSelect">
|
||||
<el-option
|
||||
style="font-size:12px;"
|
||||
v-for="item in saleParts"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="提交时间" class="item-bt-s" :required="true">
|
||||
<el-select v-model="salePerson" placeholder="请选择" :disabled="isSalePart">
|
||||
<el-option
|
||||
style="font-size:12px;"
|
||||
v-for="item in salePersons"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<div class="div-col">
|
||||
<el-row :gutter="0">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="审核人" class="item-bt-s" :maxlength="50">
|
||||
<el-input v-model="form.express" maxlength="50"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="审核时间" class="item-bt-s">
|
||||
<el-input v-model="form.logisticsNumber" placeholder=""></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<div class="div-col">
|
||||
<el-form-item label="关闭人" class="item-bt-s">
|
||||
<el-input v-model="form.exchangeRate" placeholder=""></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="最后关闭时间" class="item-bt-s">
|
||||
<el-input v-model="form.taxAmount" placeholder="" :disabled="true"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否手工关闭" class="item-bt-s">
|
||||
<el-input v-model="form.taxAmount" placeholder="" :disabled="true"></el-input>
|
||||
</el-form-item>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="4"></el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
form:{
|
||||
orderNumber:'',
|
||||
express:'',
|
||||
logisticsNumber:'',
|
||||
expressNumber:'',
|
||||
contactNumber:'',
|
||||
customAddress:'',
|
||||
exchangeRate:'',
|
||||
taxAmount:'',
|
||||
amountOfMoney:'',
|
||||
priceTaxTotal:''
|
||||
},
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
<style lang="">
|
||||
|
||||
</style>
|
||||
2768
src/components/public/printviews/prtMoled.vue
Normal file
849
src/components/public/printviews/prtMoledop.vue
Normal file
@@ -0,0 +1,849 @@
|
||||
<!-- 打印摸版 -->
|
||||
<template lang="">
|
||||
<div>
|
||||
<div v-for="(idsItem, num) in printData.ids" :key="num">
|
||||
<div>
|
||||
<!-- 表头 -->
|
||||
<div
|
||||
style="
|
||||
width: 100%;
|
||||
overflow-y: hidden;
|
||||
text-align: center;
|
||||
overflow: hidden;
|
||||
"
|
||||
:id="'companyTilte' + num"
|
||||
>
|
||||
<div style="width: 100%; text-align: center">
|
||||
<span
|
||||
style="font-size: 18px; margin-top: 30px"
|
||||
v-if="
|
||||
printData.orderName !== '送货单' &&
|
||||
printData.orderName !== '备料订单'
|
||||
"
|
||||
>{{
|
||||
userInfo.identity == 1 || userInfo.identity == 3
|
||||
? userInfo.orgName
|
||||
: userInfo.customerName
|
||||
}}</span
|
||||
>
|
||||
|
||||
<h1
|
||||
style="
|
||||
font-size: 20px;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 20px;
|
||||
"
|
||||
>
|
||||
{{ printData.orderName }}
|
||||
</h1>
|
||||
<hr style="border: 1px soild #000" />
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
:id="'headhtml' + num"
|
||||
style="
|
||||
width: 100%;
|
||||
overflow-y: hidden;
|
||||
text-align: center;
|
||||
overflow: hidden;
|
||||
"
|
||||
>
|
||||
<!--生产用料清单-->
|
||||
<div
|
||||
style="
|
||||
margin: 20px 0px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
"
|
||||
v-if="printData.orderName === '生产用料清单'"
|
||||
>
|
||||
<div
|
||||
id="head1"
|
||||
style="margin-bottom: 3px; word-break: break-all"
|
||||
>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>销售订单号:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].salBillNo
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>生产订单号:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].moBillNo
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-bottom: 3px; word-break: break-all">
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>物料编码:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].pMaterialNumber
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>物料名称:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].pMaterialName
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
id="head2"
|
||||
style="margin-bottom: 3px; word-break: break-all"
|
||||
>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>规格型号:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].pSpecification
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>生产订单备注:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].orderRemark
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-bottom: 3px; word-break: break-all">
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>生产部门:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].workShop
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>条码:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].barCode
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-bottom: 3px; word-break: break-all">
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>数量:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].number
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>期望交期:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].expectDate
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--委外用料清单-->
|
||||
<div
|
||||
style="
|
||||
margin: 20px 0px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
"
|
||||
v-if="printData.orderName === '委外用料清单'"
|
||||
>
|
||||
<div
|
||||
id="head1"
|
||||
style="margin-bottom: 3px; word-break: break-all"
|
||||
>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>销售订单号:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].salBillNo
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>委外订单号:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].outSourcOrderNo
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-bottom: 3px; word-break: break-all">
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>物料编码:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].pMaterialNumber
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>物料名称:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].pMaterialName
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
id="head2"
|
||||
style="margin-bottom: 3px; word-break: break-all"
|
||||
>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>规格型号:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].pSpecification
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>委外订单备注:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].orderRemark
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-bottom: 3px; word-break: break-all">
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>供应商:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].supplier
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>条码:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].barCode
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin-bottom: 3px; word-break: break-all">
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>数量:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].number
|
||||
}}</span>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
overflow: hidden;
|
||||
width: 350px;
|
||||
float: left;
|
||||
margin-left: 20px;
|
||||
text-align: left;
|
||||
max-height: 55px;
|
||||
"
|
||||
>
|
||||
<label
|
||||
style="
|
||||
width: 50px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
text-align: left;
|
||||
"
|
||||
>期望交期:</label
|
||||
>
|
||||
<span style="font-size: 14px">{{
|
||||
printData.tableData[num][0].expectDate
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 表体 -->
|
||||
<div :id="'div2' + num">
|
||||
<!-- v-for="(printDataItem, printDataIndex) in printData.tableData[num]" :key="printDataIndex" -->
|
||||
<table
|
||||
border="1"
|
||||
width="100%"
|
||||
style="
|
||||
border: solid 1px #999999;
|
||||
border-collapse: collapse;
|
||||
table-layout: fixed;
|
||||
word-wrap: break-all;
|
||||
"
|
||||
>
|
||||
<thead>
|
||||
<!--表头 -->
|
||||
<tr>
|
||||
<th
|
||||
style="
|
||||
padding: 6px 0;
|
||||
font-weight: bold;
|
||||
font-size: 13px;
|
||||
border: solid 1px #999999;
|
||||
"
|
||||
v-for="(itm, index) in theadDate"
|
||||
:key="itm.thName"
|
||||
:style="{ width: itm.width }"
|
||||
>
|
||||
{{ itm.thName }}
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- <tr v-for="(it, ind) in printData.tableData" :key="ind"></tr> -->
|
||||
<!--表体 -->
|
||||
|
||||
<tr
|
||||
v-for="(it, ind) in printData.tableData[num]"
|
||||
:key="ind"
|
||||
>
|
||||
<td
|
||||
style="
|
||||
font-size: 12px;
|
||||
color: #303133;
|
||||
padding: 3px 1px;
|
||||
word-wrap: break-word;
|
||||
word-break: break-all;
|
||||
border: solid 1px #999999;
|
||||
"
|
||||
v-for="(itm, index) in theadDate"
|
||||
:key="itm.field"
|
||||
:style="{ 'text-align': itm.textAlign }"
|
||||
>
|
||||
{{
|
||||
itm.field !== ''
|
||||
? it[itm.field]
|
||||
: ind + 1
|
||||
}}
|
||||
</td>
|
||||
</tr>
|
||||
<!--合计 -->
|
||||
<tr>
|
||||
<td
|
||||
colspan="7"
|
||||
style="
|
||||
font-size: 12px;
|
||||
color: #303133;
|
||||
padding: 6px 0;
|
||||
word-wrap: break-word;
|
||||
word-break: break-all;
|
||||
text-align: center;
|
||||
border: solid 1px #999999;
|
||||
"
|
||||
>
|
||||
合计
|
||||
</td>
|
||||
<td
|
||||
style="
|
||||
font-size: 10px;
|
||||
color: #303133;
|
||||
padding: 3px 0;
|
||||
word-wrap: break-word;
|
||||
word-break: break-all;
|
||||
text-align: right;
|
||||
border: solid 1px #999999;
|
||||
"
|
||||
>
|
||||
<span
|
||||
style="color: blue; text-align: right"
|
||||
tdata="AllSum"
|
||||
format="#,##0.00"
|
||||
tindex="8"
|
||||
>######</span
|
||||
>
|
||||
</td>
|
||||
<td
|
||||
style="
|
||||
font-size: 10px;
|
||||
color: #303133;
|
||||
padding: 3px 0;
|
||||
word-wrap: break-word;
|
||||
word-break: break-all;
|
||||
text-align: right;
|
||||
border: solid 1px #999999;
|
||||
"
|
||||
>
|
||||
<span
|
||||
style="color: blue; text-align: right"
|
||||
tdata="AllSum"
|
||||
format="#,##0.00"
|
||||
tindex="9"
|
||||
>######</span
|
||||
>
|
||||
</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- 表尾-->
|
||||
<div
|
||||
style="
|
||||
width: 784px;
|
||||
overflow-y: hidden;
|
||||
text-align: left;
|
||||
overflow: hidden;
|
||||
"
|
||||
:id="'foothtml' + num"
|
||||
>
|
||||
<!-- 'foothtml'+ -->
|
||||
<div
|
||||
style="
|
||||
font-size: 14px;
|
||||
color: #303133;
|
||||
margin-top: 20px;
|
||||
"
|
||||
v-if="printData.tableData.length > 0"
|
||||
>
|
||||
<div
|
||||
style="width 100%; font-weight: bold;text-align:center"
|
||||
>
|
||||
本订单执行过程中如遇到任何国家或地方政策变化或分歧、争议,依据双方签订的合作协议/合同充分友好沟通协商解决。
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
font-size: 14px;
|
||||
margin-top: 30px;
|
||||
margin-left: 70px;
|
||||
"
|
||||
>
|
||||
<div
|
||||
style="float: left;width:200pxmargin-left:40px;"
|
||||
>
|
||||
<div style="margin-bottom: 5px">
|
||||
<span
|
||||
style="
|
||||
width: 70px;
|
||||
text-align: right;
|
||||
font-weight: bold;
|
||||
margin-right: 3px;
|
||||
margin-bottom: 5px;
|
||||
"
|
||||
>
|
||||
打印时间:</span
|
||||
>
|
||||
<span>{{
|
||||
new Date().toLocaleString()
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
float: left;
|
||||
width: 120px;
|
||||
margin-left: 100px;
|
||||
"
|
||||
>
|
||||
<div style="margin-bottom: 5px">
|
||||
<span
|
||||
style="
|
||||
width: 70px;
|
||||
text-align: right;
|
||||
font-weight: bold;
|
||||
"
|
||||
>发料人:</span
|
||||
>
|
||||
<span>{{
|
||||
printData.tableData[num][0].approverName
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
float: left;
|
||||
width: 120px;
|
||||
margin-left: 80px;
|
||||
"
|
||||
>
|
||||
<div style="margin-bottom: 5px">
|
||||
<span
|
||||
style="
|
||||
width: 70px;
|
||||
text-align: right;
|
||||
font-weight: bold;
|
||||
"
|
||||
>领料人:</span
|
||||
>
|
||||
<span>{{
|
||||
printData.tableData[num][0].approverName
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { mapState } from 'vuex';
|
||||
export default {
|
||||
data() {
|
||||
return {};
|
||||
},
|
||||
props: {
|
||||
//如果不要这个显示就传那个标识 如果不要保存显示 就 btnType=['save'] 'disabled, de-disabled' --存在再集合里面就是 显示
|
||||
printData: {
|
||||
type: Object,
|
||||
default: function () {
|
||||
return {
|
||||
orderName: '订单',
|
||||
tableData: [],
|
||||
ids: [],
|
||||
};
|
||||
},
|
||||
},
|
||||
//这个区分不同单据的要素
|
||||
theadDate: {
|
||||
type: Array,
|
||||
default: function () {
|
||||
return [];
|
||||
},
|
||||
},
|
||||
//这个区分不同单据的要素
|
||||
includeTage: {
|
||||
type: Array,
|
||||
default: function () {
|
||||
return [];
|
||||
},
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
...mapState({
|
||||
// 取出页面标签
|
||||
userInfo: (state) =>
|
||||
state && state.user && state.user.userInfo
|
||||
? state.user.userInfo
|
||||
: {},
|
||||
}),
|
||||
},
|
||||
mounted() {},
|
||||
};
|
||||
</script>
|
||||
356
src/components/public/toolBtn/toolBtn.scss
Normal file
@@ -0,0 +1,356 @@
|
||||
.page-top {
|
||||
padding: 0 24px;
|
||||
border-bottom: 1px solid #EAEEF1;
|
||||
|
||||
.s-p-t-g1::after {
|
||||
content: "";
|
||||
height: 16px;
|
||||
width: 1px;
|
||||
background: #CBCFD3;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 0%;
|
||||
transform: translateY(50%);
|
||||
}
|
||||
|
||||
.btn-flex {
|
||||
display: flex;
|
||||
height: 40px;
|
||||
|
||||
}
|
||||
|
||||
.s-p-t-g1 {
|
||||
padding-right: 24px;
|
||||
position: relative;
|
||||
|
||||
.el-button:first-child {
|
||||
color: #606266;
|
||||
margin-right: 8px;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 8px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
font-size: 12px;
|
||||
|
||||
.iconfont-mg {
|
||||
margin-right: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.s-p-t-g2::after {
|
||||
content: "";
|
||||
height: 16px;
|
||||
width: 1px;
|
||||
background: #CBCFD3;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 0%;
|
||||
transform: translateY(50%);
|
||||
}
|
||||
|
||||
.s-p-t-g2 {
|
||||
padding: 0 24px;
|
||||
position: relative;
|
||||
|
||||
.el-button:first-child {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 8px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.s-p-t-g3::after {
|
||||
content: "";
|
||||
height: 16px;
|
||||
width: 1px;
|
||||
background: #CBCFD3;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 0%;
|
||||
transform: translateY(50%);
|
||||
}
|
||||
|
||||
.s-p-t-g3 {
|
||||
padding: 0 24px;
|
||||
position: relative;
|
||||
|
||||
.el-button:first-child {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 8px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.s-p-t-g4::after {
|
||||
content: "";
|
||||
height: 16px;
|
||||
width: 1px;
|
||||
background: #CBCFD3;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 0%;
|
||||
transform: translateY(50%);
|
||||
}
|
||||
|
||||
.s-p-t-g4 {
|
||||
padding: 0 24px;
|
||||
position: relative;
|
||||
|
||||
.el-button:first-child {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 8px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
margin-right: 8px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.s-p-t-g5 {
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 0 7px 24px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
margin-right: 24px;
|
||||
font-size: 12px;
|
||||
|
||||
.iconfont-mg {
|
||||
margin-right: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.s-p-t-g7::after {
|
||||
content: "";
|
||||
height: 16px;
|
||||
width: 1px;
|
||||
background: #CBCFD3;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 0%;
|
||||
transform: translateY(50%);
|
||||
}
|
||||
|
||||
.s-p-t-g7 {
|
||||
padding: 0 24px;
|
||||
position: relative;
|
||||
|
||||
.el-button:first-child {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 8px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.s-p-t-g8::after,
|
||||
.s-p-t-g12::after {
|
||||
content: "";
|
||||
height: 16px;
|
||||
width: 1px;
|
||||
background: #CBCFD3;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 0%;
|
||||
transform: translateY(50%);
|
||||
}
|
||||
|
||||
.s-p-t-g8,
|
||||
.s-p-t-g12 {
|
||||
padding: 0 24px;
|
||||
position: relative;
|
||||
|
||||
.el-button:first-child {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 8px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.s-p-t-g9::after,
|
||||
.s-p-t-g6::after {
|
||||
content: "";
|
||||
height: 16px;
|
||||
width: 1px;
|
||||
background: #CBCFD3;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 0%;
|
||||
transform: translateY(50%);
|
||||
}
|
||||
|
||||
.s-p-t-g9,
|
||||
.s-p-t-g6 {
|
||||
padding: 0 24px;
|
||||
position: relative;
|
||||
|
||||
.el-button:first-child {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 8px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.s-p-t-g11,
|
||||
.s-p-t-g10::after {
|
||||
content: "";
|
||||
height: 16px;
|
||||
width: 1px;
|
||||
background: #CBCFD3;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
right: 0%;
|
||||
transform: translateY(50%);
|
||||
}
|
||||
|
||||
.s-p-t-g11,
|
||||
.s-p-t-g10 {
|
||||
padding: 0 24px;
|
||||
position: relative;
|
||||
|
||||
.el-button:first-child {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.el-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
padding: 7px 8px;
|
||||
border: none;
|
||||
color: #606266;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.el-button:hover {
|
||||
color: #4178D5;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep(.el-button:visited) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:focus) {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
::v-deep(.el-button:hover) {
|
||||
background-color: #fff;
|
||||
}
|
||||
574
src/components/public/toolBtn/toolBtn.vue
Normal file
@@ -0,0 +1,574 @@
|
||||
<!-- 页面顶部公共按钮 -->
|
||||
<template lang="">
|
||||
<div class="page-top">
|
||||
<el-button-group class="s-p-t-g1" v-if="btnType.includes('s-p-t-g11')">
|
||||
<el-button
|
||||
@click="actionhandel('edit')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
>修改</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g1" v-if="!btnType.includes('s-p-t-g1')">
|
||||
<el-button
|
||||
@click="actionhandel('add')"
|
||||
v-if="!btnType.includes('add')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
><span class="iconfont icon-tianjia iconfont-mg"></span
|
||||
>新增</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('save')"
|
||||
v-if="!btnType.includes('save')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
><span class="iconfont icon-baocun iconfont-mg"></span
|
||||
>保存</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('copy')"
|
||||
v-if="!btnType.includes('copy')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
><span class="iconfont icon-fuzhi iconfont-mg"></span
|
||||
>克隆</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g2" v-if="!btnType.includes('s-p-t-g2')">
|
||||
<el-button
|
||||
@click="actionhandel('submit')"
|
||||
v-if="!btnType.includes('submit')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
>提交</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('revoke')"
|
||||
v-if="!btnType.includes('revoke')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
>撤销</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g7" v-if="!btnType.includes('s-p-t-g7')">
|
||||
<el-button
|
||||
@click="actionhandel('push-order')"
|
||||
v-if="btnType.includes('push-order')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
>下单</el-button
|
||||
>
|
||||
<el-button
|
||||
ref="getRefresh"
|
||||
@click="actionhandel('batch-edit')"
|
||||
v-if="btnType.includes('batch-edit')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
>批量修改</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g6" v-if="btnType.includes('s-p-t-g6')">
|
||||
<el-button
|
||||
@click="actionhandel('querenorder')"
|
||||
v-if="!btnType.includes('querenorder')"
|
||||
>确认订单</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('scruku')"
|
||||
v-if="!btnType.includes('scruku')"
|
||||
>生产入库</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('songhuo')"
|
||||
v-if="!btnType.includes('songhuo')"
|
||||
>送货</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g3" v-if="!btnType.includes('s-p-t-g3')">
|
||||
<el-button
|
||||
@click="actionhandel('audit')"
|
||||
v-if="!btnType.includes('audit')"
|
||||
:disabled="isDisable || isExmaineTop == 1"
|
||||
:class="{ isDisable: isDisable || isExmaineTop == 1 }"
|
||||
>审核</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('de-approval')"
|
||||
v-if="!btnType.includes('de-approval')"
|
||||
:disabled="isDisable || isExmaineTop == 1"
|
||||
:class="{ isDisable: isDisable || isExmaineTop == 1 }"
|
||||
>反审</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('setIntoNum')"
|
||||
v-if="btnType.includes('setIntoNum')"
|
||||
>调整入库数量</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('Receiving')"
|
||||
v-if="btnType.includes('Receiving')"
|
||||
>收货</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('delet')"
|
||||
v-if="!btnType.includes('delete')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
>删除</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('gys-close')"
|
||||
v-if="btnType.includes('gys-close')"
|
||||
>关闭</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('gys-declose')"
|
||||
v-if="btnType.includes('gys-declose')"
|
||||
>反关闭</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g8" v-if="!btnType.includes('s-p-t-g8')">
|
||||
<el-button
|
||||
@click="actionhandel('out-export')"
|
||||
v-if="btnType.includes('out-export')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
>导出</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g4" v-if="!btnType.includes('s-p-t-g4')">
|
||||
<div class="btn-flex">
|
||||
<el-button
|
||||
@click="actionhandel('push-down')"
|
||||
v-if="!btnType.includes('push-down')"
|
||||
:disabled="isDisable || isExmaineTop == 1"
|
||||
:class="{ isDisable: isDisable || isExmaineTop == 1 }"
|
||||
>下推</el-button
|
||||
>
|
||||
<el-dropdown
|
||||
v-if="!btnType.includes('operation')"
|
||||
:trigger="click"
|
||||
:hide-on-click="true"
|
||||
:disabled="isDisable || isExmaineTop == 1"
|
||||
@visible-change="dropDownEnter"
|
||||
placement="bottom-start"
|
||||
class="btn-action"
|
||||
>
|
||||
<span
|
||||
class="el-dropdown-link"
|
||||
:class="{ isDisable: isDisable || isExmaineTop == 1 }"
|
||||
>
|
||||
操作<i class="iconfont icon-gengduo f-12"> </i
|
||||
></span>
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu class="insert-row" style="padding: 0">
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('disabled')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="btnType.includes('disabled')"
|
||||
>禁用</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('de-disabled')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="btnType.includes('de-disabled')"
|
||||
>反禁用</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('close')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('close')"
|
||||
>关闭</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('de-close')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('de-close')"
|
||||
>反关闭</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
v-if="!btnType.includes('export')"
|
||||
>
|
||||
<el-dropdown
|
||||
placement="right-start"
|
||||
trigger="hover"
|
||||
style="
|
||||
line-height: 36px;
|
||||
text-align: center;
|
||||
padding-left: 14px;
|
||||
"
|
||||
>
|
||||
<span class="el-dropdown-link f-12 zdyspan"
|
||||
>导出<i
|
||||
class="iconfont icon-youbian f-12"
|
||||
></i
|
||||
></span>
|
||||
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<el-dropdown-item
|
||||
index="2-4-1"
|
||||
@click="
|
||||
actionhandel('list-export')
|
||||
"
|
||||
v-if="
|
||||
!btnType.includes(
|
||||
'list-export'
|
||||
)
|
||||
"
|
||||
>按列表字段导出</el-dropdown-item
|
||||
>
|
||||
<el-dropdown-item
|
||||
index="2-4-2"
|
||||
@click="
|
||||
actionhandel('all-export')
|
||||
"
|
||||
v-if="
|
||||
!btnType.includes(
|
||||
'all-export'
|
||||
)
|
||||
"
|
||||
>按全部字段导出</el-dropdown-item
|
||||
>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown>
|
||||
</el-dropdown-item>
|
||||
<!-- 新增盘点导入 -->
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
v-if="btnType.includes('out-import')"
|
||||
click.stop
|
||||
>
|
||||
<el-dropdown
|
||||
style="
|
||||
line-height: 36px;
|
||||
text-align: center;
|
||||
padding-left: 14px;
|
||||
"
|
||||
>
|
||||
<!-- https://login.ops.f2b211.com/api/v1/TrayCount/Import -->
|
||||
<!--https://proxy.ops.f2b211.com/api/ -->
|
||||
<!-- https://dev.proxy.ops.f2b211.com/api/ -->
|
||||
<el-upload
|
||||
:action="httpUrl"
|
||||
:on-success="handleSuccess"
|
||||
:on-error="handleError"
|
||||
accept=".xlsx,.xls"
|
||||
:on-exceed="handleExceed"
|
||||
ref="upload"
|
||||
:limit="1"
|
||||
:headers="{
|
||||
Authorization: token,
|
||||
}"
|
||||
:show-file-list="false"
|
||||
>
|
||||
<span
|
||||
class="el-dropdown-link f-12 zdyspan"
|
||||
>导入</span
|
||||
>
|
||||
</el-upload>
|
||||
</el-dropdown>
|
||||
</el-dropdown-item>
|
||||
<!-- 新增盘点下载导入模板 -->
|
||||
<!-- https://opstestfile.f2b211.com/temp_pandian.xlsx -->
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
click.stop
|
||||
v-if="
|
||||
btnType.includes('download-import-template')
|
||||
"
|
||||
>
|
||||
<el-dropdown
|
||||
style="
|
||||
line-height: 36px;
|
||||
text-align: center;
|
||||
padding-left: 14px;
|
||||
"
|
||||
>
|
||||
<!-- https://opsfile.f2b211.com/temp_pandian.xlsx -->
|
||||
<!-- https://opstestfile.f2b211.com/temp_pandian.xlsx -->
|
||||
<a
|
||||
class="el-dropdown-link f-12 zdyspan"
|
||||
href="https://opsfile.f2b211.com/temp_pandian.xlsx"
|
||||
download="p.xlsx"
|
||||
style="color: #606266"
|
||||
>
|
||||
下载导入模板
|
||||
</a>
|
||||
</el-dropdown>
|
||||
</el-dropdown-item>
|
||||
|
||||
<el-dropdown-item class="dropdownselect">
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
@click="actionhandel('print-aterial-list')"
|
||||
v-if="
|
||||
!btnType.includes('print-aterial-list')
|
||||
"
|
||||
>打印用料清单</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('finish')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('finish')"
|
||||
>完工</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('close-case')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('close-case')"
|
||||
>结案</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('de-excute-start')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('de-excute-start')"
|
||||
>反执行至开工</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('de-excute-finish')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('de-excute-finish')"
|
||||
>反执行至完工</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('print-brower')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('print-brower')"
|
||||
>打印/预览</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<!-- 7.5 jx BOM 正查 反查 -->
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('just-check')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="btnType.includes('just-check')"
|
||||
>BOM正查</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('back-check')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="btnType.includes('back-check')"
|
||||
>BOM反查</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown>
|
||||
<el-dropdown
|
||||
v-if="!btnType.includes('query')"
|
||||
trigger="click"
|
||||
:hide-on-click="true"
|
||||
@visible-change="dropDownEnter"
|
||||
placement="bottom-start"
|
||||
:disabled="isDisable"
|
||||
class="btn-action"
|
||||
>
|
||||
<span
|
||||
class="el-dropdown-link"
|
||||
:class="{ isDisable: isDisable }"
|
||||
>
|
||||
查询<i class="iconfont icon-gengduo f-12"> </i
|
||||
></span>
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('up-check')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('up-check')"
|
||||
>上查</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('down-check')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('down-check')"
|
||||
>下查</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item
|
||||
class="dropdownselect"
|
||||
@click="actionhandel('exDetails')"
|
||||
>
|
||||
<span
|
||||
style="margin-right: 4px"
|
||||
v-if="!btnType.includes('exDetails')"
|
||||
>查看流程图</span
|
||||
>
|
||||
</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</template>
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g12" v-if="btnType.includes('s-p-t-g12')">
|
||||
<el-button
|
||||
@click="actionhandel('adjustInventory')"
|
||||
v-if="btnType.includes('adjustInventory')"
|
||||
>库存调整</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('addMaterial')"
|
||||
v-if="btnType.includes('addMaterial')"
|
||||
>添加物料</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('dayin')"
|
||||
v-if="!btnType.includes('dayin')"
|
||||
>打印</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="actionhandel('daochu')"
|
||||
v-if="!btnType.includes('daochu')"
|
||||
>导出</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g5" v-if="!btnType.includes('s-p-t-g5')">
|
||||
<el-button
|
||||
ref="getRefresh"
|
||||
@click="actionhandel('refresh')"
|
||||
v-if="!btnType.includes('refresh')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
><span class="iconfont icon-shuaxin iconfont-mg"></span
|
||||
>刷新</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group class="s-p-t-g9" v-if="!btnType.includes('s-p-t-g9')">
|
||||
<el-button
|
||||
ref="getRefresh"
|
||||
@click="actionhandel('global-refresh')"
|
||||
v-if="btnType.includes('global-refresh')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
><span class="iconfont icon-shuaxin iconfont-mg"></span
|
||||
>全局刷新</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
<el-button-group
|
||||
class="s-p-t-g10"
|
||||
v-if="!btnType.includes('s-p-t-g10')"
|
||||
>
|
||||
<el-button
|
||||
ref="getRefresh"
|
||||
@click="actionhandel('tick-refresh')"
|
||||
v-if="btnType.includes('tick-refresh')"
|
||||
:disabled="isDisable"
|
||||
:class="{ isDisable: isDisable }"
|
||||
><span class="iconfont icon-shuaxin iconfont-mg"></span
|
||||
>勾选刷新</el-button
|
||||
>
|
||||
</el-button-group>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
name: 'toolBtn',
|
||||
};
|
||||
</script>
|
||||
<script setup>
|
||||
import { toRefs, defineComponent, watch, ref } from 'vue';
|
||||
import { ElMessage } from 'element-plus';
|
||||
const props = defineProps({
|
||||
btnType: {
|
||||
type: Array,
|
||||
default: function () {
|
||||
return [];
|
||||
},
|
||||
},
|
||||
isDisable: {
|
||||
type: Boolean,
|
||||
default: function () {
|
||||
return false;
|
||||
},
|
||||
},
|
||||
isExmaineTop: {
|
||||
type: Number,
|
||||
},
|
||||
});
|
||||
const companyId = ref(localStorage.getItem('companyId') || 1);
|
||||
const token = ref(localStorage.getItem('userToken'));
|
||||
const httpUrl = ref(
|
||||
`https://proxy.ops.f2b211.com/api/v1/TrayCount/Import?c=${companyId.value}`
|
||||
);
|
||||
const emits = defineEmits(['actionhandel']);
|
||||
const { isDisable, isExmaineTop, btnType } = toRefs(props);
|
||||
const upload = ref(null);
|
||||
|
||||
const actionhandel = (type) => {
|
||||
emits('actionhandel', type); // type 代表操作类型 type === add 或者 copy 或者... 代表操作状态
|
||||
};
|
||||
|
||||
const handleSuccess = (res) => {
|
||||
upload.value.clearFiles();
|
||||
if (res.status === 200) {
|
||||
ElMessage.success('数据导入成功!');
|
||||
} else {
|
||||
ElMessage.error(res.message);
|
||||
}
|
||||
};
|
||||
const handleError = (res) => {
|
||||
upload.value.clearFiles();
|
||||
ElMessage.error(res.message);
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
@import './toolBtn.scss';
|
||||
|
||||
.isDisable {
|
||||
color: var(--el-text-color-placeholder) !important;
|
||||
cursor: not-allowed !important;
|
||||
}
|
||||
</style>
|
||||
95
src/main.js
Normal file
@@ -0,0 +1,95 @@
|
||||
import { createApp } from 'vue';
|
||||
import App from './App.vue';
|
||||
import router from './router';
|
||||
import store from './store';
|
||||
import Request from '@/utils/request';
|
||||
import '@/router/permission.js';
|
||||
import '@/assets/font/iconfont.css';
|
||||
import { ElMessage } from 'element-plus';
|
||||
import { defineRule, configure } from 'vee-validate';
|
||||
import all from '@vee-validate/rules';
|
||||
import allValid from '@/utils/validate';
|
||||
import 'element-plus/dist/index.css';
|
||||
import '@/assets/style/global.scss';
|
||||
import ElementPlus from 'element-plus';
|
||||
import htmlToPdf from '@/utils/htmlToPdf';
|
||||
import zhCn from 'element-plus/es/locale/lang/zh-cn';
|
||||
import {
|
||||
toolBtn,
|
||||
InputMini,
|
||||
operaRecorde,
|
||||
DetailsOperation,
|
||||
PrintModel,
|
||||
prtMoled,
|
||||
} from '@/components/index';
|
||||
import 'xe-utils';
|
||||
import VXETable from 'vxe-table';
|
||||
import 'vxe-table/lib/style.css';
|
||||
import 'font-awesome/css/font-awesome.css';
|
||||
|
||||
// import
|
||||
import Clipboard from 'clipboard';
|
||||
configure({
|
||||
validateOnBlur: true, // controls if `blur` events should trigger validation with `handleChange` handler
|
||||
validateOnChange: true, // controls if `change` events should trigger validation with `handleChange` handler
|
||||
validateOnInput: false, // controls if `input` events should trigger validation with `handleChange` handler
|
||||
validateOnModelUpdate: true, // controls if `update:modelValue` events should trigger validation with `handleChange` handler
|
||||
});
|
||||
Object.keys(all).forEach((rule) => {
|
||||
defineRule(rule, all[rule]);
|
||||
});
|
||||
Object.keys(allValid).forEach((rule) => {
|
||||
defineRule(rule, allValid[rule]);
|
||||
});
|
||||
|
||||
const app = createApp(App);
|
||||
// 全局注册组件
|
||||
app.component('toolBtn', toolBtn);
|
||||
app.component('InputMini', InputMini);
|
||||
app.component('operaRecorde', operaRecorde);
|
||||
app.component('DetailsOperation', DetailsOperation);
|
||||
app.component('PrintModel', PrintModel);
|
||||
app.component('prtMoled', prtMoled);
|
||||
|
||||
app.use(store);
|
||||
app.use(router);
|
||||
app.use(htmlToPdf);
|
||||
app.use(VXETable);
|
||||
// 化汉
|
||||
app.use(ElementPlus, {
|
||||
locale: zhCn,
|
||||
});
|
||||
|
||||
app.config.globalProperties.$clipboard = Clipboard;
|
||||
app.config.globalProperties.$http = new Request();
|
||||
app.config.globalProperties.$message = ElMessage;
|
||||
app.config.globalProperties.$close = function () {
|
||||
store.dispatch('topNavTag/close');
|
||||
};
|
||||
app.mount('#app');
|
||||
|
||||
// app.on('ready',function() {
|
||||
// mainwindow = new BrowserWindow({
|
||||
// width: 400,
|
||||
// height: 300,
|
||||
// webPreferences: {
|
||||
// nodeIntegration : true,
|
||||
// contextIsolation: false
|
||||
// }
|
||||
// })
|
||||
|
||||
app.config.globalProperties.$topNavTagRename = function (title) {
|
||||
store.dispatch('topNavTag/rename', title);
|
||||
};
|
||||
|
||||
app.config.globalProperties.$commonData = {};
|
||||
|
||||
// 注册一个全局自定义指令 `v-allow` 配合路由meta.permission信息控制节点显示权限
|
||||
app.directive('allow', {
|
||||
mounted(el, binding) {
|
||||
const permission = binding.instance.$route.meta.permission;
|
||||
if (!permission.includes(binding.value)) {
|
||||
el.parentNode.removeChild(el);
|
||||
}
|
||||
},
|
||||
});
|
||||
54
src/router/index.js
Normal file
@@ -0,0 +1,54 @@
|
||||
import { createRouter, createWebHistory } from 'vue-router';
|
||||
import Layout from '@/components/layout/index.vue';
|
||||
|
||||
export const staticRoutes = [];
|
||||
|
||||
const systemRoutes = [
|
||||
{
|
||||
path: '/',
|
||||
name: 'Main',
|
||||
component: Layout,
|
||||
meta: {
|
||||
title: '首页',
|
||||
icon: 'icon-cangku',
|
||||
},
|
||||
hidden: true,
|
||||
redirect: '/index',
|
||||
children: [
|
||||
{
|
||||
path: '/index',
|
||||
name: 'Index',
|
||||
meta: {
|
||||
title: '首页',
|
||||
icon: 'el-icon-s-home',
|
||||
},
|
||||
component: () => import('../views/index/index.vue'),
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
path: '/login',
|
||||
name: 'Login',
|
||||
hidden: true,
|
||||
component: () => import('../views/login/index.vue'),
|
||||
meta: {
|
||||
title: '登录页',
|
||||
},
|
||||
},
|
||||
{
|
||||
path: '/404',
|
||||
name: '404',
|
||||
hidden: true,
|
||||
component: () => import('../views/public/404.vue'),
|
||||
meta: {
|
||||
title: '页面未找到',
|
||||
},
|
||||
},
|
||||
];
|
||||
|
||||
const router = createRouter({
|
||||
history: createWebHistory(import.meta.env.BASE_URL),
|
||||
routes: systemRoutes,
|
||||
});
|
||||
|
||||
export default router;
|
||||
102
src/router/permission.js
Normal file
@@ -0,0 +1,102 @@
|
||||
import router from '@/router';
|
||||
import store from '@/store';
|
||||
// import { title as settingsTitle } from '@/settings'
|
||||
import { checkSignedInStatus, setNotLoggedIn } from '@/utils/auth';
|
||||
|
||||
let loadedDynamicRoutes = false; // 是否已加载动态路由
|
||||
const whiteList = ['/login'];
|
||||
router.beforeEach(async (to, from, next) => {
|
||||
// 网页title跟随路由title
|
||||
document.title = 'OPS' + '-' + to.meta.title;
|
||||
if (checkSignedInStatus()) {
|
||||
// 身份验证通过
|
||||
if (to.path !== '/login') {
|
||||
// 不在登录页面,正常进入相应页面
|
||||
if (loadedDynamicRoutes) {
|
||||
store.dispatch('topNavTag/addNavTag', to); // 顶部页面标签处理
|
||||
console.log(
|
||||
to.path,
|
||||
'==================to,path================'
|
||||
);
|
||||
|
||||
next();
|
||||
} else {
|
||||
try {
|
||||
// 获取用户信息
|
||||
await store.dispatch('user/getUserInfo');
|
||||
|
||||
// 获取用户权限列表
|
||||
const authList = store.getters['user/getUserAuthList'];
|
||||
|
||||
// 获取用户有权限操作权限的路由
|
||||
const accessRoutes = await store.dispatch(
|
||||
'routes/generateRoutes',
|
||||
authList
|
||||
);
|
||||
|
||||
// 动态添加路由
|
||||
handleDynamicRoutes(accessRoutes).forEach((route) => {
|
||||
router.addRoute(route);
|
||||
});
|
||||
//404最后添加,不然会导致路由混乱
|
||||
router.addRoute({
|
||||
path: '/:pathMatch(.*)*',
|
||||
redirect: '/404',
|
||||
});
|
||||
// 设为已加载动态路由
|
||||
loadedDynamicRoutes = true;
|
||||
|
||||
// 确保动态添加的路由已经被完全加载上去并替换浏览器路由使浏览器没有浏览历史可回退
|
||||
next({
|
||||
...to,
|
||||
replace: true,
|
||||
});
|
||||
} catch (error) {
|
||||
// 设为非登录状态
|
||||
setNotLoggedIn();
|
||||
next('/login');
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 在登录页面
|
||||
next({
|
||||
path: '/',
|
||||
});
|
||||
}
|
||||
} else {
|
||||
// 身份验证不过
|
||||
// 设为非登录状态
|
||||
setNotLoggedIn();
|
||||
if (whiteList.indexOf(to.path) !== -1) {
|
||||
// 处于不用登录页面
|
||||
next();
|
||||
} else {
|
||||
next('/login');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// 处理动态路由
|
||||
function handleDynamicRoutes(routes) {
|
||||
const result = [];
|
||||
routes.forEach((route) => {
|
||||
if (route.children) {
|
||||
route.children = recursionReduce(route.children);
|
||||
}
|
||||
result.push(route);
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
// 递归还原
|
||||
function recursionReduce(data) {
|
||||
let result = [];
|
||||
data.forEach((it) => {
|
||||
if (it.children) {
|
||||
result = result.concat(recursionReduce(it.children));
|
||||
delete it.children;
|
||||
}
|
||||
result.push(it);
|
||||
});
|
||||
return result;
|
||||
}
|
||||
120
src/settings.js
Normal file
@@ -0,0 +1,120 @@
|
||||
module.exports = {
|
||||
"workbench.colorTheme": "One Monokai",
|
||||
"editor.fontSize": 14,
|
||||
"workbench.editor.enablePreview": true, //预览模式关闭
|
||||
"editor.formatOnSave": true, // #每次保存的时候自动格式化
|
||||
// 自动修复
|
||||
"editor.codeActionsOnSave": {
|
||||
"source.fixAll.eslint": true,
|
||||
},
|
||||
"eslint.enable": true, //是否开启vscode的eslint
|
||||
// 配置 ESLint 检查的文件类型
|
||||
"eslint.validate": [
|
||||
"javascript",
|
||||
"vue",
|
||||
"html"
|
||||
],
|
||||
"eslint.options": { //指定vscode的eslint所处理的文件的后缀
|
||||
"extensions": [
|
||||
".js",
|
||||
".vue",
|
||||
".ts",
|
||||
".tsx"
|
||||
]
|
||||
},
|
||||
"files.associations": {
|
||||
"*.wpy": "vue",
|
||||
"*.wxml": "wxml",
|
||||
"*.cjson": "jsonc",
|
||||
"*.wxss": "css",
|
||||
"*.wxs": "javascript",
|
||||
"*.html": "html"
|
||||
},
|
||||
"emmet.includeLanguages": {
|
||||
"wxml": "html"
|
||||
},
|
||||
"minapp-vscode.disableAutoConfig": true,
|
||||
// vscode默认启用了根据文件类型自动设置tabsize的选项
|
||||
"editor.detectIndentation": false,
|
||||
// 重新设定tabsize
|
||||
"editor.tabSize": 2,
|
||||
// #去掉代码结尾的分号
|
||||
"prettier.semi": false,
|
||||
// #使用单引号替代双引号
|
||||
"prettier.singleQuote": true,
|
||||
// #让函数(名)和后面的括号之间加个空格
|
||||
"javascript.format.insertSpaceBeforeFunctionParenthesis": true,
|
||||
// #让vue中的js按编辑器自带的ts格式进行格式化
|
||||
"vetur.format.defaultFormatter.js": "vscode-typescript",
|
||||
"git.enableSmartCommit": true,
|
||||
"editor.quickSuggestions": {
|
||||
"strings": true
|
||||
},
|
||||
//一定要在vutur.defaultFormatterOptions参数中设置,单独修改prettier扩展的设置是无法解决这个问题的,因为perttier默认忽略了vue文件(事实上从忽略列表移除vue也不能解决这个问题)
|
||||
"vetur.format.defaultFormatterOptions": {
|
||||
|
||||
"prettier": {
|
||||
"semi": false, // 格式化不加分号
|
||||
"singleQuote": true, // 格式化以单引号为主
|
||||
},
|
||||
"js-beautify-html": {
|
||||
// force-aligned | force-expand-multiline
|
||||
"wrap_attributes": "force-aligned"
|
||||
},
|
||||
"prettyhtml": {
|
||||
"printWidth": 100,
|
||||
"singleQuote": false,
|
||||
"wrapAttributes": false,
|
||||
"sortAttributes": true
|
||||
},
|
||||
},
|
||||
// 插件KoroFileHeader
|
||||
// 文件头部注释-快捷键crtl+alt+i(window),ctrl+cmd+t (mac)
|
||||
"fileheader.customMade": {
|
||||
"Descripttion": "",
|
||||
//"version": "",
|
||||
"Author": "voanit",
|
||||
"Date": "Do not edit",
|
||||
"LastEditors": "voanit",
|
||||
"LastEditTime": "Do not Edit"
|
||||
},
|
||||
//函数注释-快捷键ctrl+alt+t (window), ctrl+alt+t(mac)
|
||||
"fileheader.cursorMode": {
|
||||
"name": "",
|
||||
// "test": "test font",
|
||||
// "msg": "",
|
||||
"param": "",
|
||||
"return": ""
|
||||
},
|
||||
//安装live Server插件
|
||||
"liveServer.settings.donotVerifyTags": true,
|
||||
"liveServer.settings.donotShowInfoMsg": true,
|
||||
"liveServer.settings.NoBrowser": true,
|
||||
"liveServer.settings.CustomBrowser": "chrome", //设置默认打开的浏览器
|
||||
"liveServer.settings.host": "127.0.0.1",
|
||||
"liveServer.settings.port": 5000, //设置本地服务的端口号
|
||||
"liveServer.settings.root": "/distserver",
|
||||
"[vue]": {
|
||||
"editor.defaultFormatter": "octref.vetur"
|
||||
},
|
||||
"javascript.updateImportsOnFileMove.enabled": "never",
|
||||
"javascript.implicitProjectConfig.experimentalDecorators": true,
|
||||
"workbench.editor.showTabs": true,
|
||||
"terminal.integrated.rendererType": "dom",
|
||||
"sync.gist": "396472a5bb443e3680d5a0e2ffccefe8",
|
||||
"window.zoomLevel": 0,
|
||||
"diffEditor.ignoreTrimWhitespace": false,
|
||||
"launch": {},
|
||||
"[jsonc]": {
|
||||
"editor.defaultFormatter": "remimarsal.prettier-now"
|
||||
},
|
||||
"[typescript]": {
|
||||
"editor.defaultFormatter": "remimarsal.prettier-now"
|
||||
},
|
||||
"json.schemas": [{
|
||||
"fileMatch": [
|
||||
"/myfile"
|
||||
],
|
||||
"url": "schemaURL"
|
||||
}]
|
||||
}
|
||||
22
src/store/index.js
Normal file
@@ -0,0 +1,22 @@
|
||||
import { createStore } from 'vuex';
|
||||
import leftAside from './modules/leftAside';
|
||||
import topNavTag from './modules/topNavTag';
|
||||
import routes from './modules/routes';
|
||||
import user from './modules/user';
|
||||
import org from './modules/org';
|
||||
import storeData from './modules/storeData';
|
||||
import examine from './modules/examine';
|
||||
export default createStore({
|
||||
state: {},
|
||||
mutations: {},
|
||||
actions: {},
|
||||
modules: {
|
||||
leftAside,
|
||||
topNavTag,
|
||||
routes,
|
||||
user,
|
||||
org,
|
||||
storeData,
|
||||
examine,
|
||||
},
|
||||
});
|
||||