提交 97222c8e authored 作者: huaxinzhu's avatar huaxinzhu

3.1添加商品

上级 b49200a2
...@@ -147,3 +147,12 @@ export function getByCategoryData(query) { ...@@ -147,3 +147,12 @@ export function getByCategoryData(query) {
params: query params: query
}) })
} }
// 综合列表-仓库-供应商-计量单位。。。
export function synthesisList(data) {
return request({
url: '/system/goodsNew/synthesisList',
method: 'post',
data: data
})
}
import request from '@/utils/request'
export function warehouseList(data) {
return request({
url: '/local/warehouse/list',
method: 'post',
data: data
})
}
...@@ -115,5 +115,8 @@ new Vue({ ...@@ -115,5 +115,8 @@ new Vue({
el: '#app', el: '#app',
router, router,
store, store,
render: h => h(App) render: h => h(App),
beforeCreate() {
Vue.prototype.$bus = this
}
}) })
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
<div slot="header" class="clearfix"> <div slot="header" class="clearfix">
<span>售后及服务</span> <span>售后及服务</span>
</div> </div>
<el-form-item label="服务标签:" prop="stags"> <el-form-item label="服务标签:" prop="stags">
<el-checkbox-group v-model="goodsAfterSaleForm.stags"> <el-checkbox-group v-model="goodsAfterSaleForm.stags">
...@@ -74,62 +74,61 @@ ...@@ -74,62 +74,61 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-card> </el-card>
<el-card class="box-card" ref="outhervalue"> <!-- <el-card class="box-card" ref="outhervalue">-->
<div slot="header" class="clearfix" > <!-- <div slot="header" class="clearfix" >-->
<span>其他设置</span> <!-- <span>其他设置</span>-->
</div> <!-- </div>-->
<el-form-item label='商品关键词:' prop="goods_des"> <!--&lt;!&ndash; <el-form-item label='商品关键词:' prop="goods_des">&ndash;&gt;-->
<el-input v-model.trim="goodsAfterSaleForm.goods_des" placeholder="请输入商品关键词" style="width:420px;"></el-input> <!--&lt;!&ndash; <el-input v-model.trim="goodsAfterSaleForm.goods_des" placeholder="请输入商品关键词" style="width:420px;"></el-input>&ndash;&gt;-->
<span class="tip-span ml20">关键词之间用 <strong>英文逗号</strong> 分开,最多可以添加5个</span> <!--&lt;!&ndash; <span class="tip-span ml20">关键词之间用 <strong>英文逗号</strong> 分开,最多可以添加5个</span>&ndash;&gt;-->
</el-form-item> <!--&lt;!&ndash; </el-form-item>&ndash;&gt;-->
<el-form-item label="商品产地:" prop="producing_area"> <!-- <el-form-item label="商品产地:" prop="producing_area">-->
<el-select v-model.trim="goodsAfterSaleForm.producing_area" placeholder="请选择商品产地" style="width: 420px;"> <!-- <el-select v-model.trim="goodsAfterSaleForm.producing_area" placeholder="请选择商品产地" style="width: 420px;">-->
<el-option <!-- <el-option-->
v-for="item in areaOptions" <!-- v-for="item in areaOptions"-->
:key="item.id" <!-- :key="item.id"-->
:label="item.name" <!-- :label="item.name"-->
:value="item.id" <!-- :value="item.id"-->
></el-option> <!-- ></el-option>-->
</el-select> <!-- </el-select>-->
</el-form-item> <!-- </el-form-item>-->
<el-form-item label="商品发货地:" prop="deliver_area"> <!-- <el-form-item label="商品发货地:" prop="deliver_area">-->
<el-select v-model.trim="goodsAfterSaleForm.deliver_area" placeholder="请选择商品发货地" style="width: 420px;"> <!-- <el-select v-model.trim="goodsAfterSaleForm.deliver_area" placeholder="请选择商品发货地" style="width: 420px;">-->
<el-option <!-- <el-option-->
v-for="item in areaOptions" <!-- v-for="item in areaOptions"-->
:key="item.id" <!-- :key="item.id"-->
:label="item.name" <!-- :label="item.name"-->
:value="item.id" <!-- :value="item.id"-->
></el-option> <!-- ></el-option>-->
</el-select> <!-- </el-select>-->
</el-form-item> <!-- </el-form-item>-->
<el-form-item label='商品单位:' prop="unit"> <!-- <el-form-item label='商品单位:' prop="unit">-->
<el-input v-model.trim="goodsAfterSaleForm.unit" placeholder="请输入商品单位" style="width:420px;"></el-input> <!-- <el-input v-model.trim="goodsAfterSaleForm.unit" placeholder="请输入商品单位" style="width:420px;"></el-input>-->
<!-- <span class="tip-span ml20">关键词之间用逗号分开,最多可以添加5个</span>--> <!-- &lt;!&ndash; <span class="tip-span ml20">关键词之间用逗号分开,最多可以添加5个</span>&ndash;&gt;-->
</el-form-item> <!-- </el-form-item>-->
<el-form-item label='市场参考价链接:' prop="web_url"> <!--&lt;!&ndash; <el-form-item label='市场参考价链接:' prop="web_url">&ndash;&gt;-->
<el-input v-model.trim="goodsAfterSaleForm.web_url" placeholder="请输入京东或者淘宝的商品链接" style="width:420px;"></el-input> <!--&lt;!&ndash; <el-input v-model.trim="goodsAfterSaleForm.web_url" placeholder="请输入京东或者淘宝的商品链接" style="width:420px;"></el-input>&ndash;&gt;-->
</el-form-item> <!--&lt;!&ndash; </el-form-item>&ndash;&gt;-->
<el-form-item label='商品编码:' prop="out_goods_id"> <!-- <el-form-item label='商品编码:' prop="out_goods_id">-->
<el-input v-model.trim="goodsAfterSaleForm.out_goods_id" placeholder="请输入商品编码(非必须)" style="width:420px;"></el-input> <!-- <el-input v-model.trim="goodsAfterSaleForm.out_goods_id" placeholder="请输入商品编码(非必须)" style="width:420px;"></el-input>-->
</el-form-item> <!-- </el-form-item>-->
</el-card> <!-- </el-card>-->
</el-form> </el-form>
</div> </div>
</template> </template>
<script> <script>
import { GetFreight } from '@/api/module/goods' import { GetFreight } from '@/api/module/goods'
import { getAreaList } from '@/api/module/retreat/address'
import draggable from 'vuedraggable' import draggable from 'vuedraggable'
export default { export default {
name: "goodsaftersale", name: "goodsaftersale",
...@@ -175,28 +174,19 @@ ...@@ -175,28 +174,19 @@
freight_id: 310, freight_id: 310,
delay_compensate: 24, delay_compensate: 24,
aftersale_time: 7, aftersale_time: 7,
// 参数
params:[ params:[
{ {
'title':'', 'title':'',
'value':'' 'value':''
} }
],//参数 ],
goods_des:'',//关键词
producing_area:'',//产地
deliver_area:'',//发货地
unit:'',//单位
web_url:'',//外部市场链接
out_goods_id:''//商品编码
}, },
goodsAfterSaleRules: { goodsAfterSaleRules: {
stags: [{ type: 'array', required: true, message: '请选择至少一个服务标签', trigger: 'change' }], stags: [{ type: 'array', required: true, message: '请选择至少一个服务标签', trigger: 'change' }],
freight_id: [{required: true, message: '请选择邮费模板', trigger: 'change'}], freight_id: [{required: true, message: '请选择邮费模板', trigger: 'change'}],
delay_compensate: [{required: true, message: '请选择发货时效', trigger: 'change'}], delay_compensate: [{required: true, message: '请选择发货时效', trigger: 'change'}],
aftersale_time: [{required: true, message: '请选择售后时长', trigger: 'change'}], aftersale_time: [{required: true, message: '请选择售后时长', trigger: 'change'}],
producing_area:[{required: true, message: '请选择商品产地', trigger: 'change'}],
deliver_area: [{required: true, message: '请选择商品发货地', trigger: 'change'}],
unit: [{required: true, message: '商品单位不能为空', trigger: 'blur'}],
goods_brand: [{required: true, message: '请选择商品品牌', trigger: 'change'}]
}, },
tagOptions: [ tagOptions: [
{id: 2, tag: "假一赔十"}, {id: 2, tag: "假一赔十"},
...@@ -211,30 +201,17 @@ ...@@ -211,30 +201,17 @@
components: { draggable }, components: { draggable },
mounted() { mounted() {
this.getFreightData(); this.getFreightData();
debugger // debugger
console.log('售后数据:',this.goodsaftersale); // console.log('售后数据:',this.goodsaftersale);
if(this.goodsaftersale) { if(this.goodsaftersale) {
this.goodsAfterSaleForm = this.goodsaftersale; this.goodsAfterSaleForm = this.goodsaftersale;
} }
}, },
created() { created() {
// 获取 省 // 获取 省
this.getArea(); // this.getArea();
}, },
methods: { methods: {
// 获取 省
getArea() {
let limboNode = {
pid: 0
};
getAreaList(limboNode).then( res => {
if( res.data && res.data.length > 0) {
this.areaOptions = res.data;
}else {
this.areaOptions = [];
}
});
},
// 添加参数 // 添加参数
addparameter(){ addparameter(){
let obj = { let obj = {
...@@ -283,11 +260,11 @@ ...@@ -283,11 +260,11 @@
flag = true flag = true
} else { } else {
flag = false flag = false
if(this.goodsAfterSaleForm.producing_area==''||this.goodsAfterSaleForm.deliver_area==''||this.goodsAfterSaleForm.unit==''){ // if(this.goodsAfterSaleForm.producing_area==''||this.goodsAfterSaleForm.deliver_area==''||this.goodsAfterSaleForm.unit==''){
sessionStorage.setItem('clickbtm',1) // sessionStorage.setItem('clickbtm',1)
}else{ // }else{
sessionStorage.setItem('clickbtm',2) // sessionStorage.setItem('clickbtm',2)
} // }
} }
}) })
return flag return flag
......
...@@ -46,8 +46,10 @@ ...@@ -46,8 +46,10 @@
<el-button type="danger" plain icon="el-icon-delete" size="mini" @click="deleteSpe(index)">删除该规格</el-button> <el-button type="danger" plain icon="el-icon-delete" size="mini" @click="deleteSpe(index)">删除该规格</el-button>
</div> </div>
</div> </div>
<div>
<el-button @click="addSpe" class="el-icon-plus" size="mini">添加规格</el-button> <el-checkbox v-model="isCustomPriceSpec" class="custom-price-check" @change="switchCustomPriceSpec">启用阶梯定价</el-checkbox>
<el-button @click="addSpe" class="el-icon-plus" size="mini">添加规格</el-button>
</div>
<!-- 添加 规格名称 --> <!-- 添加 规格名称 -->
<el-dialog <el-dialog
...@@ -88,6 +90,7 @@ export default { ...@@ -88,6 +90,7 @@ export default {
}, },
data() { data() {
return { return {
isCustomPriceSpec: false, // 是否启用 阶梯定价
tableData7:{}, tableData7:{},
speData: [], // 商品规格总数据 speData: [], // 商品规格总数据
specsGroup: { specsGroup: {
...@@ -113,7 +116,7 @@ export default { ...@@ -113,7 +116,7 @@ export default {
/** 先获取 本地存储的localStorage **/ /** 先获取 本地存储的localStorage **/
this.getLocalSpecNameOption(); this.getLocalSpecNameOption();
// 先判断是新增还是修改 // 先判断是新增还是修改
//console.log(123,this.specificationsdata) // console.log(44444,this.specificationsdata)
if(this.specificationsdata.length === 0) { if(this.specificationsdata.length === 0) {
this.$set(this.specsGroup.spec_value,this.specsGroup.spec_value.length,this.speParamName); this.$set(this.specsGroup.spec_value,this.specsGroup.spec_value.length,this.speParamName);
this.speData = []; this.speData = [];
...@@ -132,6 +135,12 @@ export default { ...@@ -132,6 +135,12 @@ export default {
// } // }
}, },
methods: { methods: {
switchCustomPriceSpec() {
this.$bus.$emit("customPriceSpec",this.isCustomPriceSpec)
if (!this.isCustomPriceSpec) {
console.log(151,this.specificationsdata)
}
},
/** 初始化 商品规格数据 */ /** 初始化 商品规格数据 */
initInfo() { initInfo() {
// debugger // debugger
...@@ -346,7 +355,7 @@ export default { ...@@ -346,7 +355,7 @@ export default {
if (proSpeData.length === 0) { if (proSpeData.length === 0) {
let goodsPam = { let goodsPam = {
specs:[], specs:[],
isradioguide:1 isradioguide:2
}; };
this.$emit('calcSpeTable', goodsPam); this.$emit('calcSpeTable', goodsPam);
} else { } else {
...@@ -358,43 +367,55 @@ export default { ...@@ -358,43 +367,55 @@ export default {
} }
// goodsParametersList newList // goodsParametersList newList
let goodsParametersList = this.cartesian(proSpeData); let goodsParametersList = this.cartesian(proSpeData);
debugger // debugger
for (let index = 0; index < goodsParametersList.length; index++) { for (let index = 0; index < goodsParametersList.length; index++) {
var listobj = {}; var listobj = {};
listobj["js_price"] = ""; listobj["sc_price"] = "";
listobj["sl_price"] = ""; listobj["price"] = "";
listobj["price"] = ""; listobj["js_price"] = "";
listobj["sc_price"] = ""; listobj["prime_cost"] = "";
listobj["stock"] = ""; listobj["stock"] = "";
listobj["weight"] = ""; listobj["stock_warning"] = "";
listobj["thumb"] = ""; listobj["weight"] = "";
listobj["spec_values"] = goodsParametersList[index] listobj["volume"] = "";
listobj["goods_code"] = "";
listobj["bar_code"] = "";
listobj["thumb"] = "";
listobj["spec_values"] = goodsParametersList[index]
for (let i = 0; i < this.speData.length; i++) { for (let i = 0; i < this.speData.length; i++) {
debugger
if(this.speData.length>1){ if(this.speData.length>1){
listobj[this.speData[i].spec_name] = goodsParametersList[index][i]; listobj[this.speData[i].spec_name] = goodsParametersList[index][i];
} }
if(this.speData.length==1){ if(this.speData.length==1){
debugger
listobj[this.speData[0].spec_name] = goodsParametersList[index]; listobj[this.speData[0].spec_name] = goodsParametersList[index];
} }
} }
specs_group.push(listobj); specs_group.push(listobj);
} }
// goodsParametersList.forEach((item,index)=> { // goodsParametersList.forEach((item,index)=> {
// goodsPam.pamTableList.push(prePamTable) // goodsPam.pamTableList.push(prePamTable)
// }); // });
this.tableData7['specs_group'] = specs_group this.tableData7['specs_group'] = specs_group
this.tableData7['specs'] = this.speData this.tableData7['specs'] = this.speData
this.tableData7['shopTypes'] = this.cartesian(proSpeData) this.tableData7['shopTypes'] = this.cartesian(proSpeData)
this.tableData7['isradioguide'] = 2 this.tableData7['isradioguide'] = 2
if(this.isCustomPriceSpec) {
this.tableData7.specs_group.forEach((item,index)=> {
item['ladder'] = []
let obj = {
quantity: 1,money: 0
}
item['ladder'].push(obj)
})
}
this.$emit('calcSpeTable',this.tableData7); this.$emit('calcSpeTable',this.tableData7);
console.log(this.tableData7) // this.switchCustomPriceSpec()
// if (this.tableData7.is_ladder_spec !== undefined) {
// this.tableData7.is_ladder_spec = this.isCustomPriceSpec
// }
console.log(399,this.tableData7)
} }
}, },
...@@ -475,7 +496,7 @@ export default { ...@@ -475,7 +496,7 @@ export default {
res.push(t); res.push(t);
}); });
}); });
return res return res
}); });
} }
...@@ -551,4 +572,8 @@ export default { ...@@ -551,4 +572,8 @@ export default {
justify-content: center; justify-content: center;
align-items: center; align-items: center;
} }
.custom-price-check {
margin: 0 20px 0 0;
}
</style> </style>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论