This commit is contained in:
chc 2025-02-17 13:41:42 +08:00
commit fb1671d062
3 changed files with 99 additions and 21 deletions

View File

@ -34,10 +34,18 @@
<FormItem class="form-item-view-el" label="apiclient_key" prop="apiclient_key">
<Input v-model="formValidate.apiclientKey" :rows="6" maxlength="2500" show-word-limit type="textarea" placeholder="Enter something..." />
</FormItem>
<FormItem label="公钥证书ID" prop="公钥证书ID">
<FormItem label="加签方式" prop="publicType">
<RadioGroup type="button" button-style="solid" v-model="formValidate.publicType" @change="handlePublicTypeChange">
<Radio label="CERT">平台证书</Radio>
<Radio label="KEY">微信支付公钥</Radio>
</RadioGroup>
<span class="desc">商户接收APIv3的请求应答回调时验签使用以下两种方式只能使用一种</span>
</FormItem>
<!-- 当加签方式选择KEY时展示 -->
<FormItem v-if="formValidate.publicType === 'KEY'" label="公钥证书ID" prop="publicId">
<Input maxlength="300" v-model="formValidate.publicId" />
</FormItem>
<FormItem class="form-item-view-el" label="公钥证书" prop="publicKey">
<FormItem v-if="formValidate.publicType === 'KEY'" class="form-item-view-el" label="公钥证书" prop="publicKey">
<Input v-model="formValidate.publicKey" :rows="6" maxlength="2500" show-word-limit type="textarea" placeholder="Enter something..." />
</FormItem>
<FormItem label="支付回调域名" prop="callbackUrl">
@ -97,7 +105,7 @@ export default {
];
}
});
},
}
},
};
</script>

View File

