BUG 25907

This commit is contained in:
aixianling
2021-12-24 20:22:29 +08:00
parent f0bf71e8a6
commit 53c6cc90e2

View File

@@ -3,19 +3,21 @@
<div class="header-description"> <div class="header-description">
<u-form :model="forms" ref="uForm" label-width="auto"> <u-form :model="forms" ref="uForm" label-width="auto">
<u-form-item label="标题" prop="title" required label-position="top"> <u-form-item label="标题" prop="title" required label-position="top">
<u-input v-model="forms.title" placeholder="请输入标题(30字以内)" type="textarea" auto-height height="60" maxlength="30" /> <u-input v-model="forms.title" placeholder="请输入标题(30字以内)" type="textarea" auto-height height="60"
maxlength="30"/>
</u-form-item> </u-form-item>
<u-form-item label="类别" prop="status" required v-if="selectList.length"> <u-form-item label="类别" prop="status" required v-if="selectList.length">
<div class="right" @click="showStstus=true"> <div class="right" @click="showStstus=true">
<span v-if="forms.selectIndex === ''" class="color-999">请选择类别</span> <span v-if="forms.selectIndex === ''" class="color-999">请选择类别</span>
<span v-else>{{selectList[forms.selectIndex].categoryName}}</span> <span v-else>{{ selectList[forms.selectIndex].categoryName }}</span>
<u-icon name="arrow-right" color="#CCCCCC" class="right-icon"></u-icon> <u-icon name="arrow-right" color="#CCCCCC" class="right-icon"></u-icon>
</div> </div>
<u-select v-model="showStstus" :list="selectList" value-name="selectIndex" label-name="categoryName" @confirm="selectStatus"></u-select> <u-select v-model="showStstus" :list="selectList" value-name="selectIndex" label-name="categoryName"
@confirm="selectStatus"></u-select>
</u-form-item> </u-form-item>
<u-form-item label="发布地区" prop="areaId" required > <u-form-item label="发布地区" prop="areaId" required>
<div class="right"> <div class="right">
<AiAreaPicker v-model="forms.areaId" :areaId="user.areaId" @select="areaSelect"></AiAreaPicker> <AiAreaPicker v-model="forms.areaId" :areaId="user.areaId" @select="areaSelect"></AiAreaPicker>
<u-icon name="arrow-right" color="#CCCCCC" class="right-icon area-right-icon"></u-icon> <u-icon name="arrow-right" color="#CCCCCC" class="right-icon area-right-icon"></u-icon>
@@ -23,11 +25,12 @@
</u-form-item> </u-form-item>
<u-form-item label="正文" prop="content" required label-position="top"> <u-form-item label="正文" prop="content" required label-position="top">
<u-input v-model="forms.content" placeholder="请输入活动详情(30字以内)" type="textarea" auto-height height="60" maxlength="500" /> <AiEditor v-model="forms.content" placeholder="请输入最多500字" :maxlength="500"/>
</u-form-item> </u-form-item>
<u-form-item label="图片(最多9张)" prop="files" class="avatars" label-position="top"> <u-form-item label="图片(最多9张)" prop="files" class="avatars" label-position="top">
<AiUploader :def.sync="forms.files" multiple placeholder="上传图片" :limit="9" action="/admin/file/add2"></AiUploader> <AiUploader :def.sync="forms.files" multiple placeholder="上传图片" :limit="9"
action="/admin/file/add2"></AiUploader>
</u-form-item> </u-form-item>
</u-form> </u-form>
</div> </div>
@@ -40,7 +43,7 @@
</template> </template>
<script> <script>
import { mapState } from 'vuex' import {mapState} from 'vuex'
export default { export default {
name: 'Add', name: 'Add',
@@ -64,10 +67,10 @@ export default {
selectList: [] selectList: []
} }
}, },
computed: { ...mapState(['user']) }, computed: {...mapState(['user'])},
onLoad(o) { onLoad(o) {
console.log(o) console.log(o)
if(o.id) { if (o.id) {
this.id = o.id this.id = o.id
} }
@@ -80,15 +83,16 @@ export default {
document.title = this.listName document.title = this.listName
}, },
mounted() {}, mounted() {
},
methods: { methods: {
getDetail() { getDetail() {
this.$http.post(`/app/appcontentinfo/queryDetailById?id=${this.id}`).then((res) => { this.$http.post(`/app/appcontentinfo/queryDetailById?id=${this.id}`).then((res) => {
if (res?.data) { if (res?.data) {
this.forms = {...res.data} this.forms = {...res.data}
if(this.selectList.length) { if (this.selectList.length) {
this.selectList.map((item, index) => { this.selectList.map((item, index) => {
if(item.id == res.data.categoryId) { if (item.id == res.data.categoryId) {
this.forms.selectIndex = index this.forms.selectIndex = index
} }
}) })
@@ -102,13 +106,13 @@ export default {
getType() { getType() {
this.$http.post(`/app/appcontentmoduleinfo/listByName?names=${this.listName}`).then((res) => { this.$http.post(`/app/appcontentmoduleinfo/listByName?names=${this.listName}`).then((res) => {
if (res.code == 0) { if (res.code == 0) {
if(res.data && res.data.length) { if (res.data && res.data.length) {
this.selectList = res.data[0].categoryList this.selectList = res.data[0].categoryList
this.selectList.map((item, index) => { this.selectList.map((item, index) => {
item.selectIndex = index item.selectIndex = index
}) })
} }
if(this.id) { if (this.id) {
this.getDetail() this.getDetail()
} }
} }
@@ -123,13 +127,13 @@ export default {
return this.$u.toast('请输入正文') return this.$u.toast('请输入正文')
} }
if(this.selectList.length && this.forms.selectIndex === '') { if (this.selectList.length && this.forms.selectIndex === '') {
return this.$u.toast('请选择类别') return this.$u.toast('请选择类别')
} }
var categoryId = '', categoryName = '' var categoryId = '', categoryName = ''
if(this.selectList.length) { if (this.selectList.length) {
categoryId = this.selectList[this.forms.selectIndex].id categoryId = this.selectList[this.forms.selectIndex].id
categoryName = this.selectList[this.forms.selectIndex].categoryName categoryName = this.selectList[this.forms.selectIndex].categoryName
} }
@@ -171,6 +175,7 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.add { .add {
height: 100%; height: 100%;
.header-description { .header-description {
::v-deep .u-form { ::v-deep .u-form {
.u-form-item { .u-form-item {
@@ -196,7 +201,8 @@ export default {
} }
} }
} }
.pad-b112{
.pad-b112 {
padding-bottom: 224px; padding-bottom: 224px;
} }
@@ -214,33 +220,39 @@ export default {
z-index: 999; z-index: 999;
} }
.right{ .right {
width: 100%; width: 100%;
text-align: right; text-align: right;
.right-icon{
.right-icon {
vertical-align: middle; vertical-align: middle;
margin-left: 8px; margin-left: 8px;
} }
.area-right-icon{
.area-right-icon {
margin: -40px 0 0 8px; margin: -40px 0 0 8px;
} }
::v-deep .AiAreaPicker{
::v-deep .AiAreaPicker {
display: inline-block; display: inline-block;
width: calc(100% - 50px); width: calc(100% - 50px);
.areaSelector{
div{ .areaSelector {
div {
width: 100%; width: 100%;
padding-top: 30px; padding-top: 30px;
box-sizing: border-box; box-sizing: border-box;
text-align: right; text-align: right;
} }
.fixedTop{
.fixedTop {
text-align: left; text-align: left;
} }
} }
} }
} }
.color-999{
.color-999 {
color: #999; color: #999;
} }
} }