Commit f007a769 by mushishixian

temp

parent 8a5f2486
......@@ -87,4 +87,20 @@ class SkuApiController extends Controller
$this->response(-1, '批量下架失败');
}
}
//设置精选Sku
public function SetPreferSku($request)
{
$prefer = $request->get('prefer');
$skuIds = $request->input('sku_id');
if (empty($skuIds) || !is_array($skuIds)) {
$this->response(-1, '请选择要操作的SKU', '0');
}
$skuService = new SkuService();
if ($result['errcode'] == 0) {
$this->response(0, '操作成功');
} else {
$this->response(-1, '操作失败,原因是 : ' . $result['errmsg']);
}
}
}
......@@ -43,12 +43,12 @@ class SkuService
$sku['is_expire'] = $data['data']['status'][$goodsId] && $data['data']['status'][$goodsId] > 0 ? 0 : 1;
$spu = json_decode($redis->hget('spu', $sku['spu_id']), true);
//型号处理
if (empty($sku['goods_name'])&&!empty($spu)) {
if (empty($sku['goods_name']) && !empty($spu)) {
$sku['goods_name'] = $spu['spu_name'];
}
$sku['encap'] = array_get($spu, 'encap', '');
//制造商处理
if (empty($sku['brand_name'])&&!empty($spu)) {
if (empty($sku['brand_name']) && !empty($spu)) {
$brand = $redis->hget('brand_id', $spu['brand_id']);
if ($brand) {
$sku['brand_name'] = $brand;
......@@ -86,4 +86,23 @@ class SkuService
'total' => !empty($data['data']['total']) ? $data['data']['total'] : 0
];
}
public function setPreferSku($skuIds, $prefer)
{
//直接操作redis的goods_tag,然后推送es的修改任务即可
$redis = new RedisModel();
foreach ($skuIds as $skuId) {
$goodsTag = $redis->hget('goods_tag', $skuId);
if (!empty($goodsTag['tags'])) {
$tag = json_decode($goodsTag['tag'], true);
//判断是否有精选标签(1),而且操作是取消精选
if (in_array(1, $tag) && $prefer == -1) {
$key = array_search(1, $tag);
if (!empty($key)) {
unset($goodsTag['tag'][$key]);
}
}
}
}
}
}
\ No newline at end of file
......@@ -42,6 +42,13 @@ return [
'cp_time' => 1,
],
//1 国内现货,2国际现货, 3 猎芯期货
'SkuGoodsLabel' => [
1 => '国内现货',
2 => '国际现货',
3 => '猎芯期货',
],
//SKU 标签
'SkuTag' => [
1 => '优选',
......
......@@ -26,7 +26,7 @@
, where: whereCondition
});
let buttonName = $(this).attr('id');
if (buttonName==='off_shelf') {
if (buttonName === 'off_shelf') {
//同时还要去联动下面的状态筛选
let id = 'goods_status\\/condition';
$('#' + id).val(3);
......@@ -180,6 +180,36 @@
batchUpdateGoodsStatus(skuIds, 'offshelf');
})
//批量下架
$("#set_prefer").click(function () {
let checkStatus = table.checkStatus('skuList');
let data = checkStatus.data;
let skuIds = [];
$.each(data, function (index, value) {
skuIds.push(value.goods_id);
});
if (skuIds.length === 0) {
layer.msg('请选择要操作的sku', {icon: 5});
return;
}
batchSetSkuPrefer(skuIds, 'set_prefer');
})
//批量下架
$("#cancel_set_prefer").click(function () {
let checkStatus = table.checkStatus('skuList');
let data = checkStatus.data;
let skuIds = [];
$.each(data, function (index, value) {
skuIds.push(value.goods_id);
});
if (skuIds.length === 0) {
layer.msg('请选择要操作的sku', {icon: 5});
return;
}
batchSetSkuPrefer(skuIds, 'cancel_set_prefer');
})
//根据供应商编码已经品牌等去基石调用接口下架
$("#remote_batch_off_shelf").click(function () {
layer.open({
......@@ -229,6 +259,42 @@
});
}
//批量设置精选
function batchSetSkuPrefer(skuId, isPrefer) {
let label = isPrefer === 'set_prefer' ? '设置精选' : '取消设置精选';
let prefer = isPrefer === 'set_prefer' ? 1 : -1;
layer.confirm('确定要将选中的这些商品' + label + '吗', function (index) {
$.ajax({
type: 'post',
url: '/api/sku/SetPreferSku',
timeout: 30000, //超时时间设置,单位毫秒
data: {
sku_id: skuId,
prefer: prefer
},
dataType: 'json',
success: function (resp) {
close();
if (!resp) {
layer.msg('网络连接失败', {icon: 5});
return false;
}
if (resp.err_code === 0) {
layer.msg('操作成功', {icon: 6});
table.reload('skuList', {
page: {
curr: currentPage
},
});
} else {
return false;
}
}
});
layer.closeAll();
});
}
form.on('submit(load)', function (data) {
$('.main_filter').attr('class', 'main_filter');
$('#all').attr('class', 'main_filter layui-badge layui-bg-green');
......
......@@ -7,6 +7,8 @@
<button type="button" class="layui-btn layui-btn-sm" id="batch_putaway">上架</button>
<button type="button" class="layui-btn layui-btn-sm" id="batch_off_shelf">下架</button>
<button type="button" class="layui-btn layui-btn-sm" id="remote_batch_off_shelf">批量下架</button>
<button type="button" class="layui-btn layui-btn-sm" id="set_prefer">设置精选</button>
<button type="button" class="layui-btn layui-btn-sm" id="cancel_set_prefer">取消精选</button>
</div>
<table class="layui-table" id="skuList" lay-filter="skuList"></table>
......
......@@ -75,6 +75,10 @@
@inject('statusPresenter','App\Presenters\StatusPresenter')
{!! $statusPresenter->render('status/condition','是否过期',request()->get('status/condition'),[0=>'是',1=>'否']) !!}
</div>
<div class="layui-inline">
@inject('statusPresenter','App\Presenters\StatusPresenter')
{!! $statusPresenter->render('goods_label/condition','SKU显示类型','',config('field.SkuGoodsLabel')) !!}
</div>
</div>
<div class="layui-row">
<div class="layui-inline">
......
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