栏目详情样式图片等

master
yujialong 2 years ago
parent 0440ca2be2
commit a3ae387061
  1. 5
      package-lock.json
  2. 1
      package.json
  3. BIN
      src/assets/images/style/10.png
  4. BIN
      src/assets/images/style/11.png
  5. BIN
      src/assets/images/style/12.png
  6. BIN
      src/assets/images/style/13.png
  7. BIN
      src/assets/images/style/14.png
  8. BIN
      src/assets/images/style/15.png
  9. BIN
      src/assets/images/style/16.png
  10. BIN
      src/assets/images/style/19.png
  11. BIN
      src/assets/images/style/22.png
  12. BIN
      src/assets/images/style/23.png
  13. BIN
      src/assets/images/style/24.png
  14. BIN
      src/assets/images/style/25.png
  15. BIN
      src/assets/images/style/27.png
  16. 12
      src/components/img-upload/Cropper.vue
  17. 3
      src/components/modules/content.vue
  18. 13
      src/layouts/header/index.vue
  19. 7
      src/pages/article/add/index.vue
  20. 13
      src/pages/column/add/index.vue
  21. 18
      src/pages/column/page/about.vue
  22. 18
      src/pages/column/page/application.vue
  23. 18
      src/pages/column/page/careers.vue
  24. 18
      src/pages/column/page/edu.vue
  25. 18
      src/pages/column/page/home.vue
  26. 18
      src/pages/column/page/news.vue
  27. 18
      src/pages/column/page/newsPress.vue
  28. 18
      src/pages/column/page/newsProcurement.vue
  29. 19
      src/pages/column/page/research.vue
  30. 2
      src/pages/user/list/index.vue

5
package-lock.json generated

