Commit b861c471 authored by 黄奎's avatar 黄奎

页面修改

parent ac040861
......@@ -50,16 +50,14 @@
</el-form-item>
<el-form-item label="底部版权链接">
<el-input style="width:250px" size="small" maxlength="200" :disabled="true"
v-model="copyRightMsg.CopyRightLink" class="input-with-select">
<el-button slot="append" icon="el-icon-search" @click="isShowLink=true"></el-button>
</el-input>
v-model="copyRightMsg.CopyRightLink" />
<el-button plain size="small" @click="isShowLink=true">选择链接</el-button>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="UpdateCopyRight()">确 定</el-button>
</span>
</div>
<!--v-on:childHotel="childHotelList"-->
<el-dialog title="选择链接" :visible.sync="isShowLink" width="800px">
<chooseMeun ref="chooseMeun">
</chooseMeun>
......@@ -97,8 +95,8 @@
getMenu() {
//调用子组件方法
var obj = this.$refs.chooseMeun.getChooseMenu();
this.copyRightMsg.CopyRightLink=obj.PageUrl;
this.isShowLink=false;
this.copyRightMsg.CopyRightLink = obj.PageUrl;
this.isShowLink = false;
},
//选择图片
UploadImage(file) {
......
......@@ -13,26 +13,27 @@
<el-input style="display:inline-block;width:225px;height:30px" placeholder="请输入搜索内容"
v-model="msg.NavIconName" size="small" clearable @keyup.enter.native="msg.pageIndex=1,getList()">
</el-input>
<span class="el-icon-search" style="color:#979dad;font-size:14px;position:relative;top:1px" @click="msg.pageIndex=1,getList()"> </span>
<span class="el-icon-search" style="color:#979dad;font-size:14px;position:relative;top:1px"
@click="msg.pageIndex=1,getList()"> </span>
</div>
</div>
<el-table :data="dataList" v-loading="loading" border style="width: 100%;margin:20px 0">
<el-table-column prop="NavIconId" label="编号" width="100">
<el-table-column prop="NavIconId" label="编号" width="150">
</el-table-column>
<el-table-column prop="NavIconName" width="120" label="名称">
<el-table-column prop="NavIconName" width="200" label="名称">
</el-table-column>
<el-table-column label="导航图标" width="80">
<el-table-column label="导航图标" width="300">
<template slot-scope="scope">
<img :src="scope.row.NavIconImg">
<img :src="scope.row.NavIconImg" style="width:270px;height:60px;">
</template>
</el-table-column>
<el-table-column prop="NavIconUrl" label="导航链接">
<el-table-column prop="NavIconUrl" label="导航链接" width="250">
</el-table-column>
<el-table-column prop="NavIconSort" label="排序" width="180">
<el-table-column prop="NavIconSort" label="排序" width="120">
</el-table-column>
<el-table-column prop="NavIconIsShowStr" label="是否显示" width="120">
</el-table-column>
<el-table-column width="220" label="操作">
<el-table-column label="操作">
<template slot-scope="scope">
<el-button size="mini" type="info" plain @click="EditNavIcon(scope.row)">编辑 </el-button>
<el-button size="mini" type="info" plain @click="RemmoveNavIcon(scope.row)">删除</el-button>
......@@ -73,8 +74,8 @@
</div>
</el-form-item>
<el-form-item label="导航链接" prop="NavIconUrl">
<el-input v-model="addMsg.NavIconUrl" class="w400" size="small" maxlength="100" />
<el-button plain size="small">选择链接</el-button>
<el-input v-model="addMsg.NavIconUrl" class="w400" size="small" maxlength="100" :disabled="true" />
<el-button plain size="small" @click="isShowLink=true">选择链接</el-button>
</el-form-item>
<el-form-item label="是否显示">
<el-switch v-model="addMsg.NavIconIsShow" :active-value="1" :inactive-value="0"></el-switch>
......@@ -84,9 +85,18 @@
<el-button size="small" style="margin-top:20px;padding:9px 25px;" type="primary" @click="submitform('addMsg')">保存
</el-button>
</template>
<el-dialog title="选择链接" :visible.sync="isShowLink" width="800px">
<chooseMeun ref="chooseMeun">
</chooseMeun>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="isShowLink=false">取 消</el-button>
<el-button size="small" type="danger" @click="getMenu()">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import chooseMeun from "../common/chooseMeun.vue";
export default {
data() {
let validataNavIconImg = (rule, value, callback) => {
......@@ -97,6 +107,8 @@
}
}
return {
//是否线下链接弹窗
isShowLink: false,
loading: false,
dataList: [],
msg: {
......@@ -140,10 +152,19 @@
},
};
},
components: {
chooseMeun
},
created() {
},
methods: {
getMenu() {
//调用子组件方法
var obj = this.$refs.chooseMeun.getChooseMenu();
this.addMsg.NavIconUrl = obj.PageUrl;
this.isShowLink = false;
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
......
<style>
.wexinappconfig .mimitBody {
padding: 20px;
background-color: #fff;
margin: 10px 0 20px 0;
display: table;
width: 100%;
}
.wexinappconfig .mimitList {
margin-bottom: 15px;
display: flex;
flex-direction: row;
}
.wexinappconfig .mimitBody .el-tag {
min-width: 120px;
padding-right: 50px;
}
.wexinappconfig .el-button--small {
padding: 9px 25px;
}
</style>
<template>
<div class="wexinappconfig">
<div class="CommonHeader">微信小程序配置</div>
<div class="mimitBody">
<el-form :model="appConfig" ref="appConfig" label-width="150px">
<el-form-item label="小程序AppId">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appConfig.MiniAppId">
</el-input>
</el-form-item>
<el-form-item label="小程序appSecret">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appConfig.MiniAppSecret">
</el-input>
</el-form-item>
<el-form-item label="微信支付商户号">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appConfig.WeChatPayMerchants">
</el-input>
</el-form-item>
<el-form-item label="微信支付Api密钥">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appConfig.WeChatApiSecret">
</el-input>
</el-form-item>
<el-form-item label="微信支付apiclient_cert.pem">
<el-input type="textarea" :rows="2" style="width:250px" size="small" maxlength="1000"
v-model="appConfig.WeChatPayCertificate">
</el-input>
</el-form-item>
<el-form-item label="微信支付apiclient_key.pem">
<el-input type="textarea" :rows="2" style="width:250px" size="small" maxlength="1000"
v-model="appConfig.WeChatPayPrivateKey">
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="UpdateAppConfig()">确 定</el-button>
</span>
</div>
</div>
</template>
<script>
export default {
data() {
return {
//修改配置MSG
appConfig: {
MallBaseId: 0, //小程序Id
MiniAppId: "", //小程序AppId
MiniAppSecret: "", //小程序AppSecret
WeChatPayMerchants: "", //微信支付商户号
WeChatApiSecret: "", //微信支付Api密钥
WeChatPayCertificate: "", //微信支付证书
WeChatPayPrivateKey: "", //微信支付私钥
},
};
},
created() {
},
methods: {
//版权信息
GetWeiXinAppConfig() {
this.appConfig.MallBaseId = this.getLocalStorage().MallBaseId;
this.apipost("/api/Tenant/GetMiniPrograme", {
MallBaseId: this.appConfig.MallBaseId,
}, res => {
if (res.data.resultCode == 1) {
this.appConfig.MiniAppId = res.data.data.MiniAppId;
this.appConfig.MiniAppId = res.data.data.MiniAppId;
this.appConfig.MiniAppSecret = res.data.data.MiniAppSecret;
this.appConfig.WeChatPayMerchants = res.data.data.WeChatPayMerchants;
this.appConfig.WeChatApiSecret = res.data.data.WeChatApiSecret;
this.appConfig.WeChatPayCertificate = res.data.data.WeChatPayCertificate;
this.appConfig.WeChatPayPrivateKey = res.data.data.WeChatPayPrivateKey;
} else {
this.Info(res.data.message);
}
})
},
//修改版权
UpdateAppConfig() {
this.apipost("/api/Tenant/SetMiniProgramAppConfig", this.appConfig, res => {
if (res.data.resultCode == 1) {
this.GetWeiXinAppConfig();
this.Success("操作成功!");
} else {
this.Info(res.data.message);
}
})
},
},
mounted() {
this.GetWeiXinAppConfig();
}
};
</script>
<style>
.wexinappconfig .mimitBody {
padding: 20px;
background-color: #fff;
margin: 10px 0 20px 0;
display: table;
width: 100%;
}
.wexinappconfig .mimitList {
margin-bottom: 15px;
display: flex;
flex-direction: row;
}
.wexinappconfig .mimitBody .el-tag {
min-width: 120px;
padding-right: 50px;
}
.wexinappconfig .el-button--small {
padding: 9px 25px;
}
</style>
<template>
<div class="wexinappconfig">
<div class="CommonHeader">商城订阅消息</div>
<div class="mimitBody">
<el-form :model="appMallSubscribeMsg" ref="appMallSubscribeMsg" label-width="150px">
<el-form-item label="下单成功提醒(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallSubscribeMsg.OrderSuccessTpl">
</el-input>
</el-form-item>
<el-form-item label="订单取消通知(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallSubscribeMsg.OrderCancelTpl">
</el-input>
</el-form-item>
<el-form-item label="订单发货通知(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallSubscribeMsg.OrderDeliverGoodsTpl">
</el-input>
</el-form-item>
<el-form-item label="退款通知(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallSubscribeMsg.RefundTpl">
</el-input>
</el-form-item>
<el-form-item label="活动状态通知(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallSubscribeMsg.ActiveStateTpl">
</el-input>
</el-form-item>
<el-form-item label="审核结果通知(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallSubscribeMsg.AuditResultTpl">
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="UpdateMallSubscribeMsg()">确 定</el-button>
</span>
</div>
<div class="CommonHeader">分销订阅消息</div>
<div class="mimitBody">
<el-form :model="appMallDistributionMsg" ref="appMallDistributionMsg" label-width="150px">
<el-form-item label="提现成功通知(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallDistributionMsg.ReflectSuccessTpl">
</el-input>
</el-form-item>
<el-form-item label="提现失败通知(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallDistributionMsg.ReflectFailTpl">
</el-input>
</el-form-item>
<el-form-item label="会员等级变更通知(类目: 服装/鞋/箱包 )">
<el-input type="text" style="width:250px" size="small" maxlength="200" v-model="appMallDistributionMsg.MembersLevelChangeTpl">
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="UpdateMallDistributionMsg()">确 定</el-button>
</span>
</div>
</div>
</template>
<script>
export default {
data() {
return {
//商城订阅消息
appMallSubscribeMsg: {
MallBaseId: 0, //小程序Id
OrderSuccessTpl: "", //下单成功提醒(类目:服装/鞋/箱包)
OrderCancelTpl: "", //订单取消提醒(类目:服装/鞋/箱包)
OrderDeliverGoodsTpl: "", //订单发货提醒(类目:服装/鞋/箱包)
RefundTpl: "", //退款提醒(类目:服装/鞋/箱包)
ActiveStateTpl: "", //活动状态提醒(类目:服装/鞋/箱包)
AuditResultTpl: "", //审核结果提醒(类目:服装/鞋/箱包)
},
//分销订阅消息
appMallDistributionMsg: {
MallBaseId: 0, //小程序Id
ReflectSuccessTpl: "", //提现成功通知(类目: 服装/鞋/箱包 )
ReflectFailTpl: "", //提现失败通知(类目: 服装/鞋/箱包 )
MembersLevelChangeTpl: "", //会员等级变更通知(类目: 服装/鞋/箱包 )
},
};
},
created() {
},
methods: {
//版权信息
GetWeiXinAppConfig() {
this.appMallSubscribeMsg.MallBaseId = this.getLocalStorage().MallBaseId;
this.appMallDistributionMsg.MallBaseId = this.getLocalStorage().MallBaseId;
this.apipost("/api/Tenant/GetMiniPrograme", {
MallBaseId: this.getLocalStorage().MallBaseId,
}, res => {
if (res.data.resultCode == 1) {
//商城订阅消息
this.appMallSubscribeMsg.OrderSuccessTpl = res.data.data.OrderSuccessTpl;
this.appMallSubscribeMsg.OrderCancelTpl = res.data.data.OrderCancelTpl;
this.appMallSubscribeMsg.OrderDeliverGoodsTpl = res.data.data.OrderDeliverGoodsTpl;
this.appMallSubscribeMsg.RefundTpl = res.data.data.RefundTpl;
this.appMallSubscribeMsg.ActiveStateTpl = res.data.data.ActiveStateTpl;
this.appMallSubscribeMsg.AuditResultTpl = res.data.data.AuditResultTpl;
//分销订阅消息
this.appMallDistributionMsg.ReflectSuccessTpl = res.data.data.ReflectSuccessTpl;
this.appMallDistributionMsg.ReflectFailTpl = res.data.data.ReflectFailTpl;
this.appMallDistributionMsg.MembersLevelChangeTpl = res.data.data.MembersLevelChangeTpl;
} else {
this.Info(res.data.message);
}
})
},
//修改商城订阅消息
UpdateMallSubscribeMsg() {
this.apipost("/api/Tenant/SetMiniProgramMallSubscribe", this.appMallDistributionMsg, res => {
if (res.data.resultCode == 1) {
this.GetWeiXinAppConfig();
this.Success("操作成功!");
} else {
this.Info(res.data.message);
}
})
},
//修改分销订阅配置信息
UpdateMallDistributionMsg() {
this.apipost("/api/Tenant/SetMiniProgramMallDistribution", this.appMallSubscribeMsg, res => {
if (res.data.resultCode == 1) {
this.GetWeiXinAppConfig();
this.Success("操作成功!");
} else {
this.Info(res.data.message);
}
})
},
},
mounted() {
this.GetWeiXinAppConfig();
}
};
</script>
<template>
<div class="chooseMeun">
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane v-for="(item,index) in dataList" :label="item.PageTypeName" :name="item.PageTypeId+''" :key="index">
<template v-for="(subItem,subIndex) in item.SubMenuList">
<div :key="subIndex">
<el-checkbox v-model="subItem.IsChecked" :key="subIndex" @change="checkMenuChange(subItem)">
<span v-if="subItem.SelfPageName">{{subItem.SelfPageName}}</span>
<span v-else>{{subItem.PageName}} </span>
</el-checkbox>
</div>
</template>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
export default {
data() {
return {
dataList: [],
activeName: "1"
};
},
created() {},
methods: {
//复选框选择
checkMenuChange(subItem) {
if (this.dataList && this.dataList.length > 0) {
this.dataList.forEach(item => {
if (item.SubMenuList && item.SubMenuList.length > 0) {
item.SubMenuList.forEach(subItem => {
subItem.IsChecked = false;
})
}
});
}
subItem.IsChecked = !subItem.IsChecked;
},
//获取选择的菜单
getChooseMenu() {
var obj = {
PageUrl: "",
IsParameter: 0,
ParameterValue: ""
};
if (this.dataList && this.dataList.length > 0) {
this.dataList.forEach(item => {
if (item.SubMenuList && item.SubMenuList.length > 0) {
item.SubMenuList.forEach(subItem => {
if (subItem.IsChecked) {
obj.PageUrl = subItem.PageUrl;
obj.IsParameter = subItem.IsParameter;
obj.ParameterValue = subItem.ParameterValue;
}
})
}
});
}
return obj;
},
handleClick(tab, event) {},
//获取所有菜单
getList() {
this.apipost("/api/Tenant/GetMiniprogramPageListExt", {}, res => {
if (res.data.resultCode == 1) {
var dataArray = res.data.data;
if (dataArray && dataArray.length > 0) {
dataArray.forEach(item => {
if (item.SubMenuList && item.SubMenuList.length > 0) {
item.SubMenuList.forEach(subItem => {
subItem.IsChecked = false;
})
}
});
}
this.dataList = dataArray;
} else {
this.Info(res.data.message);
}
})
},
},
mounted() {
this.getList();
}
};
</script>
......@@ -169,6 +169,18 @@ export default new Router({
name: 'copyrightset',
component: resolve => require(['@/components/StoreDesign/copyrightset'], resolve),
}
, //店铺管理 微信基础设置
{
path: '/wexinappconfig',
name: 'wexinappconfig',
component: resolve => require(['@/components/StoreDesign/wexinappconfig'], resolve),
}
, //店铺管理 微信基础设置
{
path: '/wexinappmsg',
name: 'wexinappmsg',
component: resolve => require(['@/components/StoreDesign/wexinappmsg'], 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