Commit 3f422221 authored by 罗超's avatar 罗超

Merge branch 'master' of http://gitlab.oytour.com/huangyuanyuan/electricitysheep into master

# Conflicts:
#	src/components/tradePavilion/tradePavilionIndex.vue
#	src/router/index.js
parents 87831d51 327aba89
<template>
<div>
<el-row>
<el-col :span="24">
<div class="searchInput" style="width: 250px; margin-bottom: 10px">
<el-input @keyup.enter.native="(msg.pageIndex = 1), getList()" @clear="(msg.pageIndex = 1), getList()"
style="display: inline-block; width: 225px; height: 30px" placeholder="品牌名" v-model="msg.BrandName"
size="small" clearable>
</el-input>
<span @click="(msg.pageIndex = 1), getList()" class="el-icon-search" style="
color: #979dad;
font-size: 14px;
position: relative;
top: 1px;
"></span>
</div>
<div style="margin-bottom: 10px;width:250px;display:inline-block;">
<span style="margin-left: 10px">商铺性质</span>
<el-select class="w100" @change="(msg.pageIndex = 1), getList()" style="margin-left: 10px"
v-model="msg.ProjectType" size="small" placeholder="请选择商铺性质">
<el-option label="不限" :value="0"></el-option>
<el-option :label="x.Name" :value="x.Id" v-for="(x, y) in ProjectTypeList" :key="y"></el-option>
</el-select>
</div>
</el-col>
</el-row>
<el-table :data="dataList" ref="multipleTable" @selection-change="handleSelectionChange" tooltip-effect="dark"
height="450" style="width: 100%">
<el-table-column type="selection" width="50px">
</el-table-column>
<el-table-column prop="Id" label="ID" width="100">
<template slot-scope="scope">
<span @click="goRecruit(scope.row.ID)">{{ scope.row.ID }}</span>
</template>
</el-table-column>
<el-table-column prop="ClassName" label="分类" width="150">
</el-table-column>
<el-table-column prop="BrandName" label="品牌"> </el-table-column>
<el-table-column prop="Logo" label="Logo" width="100">
<template slot-scope="scope">
<el-image v-if="scope.row.Logo" :src="scope.row.Logo" style="width: 50px"
:preview-src-list="scope.row.LogoList">
</el-image>
</template>
</el-table-column>
<el-table-column prop="ShopNum" label="店铺数量" width="80">
</el-table-column>
<el-table-column prop="BuiltUpArea" label="建筑面积">
<template slot-scope="scope">
<span>{{ scope.row.BuiltUpArea }}
{{ scope.row.EndBuiltUpArea }}</span>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:center" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
layout="prev, pager, next" :total="total">
</el-pagination>
</div>
</template>
<script>
export default {
props: ['ckGoods', "IsGetSpec"],
data() {
return {
dataList: [],
msg: {
pageIndex: 1,
pageSize: 20,
BrandName: "", //品牌名
ProjectType: 0, //商铺性质
Plumbing: -1, //上下水(0-否1-有)
Caliber: -1, //管径(0-否1-有)
Sewage: -1, //排污(0-否1-有)
RanQi: -1, //燃气(0-否1-有)
DianLiang: "", //电量(0-否1-有)
PaiYan: -1, //排烟量(0-否1-有)
KongTiao: -1, //空调(0-否1-有)
XinFeng: -1, //新风(0-否1-有)
BrandClassId: 0, //分类
ExcelEnumIds: [],
UserId: 0, //用户认证
},
total: 0,
ProjectTypeList: [], //商铺性质列表
selectRow: []
};
},
created() {},
methods: {
//获取所有菜单
getList() {
this.apipost("/api/Trade/GetBrandPageList", this.msg, (res) => {
if (res.data.resultCode == 1) {
this.dataList = res.data.data.pageData;
this.pageCount = res.data.data.count;
this.dataList.forEach((x) => {
x.LogoList = [];
x.LogoList.push(x.Logo);
});
} else {
this.Error(res.data.message);
}
});
},
//获取商铺性质
getProjectType() {
this.apipost("/api/Trade/GetProjectTypeEnumList", {}, (res) => {
if (res.data.resultCode == 1) {
this.ProjectTypeList = res.data.data;
} else {
this.Error(res.data.message);
}
});
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
//父组件调用方法
getChoicedGoods() {
return this.selectRow;
},
handleSelectionChange(val) {
this.selectRow = JSON.parse(JSON.stringify(val));
},
//清空多选方法
toggleSelection(rows) {
if (rows) {
rows.forEach(row => {
this.$refs.multipleTable.toggleRowSelection(row);
});
} else {
this.$refs.multipleTable.clearSelection();
}
}
},
mounted() {
this.getProjectType();
this.getList();
}
};
</script>
<template>
<div>
<el-row>
<el-col :span="24">
<div class="searchInput" style="width: 250px; margin-bottom: 10px">
<el-input @keyup.enter.native="(msg.pageIndex = 1), getList()" @clear="(msg.pageIndex = 1), getList()"
style="display: inline-block; width: 225px; height: 30px" placeholder="项目名称" v-model="msg.CarrierName"
size="small" clearable>
</el-input>
<span @click="(msg.pageIndex = 1), getList()" class="el-icon-search" style="
color: #979dad;
font-size: 14px;
position: relative;
top: 1px;
"></span>
</div>
<div class="searchInput" style="width: 250px; margin-bottom: 10px">
<el-input @keyup.enter.native="(msg.pageIndex = 1), getList()" @clear="(msg.pageIndex = 1), getList()"
style="display: inline-block; width: 225px; height: 30px" placeholder="开发商" v-model="msg.Developers"
size="small" clearable>
</el-input>
<span @click="(msg.pageIndex = 1), getList()" class="el-icon-search" style="
color: #979dad;
font-size: 14px;
position: relative;
top: 1px;
"></span>
</div>
</el-col>
</el-row>
<el-table :data="dataList" ref="multipleTable" @selection-change="handleSelectionChange" tooltip-effect="dark" height="450" style="width: 100%">
<el-table-column type="selection" width="50px">
</el-table-column>
<el-table-column label="项目名称" prop="CarrierName"></el-table-column>
<el-table-column prop="CarrierMetroList" label="地铁信息" width="200">
<template slot-scope="scope">
<div v-for="(item, index) in scope.row.CarrierMetroList" :key="index" class="CarrierList">
<span>{{ item.MetroNum }}号线</span><span>{{ item.MetroName }}</span><span>{{ item.Distance }}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="Logo" width="100" label="logo">
<template slot-scope="scope">
<el-image :src="scope.row.Logo" style="width: 50px" :preview-src-list="scope.row.LogoList">
</el-image>
</template>
</el-table-column>
<el-table-column prop="Address" width="200" label="项目地址">
</el-table-column>
<el-table-column prop="Developers" width="200" label="开发商">
</el-table-column>
<el-table-column prop="OpenTime" width="180" label="开业时间">
</el-table-column>
</el-table>
<el-pagination style="text-align:center" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
layout="prev, pager, next" :total="total">
</el-pagination>
</div>
</template>
<script>
export default {
props: ['ckGoods', "IsGetSpec"],
data() {
return {
dataList: [],
msg: {
MetroName: "", //地铁站名称
pageIndex: 1,
pageSize: 15,
CarrierName: "", //载体名称
MetroNum: "", //地铁线路
Developers: "", //开发商
StartOpenTime: "", //开业开始时间
EndOpenTime: "", // 开业截止时间
ExcelEnumIds: [],
UserId: 0,
},
total: 0,
selectRow:[]
};
},
created() {},
methods: {
//获取所有菜单
getList() {
this.loading = true;
this.apipost("/api/Trade/GetCarrierPageList", this.msg, (res) => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
let pageData = res.data.data.pageData;
this.dataList = pageData;
this.dataList.forEach((x) => {
x.LogoList = [];
x.LogoList.push(x.Logo);
});
}
});
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
//父组件调用方法
getChoicedGoods() {
return this.selectRow;
},
handleSelectionChange(val) {
this.selectRow = JSON.parse(JSON.stringify(val));
},
//清空多选方法
toggleSelection(rows) {
if (rows) {
rows.forEach(row => {
this.$refs.multipleTable.toggleRowSelection(row);
});
} else {
this.$refs.multipleTable.clearSelection();
}
}
},
mounted() {
this.getList();
}
};
</script>
......@@ -179,6 +179,10 @@
<div class="fkbox_item" style="background: #00ffff"></div>
<span>暂存</span>
</div>
<div class="fkbox">
<div class="fkbox_item" style="background: #E6A23C"></div>
<span>出纳暂存</span>
</div>
<div class="fkbox">
<div class="fkbox_item" style="background: #0080ff"></div>
<span>审核中</span>
......@@ -692,6 +696,12 @@
:style="{ color: '#800080' }"
>{{ item.FrID }}</span
>
<span
class="billtext"
v-if="item.Status == 5"
:style="{ color: '#E6A23C' }"
>{{ item.FrID }}</span
>
</span>
</div>
<div class="billStyle_item">
......@@ -734,6 +744,13 @@
:style="{ color: '#800080' }"
>{{ item.FrID }}</span
>
<span
class="billtext"
v-if="item.Status == 5"
:style="{ color: '#E6A23C' }"
>{{ item.FrID }}</span
>
</span>
</div>
</div>
......
......@@ -397,7 +397,6 @@
title: x.Title,
cover_pic: x.CoverImg,
read_count: x.ReadNum,
// layout: list[i].layout,
id: x.Id
});
})
......
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -178,15 +178,22 @@
<li class="menu_item" :class="{'Fchecked':isChecked=='/menu'}" @click="isChecked='/menu',CommonJump('menu')">
<i class="el-icon-menu"></i><span>商城菜单</span>
</li>
<li class="menu_item" :class="{'Fchecked':isChecked=='/minimenu'}" @click="isChecked='/minimenu',CommonJump('minimenu')">
<li class="menu_item" :class="{'Fchecked':isChecked=='/minimenu'}"
@click="isChecked='/minimenu',CommonJump('minimenu')">
<i class="el-icon-menu"></i><span>小程序菜单</span>
</li>
<li class="menu_item" :class="{'Fchecked':isChecked=='/pluglist'}" @click="isChecked='/pluglist',CommonJump('pluglist')">
<li class="menu_item" :class="{'Fchecked':isChecked=='/pluglist'}"
@click="isChecked='/pluglist',CommonJump('pluglist')">
<i class="el-icon-menu"></i><span>营销插件</span>
</li>
<li class="menu_item" :class="{'Fchecked':isChecked=='/diyplug'}" @click="isChecked='/diyplug',CommonJump('diyplug')">
<li class="menu_item" :class="{'Fchecked':isChecked=='/diyplug'}"
@click="isChecked='/diyplug',CommonJump('diyplug')">
<i class="el-icon-menu"></i><span>diy装修插件</span>
</li>
<li class="menu_item" :class="{'Fchecked':isChecked=='/formplug'}"
@click="isChecked='/formplug',CommonJump('formplug')">
<i class="el-icon-menu"></i><span>表单组件</span>
</li>
</ul>
</div>
</div>
......@@ -238,7 +245,7 @@
},
created() {
this.currentUser = this.getLocalStorage();
this.isChecked=this.$route.path;
this.isChecked = this.$route.path;
},
methods: {},
mounted() {
......
......@@ -101,7 +101,8 @@
msg: {
pageIndex: 1,
pageSize: 15,
PlugName: "", //插件名称
PlugName: "", //插件名称,
QPlugTypeStr:"1,2,3",//1-基础组件,2-营销组件,3-其它组件
},
dataList: [],
addMsg: {
......
<style>
.DiyPluglistDiv .query-box {
width: 100%;
padding: 0 0 20px;
border-bottom: 1px solid #ccc;
position: relative;
}
.DiyPluglistDiv .normalBtn {
color: #fff;
padding: 0 15px;
height: 30px;
background: #e95252;
border: 1px solid #e95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
outline: none;
}
</style>
<template>
<div class="DiyPluglistDiv">
<div class="query-box">
名称: <el-input type="text" style="width:234px;" size="small" v-model="msg.Name" clearable
@keyup.enter.native="msg.pageIndex=1,getPageList()" @clear="msg.pageIndex=1,getPageList()"></el-input>
<button type="button" class="normalBtn"
@click="plugTitle='新增diy插件',marketingPlugDialog=true,resetMsg()">新增</button>
<button type="button" class="normalBtn" @click="CommonJump('setformplug',{})">设置表单组件</button>
</div>
<table class="commonTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
<tr>
<th>编号</th>
<th>类型</th>
<th>名称</th>
<th>Id</th>
<th>图标</th>
<th>状态</th>
<th>操作</th>
</tr>
<tr v-for="(item,index) in dataList" :key="index">
<td>{{item.PlugId}}</td>
<td>{{item.GroupName}}</td>
<td>{{item.Name}}</td>
<td>{{item.Id}}</td>
<td>
<img :src="item.Icon" style="height: 30px; display: block; padding-left:5px;">
</td>
<td>
<el-switch v-model="item.Status" active-color="#409EFF" :active-value="0" :inactive-value="1"
@change="delDiyPlug(item)">
</el-switch>
</td>
<td>
<el-tooltip class="item" effect="dark" content="修改" placement="top-start">
<el-button type="primary" icon="el-icon-edit" @click="getDiyPlug(item.PlugId)" circle style="padding:6px;">
</el-button>
</el-tooltip>
</td>
</tr>
</table>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
v-if="dataList.length>0" layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="total">
</el-pagination>
<!-- 新增diy插件 -->
<el-dialog :title="plugTitle" :visible.sync="marketingPlugDialog" width="500px">
<el-form :model="addMsg" ref="addMsg" label-width="150px">
<el-form-item label="插件类型">
<el-select style="width:234px" size="small" v-model="addMsg.PlugType">
<el-option v-for="(item) in PlugTypeList" :label="item.Name" :key="item.Id" :value="item.Id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="插件名称">
<el-input type="text" style="width:234px" size="small" maxlength="50" v-model="addMsg.Name"></el-input>
</el-form-item>
<el-form-item label="Id">
<el-input type="text" style="width:234px" size="small" maxlength="50" v-model="addMsg.Id"></el-input>
</el-form-item>
<el-form-item label="图片地址">
<el-input type="textarea" rows="4" style="width:234px" size="small" maxlength="255" v-model="addMsg.Icon">
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="marketingPlugDialog = false">取 消</el-button>
<el-button size="small" type="primary" @click="submitForm('addMsg')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
loading: false,
marketingPlugDialog: false,
currentPage: 1,
total: 0,
msg: {
pageIndex: 1,
pageSize: 15,
PlugName: "", //插件名称
QPlugTypeStr: "4", //表单组件
},
dataList: [],
addMsg: {
PlugId: 0, //插件编号
PlugType: 4, //插件类型
Id: '', //插件id
Name: '', //插件名称
Icon: "", //图标
},
PlugTypeList: [{
Id: 4,
Name: "表单组件"
},
],
plugTitle: "新增diy插件",
};
},
created() {
},
methods: {
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getPageList();
},
submitForm(addMsg) {
//提交创建、修改diy插件
this.$refs[addMsg].validate(valid => {
if (valid) {
this.addDiyPlug();
} else {
return false;
}
});
},
//重置参数
resetMsg() {
this.addMsg.PlugId = 0;
this.addMsg.PlugType = 4;
this.addMsg.Id = "";
this.addMsg.Name = "";
this.addMsg.Icon = "";
},
//获取分页数据
getPageList() {
this.apipost("/api/MContent/GetPlugInPage", this.msg, res => {
if (res.data.resultCode == 1) {
this.dataList = res.data.data.pageData;
this.total = res.data.data.count;
} else {
this.Info(res.data.message);
}
})
},
//添加修改diy插件
addDiyPlug() {
this.apipost("/api/MContent/SetPlugIn", this.addMsg, res => {
if (res.data.resultCode == 1) {
this.getPageList();
this.marketingPlugDialog = false;
this.Success(res.data.message);
} else {
this.Info(res.data.message);
}
})
},
//根据编号获取diy插件
getDiyPlug(Id) {
this.apipost("/api/MContent/GetPlugIn", {
PlugId: Id
}, res => {
if (res.data.resultCode == 1) {
this.addMsg = res.data.data;
this.marketingPlugDialog = true;
this.plugTitle = "修改diy插件";
} else {
this.Info(res.data.message);
}
})
},
//修改diy插件状态
delDiyPlug(item) {
var that = this;
var tipMsg = "";
if (item.Status == 0) {
tipMsg = "是否启用此插件?";
} else {
tipMsg = "是否禁用此插件?";
}
that.Confirm(tipMsg, function () {
that.apipost("/api/MContent/SetPlugInStatus", {
PlugId: item.PlugId,
Status: item.Status
}, res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.getPageList();
} else {
that.Info(res.data.message);
}
})
});
}
},
mounted() {
this.getPageList();
}
};
</script>
......@@ -67,7 +67,9 @@
},
//获取分页数据
getPageList() {
this.apipost("/api/MContent/GetTenantPlugList", {}, res => {
this.apipost("/api/MContent/GetTenantPlugList", {
QPlugTypeStr: "1,2,3"
}, res => {
if (res.data.resultCode == 1) {
this.dataList = res.data.data;
} else {
......@@ -86,6 +88,7 @@
setArray.push({
Id: 0,
PlugId: subItem.PlugId,
QPlugTypeStr:"1,2,3",
TenantId: this.TenantId
});
}
......
<style>
.setDiyPlugDiv .query-box {
width: 100%;
padding: 0 0 20px;
border-bottom: 1px solid #ccc;
position: relative;
text-align: right;
}
.setDiyPlugDiv .normalBtn {
color: #fff;
padding: 0 15px;
height: 30px;
background: #e95252;
border: 1px solid #e95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
outline: none;
}
</style>
<template>
<div class="setDiyPlugDiv">
<div class="query-box">
<button type="button" class="normalBtn" @click="setMiniProgramPage()">保存</button>
<button type="button" class="normalBtn" @click="CommonJump('formplug',{})">插件中心</button>
</div>
<table class="commonTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
<tr>
<th style="width:200px">插件类型</th>
<th>插件名称</th>
</tr>
<tr v-for="(item,index) in dataList" :key="index">
<td>
<el-checkbox v-model="item.IsChecked" :key="index" @change="ChangeItem(item)">{{item.Name}}
</el-checkbox>
</td>
<td style="text-align:left; padding-left:5px;">
<template v-for="(subItem,subIndex) in item.SubList">
<el-checkbox v-model="subItem.IsChecked" :key="subIndex">{{subItem.Name}}</el-checkbox>
</template>
</td>
</tr>
</table>
</div>
</template>
<script>
export default {
data() {
return {
loading: false,
dataList: [],
TenantId: 0, //商户Id
};
},
created() {
},
methods: {
ChangeItem(item) {
if (item.SubList && item.SubList.length > 0) {
item.SubList.forEach(subItem => {
subItem.IsChecked = item.IsChecked;
})
}
},
//获取分页数据
getPageList() {
this.apipost("/api/MContent/GetTenantPlugList", {
QPlugTypeStr: "4"
}, res => {
if (res.data.resultCode == 1) {
this.dataList = res.data.data;
} else {
this.Info(res.data.message);
}
})
},
//添加修改插件
setMiniProgramPage() {
var setArray = []; //新增修改的数组
if (this.dataList && this.dataList.length > 0) {
this.dataList.forEach(item => {
if (item.SubList && item.SubList.length > 0) {
item.SubList.forEach(subItem => {
if (subItem.IsChecked) {
setArray.push({
Id: 0,
PlugId: subItem.PlugId,
QPlugTypeStr:"4",
TenantId: this.TenantId
});
}
})
}
})
}
if (setArray.length == 0) {
this.Info("请选择要操作的插件!");
return;
}
this.apipost("/api/MContent/SetTenantPlug", setArray, res => {
if (res.data.resultCode == 1) {
this.getPageList();
this.Success(res.data.message);
} else {
this.Info(res.data.message);
}
})
},
},
mounted() {
this.TenantId = this.getLocalStorage().TenantId;
this.getPageList();
}
};
</script>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<template>
<div :class="{'active':searchData.isCked}">
<div class="diy-component-options" v-if="searchData.isCked">
<el-button type="primary" icon="el-icon-delete" style="left: -25px; top: 0px;" @click="delPlugin()"></el-button>
<el-button type="primary" icon="el-icon-document-copy" style="left: -25px; top: 30px;"></el-button>
<el-button type="primary" icon="el-icon-arrow-up" v-if="index>0" @click="resetSord(0)"
style="right: -25px; top: 0;"></el-button>
<el-button type="primary" icon="el-icon-arrow-down" v-if="index!=dataLeng-1" @click="resetSord(1)"
style="right: -25px; top: 30px;"></el-button>
</div>
<div class="diy-component-preview">
<div class="diy-search">
<el-form label-width="90px">
<el-form-item :label="searchData.CompData.Name" :required="searchData.CompData.IsRequire"
style="margin-bottom:0">
<el-select v-model="defaultValue" style="width:328px;" :popper-append-to-body="false">
<el-option v-for="item in searchData.CompData.OptionList" :key="item.Id" :label="item.Name"
:value="item.Id">
</el-option>
</el-select>
<div class="tradeRemark">{{searchData.CompData.Remark}}</div>
</el-form-item>
</el-form>
</div>
</div>
<div class="diy-component-edit" v-if="searchData.isCked">
<el-form label-width="100px">
<el-form-item label="名称" required>
<el-input v-model="searchData.CompData.Name" size="small"></el-input>
</el-form-item>
<el-form-item label="提示文字">
<el-input type="textarea" v-model="searchData.CompData.Remark" size="small"></el-input>
</el-form-item>
<el-form-item label="增加选项">
<el-tag :key="index" v-for="(item,index) in searchData.CompData.OptionList" style="margin-right:5px;" closable :disable-transitions="false" @close="handleClose(index)">
{{item.Name}}
</el-tag>
<el-input class="input-new-tag" v-if="inputVisible" v-model="inputValue" style="width:80px;" ref="saveTagInput" size="small"
@keyup.enter.native="handleInputConfirm" @blur="handleInputConfirm">
</el-input>
<el-button v-else class="button-new-tag" size="small" @click="showInput">增加选项</el-button>
</el-form-item>
<el-form-item label="是否多选">
<el-switch v-model="searchData.CompData.IsMultiple">
</el-switch>
</el-form-item>
<el-form-item label="是否必填">
<el-switch v-model="searchData.CompData.IsRequire">
</el-switch>
</el-form-item>
</el-form>
</div>
</div>
</template>
<script>
export default {
props: ["searchData", "index", "dataLeng"],
data() {
return {
defaultValue: '',
inputVisible: false,
inputValue: ''
};
},
created() {},
methods: {
//向父组件传值 并调用排序
resetSord(IsUp) {
this.$emit('getSord', this.index, IsUp);
},
//点击触发父组件删除
delPlugin() {
this.$emit('comDelPlugin', this.index);
},
handleClose(index) {
this.searchData.CompData.OptionList.splice(index, 1);
this.searchData.CompData.OptionList.forEach((x,index)=>{
x.Id=index
})
},
showInput() {
this.inputVisible = true;
this.$nextTick(_ => {
this.$refs.saveTagInput.$refs.input.focus();
});
},
handleInputConfirm() {
let inputValue = this.inputValue;
let obj={
Id:0,
Name:inputValue
}
if (inputValue) {
this.searchData.CompData.OptionList.push(obj);
}
this.inputVisible = false;
this.inputValue = '';
this.searchData.CompData.OptionList.forEach((x,index)=>{
x.Id=index
})
}
},
mounted() {}
};
</script>
<style>
.diy-component-edit .goods-add {
width: 50px;
height: 50px;
position: relative;
margin-right: 15px;
margin-bottom: 15px;
}
.diy-component-edit .goods-add .el-button {
width: 100%;
height: 100%;
border-radius: 0;
padding: 0;
}
</style>
<template>
<div :class="{'active':searchData.isCked}">
<div class="diy-component-options" v-if="searchData.isCked">
<el-button type="primary" icon="el-icon-delete" style="left: -25px; top: 0px;" @click="delPlugin()"></el-button>
<el-button type="primary" icon="el-icon-document-copy" style="left: -25px; top: 30px;"></el-button>
<el-button type="primary" icon="el-icon-arrow-up" v-if="index>0" @click="resetSord(0)"
style="right: -25px; top: 0;"></el-button>
<el-button type="primary" icon="el-icon-arrow-down" v-if="index!=dataLeng-1" @click="resetSord(1)"
style="right: -25px; top: 30px;"></el-button>
</div>
<div class="diy-component-preview">
<div class="diy-search" style="min-height:91px;">
<el-form label-width="90px">
<el-form-item :label="searchData.CompData.Name" style="margin-bottom:0">
<div>
<template v-for="(item,index) in imgNum">
<img :key="index" src="../../../assets/img/default.png" style="width:80px;margin-right:20px;" alt="">
</template>
<div class="tradeRemark" style="margin-top:0;">{{searchData.CompData.Remark}}</div>
</div>
</el-form-item>
</el-form>
</div>
</div>
<div class="diy-component-edit" v-if="searchData.isCked">
<el-form label-width="100px">
<el-form-item label="名称" required>
<el-input v-model="searchData.CompData.Name" size="small"></el-input>
</el-form-item>
<el-form-item label="上传文件数量">
<el-input v-model="searchData.CompData.FileCount"
@keyup.native="checkInteger(searchData.CompData,'FileCount')" size="small"></el-input>
</el-form-item>
<el-form-item label="选择文件" v-if="searchData.CompData.FileCount>0">
<div style="display:flex;">
<div class="goods-add" style="width:50px;height:50px;" v-for="(item,index) in imgNum" :key="index">
<el-button size="small" icon="el-icon-plus"></el-button>
</div>
</div>
</el-form-item>
<el-form-item label="上传文件大小">
<el-input v-model="searchData.CompData.FileSizeLimit"
@keyup.native="checkInteger(searchData.CompData,'FileSizeLimit')" size="small"></el-input>
</el-form-item>
<el-form-item label="提示文字">
<el-input type="textarea" v-model="searchData.CompData.Remark" size="small"></el-input>
</el-form-item>
</el-form>
</div>
</div>
</template>
<script>
export default {
props: ["searchData", "index", "dataLeng"],
data() {
return {
imgNum:0
};
},
created() {},
watch:{
'searchData.CompData.FileCount'(val){
this.imgNum = parseInt(val);
}
},
methods: {
//向父组件传值 并调用排序
resetSord(IsUp) {
this.$emit('getSord', this.index, IsUp);
},
//点击触发父组件删除
delPlugin() {
this.$emit('comDelPlugin', this.index);
}
},
mounted() {}
};
</script>
<template>
<div :class="{'active':searchData.isCked}">
<div class="diy-component-options" v-if="searchData.isCked">
<el-button type="primary" icon="el-icon-delete" style="left: -25px; top: 0px;" @click="delPlugin()"></el-button>
<el-button type="primary" icon="el-icon-document-copy" style="left: -25px; top: 30px;"></el-button>
<el-button type="primary" icon="el-icon-arrow-up" v-if="index>0" @click="resetSord(0)"
style="right: -25px; top: 0;"></el-button>
<el-button type="primary" icon="el-icon-arrow-down" v-if="index!=dataLeng-1" @click="resetSord(1)"
style="right: -25px; top: 30px;"></el-button>
</div>
<div class="diy-component-preview">
<div class="diy-search">
<el-form label-width="90px">
<el-form-item :label="searchData.CompData.Name" :required="searchData.CompData.IsRequire" style="margin-bottom:0">
<el-input type="textarea" v-model="searchData.CompData.TextValue" :placeholder="`最多输入${searchData.CompData.WordsLength}个字`"></el-input>
<div class="tradeRemark">{{searchData.CompData.Remark}}</div>
</el-form-item>
</el-form>
</div>
</div>
<div class="diy-component-edit" v-if="searchData.isCked">
<el-form label-width="100px">
<el-form-item label="名称" required>
<el-input v-model="searchData.CompData.Name" size="small" :maxlength="10"></el-input>
</el-form-item>
<el-form-item label="字数">
<el-input type="text" v-model="searchData.CompData.WordsLength" @keyup.native="checkInteger(searchData.CompData,'WordsLength')" size="small"></el-input>
</el-form-item>
<el-form-item label="提示文字">
<el-input type="textarea" v-model="searchData.CompData.Remark" size="small"></el-input>
</el-form-item>
<el-form-item label="是否必填">
<el-switch v-model="searchData.CompData.IsRequire">
</el-switch>
</el-form-item>
</el-form>
</div>
</div>
</template>
<script>
export default {
props: ["searchData", "index", "dataLeng"],
data() {
return {
};
},
created() {},
methods: {
//向父组件传值 并调用排序
resetSord(IsUp) {
this.$emit('getSord', this.index, IsUp);
},
//点击触发父组件删除
delPlugin() {
this.$emit('comDelPlugin', this.index);
}
},
mounted() {}
};
</script>
<template>
<div :class="{'active':searchData.isCked}">
<div class="diy-component-options" v-if="searchData.isCked">
<el-button type="primary" icon="el-icon-delete" style="left: -25px; top: 0px;" @click="delPlugin()"></el-button>
<el-button type="primary" icon="el-icon-document-copy" style="left: -25px; top: 30px;"></el-button>
<el-button type="primary" icon="el-icon-arrow-up" v-if="index>0" @click="resetSord(0)"
style="right: -25px; top: 0;"></el-button>
<el-button type="primary" icon="el-icon-arrow-down" v-if="index!=dataLeng-1" @click="resetSord(1)"
style="right: -25px; top: 30px;"></el-button>
</div>
<div class="diy-component-preview">
<div class="diy-search">
<el-form label-width="90px">
<el-form-item :label="searchData.CompData.Name" :required="searchData.CompData.IsRequire" style="margin-bottom:0">
<el-input v-model="searchData.CompData.TextValue" :placeholder="`最多输入${searchData.CompData.WordsLength}个字`"></el-input>
<div class="tradeRemark">{{searchData.CompData.Remark}}</div>
</el-form-item>
</el-form>
</div>
</div>
<div class="diy-component-edit" v-if="searchData.isCked">
<el-form label-width="100px">
<el-form-item label="名称" required>
<el-input v-model="searchData.CompData.Name" size="small" :maxlength="10"></el-input>
</el-form-item>
<el-form-item label="字数">
<el-input type="text" v-model="searchData.CompData.WordsLength"
@keyup.native="checkInteger(searchData.CompData,'WordsLength')" size="small"></el-input>
</el-form-item>
<el-form-item label="提示文字">
<el-input type="textarea" v-model="searchData.CompData.Remark" size="small"></el-input>
</el-form-item>
<el-form-item label="是否必填">
<el-switch v-model="searchData.CompData.IsRequire">
</el-switch>
</el-form-item>
</el-form>
</div>
</div>
</template>
<script>
export default {
props: ["searchData", "index", "dataLeng"],
data() {
return {
};
},
created() {},
methods: {
//向父组件传值 并调用排序
resetSord(IsUp) {
this.$emit('getSord', this.index, IsUp);
},
//点击触发父组件删除
delPlugin() {
this.$emit('comDelPlugin', this.index);
}
},
mounted() {}
};
</script>
<template>
<div :class="{'active':searchData.isCked}">
<div class="diy-component-options" v-if="searchData.isCked">
<el-button type="primary" icon="el-icon-delete" style="left: -25px; top: 0px;" @click="delPlugin()"></el-button>
<el-button type="primary" icon="el-icon-document-copy" style="left: -25px; top: 30px;"></el-button>
<el-button type="primary" icon="el-icon-arrow-up" v-if="index>0" @click="resetSord(0)"
style="right: -25px; top: 0;"></el-button>
<el-button type="primary" icon="el-icon-arrow-down" v-if="index!=dataLeng-1" @click="resetSord(1)"
style="right: -25px; top: 30px;"></el-button>
</div>
<div class="diy-component-preview">
<div class="diy-search" style="min-height:91px;">
<el-form label-width="90px">
<el-form-item :label="searchData.CompData.Name" style="margin-bottom:0">
<div >
<template v-for="(item,index) in imgNum">
<img :key="index" src="../../../assets/img/default.png" style="width:80px;margin-right:20px;" alt="">
</template>
<div class="tradeRemark" style="margin-top:0;">{{searchData.CompData.Remark}}</div>
</div>
</el-form-item>
</el-form>
</div>
</div>
<div class="diy-component-edit" v-if="searchData.isCked">
<el-form label-width="100px">
<el-form-item label="名称" required>
<el-input v-model="searchData.CompData.Name" size="small"></el-input>
</el-form-item>
<el-form-item label="上传文件数量">
<el-input v-model="searchData.CompData.FileCount"
@keyup.native="checkInteger(searchData.CompData,'FileCount')" size="small"></el-input>
</el-form-item>
<el-form-item label="上传文件大小">
<el-input v-model="searchData.CompData.FileSizeLimit"
@keyup.native="checkInteger(searchData.CompData,'FileSizeLimit')" size="small"></el-input>
</el-form-item>
<el-form-item label="提示文字">
<el-input type="textarea" v-model="searchData.CompData.Remark" size="small"></el-input>
</el-form-item>
</el-form>
</div>
</div>
</template>
<script>
export default {
props: ["searchData", "index", "dataLeng"],
data() {
return {
imgNum:0
};
},
created() {},
watch:{
'searchData.CompData.FileCount'(val){
this.imgNum = parseInt(val);
}
},
methods: {
//向父组件传值 并调用排序
resetSord(IsUp) {
this.$emit('getSord', this.index, IsUp);
},
//点击触发父组件删除
delPlugin() {
this.$emit('comDelPlugin', this.index);
}
},
mounted() {}
};
</script>
This diff is collapsed.
This diff is collapsed.
<template>
<div class="brandClassification">
<div class="head-title">
自定义榜单报名表单
<el-button style="float:right;margin-top: -5px;" size="small" type="primary" @click="goRegistrationAdd(null)">
新增</el-button>
</div>
<div class="content">
<div>
<div class="searchInput" style="width:250px">
<el-input @keyup.enter.native="msg.pageIndex=1,getList()" @clear="msg.pageIndex=1,getList()"
style="display:inline-block;width:225px;height:30px" placeholder="表单名称" v-model="msg.FormName" size="small"
clearable>
</el-input>
<span @click="msg.pageIndex=1,getList()" class="el-icon-search"
style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
</div>
<el-table :data="tableData" v-loading="loading" border style="width: 100%;margin:20px 0">
<el-table-column prop="Id" label="编号" width="100">
</el-table-column>
<el-table-column prop="FormName" label="表单名称">
</el-table-column>
<el-table-column prop="FormTypeStr" width="150" label="类型">
</el-table-column>
<el-table-column prop="CreateDate" width="200" label="创建时间">
</el-table-column>
<el-table-column prop="" width="130" label="表单项目">
</el-table-column>
<el-table-column prop="address" width="200" label="操作">
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" content="编辑" placement="top" >
<img style="width:32px;height:32px" src="../../assets/img/userman/edit.png" @click="goRegistrationAdd(scope.row)" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="删除" placement="top-start" >
>
<img style="width:32px;height:32px;margin:0 10px" src="../../assets/img/userman/del.png" @click="delCustomForm(scope.row)" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="预览" placement="top-start">
<img style="width:32px;height:32px;margin:0 10px" src="../../assets/img/userman/icon-show.png" alt="">
</el-tooltip>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
:current-page.sync="msg.pageIndex" layout="total,prev, pager, next" :total="total">
</el-pagination>
</div>
</div>
</template>
<script>
export default {
components: {},
data() {
return {
msg: {
pageIndex: 1,
pageSize: 10,
FormName: '',
},
total: 0,
tableData: [], //数据列表
loading: false
};
},
created() {
this.getList();
},
methods: {
getList() {
this.loading = true;
this.apipost("/api/CustomForm/GetCustomFormPage", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
let pageData = res.data.data.pageData;
this.tableData = pageData;
}
})
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
//删除自定义表单
delCustomForm(item) {
let that = this;
that.Confirm("是否删除?", function () {
that.apipost(
"/api/CustomForm/RemoveCustomeForm", {
Id: item.Id,
},
res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.getList();
} else {
that.Error(res.data.message);
}
},
);
});
},
//新增组件
goRegistrationAdd(item) {
var obj = {
blank: "y",
};
if (item) {
obj = {
blank: "y",
Id: item.Id,
};
}
this.$router.push({
name: "registrationAdd",
query: obj,
});
}
},
mounted() {}
};
</script>
<style>
.brandClassification .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
</style>
......@@ -284,6 +284,22 @@
>
<i class="el-icon-menu"></i><span>心愿列表</span>
</li>
<li
class="menu_item"
:class="{ Fchecked: isChecked == '/billboardList' }"
@click="(isChecked = '/billboardList'), CommonJump('billboardList')"
>
<i class="el-icon-menu"></i><span>榜单管理</span>
</li>
<li
class="menu_item"
:class="{ Fchecked: isChecked == 'registrationLogin' }"
@click="
(isChecked = 'registrationLogin'), CommonJump('registrationLogin')
"
>
<i class="el-icon-menu"></i><span>榜单报名表单</span>
</li>
<li
class="menu_item"
:class="{ Fchecked: isChecked == '/prizeMange' }"
......
......@@ -80,6 +80,16 @@ export default new Router({
name: 'setdiyplug',
component: resolve => require(['@/components/system/setdiyplug'], resolve),
},
{
path: '/formplug', //表单组件
name: 'formplug',
component: resolve => require(['@/components/system/formplug'], resolve),
},
{
path: '/setformplug', //设置表单组件
name: 'setformplug',
component: resolve => require(['@/components/system/setformplug'], resolve),
},
]
},
{
......@@ -712,6 +722,18 @@ export default new Router({
name: 'newsList',
component: resolve => require(['@/components/tradePavilion/newsList'], resolve),
},
//贸易管理--榜单报名
{
path: '/registrationLogin',
name: 'registrationLogin',
component: resolve => require(['@/components/tradePavilion/registrationLogin'], resolve),
},
//贸易管理--新增榜单报名
{
path: '/registrationAdd',
name: 'registrationAdd',
component: resolve => require(['@/components/tradePavilion/registrationAdd'], resolve),
},
//贸易管理--服务类型
{
path: '/serviceTypeList',
......@@ -796,6 +818,32 @@ export default new Router({
name: 'prizeMange',
component: resolve => require(['@/components/tradePavilion/prizeMange'], resolve),
},
//贸易管理--榜单管理
{
path: '/billboardList',
name: 'billboardList',
component: resolve => require(['@/components/tradePavilion/billboardList'], resolve),
},
//贸易管理--新增/修改榜单
{
path: '/addbillboard',
name: 'addbillboard',
component: resolve => require(['@/components/tradePavilion/addbillboard'], resolve),
},
//贸易管理--报名列表
{
path: '/listRegistration',
name: 'listRegistration',
component: resolve => require(['@/components/tradePavilion/listRegistration'], resolve),
},
//贸易管理--放榜页面
{
path: '/publishAlist',
name: 'publishAlist',
component: resolve => require(['@/components/tradePavilion/publishAlist'], resolve),
},
]
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment