Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
杨树贤
/
go_supplier_sever
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
7de139c1
authored
Jan 17, 2024
by
杨树贤
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
修改取数据逻辑
parent
ff3b57b5
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
66 additions
and
62 deletions
app/dao/supplier.go
app/service/supplier_sku_statistics.go
app/dao/supplier.go
View file @
7de139c1
...
...
@@ -14,79 +14,83 @@ import (
)
func
StatisticsSuppliersSkuNum
()
(
err
error
)
{
supplier
:=
new
(
model
.
Supplier
)
//先去根据供应商内部编码找出对应的supplierId
rows
,
err
:=
Dao
.
GetDb
(
"supplier"
)
.
Table
(
"lie_supplier_channel"
)
.
Where
(
"is_type = ?"
,
0
)
.
OrderBy
(
"supplier_id desc"
)
.
Rows
(
supplier
)
if
err
!=
nil
{
return
err
}
//先重置所有供应商的平均数
supplierSkuNum
:=
new
(
model
.
Supplier
)
supplier
.
AverageSkuNum
=
0
_
,
err
=
Dao
.
GetDb
(
"supplier"
)
.
Table
(
"lie_supplier_channel"
)
.
Where
(
"supplier_id >= ?"
,
1
)
.
MustCols
(
"average_sku_num"
)
.
Update
(
supplierSkuNum
)
defer
rows
.
Close
()
var
num
int
for
rows
.
Next
()
{
err
=
rows
.
Scan
(
supplier
)
//去es查询sku数量
params
:=
req
.
Param
{
"goods_status/condition"
:
1
,
"canal/condition"
:
supplier
.
SupplierCode
,
"show_status"
:
1
,
"supplier_id"
:
17
,
"update_time/order"
:
"desc"
,
}
url
:=
lib
.
Instance
(
"config"
)
.
GetString
(
"es.es_sku_url"
)
resp
,
err
:=
req
.
Post
(
url
,
params
)
total
,
_
:=
Dao
.
GetDb
(
"supplier"
)
.
Table
(
"lie_supplier_channel"
)
.
Where
(
"is_type = ?"
,
0
)
.
Count
()
for
i
:=
0
;
i
<
int
(
total
);
i
=
i
+
100
{
supplier
:=
new
(
model
.
Supplier
)
//先去根据供应商内部编码找出对应的supplierId
rows
,
err
:=
Dao
.
GetDb
(
"supplier"
)
.
Table
(
"lie_supplier_channel"
)
.
Limit
(
100
,
i
)
.
Where
(
"is_type = ?"
,
0
)
.
OrderBy
(
"supplier_id desc"
)
.
Rows
(
supplier
)
if
err
!=
nil
{
return
err
}
result
:=
resp
.
String
()
skuNum
:=
gjson
.
Get
(
result
,
"data.total"
)
.
Int
()
if
skuNum
>
0
{
num
++
}
/**
sku数量和sku日志统计
**/
err
=
UpdateSupplierSkuNum
(
supplier
.
SupplierId
,
int
(
skuNum
))
if
err
!=
nil
{
return
err
}
if
skuNum
>
0
{
err
=
UpdateSupplierSkuLog
(
supplier
.
SupplierId
,
int
(
skuNum
))
//先重置所有供应商的平均数
supplierSkuNum
:=
new
(
model
.
Supplier
)
supplier
.
AverageSkuNum
=
0
_
,
err
=
Dao
.
GetDb
(
"supplier"
)
.
Table
(
"lie_supplier_channel"
)
.
Where
(
"supplier_id >= ?"
,
1
)
.
MustCols
(
"average_sku_num"
)
.
Update
(
supplierSkuNum
)
defer
rows
.
Close
()
for
rows
.
Next
()
{
err
=
rows
.
Scan
(
supplier
)
//去es查询sku数量
params
:=
req
.
Param
{
"goods_status/condition"
:
1
,
"canal/condition"
:
supplier
.
SupplierCode
,
"show_status"
:
1
,
"supplier_id"
:
17
,
"update_time/order"
:
"desc"
,
}
url
:=
lib
.
Instance
(
"config"
)
.
GetString
(
"es.es_sku_url"
)
resp
,
err
:=
req
.
Post
(
url
,
params
)
if
err
!=
nil
{
return
err
}
}
result
:=
resp
.
String
()
skuNum
:=
gjson
.
Get
(
result
,
"data.total"
)
.
Int
()
if
skuNum
>
0
{
num
++
}
/**
sku更新时间
**/
if
skuNum
>
0
{
updateSkuTime
:=
0
//找到第一个sku_id的更新时间
updateTimeMap
:=
gjson
.
Get
(
result
,
"data.update_time"
)
.
Map
()
if
updateTimeMap
!=
nil
{
for
_
,
createTime
:=
range
updateTimeMap
{
updateSkuTime
=
int
(
createTime
.
Int
())
break
}
/**
sku数量和sku日志统计
**/
err
=
UpdateSupplierSkuNum
(
supplier
.
SupplierId
,
int
(
skuNum
))
if
err
!=
nil
{
return
err
}
if
updateSkuTime
>
0
{
supplier
.
SkuUpdateTime
=
updateSkuTime
affected
,
err
:=
Dao
.
GetDb
(
"supplier"
)
.
Table
(
"lie_supplier_channel"
)
.
Where
(
"supplier_id = ?"
,
supplier
.
SupplierId
)
.
Cols
(
"sku_update_time"
)
.
Update
(
supplier
)
if
affected
>
0
{
}
if
skuNum
>
0
{
err
=
UpdateSupplierSkuLog
(
supplier
.
SupplierId
,
int
(
skuNum
))
if
err
!=
nil
{
return
err
}
}
}
/**
sku更新时间
**/
if
skuNum
>
0
{
updateSkuTime
:=
0
//找到第一个sku_id的更新时间
updateTimeMap
:=
gjson
.
Get
(
result
,
"data.update_time"
)
.
Map
()
if
updateTimeMap
!=
nil
{
for
_
,
createTime
:=
range
updateTimeMap
{
updateSkuTime
=
int
(
createTime
.
Int
())
break
}
}
if
updateSkuTime
>
0
{
supplier
.
SkuUpdateTime
=
updateSkuTime
affected
,
err
:=
Dao
.
GetDb
(
"supplier"
)
.
Table
(
"lie_supplier_channel"
)
.
Where
(
"supplier_id = ?"
,
supplier
.
SupplierId
)
.
Cols
(
"sku_update_time"
)
.
Update
(
supplier
)
if
affected
>
0
{
}
if
err
!=
nil
{
return
err
}
}
}
}
}
fmt
.
Println
(
"执行完成,有上传sku的供应商数量为 : "
,
num
)
return
}
...
...
app/service/supplier_sku_statistics.go
View file @
7de139c1
...
...
@@ -7,10 +7,10 @@ import (
func
StatisticsSupplierSkuStatus
()
(
err
error
)
{
fmt
.
Println
(
"开始统计"
)
err
=
dao
.
StatisticsSkuCreateTime
()
if
err
!=
nil
{
return
err
}
//
err = dao.StatisticsSkuCreateTime()
//
if err != nil {
//
return err
//
}
//先找出所有需要判断的供应商
err
=
dao
.
StatisticsSuppliersSkuNum
()
if
err
!=
nil
{
...
...
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