@ -1,7 +1,7 @@
<template>
<div class="layout">
<Form ref="formValidate" :label-width="150" label-position="right" :model="formValidate">
<Form ref="formValidate" :label-width="150" label-position="right" :model="formValidate" :rules="ruleValidate">
<FormItem label="提现审核是否开启">
<i-switch v-model="formValidate.apply" style="margin-top:7px;"><span slot="open"></span>
<span slot="close"></span>
@ -36,12 +36,8 @@ export default {
data() {
return {
result:"",
formValidate: { //
apply: true,
minPrice: "",
type: "",
wechatAppId: "",
},
ruleValidate: {}, //
formValidate: {},//
switchTitle: "提现审核是否开启", // title
};
@ -72,7 +68,29 @@ export default {
//
init() {
this.result = JSON.parse(this.res);
Object.keys(this.result).map((item) => {
this.result[item] += "";
});
this.$set(this, "formValidate", { ...this.result });
Object.keys(this.formValidate).forEach((item) => {
this.ruleValidate[item] = [
{
required: true,
message: "请填写必填项",
trigger: "blur",
},
{
validator: (rule, value, callback) => {
if (value < 0) {
callback(new Error("不能输入负数!"));
} else {
callback();
}
},
trigger: "change",
},
];
});
},
},
};

View File

@ -203,6 +203,7 @@
<AutoComplete ref="input" v-model="val.value"
:disabled="containsSameSkuItem"
:filter-method="filterMethod"
:maxlength="30" placeholder="请输入规格值" style="width: 180px"
@on-focus="changeSkuVals(val, item.name)"
@ -257,6 +258,7 @@
<FormItem v-if="item.spec_values.length < 10 && item.spec_values.length >= 1 && item.spec_values[0].value !== ''" class="sku-item-content-val flex" label="" style="line-height: 32px;">
<AutoComplete ref="input" v-model="newSkuValues[$index]"
:disabled="containsSameSkuItem"
:filter-method="filterMethod"
:maxlength="30" placeholder="自定义规格值" style="width: 180px"
@on-blur="addSpec($index, item)"
@ -630,6 +632,10 @@ export default {
skuTableColumn: [],
/** 表格数据 */
skuTableData: [],
// sku
skuTableDataCopy: [],
// sku
skuInfoCopy: [],
/** 默认的规格参数 */
skuData: [],
/** 默认的规格值 */
@ -671,6 +677,9 @@ export default {
shopCategory: [],
/** 商品单位列表 */
goodsUnitList: [],
containsSameSkuItem: false,
containsSameSkuValue: false,
containsSameSkuNewValue: false,
//
showGoodsVideo: false,
ignoreColumn: [
@ -729,17 +738,6 @@ export default {
desc: "视频大小不能超过10MB",
});
},
onAddSku(index) {
if (!this.newSkuValues[index]) {
this.$Message.error('请输入规格值')
return
}
this.skuInfo[index].spec_values.push({
name: this.newSkuValues[index].name,
value: this.newSkuValues[index],
images: this.openImage ? [] : this.baseInfoForm.goodsGalleryFiles
})
},
//
callbackSelected(val) {
this.picModelFlag = false;
@ -1246,6 +1244,14 @@ export default {
},
/** 添加规格项 */
addSkuItem() {
if (this.containsSameSkuItem) {
this.$Message.error("存在重复规格项!");
return;
}
if (this.containsSameSkuValue) {
this.$Message.error("存在重复规格值!");
return;
}
if (this.skuInfo.length >= 5) {
this.$Message.error("规格项不能大于5个");
return;
@ -1269,8 +1275,10 @@ export default {
editSkuItem(val, index, item) {
if (this.skuTableData.find((i) => i[val])) {
this.$Message.error("已存在相同规格项!");
this.containsSameSkuItem = true;
return;
}
this.containsSameSkuItem = false;
if (this.zz(0, val) > 20) {
this.$Message.error("规格值最多十个字符长度!");
// val = val.toString().slice(0, 4);
@ -1283,6 +1291,11 @@ export default {
delete e[this.currentSkuItem];
return e;
});
this.skuInfo[index].name = val;
this.skuInfo[index].spec_values.forEach((e) => {
e.name = val;
});
this.currentSkuItem = val;
this.renderTableData(this.skuTableData);
},
@ -1322,8 +1335,13 @@ export default {
skuValueChange(val, index, item, $index) {
if (this.skuTableData.find((i) => i[val.name] === val.value)) {
this.$Message.error("已存在相同规格值!");
this.skuInfo = cloneObj(this.skuInfoCopy);
this.skuTableData = cloneObj(this.skuTableDataCopy);
return;
}
this.containsSameSkuValue = false;
if (val.value === '') {
return;
}
@ -1343,6 +1361,8 @@ export default {
return e;
});
this.currentSkuVal = val.value;
this.skuTableDataCopy = cloneObj(this.skuTableData);
this.skuInfoCopy = cloneObj(this.skuInfo);
this.renderTableData(this.skuTableData);
},
//
@ -1366,6 +1386,12 @@ export default {
(e) => e[spec.name] !== this.lastEditSkuValue
);
}
//
if (!this.skuTableData.find((i) => i[val.name] === val.value)) {
this.skuTableDataCopy = cloneObj(this.skuTableData);
this.skuInfoCopy = cloneObj(this.skuInfo);
}
},
/** 移除当前规格项 进行数据变化*/
handleCloseSkuItem($index, item) {
@ -1456,6 +1482,21 @@ export default {
this.$Message.error("请输入规格值");
return;
}
if (this.containsSameSkuItem) {
this.$Message.error("存在重复规格项!");
return;
}
if (item.spec_values.find((i) => i.value === this.newSkuValues[$index])) {
this.newSkuValues[$index] = "";
this.skuInfo = cloneObj(this.skuInfoCopy);
this.skuTableData = cloneObj(this.skuTableDataCopy);
this.$Message.error("存在重复规格值!");
this.containsSameSkuNewValue = true;
return;
}
if (this.validateEmpty(item.spec_values)) {
if (item.spec_values.length >= 10) {
this.$Message.error("规格值不能大于10个");
@ -1514,6 +1555,9 @@ export default {
}
this.baseInfoForm.regeneratorSkuFlag = true;
this.newSkuValues[$index] = "";
this.skuTableDataCopy = cloneObj(this.skuTableData);
this.skuInfoCopy = cloneObj(this.skuInfo);
}
},
handleClearSku() {
@ -1780,6 +1824,14 @@ export default {
},
/** 添加商品 **/
save() {
if (this.containsSameSkuItem) {
this.$Message.error("存在重复规格项!");
return;
}
if (this.containsSameSkuValue) {
this.$Message.error("存在重复规格值!");
return;
}
this.submitLoading = true;
this.$refs["baseInfoForm"].validate((valid) => {
if (valid) {