|
@@ -3,7 +3,7 @@
|
|
|
<BaseDialog
|
|
|
width="800px"
|
|
|
:isShow.sync="isShow"
|
|
|
- :title="activeData.tenantId ? '修改' : '新增'"
|
|
|
+ :title="activeData.id ? '修改' : '新增'"
|
|
|
@submit="submitForm"
|
|
|
@close="close"
|
|
|
>
|
|
@@ -14,138 +14,84 @@
|
|
|
label-width="100px"
|
|
|
class="demo-ruleForm"
|
|
|
>
|
|
|
- <el-form-item label="机构名称:" prop="tenantName">
|
|
|
+ <el-form-item label="合作商户:" prop="a">
|
|
|
<el-input
|
|
|
clearable
|
|
|
- v-model="formData.tenantName"
|
|
|
- placeholder="输入机构名称"
|
|
|
+ v-model="formData.a"
|
|
|
+ placeholder="输入合作商户"
|
|
|
></el-input> </el-form-item
|
|
|
- ><el-form-item label="h5域名:" prop="hostH5"
|
|
|
- ><el-input
|
|
|
+ ><el-form-item label="关联使用:" prop="b">
|
|
|
+ <el-select
|
|
|
+ multiple
|
|
|
clearable
|
|
|
- v-model="formData.hostH5"
|
|
|
- placeholder="输入h5域名"
|
|
|
- ></el-input></el-form-item
|
|
|
- ><el-form-item label="PC域名:" prop="hostPc"
|
|
|
- ><el-input
|
|
|
+ v-model="formData.b"
|
|
|
+ placeholder="请选择关联使用"
|
|
|
+ >
|
|
|
+ <el-option label="积分商城" :value="1"> </el-option
|
|
|
+ ><el-option label="会员卡" :value="2"> </el-option>
|
|
|
+ </el-select> </el-form-item
|
|
|
+ ><el-form-item label="产品名称:" prop="c">
|
|
|
+ <el-input
|
|
|
clearable
|
|
|
- v-model="formData.hostPc"
|
|
|
- placeholder="输入PC域名"
|
|
|
- ></el-input
|
|
|
- ></el-form-item>
|
|
|
- <el-form-item label="账期设置:" required>
|
|
|
- <el-col :span="9">
|
|
|
- <el-form-item label="" prop="billType">
|
|
|
- <el-select
|
|
|
- v-model="formData.billType"
|
|
|
- placeholder="选择账期类型"
|
|
|
- clearable
|
|
|
- >
|
|
|
- <el-option label="月度" :value="1"> </el-option
|
|
|
- ><el-option label="季度" :value="2"> </el-option
|
|
|
- ><el-option label="半年" :value="3"> </el-option>
|
|
|
- <el-option label="年度" :value="4"> </el-option>
|
|
|
- </el-select> </el-form-item
|
|
|
- ></el-col>
|
|
|
- <el-col :span="9"
|
|
|
- ><el-form-item label="" prop="billDay">
|
|
|
- <el-select
|
|
|
- v-model="formData.billDay"
|
|
|
- placeholder="选择次月"
|
|
|
- clearable
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in days"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- >
|
|
|
- </el-option>
|
|
|
- </el-select> </el-form-item
|
|
|
- ></el-col>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="收款账号:" required>
|
|
|
- <el-col :span="9">
|
|
|
- <el-form-item
|
|
|
- label=""
|
|
|
- :prop="'accountList.' + 0 + '.openingName'"
|
|
|
- :rules="rules['openingName']"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- clearable
|
|
|
- v-model="formData.accountList[0].openingName"
|
|
|
- placeholder="输入开户名"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="9">
|
|
|
- <el-form-item
|
|
|
- label=""
|
|
|
- :prop="'accountList.' + 0 + '.openingBank'"
|
|
|
- :rules="rules['openingBank']"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- clearable
|
|
|
- v-model="formData.accountList[0].openingBank"
|
|
|
- placeholder="输入开户行"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="9">
|
|
|
- <el-form-item
|
|
|
- label=""
|
|
|
- :prop="'accountList.' + 0 + '.proceedsAccount'"
|
|
|
- :rules="rules['proceedsAccount']"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- style="margin-top: 20px"
|
|
|
- clearable
|
|
|
- v-model="formData.accountList[0].proceedsAccount"
|
|
|
- placeholder="输入账号"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="开票信息:" required>
|
|
|
- <el-col :span="9">
|
|
|
- <el-form-item
|
|
|
- label=""
|
|
|
- :prop="'invoiceBo.' + 'invoiceType'"
|
|
|
- :rules="rules['invoiceType']"
|
|
|
+ v-model="formData.c"
|
|
|
+ placeholder="输入产品名称"
|
|
|
+ ></el-input> </el-form-item
|
|
|
+ ><el-form-item label="产品主图:" prop="urls">
|
|
|
+ <ul class="imgList">
|
|
|
+ <li
|
|
|
+ class="imgLi"
|
|
|
+ v-for="(item, index) in formData.urls"
|
|
|
+ :key="index"
|
|
|
>
|
|
|
- <el-select
|
|
|
- v-model="formData.invoiceBo.invoiceType"
|
|
|
- placeholder="选择发票类型"
|
|
|
- clearable
|
|
|
+ <el-image
|
|
|
+ style="width: 90px; height: 90px"
|
|
|
+ :src="item"
|
|
|
+ :preview-src-list="formData.urls"
|
|
|
+ :initial-index="index"
|
|
|
>
|
|
|
- <el-option label="普票" :value="1"> </el-option
|
|
|
- ><el-option label="专票" :value="2"> </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :span="9">
|
|
|
- <el-form-item
|
|
|
- label=""
|
|
|
- :prop="'invoiceBo.' + 'invoice'"
|
|
|
- :rules="rules['invoice']"
|
|
|
- ><el-input
|
|
|
- clearable
|
|
|
- v-model="formData.invoiceBo.invoice"
|
|
|
- placeholder="输入发票抬头(企业或个人)"
|
|
|
- ></el-input> </el-form-item
|
|
|
- ></el-col>
|
|
|
- <el-col :span="9">
|
|
|
- <el-form-item
|
|
|
- label=""
|
|
|
- :prop="'invoiceBo.' + 'taxpayer'"
|
|
|
- :rules="rules['taxpayer']"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- style="margin-top: 20px"
|
|
|
- clearable
|
|
|
- v-model="formData.invoiceBo.taxpayer"
|
|
|
- placeholder="输入纳税人"
|
|
|
- ></el-input> </el-form-item
|
|
|
- ></el-col>
|
|
|
+ </el-image>
|
|
|
+ </li>
|
|
|
+ <li class="imgactive">
|
|
|
+ <i class="el-icon-plus" @click="uploadImg"></i>
|
|
|
+ </li>
|
|
|
+ <label for="file1"> </label>
|
|
|
+ <input type="file" v-show="false" id="file1" />
|
|
|
+ <div style="clear: both"></div>
|
|
|
+ </ul>
|
|
|
+ <p style="color: #a4a4a4; margin: 0">
|
|
|
+ 建议尺寸:800*800像素;大小200K以下
|
|
|
+ </p></el-form-item
|
|
|
+ ><el-form-item label="兑换积分:" prop="e">
|
|
|
+ <el-input-number
|
|
|
+ :controls="false"
|
|
|
+ v-model="formData.e"
|
|
|
+ placeholder="输入兑换积分"
|
|
|
+ :min="0"
|
|
|
+ :precision="0" /></el-form-item
|
|
|
+ ><el-form-item label="产品原价:" prop="f">
|
|
|
+ <el-input-number
|
|
|
+ :controls="false"
|
|
|
+ v-model="formData.f"
|
|
|
+ placeholder="输入产品原价"
|
|
|
+ :min="0"
|
|
|
+ :precision="2"
|
|
|
+ /> </el-form-item
|
|
|
+ ><el-form-item label="会员优惠价:" prop="g">
|
|
|
+ <el-input-number
|
|
|
+ :controls="false"
|
|
|
+ v-model="formData.g"
|
|
|
+ placeholder="输入会员优惠价"
|
|
|
+ :min="0"
|
|
|
+ :precision="2"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="产品详情:">
|
|
|
+ <editor
|
|
|
+ v-model="formData.html"
|
|
|
+ :min-height="300"
|
|
|
+ :max-height="500"
|
|
|
+ :uploadStatus="2"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</BaseDialog>
|
|
@@ -153,7 +99,9 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import Editor from "@/components/Editor";
|
|
|
export default {
|
|
|
+ components: { Editor },
|
|
|
name: "",
|
|
|
props: {
|
|
|
dialogVisible: {
|
|
@@ -180,46 +128,13 @@ export default {
|
|
|
billType: [
|
|
|
{ required: true, message: "请选择账期类型", trigger: "change" },
|
|
|
],
|
|
|
- billDay: [
|
|
|
- { required: true, message: "请选择次月日期", trigger: "change" },
|
|
|
- ],
|
|
|
- openingName: [
|
|
|
- { required: true, message: "请输入开户名", trigger: "blur" },
|
|
|
- ],
|
|
|
- openingBank: [
|
|
|
- { required: true, message: "请输入开户行", trigger: "blur" },
|
|
|
- ],
|
|
|
- proceedsAccount: [
|
|
|
- { required: true, message: "请输入账号", trigger: "blur" },
|
|
|
- ],
|
|
|
- invoiceType: [
|
|
|
- { required: true, message: "请选择发票类型", trigger: "change" },
|
|
|
- ],
|
|
|
- invoice: [
|
|
|
- { required: true, message: "请输入发票抬头", trigger: "blur" },
|
|
|
- ],
|
|
|
- taxpayer: [
|
|
|
- { required: true, message: "请输入纳税人", trigger: "blur" },
|
|
|
- ],
|
|
|
},
|
|
|
- days: [],
|
|
|
};
|
|
|
},
|
|
|
- mounted() {
|
|
|
- this.getDays();
|
|
|
- },
|
|
|
-
|
|
|
methods: {
|
|
|
- //获取天数 从第6天算起 至31日
|
|
|
- getDays() {
|
|
|
- for (let i = 6; i <= 31; i++) {
|
|
|
- this.days.push({ label: i + "日", value: i });
|
|
|
- }
|
|
|
- },
|
|
|
+ uploadImg() {},
|
|
|
init() {
|
|
|
this.formData = JSON.parse(JSON.stringify(this.activeData));
|
|
|
- this.formData.accountList = this.formData.accountList || [{}];
|
|
|
- this.formData.invoiceBo = this.formData.invoiceBo || {};
|
|
|
},
|
|
|
close() {
|
|
|
this.$refs["formData"].resetFields();
|
|
@@ -227,13 +142,9 @@ export default {
|
|
|
submitForm() {
|
|
|
this.$refs["formData"].validate((valid) => {
|
|
|
if (valid) {
|
|
|
- this.$api[
|
|
|
- this.activeData.tenantId ? "systemtenantedittop" : "systemtenantadd"
|
|
|
- ](this.formData).then((res) => {
|
|
|
- this.$message.success("成功");
|
|
|
- this.isShow = false;
|
|
|
- this.$emit("search");
|
|
|
- });
|
|
|
+ this.$message.success("成功");
|
|
|
+ this.isShow = false;
|
|
|
+ this.$emit("search");
|
|
|
} else {
|
|
|
return false;
|
|
|
}
|
|
@@ -257,6 +168,39 @@ export default {
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
+.imgList {
|
|
|
+ margin-bottom: 0;
|
|
|
+ li {
|
|
|
+ margin-right: 10px;
|
|
|
+ margin-bottom: 10px;
|
|
|
+ float: left;
|
|
|
+ user-select: none;
|
|
|
+ cursor: pointer;
|
|
|
+ width: 98px;
|
|
|
+ height: 98px;
|
|
|
+ border-radius: 4px;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ transition: all 0.3s;
|
|
|
+ }
|
|
|
+ .imgLi {
|
|
|
+ border: 1px solid #666;
|
|
|
+ &:hover {
|
|
|
+ box-shadow: 0px 0px 6px 1px rgba(0, 0, 0, 0.2);
|
|
|
+ transform: scale(1.02);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .imgactive {
|
|
|
+ border: 1px dotted #666;
|
|
|
+ i {
|
|
|
+ font-size: 20px;
|
|
|
+ }
|
|
|
+ &:hover {
|
|
|
+ box-shadow: 0px 0px 6px 1px rgba(0, 0, 0, 0.2);
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
.el-input {
|
|
|
width: 220px;
|
|
|
margin-right: 10px;
|