|
|
|
@ -18,7 +18,8 @@ |
|
|
|
<li v-for="(item, index) in indexList" :key="index" @tap="clickList(item)"> |
|
|
|
<view class="name"> |
|
|
|
<text>{{item.attributeName}}</text> |
|
|
|
<u-icon name="edit-pen-fill" size="22" v-if="item.attributeName != '默认属性'" @tap.stop="inputDialogToggle('edit', item)"></u-icon> |
|
|
|
<view style="width: 10px;"></view> |
|
|
|
<uni-icons type="compose" size="22" v-if="item.attributeName != '默认属性'" @tap.stop="inputDialogToggle('edit', item)"></uni-icons> |
|
|
|
</view> |
|
|
|
<button class="bj-btn" @tap.stop="goGategoryLow(item)">管理属性</button> |
|
|
|
</li> |
|
|
|
@ -26,27 +27,20 @@ |
|
|
|
</view> |
|
|
|
<u-modal :show="show" :title="'删除'" :content="'是否确认删除此属性?'" showCancelButton="true" @cancel="show = false" |
|
|
|
@confirm="delItemModal"></u-modal> |
|
|
|
<uni-popup ref="inputDialog" type="dialog"> |
|
|
|
<uni-popup-dialog ref="inputClose" mode="input" :title="dialogTit" :value="inputVal" placeholder="请输入名称" |
|
|
|
@confirm="dialogInputConfirm" @close="dialogClose"> |
|
|
|
</uni-popup-dialog> |
|
|
|
</uni-popup> |
|
|
|
|
|
|
|
<uni-popup ref="delDialog" background-color="#fff"> |
|
|
|
<view class="add-popup-content"> |
|
|
|
<view class="add-popup-content attr-name-popup"> |
|
|
|
<view class="add-popup-title"> |
|
|
|
<text>编辑属性</text> |
|
|
|
<uni-icons @tap='close' type="closeempty" color='red' size="16" |
|
|
|
style="height:40rpx;line-height: 40rpx;position: absolute !important;bottom:0;right: 30rpx;"></uni-icons> |
|
|
|
<uni-icons class="popup-close" @tap='close' type="closeempty" color='#777' size="18"></uni-icons> |
|
|
|
</view> |
|
|
|
<view class="add-popup-container"> |
|
|
|
<view style="width: 90%;margin: 40rpx auto 0;"> |
|
|
|
属性名称: |
|
|
|
<view class="form-field"> |
|
|
|
<view class="form-label">属性名称</view> |
|
|
|
<uni-easyinput type="text" v-model="inputVal" @blur="handleBlur" placeholder="请输入属性值" /> |
|
|
|
</view> |
|
|
|
<view style="width: 100%;height: 90rpx;line-height: 90rpx;text-align: center;border-radius: 0;color: #fff;display: flex;position: absolute;bottom: 0;"> |
|
|
|
<view style="flex: 1;background: linear-gradient(90deg, #60F3FF, #088FEB);" v-if="inputVal != '默认属性'" @tap="dialogDel">删除</view> |
|
|
|
<view style="flex: 1;background: linear-gradient(90deg, #FF9797, #FFC1E0);" @tap="dialogInputConfirm">确认</view> |
|
|
|
<view class="popup-actions"> |
|
|
|
<view class="popup-action danger" v-if="inputVal != '默认属性'" @tap="dialogDel">删除</view> |
|
|
|
<view class="popup-action primary" @tap="dialogInputConfirm">确认</view> |
|
|
|
</view> |
|
|
|
<!-- <ul> |
|
|
|
<li v-for="(item,index) in defaultList" :key="index"> |
|
|
|
@ -66,16 +60,16 @@ |
|
|
|
</uni-popup> |
|
|
|
<!-- 添加属性弹出层 --> |
|
|
|
<uni-popup ref="addTypeDialog" background-color="#fff"> |
|
|
|
<view class="add-popup-content"> |
|
|
|
<view class="add-popup-content attr-name-popup"> |
|
|
|
<view class="add-popup-title"> |
|
|
|
<text>新增属性</text> |
|
|
|
<uni-icons @tap='close' type="closeempty" color='red' size="16" |
|
|
|
style="height:40rpx;line-height: 40rpx;position: absolute !important;bottom:0;right: 30rpx;"></uni-icons> |
|
|
|
<uni-icons class="popup-close" @tap='close' type="closeempty" color='#777' size="18"></uni-icons> |
|
|
|
</view> |
|
|
|
<view class="add-popup-container"> |
|
|
|
|
|
|
|
<input type="text" v-model="typeText" style="width: 100%;border: 1px solid #eee;height: 80rpx;padding-left: 20rpx;margin:20rpx 0;font-size: 25rpx;line-height: 80rpx;" |
|
|
|
placeholder="请输入属性名称"> |
|
|
|
<view class="form-field"> |
|
|
|
<view class="form-label">属性名称</view> |
|
|
|
<input type="text" v-model="typeText" class="popup-input" placeholder="请输入属性名称"> |
|
|
|
</view> |
|
|
|
<!-- <ul> |
|
|
|
<li v-for="(item,index) in defaultList" :key="index"> |
|
|
|
<view class="title-fur"> |
|
|
|
@ -97,28 +91,32 @@ |
|
|
|
</uni-popup> |
|
|
|
|
|
|
|
<uni-popup ref="attrValueDialog" background-color="#fff"> |
|
|
|
<view class="add-popup-content" style="width: 640rpx;max-height: 600px;overflow: scroll;"> |
|
|
|
<view class="add-popup-content attr-value-popup"> |
|
|
|
<view class="add-popup-title"> |
|
|
|
<text>管理属性</text> |
|
|
|
<uni-icons @tap='close' type="closeempty" color='red' size="16" |
|
|
|
style="height:40rpx;line-height: 40rpx;position: absolute !important;bottom:0;right: 30rpx;"></uni-icons> |
|
|
|
<uni-icons class="popup-close" @tap='close' type="closeempty" color='#777' size="18"></uni-icons> |
|
|
|
</view> |
|
|
|
<view class="add-popup-container"> |
|
|
|
<view> |
|
|
|
<text style="color:red;font-size:22rpx;">*点击“+”号可新增专属自己店铺的属性值</text> |
|
|
|
<view class="popup-tip"> |
|
|
|
点击右侧“+”号可新增本店铺专属属性值 |
|
|
|
</view> |
|
|
|
<view style="display: flex;font-weight: 700;font-size: 16px;height: 50px;line-height: 50px;padding-right: 10px;"> |
|
|
|
<view style="flex: 1;"> |
|
|
|
<view class="attr-value-header"> |
|
|
|
<view class="attr-value-title"> |
|
|
|
属性列表 |
|
|
|
</view> |
|
|
|
<uni-icons type="plusempty" @tap="toggle()" color="#5fd9ee" size="20"></uni-icons> |
|
|
|
<view class="add-value-btn" @tap="toggle()"> |
|
|
|
<uni-icons type="plusempty" color="#00231C" size="18"></uni-icons> |
|
|
|
<text>新增</text> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<ul> |
|
|
|
<ul class="attr-value-list"> |
|
|
|
<li v-for="(item,index) in defaultList" :key="index"> |
|
|
|
<view class="title-fur"> |
|
|
|
<view class="name">{{item.value}}</view> |
|
|
|
<view class="btn" v-if="inputVal != '默认属性'" @tap="editValue(item)">修改</view> |
|
|
|
<view class="btn" v-if="inputVal != '默认属性'" @tap="delValue(item)">删除</view> |
|
|
|
<view class="value-actions" v-if="inputVal != '默认属性'"> |
|
|
|
<view class="btn" @tap="editValue(item)">修改</view> |
|
|
|
<view class="btn danger-text" @tap="delValue(item)">删除</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</li> |
|
|
|
</ul> |
|
|
|
@ -162,16 +160,23 @@ |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</uni-popup> |
|
|
|
<uni-popup ref="addDialog" type="dialog"> |
|
|
|
<uni-popup-dialog |
|
|
|
ref="addClose" |
|
|
|
mode="input" |
|
|
|
:title="'请输入属性名'" |
|
|
|
v-model="specVal" |
|
|
|
placeholder="请输入属性名称" |
|
|
|
@confirm="addSpec" |
|
|
|
@close="dialogClose"> |
|
|
|
</uni-popup-dialog> |
|
|
|
<uni-popup ref="addDialog" background-color="#fff"> |
|
|
|
<view class="add-popup-content value-edit-popup"> |
|
|
|
<view class="add-popup-title"> |
|
|
|
<text>{{isEdieValue ? '修改属性值' : '新增属性值'}}</text> |
|
|
|
<uni-icons class="popup-close" @tap='$refs.addDialog.close()' type="closeempty" color='#777' size="18"></uni-icons> |
|
|
|
</view> |
|
|
|
<view class="add-popup-container"> |
|
|
|
<view class="form-field"> |
|
|
|
<view class="form-label">属性值名称</view> |
|
|
|
<input type="text" v-model="specVal" class="popup-input" placeholder="请输入属性值名称"> |
|
|
|
</view> |
|
|
|
<view class="popup-actions"> |
|
|
|
<view class="popup-action plain" @tap="$refs.addDialog.close()">取消</view> |
|
|
|
<view class="popup-action primary" @tap="addSpec(specVal)">确认</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</uni-popup> |
|
|
|
</view> |
|
|
|
|
|
|
|
@ -356,28 +361,41 @@ |
|
|
|
this.$refs.addDialog.open() |
|
|
|
}, |
|
|
|
delValue(item){ |
|
|
|
this.tui.request("/app/productAttributeValue/delById", "post", { |
|
|
|
this.NB.sendRequest("/app/productAttributeValue/delById", { |
|
|
|
id: item.id |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.tui.toast("删除成功") |
|
|
|
uni.showToast({ |
|
|
|
title: "删除成功", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
this.goGategoryLow(this.editItem) |
|
|
|
this.$forceUpdate() |
|
|
|
} else { |
|
|
|
this.tui.toast("添加失败") |
|
|
|
uni.showToast({ |
|
|
|
title: "删除失败", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
}, |
|
|
|
//初始化获取属性列表 |
|
|
|
getGategoryList() { |
|
|
|
this.tui.request("/app/productAttribute/selectByCategoryId", "post", {categoryId:this.attrId}, false, true).then((res) => { |
|
|
|
this.NB.sendRequest("/app/productAttribute/selectByCategoryId", { |
|
|
|
categoryId:this.attrId |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.indexList = res.result; |
|
|
|
} else { |
|
|
|
this.tui.toast(res.message) |
|
|
|
uni.showToast({ |
|
|
|
title: res.message, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
}, |
|
|
|
//判断需要打开哪个弹窗(删除弹窗、取消弹窗) |
|
|
|
inputDialogToggle(type, item, parent) { |
|
|
|
@ -396,6 +414,9 @@ |
|
|
|
}, |
|
|
|
close(){ |
|
|
|
this.$refs.attrValueDialog.close() |
|
|
|
this.$refs.delDialog.close() |
|
|
|
this.$refs.addTypeDialog.close() |
|
|
|
this.$refs.addDialog.close() |
|
|
|
}, |
|
|
|
handleBlur(e){ |
|
|
|
this.inputVal = e.detail.value |
|
|
|
@ -406,17 +427,17 @@ |
|
|
|
//查询属性下有没有库存 |
|
|
|
getTypeToNum(id) { |
|
|
|
let that = this; |
|
|
|
this.tui.request("/app/stock/getlistByAttributeList", "post", { |
|
|
|
this.NB.sendRequest("/app/stock/getlistByAttributeList", { |
|
|
|
categoryId: id, |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
if (res.result != '') { |
|
|
|
this.goodsList = res.result |
|
|
|
this.$refs.carPopup.open('bottom') |
|
|
|
} else { |
|
|
|
this.tui.request("/app/productAttribute/selectByCategoryId", "POST", { |
|
|
|
this.NB.sendRequest("/app/productAttribute/selectByCategoryId", { |
|
|
|
categoryId: this.delItems.id |
|
|
|
}, false, true).then((res1) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res1) => { |
|
|
|
if (res1.code == 200) { |
|
|
|
if (res1.result.length > 0) { |
|
|
|
uni.showModal({ |
|
|
|
@ -431,11 +452,23 @@ |
|
|
|
} else { |
|
|
|
that.show = true |
|
|
|
} |
|
|
|
} else { |
|
|
|
uni.showToast({ |
|
|
|
title: res1.message, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
} |
|
|
|
} else { |
|
|
|
uni.showToast({ |
|
|
|
title: res.message, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
}, |
|
|
|
//点击选择列表,带参数 返回上一页 |
|
|
|
clickList(item) { |
|
|
|
@ -456,34 +489,55 @@ |
|
|
|
}, |
|
|
|
addSpec(e){ |
|
|
|
let that = this; |
|
|
|
if(e == ''){ |
|
|
|
uni.showToast({ |
|
|
|
title: "请输入属性值名称", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
if(this.isEdieValue){ |
|
|
|
that.tui.request("/app/productAttributeValue/edit", "post", { |
|
|
|
this.NB.sendRequest("/app/productAttributeValue/edit", { |
|
|
|
id: that.valueEditId, |
|
|
|
value:e |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
that.tui.toast("修改成功") |
|
|
|
uni.showToast({ |
|
|
|
title: "修改成功", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
that.$refs.addDialog.close() |
|
|
|
that.goGategoryLow(that.editItem) |
|
|
|
that.$forceUpdate() |
|
|
|
} else { |
|
|
|
that.tui.toast("添加失败") |
|
|
|
uni.showToast({ |
|
|
|
title: res.message, |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
}else{ |
|
|
|
that.tui.request("/app/productAttributeValue/save", "post", { |
|
|
|
this.NB.sendRequest("/app/productAttributeValue/save", { |
|
|
|
attributeId: that.editItem.id, |
|
|
|
value:e |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
that.tui.toast("添加成功") |
|
|
|
uni.showToast({ |
|
|
|
title: "添加成功", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
that.$refs.addDialog.close() |
|
|
|
that.goGategoryLow(that.editItem) |
|
|
|
that.$forceUpdate() |
|
|
|
} else { |
|
|
|
that.tui.toast("添加失败") |
|
|
|
uni.showToast({ |
|
|
|
title: "添加失败", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
} |
|
|
|
}, |
|
|
|
//属性编辑(新增,修改) |
|
|
|
@ -501,36 +555,40 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
if(e == ''){ |
|
|
|
that.tui.toast("请输入属性名") |
|
|
|
uni.showToast({ |
|
|
|
title: "请输入属性名", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
return |
|
|
|
} |
|
|
|
that.tui.request("/app/productAttribute/save", "post", { |
|
|
|
this.NB.sendRequest("/app/productAttribute/save", { |
|
|
|
categoryId: that.attrId, |
|
|
|
attributeName:e |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
that.tui.toast("添加成功") |
|
|
|
uni.showToast({ |
|
|
|
title: "添加成功", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
that.$refs.addTypeDialog.close() |
|
|
|
that.getGategoryList() |
|
|
|
} else { |
|
|
|
that.tui.toast("添加失败") |
|
|
|
uni.showToast({ |
|
|
|
title: "添加失败", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
|
|
|
|
}).catch((res) => {}) |
|
|
|
// that.$refs.addTypeDialog.val = '' |
|
|
|
/* for(var i=0;i<that.defaultList.length;i++){ |
|
|
|
for(var m=0;m<that.defaultList[i].list.length;m++){ |
|
|
|
that.defaultList[i].list[m].checked = false |
|
|
|
} |
|
|
|
} */ |
|
|
|
that.typeText = '' |
|
|
|
that.multipleList = [] |
|
|
|
break; |
|
|
|
case 'edit': |
|
|
|
that.tui.request("/app/productAttribute/edit", "post", { |
|
|
|
this.NB.sendRequest("/app/productAttribute/edit", { |
|
|
|
attributeName: this.inputVal, |
|
|
|
id: that.editItem.id |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
that.getGategoryList() |
|
|
|
that.sortText = '' |
|
|
|
@ -544,27 +602,25 @@ |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
break; |
|
|
|
default: |
|
|
|
} |
|
|
|
that.$refs.delDialog.close() |
|
|
|
that.$refs.inputClose.val = '' |
|
|
|
this.inputVal = "" |
|
|
|
}, |
|
|
|
//点击取消按钮 |
|
|
|
dialogClose() { |
|
|
|
this.inputVal = ''; |
|
|
|
this.specVal = ''; |
|
|
|
this.$refs.inputClose.val = '' |
|
|
|
this.$refs.addClose.val = '' |
|
|
|
|
|
|
|
}, |
|
|
|
//带删除按钮的弹窗 |
|
|
|
dialogDel() { |
|
|
|
this.tui.request("/app/productAttribute/delById", "post", { |
|
|
|
this.NB.sendRequest("/app/productAttribute/delById", { |
|
|
|
id: this.editItem.id, |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.getGategoryList() |
|
|
|
uni.showToast({ |
|
|
|
@ -579,14 +635,15 @@ |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
}, |
|
|
|
delItemModal() { |
|
|
|
this.show = false; |
|
|
|
if (this.delType == 'del') { |
|
|
|
this.tui.request("/app/productCategory/delById", "post", { |
|
|
|
this.NB.sendRequest("/app/productCategory/delById", { |
|
|
|
id: this.delItems.id, |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'post', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.getGategoryList() |
|
|
|
uni.showToast({ |
|
|
|
@ -595,14 +652,14 @@ |
|
|
|
}) |
|
|
|
this.$refs.carPopup.close() |
|
|
|
this.$refs.delDialog.close() |
|
|
|
|
|
|
|
} else { |
|
|
|
uni.showToast({ |
|
|
|
title: "删除失败", |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
}).catch((res) => {}) |
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
} |
|
|
|
}, |
|
|
|
delItem(item, type) { |
|
|
|
@ -613,9 +670,9 @@ |
|
|
|
//跳转子属性页 |
|
|
|
goGategoryLow(item) { |
|
|
|
this.editItem = item |
|
|
|
this.tui.request("/app/productAttributeValue/selectByAttributeId", "get", { |
|
|
|
this.NB.sendRequest("/app/productAttributeValue/selectByAttributeId", { |
|
|
|
id: item.id, |
|
|
|
}, false, true).then((res) => { |
|
|
|
}, false, 'get', 'application/x-www-form-urlencoded').then((res) => { |
|
|
|
if (res.code == 200) { |
|
|
|
this.defaultList = res.result; |
|
|
|
this.$refs.attrValueDialog.open(); |
|
|
|
@ -625,8 +682,8 @@ |
|
|
|
icon: 'none' |
|
|
|
}) |
|
|
|
} |
|
|
|
}).catch((res) => {}) |
|
|
|
|
|
|
|
uni.hideLoading(); |
|
|
|
}).catch((res) => {}); |
|
|
|
}, |
|
|
|
//选择多个属性保存 |
|
|
|
addMultipleType(item,item1,index){ |
|
|
|
@ -843,16 +900,22 @@ |
|
|
|
} |
|
|
|
|
|
|
|
.back-btn { |
|
|
|
margin-top: 110rpx; |
|
|
|
padding-top: 110rpx; |
|
|
|
} |
|
|
|
.btn{ |
|
|
|
flex: 1; |
|
|
|
line-height: 25px; |
|
|
|
min-width: 88rpx; |
|
|
|
height: 48rpx; |
|
|
|
line-height: 48rpx; |
|
|
|
text-align: center; |
|
|
|
height: 25px; |
|
|
|
color: #1E90FF; |
|
|
|
border-radius: 7px; |
|
|
|
margin: 5px 0 0 10px; |
|
|
|
color: #00231C; |
|
|
|
border-radius: 48rpx; |
|
|
|
background: rgba(166, 255, 234, 0.45); |
|
|
|
margin-left: 16rpx; |
|
|
|
font-size: 24rpx; |
|
|
|
} |
|
|
|
.danger-text { |
|
|
|
color: #FF5A4F; |
|
|
|
background: #FFF0E6; |
|
|
|
} |
|
|
|
|
|
|
|
.title-search { |
|
|
|
@ -904,24 +967,90 @@ |
|
|
|
border-radius: 70rpx; |
|
|
|
} |
|
|
|
.add-popup-content { |
|
|
|
align-items: center; |
|
|
|
justify-content: center; |
|
|
|
padding: 30rpx; |
|
|
|
width: 100%; |
|
|
|
height: 325rpx; |
|
|
|
background-color: #fff; |
|
|
|
overflow: scroll; |
|
|
|
width: 640rpx; |
|
|
|
max-width: 92vw; |
|
|
|
max-height: 82vh; |
|
|
|
background: #fff; |
|
|
|
border-radius: 28rpx; |
|
|
|
padding: 34rpx 30rpx 30rpx; |
|
|
|
box-sizing: border-box; |
|
|
|
overflow: hidden; |
|
|
|
} |
|
|
|
.attr-name-popup { |
|
|
|
width: 100vw; |
|
|
|
max-width: 100vw; |
|
|
|
border-radius: 28rpx 28rpx 0 0; |
|
|
|
padding-bottom: calc(30rpx + env(safe-area-inset-bottom)); |
|
|
|
} |
|
|
|
|
|
|
|
.add-popup-title { |
|
|
|
font-size: 36rpx; |
|
|
|
font-weight: bold; |
|
|
|
text-align: center; |
|
|
|
text-align: left; |
|
|
|
position: relative; |
|
|
|
color: #00231C; |
|
|
|
padding-right: 70rpx; |
|
|
|
} |
|
|
|
.popup-close { |
|
|
|
position: absolute !important; |
|
|
|
top: 4rpx; |
|
|
|
right: 0; |
|
|
|
width: 48rpx; |
|
|
|
height: 48rpx; |
|
|
|
line-height: 48rpx; |
|
|
|
text-align: center; |
|
|
|
border-radius: 50%; |
|
|
|
background: #F7F8F8; |
|
|
|
} |
|
|
|
|
|
|
|
.add-popup-container { |
|
|
|
margin-top: 20rpx; |
|
|
|
margin-top: 28rpx; |
|
|
|
} |
|
|
|
.form-field { |
|
|
|
margin-top: 26rpx; |
|
|
|
} |
|
|
|
.form-label { |
|
|
|
font-size: 28rpx; |
|
|
|
font-weight: 700; |
|
|
|
color: #00231C; |
|
|
|
margin-bottom: 16rpx; |
|
|
|
} |
|
|
|
.popup-input { |
|
|
|
width: 100%; |
|
|
|
height: 84rpx; |
|
|
|
line-height: 84rpx; |
|
|
|
border: 2rpx solid #E8ECEB; |
|
|
|
background: #F7F8F8; |
|
|
|
border-radius: 18rpx; |
|
|
|
box-sizing: border-box; |
|
|
|
padding: 0 24rpx; |
|
|
|
font-size: 28rpx; |
|
|
|
} |
|
|
|
.popup-actions { |
|
|
|
display: flex; |
|
|
|
gap: 20rpx; |
|
|
|
margin-top: 42rpx; |
|
|
|
} |
|
|
|
.popup-action { |
|
|
|
flex: 1; |
|
|
|
height: 84rpx; |
|
|
|
line-height: 84rpx; |
|
|
|
text-align: center; |
|
|
|
border-radius: 84rpx; |
|
|
|
font-size: 30rpx; |
|
|
|
font-weight: 700; |
|
|
|
} |
|
|
|
.popup-action.primary { |
|
|
|
background: linear-gradient(90deg, rgba(227, 255, 150, 1), rgba(166, 255, 234, 1)); |
|
|
|
color: #00231C; |
|
|
|
} |
|
|
|
.popup-action.danger { |
|
|
|
background: #FFF0E6; |
|
|
|
color: #FF5A4F; |
|
|
|
} |
|
|
|
.popup-action.plain { |
|
|
|
background: #F7F8F8; |
|
|
|
color: #00231C; |
|
|
|
} |
|
|
|
.title-name { |
|
|
|
padding-top: 110rpx; |
|
|
|
@ -935,27 +1064,88 @@ |
|
|
|
height: 80rpx; |
|
|
|
color: #fff; |
|
|
|
line-height: 80rpx; |
|
|
|
margin-top: 50rpx; |
|
|
|
margin-top: 42rpx; |
|
|
|
} |
|
|
|
|
|
|
|
.add-popup-btn { |
|
|
|
flex: 1; |
|
|
|
text-align: center; |
|
|
|
background: linear-gradient(90deg, #60F3FF, #088FEB); |
|
|
|
height: 84rpx; |
|
|
|
line-height: 84rpx; |
|
|
|
background: linear-gradient(90deg, rgba(227, 255, 150, 1), rgba(166, 255, 234, 1)); |
|
|
|
color: #00231C; |
|
|
|
border-radius: 84rpx; |
|
|
|
font-size: 30rpx; |
|
|
|
font-weight: 700; |
|
|
|
} |
|
|
|
.attr-value-popup { |
|
|
|
width: 680rpx; |
|
|
|
padding-bottom: 20rpx; |
|
|
|
} |
|
|
|
.value-edit-popup { |
|
|
|
width: 620rpx; |
|
|
|
} |
|
|
|
.popup-tip { |
|
|
|
padding: 18rpx 22rpx; |
|
|
|
background: rgba(166, 255, 234, 0.24); |
|
|
|
color: #005849; |
|
|
|
border-radius: 16rpx; |
|
|
|
font-size: 24rpx; |
|
|
|
line-height: 36rpx; |
|
|
|
} |
|
|
|
.attr-value-header { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
height: 88rpx; |
|
|
|
} |
|
|
|
.attr-value-title { |
|
|
|
flex: 1; |
|
|
|
font-size: 30rpx; |
|
|
|
font-weight: 700; |
|
|
|
color: #00231C; |
|
|
|
} |
|
|
|
.add-value-btn { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
height: 58rpx; |
|
|
|
line-height: 58rpx; |
|
|
|
padding: 0 22rpx; |
|
|
|
border-radius: 58rpx; |
|
|
|
background: linear-gradient(90deg, rgba(227, 255, 150, 1), rgba(166, 255, 234, 1)); |
|
|
|
font-size: 26rpx; |
|
|
|
font-weight: 700; |
|
|
|
color: #00231C; |
|
|
|
} |
|
|
|
.add-value-btn text { |
|
|
|
margin-left: 6rpx; |
|
|
|
} |
|
|
|
.attr-value-list { |
|
|
|
max-height: 58vh; |
|
|
|
overflow-y: auto; |
|
|
|
padding-bottom: 10rpx; |
|
|
|
} |
|
|
|
.title-fur { |
|
|
|
width: 95%; |
|
|
|
height: 70rpx; |
|
|
|
width: 100%; |
|
|
|
min-height: 82rpx; |
|
|
|
margin: 0 auto; |
|
|
|
border-bottom: 1px solid #eee; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
.name { |
|
|
|
font-size: 30rpx; |
|
|
|
width: 65%; |
|
|
|
height: 70rpx; |
|
|
|
line-height: 70rpx; |
|
|
|
flex: 1; |
|
|
|
min-width: 0; |
|
|
|
line-height: 40rpx; |
|
|
|
color: #00231C; |
|
|
|
overflow: hidden; |
|
|
|
text-overflow: ellipsis; |
|
|
|
white-space: nowrap; |
|
|
|
} |
|
|
|
} |
|
|
|
.value-actions { |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
} |
|
|
|
.content-fur { |
|
|
|
padding-bottom: 25rpx; |
|
|
|
} |
|
|
|
@ -981,7 +1171,7 @@ |
|
|
|
} |
|
|
|
@media screen and (min-width: 760px) { |
|
|
|
.add-popup-content{ |
|
|
|
height: 700px !important; |
|
|
|
max-height: 700px !important; |
|
|
|
} |
|
|
|
.vue-ref{ |
|
|
|
padding-bottom:0 !important; |
|
|
|
|