Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
杨树贤
/
liexin_supplier
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
f007a769
authored
Aug 06, 2021
by
mushishixian
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
temp
parent
8a5f2486
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
118 additions
and
3 deletions
app/Http/Controllers/Api/SkuApiController.php
app/Http/Services/SkuService.php
config/field.php
resources/views/script/SkuListScript.blade.php
resources/views/web/SkuList.blade.php
resources/views/web/sku/SkuListCommon.blade.php
app/Http/Controllers/Api/SkuApiController.php
View file @
f007a769
...
...
@@ -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'
]);
}
}
}
app/Http/Services/SkuService.php
View file @
f007a769
...
...
@@ -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
config/field.php
View file @
f007a769
...
...
@@ -42,6 +42,13 @@ return [
'cp_time'
=>
1
,
],
//1 国内现货,2国际现货, 3 猎芯期货
'SkuGoodsLabel'
=>
[
1
=>
'国内现货'
,
2
=>
'国际现货'
,
3
=>
'猎芯期货'
,
],
//SKU 标签
'SkuTag'
=>
[
1
=>
'优选'
,
...
...
resources/views/script/SkuListScript.blade.php
View file @
f007a769
...
...
@@ -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'
);
...
...
resources/views/web/SkuList.blade.php
View file @
f007a769
...
...
@@ -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>
...
...
resources/views/web/sku/SkuListCommon.blade.php
View file @
f007a769
...
...
@@ -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"
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment