提交 33354934 编写于 作者: bo.dang's avatar bo.dang

广告位配置和排行榜配置

上级 71b59a59
......@@ -317,6 +317,14 @@
return;
}
if(!vm.checkName()){
return;
}
if(!vm.checkParamList()){
return;
}
saveCircleAds(req).then(function (res) {
if(res.code == "000000") {
vm.$message.success("保存成功!");
......@@ -600,6 +608,41 @@
vm.formData.adModuleDto.paramFlag = paramFlag
// }
// }
},
checkName(){
if(vm.formData.adModuleDto.linkType == 4 && vm.formData.adModuleDto.name == ""){
vm.$message.error("请选择模块!");
return false;
}
else {
return true;
}
},
checkParamList(){
if(vm.formData.adModuleDto.linkType == 4 && vm.formData.adModuleDto.name != ""){
if(vm.formData.adModuleDto.paramList.length == 0){
vm.$message.error("请选择参数!");
return false;
}
else {
for(let i = 0; i < vm.formData.adModuleDto.paramList.length; i++){
if(vm.formData.adModuleDto.paramList[i].value == ""){
vm.$message.error("请选择参数!");
return false;
}
}
}
return true;
}
else {
return true;
}
}
}
}
......
......@@ -17,18 +17,18 @@
<el-form-item label="最多上榜人数" class="required-label" v-if="formData.rankShowFlag == 1">
<el-radio-group v-model="formData.maxQuantity" size="small" class="required-label">
<el-radio :label="50">50</el-radio>
<el-radio :label="100">100</el-radio>
<el-radio :label="200">200</el-radio>
<el-radio :label="50"></el-radio>
<el-radio :label="100"></el-radio>
<el-radio :label="200"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="榜单类型" class="required-label" v-if="formData.rankShowFlag == 1">
<el-checkbox-group v-model.array="formData.rankTypeList" @change="changeRankType">
<el-checkbox-group v-model="rankTypeList" @change="changeRankType">
<!--<el-checkbox size="small" :label="1">本院排行</el-checkbox>-->
<!--<el-checkbox size="small" :label="3">本市排行</el-checkbox>-->
<!--<el-checkbox size="small" :label="5">本圈排行</el-checkbox>-->
<el-checkbox v-for="item in formData.selectedRankTypeList" :key="item.id" :label="item.id">{{item.name}}</el-checkbox>
<el-checkbox v-for="item in selectedRankTypeList" :key="item.id" :label="item.id">{{item.name}}</el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item label="显示规则" class="required-label" v-if="formData.rankShowFlag == 1">
......@@ -40,7 +40,7 @@
<el-form-item label="规则跳转模块" v-if="formData.rankShowFlag == 1 && formData.ruleShowFlag == 1" class="required-label">
<el-select @focus="moduleIndex(index)" filterable v-model="formData.rankModule.name" @change="moduleChange" placeholder="请选择模块" style="width:88%">
<el-select filterable v-model="formData.rankModule.name" @change="moduleChange" placeholder="请选择模块" style="width:88%">
<el-option
v-for="item2 in moduleArray.nameList"
:key="item2.id"
......@@ -63,26 +63,25 @@
</div>
<el-form-item label="不参与排行的成员" v-if="formData.rankShowFlag == 1">
<div v-for="(item, index) in formData.mobilePhones" :key="index">
<div v-for="(item, index) in mobilePhonesArray" :key="index">
<el-row>
<el-col :span="10">
<el-form-item label="手机号" label-width="80px">
<el-input maxlength="11"
size="small"
v-model="item.phone"
v-model="item.value"
placeholder="请输入手机号"
style="width:85%;"
type="text"
></el-input>
</el-form-item>
</el-col>
<el-col :span="2">
<img
@click="addGuest(index)"
@click="addPhone(index)"
class="edit-img"
src="../../assets/image/plus.png"
/>
<img
@click="delGuest(index)"
@click="delPhone(index)"
v-if="index >= 1"
class="edit-img"
src="../../assets/image/trash.png"
......@@ -96,7 +95,7 @@
<div style="margin-top: 60px;margin-left: 250px;">
<el-button type="primary" @click="save()" center>保存</el-button>
<el-button @click="cancle()">取 消</el-button>
<!--<el-button @click="cancle()">取 消</el-button>-->
</div>
</el-form>
......@@ -106,11 +105,8 @@
import { openLoading, closeLoading } from "../../utils/utils";
import { doUpload, getFilePath } from "../../utils/qiniu-util";
import { getParamData, getModuleData, getRankConfig, saveRankConfig } from "../../utils/yqrange/yqrangeApi";
import Cropper from '@/components/common/cropper.vue'
export default {
name: "baseinfo",
components: {
Cropper
},
created() {
vm = this;
......@@ -138,21 +134,21 @@
}
};
return {
showCropper: false,
moduleArray: [],
rankTypeList:[],
mobilePhonesArray:[],
selectedRankTypeList:[{id: "", name: ""}],
formData: {
circleId: this.$route.query.id,
rankShowFlag: 0,
maxQuantity: 50,
rankTypeList:[],
selectedRankTypeList:[{id: "", name: ""}],
orgRankFlag: 0,
cityRankFlag: 0,
groupRankFlag: 0,
groupRankFlag: 1,
ruleShowFlag: 0,
mobilePhones: [],
rankModule: {
linkType: 8, // 跳转类型:1 链接,4 模块, 8 无跳转
linkType: 4, // 跳转类型:1 链接,4 模块, 8 无跳转
name: "", // 模块名称
paramFlag: 0, // 是否有参数标志1为有2为没有参数
paramList: [
......@@ -168,83 +164,12 @@
type: 0 // 类型:1 列表页,4 详情页
}
},
linkSelect: [], // 连接类型数组
currentOption: {
offset_x: 120,
offset_y: 185,
width: 160,
height: 120,
cvWidth: 1000,
cvHeight: 800,
uploadType: 1,
cropDialogWidth: '900px',
cropBoxResizable: true,
minCropBoxWidth: 100,
minCropBoxHeight: 100,
aspectRatio: 16/9
},
slide2: {
oriUrl: '', // 原图
},
rules: {
name: [
{ required: true, message: "请输入圈子名称", trigger: "blur" },
{
min: 2,
max: 14,
message: "输入长度为2-14的内容,可包含中英文、数字及特殊符号",
trigger: "blur"
},
{ validator: checkProjectStr, trigger: "blur" }
],
introduce: [
{ required: true, message: "请输入圈子介绍", trigger: "blur" },
{
min: 2,
max: 40,
message: "输入长度为2-40的内容,可包含中英文、数字及特殊符号",
trigger: "blur"
},
{ validator: checkProjectStr, trigger: "blur" }
],
headUrl: [
{ required: true, message: "请选择圈子头像", trigger: "blur" }
],
dynamicFlag: [
{ required: true, message: "请选择内容发布权限", trigger: "blur" },
],
type: [
{ required: true, message: "请选择圈子类型", trigger: "blur" },
],
deptId: [
{ required: true, message: "请选择对接部门", trigger: "blur" }
]
},
imgMouseOver1: false,
uploadImgMessage1: false,//未上传图片,校验提示语
contentList: [
{
value: 1,
label: '所有人可发布'
}, {
value: 2,
label: '管理员可发布'
},
],
deptList: [
{
value: 1,
label: '铁军部'
}, {
value: 2,
label: '医疗事业部'
},{
value: 3,
label: '商业化部'
},
],
deptFlag: false,
shareFlag: false
uploadImgMessage1: false //未上传图片,校验提示语
}
},
......@@ -262,29 +187,29 @@
if(res.code == "000000") {
vm.formData = res.data;
vm.formData.selectedRankTypeList = new Array();
vm.formData.rankTypeList = new Array();
vm.selectedRankTypeList = new Array();
vm.rankTypeList = new Array();
vm.formData.selectedRankTypeList.push({id: 1, name: "本院排行"});
vm.formData.selectedRankTypeList.push({id: 3, name: "本市排行"});
vm.formData.selectedRankTypeList.push({id: 5, name: "本圈排行"});
vm.selectedRankTypeList.push({id: 1, name: "本院排行"});
vm.selectedRankTypeList.push({id: 3, name: "本市排行"});
vm.selectedRankTypeList.push({id: 5, name: "本圈排行"});
if(vm.formData.orgRankFlag == 1){
vm.formData.rankTypeList.push(1);
vm.rankTypeList.push(1);
}
// vm.formData.rankTypeList.push(1);
// vm.rankTypeList.push(1);
if(vm.formData.cityRankFlag == 1){
vm.formData.rankTypeList.push(3);
vm.rankTypeList.push(3);
}
if(vm.formData.groupRankFlag == 1){
vm.formData.rankTypeList.push(5);
vm.rankTypeList.push(5);
}
if(vm.formData.rankModule == null){
vm.formData.rankModule = {
linkType: 8, // 跳转类型:1 链接,4 模块, 8 无跳转
linkType: 4, // 跳转类型:1 链接,4 模块, 8 无跳转
name: "", // 模块名称
paramFlag: 0, // 是否有参数标志1为有2为没有参数
paramList: [
......@@ -300,6 +225,16 @@
type: 0 // 类型:1 列表页,4 详情页
}
}
if(vm.formData.mobilePhones == null || vm.formData.mobilePhones.length == 0){
vm.formData.mobilePhones = [{}];
vm.mobilePhonesArray = vm.formData.mobilePhones;
}
else {
vm.mobilePhonesArray = new Array();
for(let i = 0; i < vm.formData.mobilePhones.length; i++){
vm.mobilePhonesArray.push({value: vm.formData.mobilePhones[i]});
}
}
vm.getModuleData();
}
......@@ -325,6 +260,46 @@
submitForm() {
let req = vm.formData;
if(vm.mobilePhonesArray != null){
vm.formData.mobilePhones = new Array();
for(let i = 0; i < vm.mobilePhonesArray.length; i++){
vm.formData.mobilePhones.push(vm.mobilePhonesArray[i].value);
}
}
if(!vm.checkRankTypeList()){
return;
}
if(!vm.checkRankName()){
return;
}
if(!vm.checkParamList()){
return;
}
if(vm.formData.ruleShowFlag == 0){
vm.formData.rankModule = {
linkType: 4, // 跳转类型:1 链接,4 模块, 8 无跳转
name: "", // 模块名称
paramFlag: 0, // 是否有参数标志1为有2为没有参数
paramList: [
{
id: "",
seqNo: '', // 选择参数的索引值
value: '',
key: '', // 参数名称,默认param
type:'' // 模块参数类型:1 int类型字符串 4String类型 8时间戳类型字符串
}
],
paramList2: [],
type: 0 // 类型:1 列表页,4 详情页
};
}
saveRankConfig(req).then(function (res) {
if(res.code == "000000") {
vm.$message.success("保存成功!");
......@@ -337,16 +312,16 @@
changeRankType(value){
if(vm.formData.rankTypeList != null){
for(let i = 0; i < vm.formData.rankTypeList.length; i++){
if(vm.formData.rankTypeList[i] == 1){
if(vm.rankTypeList != null){
for(let i = 0; i < vm.rankTypeList.length; i++){
if(vm.rankTypeList[i] == 1){
vm.formData.orgRankFlag = 1;
}
if(vm.formData.rankTypeList[i] == 3){
if(vm.rankTypeList[i] == 3){
vm.formData.cityRankFlag = 1;
}
if(vm.formData.rankTypeList[i] == 5){
if(vm.rankTypeList[i] == 5){
vm.formData.groupRankFlag = 1;
}
}
......@@ -358,12 +333,6 @@
save(){
this.submitForm();
},
cancle(){
const _this = this;
setTimeout(function () {
_this.$router.go(-1)
}, 100);
},
// 获取模块下拉数据
getModuleData() {
......@@ -487,9 +456,9 @@
}
},
moduleIndex(index) {
vm.moduleIndexValue = index
},
// moduleIndex(index) {
// vm.moduleIndexValue = index
// },
getCodeAndType(code,type,paramFlag) {
// for(let i = 0; i < vm.tabContent.length; i++) {
......@@ -499,8 +468,83 @@
vm.formData.rankModule.paramFlag = paramFlag
// }
// }
}
},
addPhone(index){
if(vm.formData.mobilePhones == null || vm.formData.mobilePhones.length == 0){
vm.$message.error("请输入正确的手机号!");
return;
}
else {
for(let i = 0; i < vm.formData.mobilePhones.length; i++){
if(vm.formData.mobilePhones[i] == null || vm.formData.mobilePhones[i] == ""){
vm.$message.error("请输入正确的手机号!");
return;
}
else {
if(!vm.checkPhone(vm.formData.mobilePhones[i])){
vm.$message.error("请输入正确的手机号!");
return;
}
}
}
}
vm.formData.mobilePhones.push("");
},
delPhone(index){
vm.formData.mobilePhones.splice(index, 1);
},
checkPhone(val) {
if(!(/^1[3456789]\d{9}$/.test(val))) {
return false;
} else {
return true;
}
},
checkRankTypeList(){
if(vm.rankTypeList == null || vm.rankTypeList.length == 0){
vm.$message.error("请选择榜单类型!");
return false;
}
else {
return true;
}
},
checkRankName(){
if(vm.formData.ruleShowFlag == 1 && vm.formData.rankModule.name == ""){
vm.$message.error("请选择规则跳转模块!");
return false;
}
else {
return true;
}
},
checkParamList(){
if(vm.formData.ruleShowFlag == 1 && vm.formData.rankModule.name != ""){
if(vm.formData.rankModule.paramList.length == 0){
vm.$message.error("请选择参数!");
return false;
}
else {
for(let i = 0; i < vm.formData.rankModule.paramList.length; i++){
if(vm.formData.rankModule.paramList[i].value == ""){
vm.$message.error("请选择参数!");
return false;
}
}
}
return true;
}
else {
return true;
}
}
}
}
</script>
......
......@@ -237,7 +237,7 @@ export const getRankConfig = (params) => {
export const saveRankConfig = (params) => {
return fetch({
headers,
url: getBaseUrl(`circle/rank/save`),
url: getBaseUrl(`circle/rank/config/save`),
method: 'post',
data: params,
description: '保存排行榜配置',
......
......@@ -21,10 +21,10 @@
<el-tab-pane label="应用配置" name="fourth">
<range-setting></range-setting>
</el-tab-pane>
<el-tab-pane label="广告位管理" name="five">
<el-tab-pane label="广告位管理" name="five" v-if="idType == 1">
<ads-manage></ads-manage>
</el-tab-pane>
<el-tab-pane label="排行榜管理" name="six">
<el-tab-pane label="排行榜管理" name="six" v-if="idType == 1">
<gp-ranking></gp-ranking>
</el-tab-pane>
</el-tabs>
......@@ -81,11 +81,14 @@ export default {
circleId: null,
name: "",
active: 0,
roleType: ''
roleType: '',
idType: ''
}
},
created() {
const {id, name, activeName, roleType} = this.$route.query;
// this.idType = localStorage.getItem('storageIdType');
this.idType = 1;// TODO
this.circleId = id;
this.name = name;
this.activeName = activeName;
......
......@@ -167,7 +167,8 @@ export default {
settingForm:{
circleId: null,
settingData: []
}
},
idType: ""
}
},
created() {
......@@ -179,21 +180,21 @@ export default {
tabChangeHandler(tab) {},
initPrivilege(){
let idType = localStorage.getItem('storageIdType');
this.idType = localStorage.getItem('storageIdType');
// if(idType == null || idType == ""){
// idType = 2;
// localStorage.setItem('storageIdType', idType);
// }
this.searchForm.userType = idType;
this.searchForm.userType = this.idType;
// 内部用户:运营人员
if(idType == "1"){
if(this.idType == "1"){
this.showAllFlag = true;
this.showNewFlag = true;
this.showApplyFlag = true;
}
// 外部用户
else if(idType == "2"){
else if(this.idType == "2"){
this.showAllFlag = false;
setTimeout(() => {
this.getUserAuth();
......@@ -355,7 +356,7 @@ export default {
id: row.id,
name: row.name,
activeName: 'first',
roleType: row.roleId
roleType: row.roleId,
}
})
},
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册