@ -6905,6 +6905,11 @@
"integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==",
"dev": true "dev": true
}, },
"image-conversion": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/image-conversion/-/image-conversion-2.1.1.tgz",
"integrity": "sha512-hnMOmP7q2jxA+52FZ+wHNhg3fdFRlgfngsQH2JQHEQkafY7tj/8F15e6Rv/RxDegc872jvyaRHwMbkTZK1Cjbg=="
},
"import-cwd": { "import-cwd": {
"version": "2.1.0", "version": "2.1.0",
"resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz",

@ -14,6 +14,7 @@
"echarts": "^4.8.0", "echarts": "^4.8.0",
"element-theme": "^2.0.1", "element-theme": "^2.0.1",
"element-ui": "^2.13.0", "element-ui": "^2.13.0",
"image-conversion": "^2.1.1",
"js-cookie": "^2.2.1", "js-cookie": "^2.2.1",
"mavon-editor": "^2.6.17", "mavon-editor": "^2.6.17",
"postcss-px2rem": "^0.3.0", "postcss-px2rem": "^0.3.0",

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 291 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

@ -45,7 +45,7 @@
type="primary" type="primary"
:loading="isUpload" :loading="isUpload"
:disabled="isDisabled" :disabled="isDisabled"
@click.prevent="uploadImg('base64')"> @click.prevent="uploadImg('blob')">
上传 上传
</el-button> </el-button>
</div> </div>
@ -57,7 +57,7 @@
import { import {
VueCropper VueCropper
} from 'vue-cropper' } from 'vue-cropper'
// console.log(VueCropper); import {compress, compressAccurately} from 'image-conversion'
export default { export default {
components: { components: {
VueCropper VueCropper
@ -79,7 +79,9 @@ export default {
// //
fixedNumber: { fixedNumber: {
type: Array, type: Array,
default: [1, 0.26] default: () => {
return [1, 0.26]
}
}, },
fixed: { fixed: {
type: Boolean, type: Boolean,
@ -138,7 +140,9 @@ export default {
const that = this const that = this
if (type === 'blob') { if (type === 'blob') {
this.$refs.cropper.getCropBlob(data => { this.$refs.cropper.getCropBlob(data => {
that.$emit('upload', data) compress(data, 0.6).then(res => {
that.$emit('upload', res)
})
}) })
} else { } else {
this.$refs.cropper.getCropData(data => { this.$refs.cropper.getCropData(data => {

@ -123,9 +123,8 @@ export default {
}, },
// //
customUpload(data) { customUpload(data) {
const blob = this.dataURItoBlob(data)
const formData = new FormData() const formData = new FormData()
formData.append('file', blob, this.file.name) formData.append('file', data, this.file.name)
this.imgUpload(formData) this.imgUpload(formData)
}, },
// //

@ -6,7 +6,7 @@
</div> </div>
<div class="user-tool"> <div class="user-tool">
<template v-if="inContent"> <template v-if="inContent">
<div class="site cp"> <div class="site cp" @click="toIndex">
<img src="@/assets/images/index.png"> <img src="@/assets/images/index.png">
当前站点首页 当前站点首页
</div> </div>
@ -36,7 +36,8 @@
<script> <script>
import { mapState, mapMutations, mapActions } from 'vuex' import { mapState, mapMutations, mapActions } from 'vuex'
import breadcrumb from '@/components/breadcrumb' import breadcrumb from '@/components/breadcrumb'
import util from '@/libs/util' import Setting from '@/setting'
import Util from '@/libs/util'
export default { export default {
data() { data() {
return { return {
@ -86,7 +87,7 @@ export default {
limit: 1000, limit: 1000,
siteName: '' siteName: ''
}).then(({ data }) => { }).then(({ data }) => {
this.sites = util.getSite(data.records) this.sites = Util.getSite(data.records)
}).catch(e => {}) }).catch(e => {})
}, },
// //
@ -94,10 +95,14 @@ export default {
const { path } = this.$route const { path } = this.$route
this.inContent = !!this.sitePath.find(e => path.includes(e)) this.inContent = !!this.sitePath.find(e => path.includes(e))
}, },
//
toIndex() {
window.open((Setting.isDev ? `http://${location.hostname}:8095` : 'http://192.168.31.136/front') + `/#/column?siteId=${this.$store.state.content.site.id}`)
},
// //
siteCommand(e) { siteCommand(e) {
this.setSite(e) this.setSite(e)
this.$route.path === '/page/list' || this.$router.push('/page') this.$route.path === '/column/list' || this.$router.push('/column')
location.reload() location.reload()
}, },
// //

@ -522,6 +522,7 @@ export default {
next() next()
} else if (!this.pass) { } else if (!this.pass) {
const { updateTime } = this const { updateTime } = this
console.log("🚀 ~ file: index.vue:525 ~ beforeRouteLeave ~ updateTime", updateTime)
// //
if (updateTime > 2) { if (updateTime > 2) {
this.$confirm(`所填写内容暂未保存,是否保存?`, '提示', { this.$confirm(`所填写内容暂未保存,是否保存?`, '提示', {
@ -644,6 +645,9 @@ export default {
this.rules.classificationId[0].required = true this.rules.classificationId[0].required = true
} }
this.getClassification() this.getClassification()
this.$nextTick(() => {
this.updateTime = 2
})
}).catch(err => {}) }).catch(err => {})
}, },
// //
@ -843,9 +847,8 @@ export default {
}, },
// //
customUpload(data) { customUpload(data) {
const blob = this.dataURItoBlob(data)
const formData = new FormData() const formData = new FormData()
formData.append('file', blob, this.file.name) formData.append('file', data, this.file.name)
formData.append('quote', this.form.title) formData.append('quote', this.form.title)
formData.append('site', this.site.siteName) formData.append('site', this.site.siteName)
formData.append('uploader', this.userName) formData.append('uploader', this.userName)

@ -85,7 +85,7 @@
<ul class="styles"> <ul class="styles">
<li v-for="(item, i) in listStyle" :key="i" @click="form.listStyleId = item.id"> <li v-for="(item, i) in listStyle" :key="i" @click="form.listStyleId = item.id">
<div class="review"> <div class="review">
<!-- <img :src="require('@/assets/images/list' + item.id + '.png')" alt=""> --> <img :src="require('@/assets/images/style/' + item.id + '.png')" alt="">
</div> </div>
<el-radio v-model="form.listStyleId" :label="item.id">{{ item.style }}</el-radio> <el-radio v-model="form.listStyleId" :label="item.id">{{ item.style }}</el-radio>
</li> </li>
@ -95,7 +95,7 @@
<ul class="styles"> <ul class="styles">
<li v-for="(item, i) in detailStyleId" :key="i" @click="form.detailStyleId = item.id"> <li v-for="(item, i) in detailStyleId" :key="i" @click="form.detailStyleId = item.id">
<div class="review"> <div class="review">
<!-- <img :src="require('@/assets/images/article' + item.id + '.png')" alt=""> --> <img :src="require('@/assets/images/style/' + item.id + '.png')" alt="">
</div> </div>
<el-radio v-model="form.detailStyleId" :label="item.id">{{ item.style }}</el-radio> <el-radio v-model="form.detailStyleId" :label="item.id">{{ item.style }}</el-radio>
</li> </li>
@ -322,7 +322,8 @@ export default {
route: '/site' route: '/site'
}, },
{ {
name: '内容管理' name: '内容管理',
route: '/column'
}, },
{ {
name: '栏目管理', name: '栏目管理',
@ -353,7 +354,7 @@ export default {
const { id } = this.form const { id } = this.form
const { updateTime } = this const { updateTime } = this
// //
if ((!id && updateTime) || (id && updateTime > 1)) { if (updateTime > 1) {
this.$confirm(`所填写内容暂未保存,是否保存?`, '提示', { this.$confirm(`所填写内容暂未保存,是否保存?`, '提示', {
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
@ -525,9 +526,8 @@ export default {
}, },
// //
customUpload(data) { customUpload(data) {
const blob = this.dataURItoBlob(data)
const formData = new FormData() const formData = new FormData()
formData.append('file', blob, this.file.name) formData.append('file', data, this.file.name)
formData.append('quote', this.form.columnName) formData.append('quote', this.form.columnName)
formData.append('site', this.site.siteName) formData.append('site', this.site.siteName)
formData.append('uploader', this.userName) formData.append('uploader', this.userName)
@ -537,6 +537,7 @@ export default {
compress(img) { compress(img) {
const canvas = document.createElement('canvas') const canvas = document.createElement('canvas')
const ctx = canvas.getContext('2d') const ctx = canvas.getContext('2d')
console.log("🚀 ~ file: index.vue:540 ~ compress ~ ctx", ctx,img.width)
// let initSize = img.src.length; // let initSize = img.src.length;
const width = img.width const width = img.width
const height = img.height const height = img.height

@ -211,7 +211,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'ABOUT'
}
])
}, },
methods: { methods: {

@ -149,7 +149,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'APPLICATION'
}
])
}, },
methods: { methods: {

@ -127,7 +127,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'CAREERS'
}
])
}, },
methods: { methods: {

@ -79,7 +79,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'EDUCATION & COLLABORATION'
}
])
}, },
methods: { methods: {

@ -203,7 +203,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'HOME'
}
])
}, },
methods: { methods: {

@ -267,7 +267,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'NEWS&EVENTS'
}
])
}, },
methods: { methods: {

@ -57,7 +57,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'NEWS&EVENTS-PRESS ROOM'
}
])
}, },
methods: { methods: {

@ -57,7 +57,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'NEWS&EVENTS-PROCUREMENT'
}
])
}, },
methods: { methods: {

@ -96,7 +96,23 @@ export default {
} }
}, },
mounted() { mounted() {
this.$store.commit('user/setCrumbs', [
{
name: '站点管理',
route: '/site'
},
{
name: '内容管理',
route: '/column'
},
{
name: '栏目管理',
route: '/column'
},
{
name: 'RESEARCH'
}
])
}, },
methods: { methods: {
@ -178,6 +194,7 @@ export default {
justify-content: center; justify-content: center;
align-items: center; align-items: center;
height: 143px; height: 143px;
padding: 0 30px;
font-size: 30px; font-size: 30px;
font-family: SFProDisplay-Bold, SFProDisplay; font-family: SFProDisplay-Bold, SFProDisplay;
font-weight: bold; font-weight: bold;

@ -634,7 +634,7 @@ export default {
} }
if (deptArchitectureId) { if (deptArchitectureId) {
this.archId = [] this.archId = []
this.handleArchId(this.orgs, deptArchitectureId.split(',')) this.handleArchId(this.orgs, deptArchitectureId.split(',').map(e => +e))
data.deptArchitectureId = this.archId data.deptArchitectureId = this.archId
} }
data.groupId = +data.groupId data.groupId = +data.groupId

Loading…
Cancel
Save