|
@@ -15,29 +15,27 @@
|
|
|
</div>
|
|
|
<Card :bordered="false" dis-hover class="ivu-mt" >
|
|
|
<div v-for="(item,index) in formData" class="product-item">
|
|
|
- <Button type="primary" class="submission" @click="delNewProject(index)" >删除</Button>
|
|
|
+ <Button type="primary" class="submission" @click="delNewProject(index,item)" >删除</Button>
|
|
|
<Form :model="item" :label-width="150" >
|
|
|
<FormItem label="选择商品:" prop="product_id" required>
|
|
|
<div class="picBox" @click="changeGoods(item)">
|
|
|
<Button type="primary" v-if="!item.product_id">选择商品</Button>
|
|
|
<div class="" v-else>
|
|
|
- {{item.product_name}}
|
|
|
+ {{item.store_name}}
|
|
|
</div>
|
|
|
</div>
|
|
|
</FormItem>
|
|
|
<FormItem label="业绩值" required>
|
|
|
- <Input v-model="item.performance_value" v-width="320" placeholder="请输入业绩值"></Input>
|
|
|
+ <Input v-model="item.performance_value" v-width="320"></Input>
|
|
|
</FormItem>
|
|
|
<FormItem label="手工费" required>
|
|
|
- <InputNumber v-model="item.craft_price" v-width="320"></InputNumber>
|
|
|
+ <Input v-model="item.craft_price" v-width="320"></Input>
|
|
|
</FormItem>
|
|
|
<FormItem label="销售提成" required>
|
|
|
- <InputNumber v-model="item.sales_commissions" v-width="320"></InputNumber>
|
|
|
- </InputNumber>
|
|
|
+ <Input v-model="item.sales_commissions" v-width="320"></Input>
|
|
|
</FormItem>
|
|
|
<FormItem label="库存量" required>
|
|
|
<InputNumber v-model="item.repertory" v-width="320"></InputNumber>
|
|
|
- </InputNumber>
|
|
|
</FormItem>
|
|
|
</Form>
|
|
|
</div>
|
|
@@ -49,8 +47,8 @@
|
|
|
<goods-list ref="goodslist" :goodsType="1" v-if="modals" @getProductId="getProductId"></goods-list>
|
|
|
</Modal>
|
|
|
<div style="width: 500px; display: flex;justify-content: center;">
|
|
|
- <Button type="primary" class="submission" @click="addNewProject" >添加新项目</Button>
|
|
|
- <Button type="primary" class="submission" @click="save" :disabled="disabled">立即创建</Button>
|
|
|
+ <Button type="primary bom" class="submission" @click="addNewProject" >添加新项目</Button>
|
|
|
+ <Button type="primary" class="submission" @click="save" :disabled="disabled">保存</Button>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -68,7 +66,9 @@
|
|
|
VipEditApi,
|
|
|
serveAddApi,
|
|
|
bindServe,
|
|
|
- searchServe
|
|
|
+ addServiceProject,
|
|
|
+ serveReadApi,
|
|
|
+ serveProductDeleteApi
|
|
|
} from "@/api/marketing";
|
|
|
import {
|
|
|
brandList
|
|
@@ -98,12 +98,15 @@
|
|
|
disabled: false,
|
|
|
storesList: [],
|
|
|
formData: [{
|
|
|
- product_name: '',
|
|
|
+ id: 0,
|
|
|
+ service_card_id: 0,
|
|
|
product_id: 0,
|
|
|
- performance_value: 0,
|
|
|
- craft_price: 0,
|
|
|
- sales_commissions: 0,
|
|
|
- repertory: 0
|
|
|
+ store_name: '',
|
|
|
+ slider_image: '',
|
|
|
+ performance_value: '',
|
|
|
+ craft_price: '',
|
|
|
+ sales_commissions: '',
|
|
|
+ repertory: 0,
|
|
|
}],
|
|
|
isMinPrice: 0,
|
|
|
isCouponTime: 1,
|
|
@@ -114,6 +117,7 @@
|
|
|
storeModals: false,
|
|
|
currentTab: '1',
|
|
|
current: {},
|
|
|
+ service_card_id: '',
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
@@ -122,28 +126,29 @@
|
|
|
created() {
|
|
|
console.log(this.$route.query);
|
|
|
if (this.$route.query.id) {
|
|
|
- this.id = this.$route.query.id
|
|
|
- console.log(this.id,'this.id');
|
|
|
+ this.service_card_id = this.$route.query.id
|
|
|
+ this.formData[0].service_card_id = this.$route.query.id
|
|
|
this.getCouponDetail();
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
getCouponDetail() {
|
|
|
- // console.log();
|
|
|
- searchServe(this.id).then(res => {
|
|
|
- let arr = []
|
|
|
- res.data.list.forEach(item => {
|
|
|
- let data = {
|
|
|
- product_name: item.store_name,
|
|
|
- product_id: item.id,
|
|
|
- performance_value: item.performance_value || 0,
|
|
|
- craft_price: item.craft_price || 0,
|
|
|
- sales_commissions: item.sales_commissions || 0,
|
|
|
- repertory:item.repertory
|
|
|
- }
|
|
|
- arr.push(data)
|
|
|
- })
|
|
|
- this.formData = arr
|
|
|
+ let that = this
|
|
|
+ serveReadApi(that.service_card_id).then(res => {
|
|
|
+ that.formData = res.data.info.storeInfo.project
|
|
|
+ if(that.formData.length == 0) {
|
|
|
+ that.formData = [{
|
|
|
+ id: 0,
|
|
|
+ service_card_id: that.service_card_id,
|
|
|
+ product_id: 0,
|
|
|
+ store_name: '',
|
|
|
+ slider_image: '',
|
|
|
+ performance_value: '',
|
|
|
+ craft_price: '',
|
|
|
+ sales_commissions: '',
|
|
|
+ repertory: 0,
|
|
|
+ }]
|
|
|
+ }
|
|
|
})
|
|
|
},
|
|
|
// 选择商品
|
|
@@ -153,14 +158,18 @@
|
|
|
},
|
|
|
addNewProject() {
|
|
|
console.log('dddddddddddddddddd');
|
|
|
+ let that = this
|
|
|
try{
|
|
|
this.formData.push({
|
|
|
- product_name: '',
|
|
|
+ service_card_id: that.service_card_id,
|
|
|
+ id: 0,
|
|
|
product_id: 0,
|
|
|
- performance_value: 0,
|
|
|
- craft_price: 0,
|
|
|
- sales_commissions: 0,
|
|
|
- repertory: 0
|
|
|
+ store_name: '',
|
|
|
+ slider_image: '',
|
|
|
+ performance_value: '',
|
|
|
+ craft_price: '',
|
|
|
+ sales_commissions: '',
|
|
|
+ repertory: 0,
|
|
|
})
|
|
|
// this.formData.concat(this.baseForm)
|
|
|
console.log(this.formData);
|
|
@@ -169,8 +178,46 @@
|
|
|
//TODO handle the exception
|
|
|
}
|
|
|
},
|
|
|
- delNewProject(index) {
|
|
|
- this.formData.splice(index,1)
|
|
|
+ delNewProject(index,item) {
|
|
|
+ let that = this
|
|
|
+ if(item.id) {
|
|
|
+ try{
|
|
|
+ let delfromData = {
|
|
|
+ title: '删除服务项目',
|
|
|
+ url: `service/productDelete/${item.id}`,
|
|
|
+ method: 'DELETE',
|
|
|
+ ids: ''
|
|
|
+ };
|
|
|
+ this.$modalSure(delfromData).then((res) => {
|
|
|
+ that.$Message.success(res.msg);
|
|
|
+ that.formData.splice(index,1)
|
|
|
+ }).catch(res => {
|
|
|
+ that.$Message.error(res.msg);
|
|
|
+ });
|
|
|
+ }catch(e){
|
|
|
+ //TODO handle the exception
|
|
|
+ console.log(e,'错误');
|
|
|
+ }
|
|
|
+
|
|
|
+ // serveProductDeleteApi(item.id).then(res => {
|
|
|
+ // this.formData.splice(index,1)
|
|
|
+ // })
|
|
|
+ }else {
|
|
|
+ this.formData.splice(index,1)
|
|
|
+ }
|
|
|
+ if(that.formData.length == 0) {
|
|
|
+ that.formData = [{
|
|
|
+ id: 0,
|
|
|
+ service_card_id: that.service_card_id,
|
|
|
+ product_id: 0,
|
|
|
+ store_name: '',
|
|
|
+ slider_image: '',
|
|
|
+ performance_value: '',
|
|
|
+ craft_price: '',
|
|
|
+ sales_commissions: '',
|
|
|
+ repertory: 0,
|
|
|
+ }]
|
|
|
+ }
|
|
|
},
|
|
|
// 商品id
|
|
|
getProductId(row) {
|
|
@@ -179,7 +226,8 @@
|
|
|
this.modals = false;
|
|
|
setTimeout(() => {
|
|
|
this.current.product_id = row.id
|
|
|
- this.current.product_name = row.store_name
|
|
|
+ this.current.store_name = row.store_name
|
|
|
+ this.current.slider_image = row.image
|
|
|
// this.formData.image = row.image
|
|
|
}, 500);
|
|
|
},
|
|
@@ -198,19 +246,19 @@
|
|
|
save() {
|
|
|
// this.downTab();
|
|
|
// console.log('这');
|
|
|
- console.log(this.id);
|
|
|
- bindServe(this.id,this.formData)
|
|
|
+ bindServe(this.service_card_id,{item: this.formData})
|
|
|
.then((res) => {
|
|
|
this.disabled = true;
|
|
|
this.$Message.success(res.msg);
|
|
|
- // setTimeout(() => {
|
|
|
- // this.$router.push({
|
|
|
- // path: this.roterPre + "/marketing/serve/index",
|
|
|
- // });
|
|
|
- // }, 1000);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.$router.push({
|
|
|
+ path: this.roterPre + "/marketing/serve/index",
|
|
|
+ });
|
|
|
+ }, 1000);
|
|
|
})
|
|
|
.catch((err) => {
|
|
|
this.$Message.error(err.msg);
|
|
|
+ this.disabled = false;
|
|
|
});
|
|
|
},
|
|
|
// 使用有效期--时间段
|
|
@@ -455,7 +503,10 @@
|
|
|
padding: 20px
|
|
|
.submission {
|
|
|
// display: block;
|
|
|
- margin-left: 500px;
|
|
|
+ margin-left: 500px;
|
|
|
}
|
|
|
}
|
|
|
+ .bom {
|
|
|
+ margin-right: 20px
|
|
|
+ }
|
|
|
</style>
|