海南旅游SAAS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

100 lines
3.4 KiB

$(function () {
$('.has-many-spec .add.btn')
.after('<div class="btn btn-spec spec-sync btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;同步最新规格</div><div class="btn btn-spec batch-stock btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置库存</div><div class="btn btn-spec batch-original-price btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置原价</div><div class="btn btn-spec batch-price btn-primary btn-outline btn-sm" style="margin-left:10px;"><i class="feather icon-plus"></i>&nbsp;批量设置售价</div>');
//同步最新规格
var template = $('template.spec-tpl').html();
$('.spec-sync').click(function () {
$.ajax({
url: '`{{url}}`',
method: 'POST',
data: {product_id: $(this).val(), _form_: '`{{class}}`'},
success: function (res) {
var fields = {
supplier_name: 'name',
supplier_date: 'date',
supplier_price: 'price',
supplier_stock: 'stock',
price: 'price',
stock: 'stock',
original_price: 'original_price',
product_spec_id: 'id'
};
var data = res.data;
var forms = $('.has-many-spec-forms');
//如果是原来数据库已经保存有id,调用click,提交的时候会同时删除数据库,否则直接remove掉,减小HTML体积
forms.children().each(function () {
if ($(this).find('.field_id').val()) {
$(this).find('.remove.btn').click();
} else {
$(this).remove();
}
});
for (var key in data) {
var row = $(template.replace(/new___LA_KEY__/g, key));
for(var key2 in fields) {
var value = fields[key2], insert_value;
if (key2 === 'original_price') {
insert_value = (data[key][value] * 2).toFixed(2);
} else if (key2 === 'price') {
insert_value = (data[key][value] * 1.5).toFixed(2);
} else {
insert_value = data[key][value];
}
row.find('input.field_' + key2).val(insert_value);
}
forms.append(row);
}
},
error: function () {
Dcat.error('服务器出现未知错误,获取供应商产品规格失败');
}
});
});
//批量库存
$('.batch-stock').click(function () {
var num = prompt('请输入你的库存(注:库存不能多于供应商库存)');
if (!/^\d+$/.test(num)) {
return;
}
$('.has-many-spec input.field_stock').each(function () {
var value = $(this).parents('tr').find('.field_supplier_stock').val();
var result = num > value ? value : num;
$(this).val(result);
});
});
//批量设置原价
$('.batch-original-price').click(function () {
var num = prompt('请输入加价金额(在供应商售价基础上加)');
if (!/^\d+$/.test(num)) {
return;
}
$('.has-many-spec input.field_original_price').each(function () {
var value = $(this).parents('tr').find('.field_supplier_price').val();
var result = parseFloat(value) + parseFloat(num);
$(this).val(result.toFixed(2));
});
});
//批量售价
$('.batch-price').click(function () {
var num = prompt('请输入加价金额(在供应商售价基础上加)');
if (!/^\d+$/.test(num)) {
return;
}
$('.has-many-spec input.field_price').each(function () {
var value = $(this).parents('tr').find('.field_supplier_price').val();
var result = parseFloat(value) + parseFloat(num);
$(this).val(result.toFixed(2));
});
});
//
});