Commit 76a39e77 by 杨树贤

主营品牌限制

parent e50ca5b4
......@@ -39,6 +39,8 @@ class SupplierApiController extends Controller
'tax_number',
'supplier_address',
'main_brands',
'main_brands_limit',
'main_brands_limit_type',
'purchase_uid',
'upload_file',
'legal_representative',
......
......@@ -62,9 +62,9 @@ class SupplierTransformer
$userInfo = $adminUserService->getAdminUserInfo($supplier['create_uid']);
$supplier['create_name'] = array_get($userInfo, 'name');
}
$supplier['first_upload_sku_time'] = array_get($firstUploadSkuTimes,$supplier['supplier_code']) ? date('Y-m-d H:i:s',
$supplier['first_upload_sku_time'] = array_get($firstUploadSkuTimes, $supplier['supplier_code']) ? date('Y-m-d H:i:s',
$firstUploadSkuTimes[$supplier['supplier_code']]) : '';
$supplier['last_upload_sku_time'] = array_get($lastUploadSkuTimes,$supplier['supplier_code']) ? date('Y-m-d H:i:s',
$supplier['last_upload_sku_time'] = array_get($lastUploadSkuTimes, $supplier['supplier_code']) ? date('Y-m-d H:i:s',
$lastUploadSkuTimes[$supplier['supplier_code']]) : '';
//获取最新修改人以及下级审核员
......@@ -331,6 +331,9 @@ class SupplierTransformer
}
$channel['attachment'] = $attachment;
//没有值就是无限制,就是-1
$channel['main_brands_limit'] = $channel['main_brands_limit_type'] == 2 ? -1 : $channel['main_brands_limit'];
unset($channel['main_brands_limit_type']);
return $channel;
}
......
......@@ -77,27 +77,27 @@ class SupplierValidator
//这个supplierId是用来判断是新增还是修改的
$supplierId = array_get($validateData, 'supplier_id');
//如果是修改直接提交,不是点申请审核的,只需要校验供应商名称和采购员是否完整即可
if (!$isAudit) {
if (empty($validateData['supplier_name'])) {
return '供应商名称 不能为空';
}
if (empty($supplierId)) {
//新增的时候,必须要设置采购员
if (empty($validateData['can_check_uids'])) {
return '第一次新增供应商,必须设置联系人的采购员';
}
$count = SupplierChannelModel::where('supplier_name', $validateData['supplier_name'])->count();
} else {
//对接一体化以后,名称不能修改了,所以直接为0
$count = 0;
}
if ($count) {
return "该供应商名称已经存在,请核验后再提交";
}
return null;
}
// if (!$isAudit) {
// if (empty($validateData['supplier_name'])) {
// return '供应商名称 不能为空';
// }
//
// if (empty($supplierId)) {
// //新增的时候,必须要设置采购员
// if (empty($validateData['can_check_uids'])) {
// return '第一次新增供应商,必须设置联系人的采购员';
// }
// $count = SupplierChannelModel::where('supplier_name', $validateData['supplier_name'])->count();
// } else {
// //对接一体化以后,名称不能修改了,所以直接为0
// $count = 0;
// }
// if ($count) {
// return "该供应商名称已经存在,请核验后再提交";
// }
//
// return null;
// }
$rules = [
'supplier_type' => 'required',
......@@ -145,6 +145,18 @@ class SupplierValidator
];
$errorMessageList = [];
//主营品牌数量的判断
if ($validateData['main_brands_limit_type'] == 1) {
if (!$validateData['main_brands_limit']) {
$errorMessageList[] = '主营品牌限制数量不能为空';
}
if (count(explode(',', trim($validateData['main_brands'], ','))) > $validateData['main_brands_limit']) {
$errorMessageList[] = '主营品牌数量大于设置的限制数量';
}
}
//判断供应商类型,如果类型为临时,而且名字属于不能修改为临时的代购供应商列表里面,就要报错
if (empty($validateData['supplier_type'])) {
......
......@@ -170,6 +170,9 @@
}
},
{field: 'average_sku_num', title: '日均上架数', align: 'center', width: 100},
{field: 'cp_time_day', title: '有效期最高天数', align: 'center', width: 120, templet: function (data) {
return data.cp_time_day ? data.cp_time_day + '天' : '';
}},
{field: 'create_name', title: '创建人', align: 'center', width: 70},
{field: 'update_time', title: '最近修改时间', align: 'center', width: 145},
{field: 'supplier_type_name', title: '供应商类别', align: 'center', width: 110},
......
......@@ -163,13 +163,36 @@
}
});
//主营品牌限制的初始化
let mainBrandsLimitTypeObj = $('#main_brands_limit_type');
if (supplierId) {
if ($('#main_brands_limit').val() == -1) {
let mainBrandsLimitObj = $('#main_brands_limit');
if (mainBrandsLimitObj.val() == -1) {
mainBrandsLimitTypeObj.val(2);
mainBrandsLimitObj.val('');
mainBrandsLimitObj.attr('disabled', true);
mainBrandsLimitObj.addClass('layui-disabled');
form.render('select');
}
}
let supplierGroupMap = {!! json_encode(config('fixed.SupplierGroup')) !!};
let limitMap = {!!json_encode(config('field.SupplierGroupMainBrandsLimitMap'))!!};
//监听主营品牌限制的数字,不同供应商性质的数量限制不一样
$(document).on('change', '#main_brands_limit', function () {
let supplierGroup = $('#supplier_group').val();
if (!supplierGroup) {
layer.msg("请先选择供应商性质", {icon: 5});
$('#main_brands_limit').val('');
return false;
}
let limit = limitMap[supplierGroup];
if ($(this).val() > limit && limit !== -1) {
layer.msg("供应商性质为" + supplierGroupMap[supplierGroup] + "时,主营品牌数量最大可以设置为 " + limit, {icon: 5});
$('#main_brands_limit').val(limit);
}
});
//监听供应商性质选择,如果为混合分销商,那么要展示混合分销商品牌设置
form.on('select(supplier_group)', function (data) {
if (data.value === '7') {
......@@ -183,7 +206,6 @@
// 混合分销商,现货商,代工厂,品牌数量默认为10;
// 方案商,其他,品牌数量默认为5;
let mainBrandsLimitObj = $('#main_brands_limit');
let limitMap = {!!json_encode(config('field.SupplierGroupMainBrandsLimitMap'))!!};
let limit = limitMap[data.value];
console.log(limit)
if (limit === -1) {
......
......@@ -227,7 +227,7 @@
placeholder="请输入主营品牌数量限制" class="layui-input" value="">
</div>
<div class="layui-inline">
<select id="main_brands_limit_type" lay-filter="main_brands_limit_type">
<select id="main_brands_limit_type" lay-filter="main_brands_limit_type" name="main_brands_limit_type">
<option value="1">自定义</option>
<option value="2">无限制</option>
</select>
......
......@@ -177,6 +177,9 @@
</div>
<div class="layui-row">
<span class="required_field">*</span> 主营品牌 :{{$supplier['main_brand_names']}}
<div style="margin-left: 50px">
主营品牌数量 :{{$supplier['main_brands_limit']}}
</div>
</div>
@if($supplier['supplier_group'] == \App\Model\SupplierChannelModel::SUPPLIER_GROUP_MIX)
<div class="layui-row">
......
......@@ -231,7 +231,7 @@
placeholder="请输入主营品牌数量限制" class="layui-input" value="{{$supplier['main_brands_limit'] or ''}}">
</div>
<div class="layui-inline">
<select id="main_brands_limit_type" lay-filter="main_brands_limit_type">
<select id="main_brands_limit_type" name="main_brands_limit_type" lay-filter="main_brands_limit_type">
<option value="1">自定义</option>
<option value="2">无限制</option>
</select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment