Merge pull request 'feat-IRONFANS-87-Robin' (#372) from feat-IRONFANS-87-Robin into main
Reviewed-on: http://121.41.31.146:3000/wishpal_ironfan/service/pulls/372
This commit is contained in:
commit
419e3fb0f3
|
@ -95,5 +95,8 @@ const ReservedUserIdRegexesConfig = PackageRootPath + "/etc/mix/resource/reg_res
|
||||||
// H5调用路径
|
// H5调用路径
|
||||||
const H5CallUrl = "/api/streamer/list_ext_by_user_id"
|
const H5CallUrl = "/api/streamer/list_ext_by_user_id"
|
||||||
|
|
||||||
|
// 站外user_id访问zone调用路径
|
||||||
|
const ZoneListFromOutsideCountCallUrl = "/api/zone/list_by_user_id_from_outside"
|
||||||
|
|
||||||
// 应用上线时间,2024-01-02 14:00:00
|
// 应用上线时间,2024-01-02 14:00:00
|
||||||
const AppEnterProductionTime = 1704175200
|
const AppEnterProductionTime = 1704175200
|
||||||
|
|
|
@ -94,6 +94,13 @@ func (s *CronService) CreateDailyStatement(ctx context.Context, param *xxl.RunRe
|
||||||
return fmt.Sprintf("query h5 call count fail : %v", err)
|
return fmt.Sprintf("query h5 call count fail : %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//获取站外user_id访问zone访问量
|
||||||
|
zoneListFromOusideCount, err := DefaultScriptsService.QueryCallCount(consts.ZoneListFromOutsideCountCallUrl, logpath)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("query list_by_user_id_from_outside call count fail : %v", err)
|
||||||
|
return fmt.Sprintf("query list_by_user_id_from_outside call count fail : %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
//获取用户总量
|
//获取用户总量
|
||||||
accountCount, err := _DefaultAccount.OpCount(&gin.Context{}, &accountproto.OpCountReq{
|
accountCount, err := _DefaultAccount.OpCount(&gin.Context{}, &accountproto.OpCountReq{
|
||||||
CtLowerBound: goproto.Int64(int64(consts.AppEnterProductionTime)),
|
CtLowerBound: goproto.Int64(int64(consts.AppEnterProductionTime)),
|
||||||
|
@ -140,6 +147,7 @@ func (s *CronService) CreateDailyStatement(ctx context.Context, param *xxl.RunRe
|
||||||
LastHourNewUserCountFromAndroid: goproto.Int64(androidCount),
|
LastHourNewUserCountFromAndroid: goproto.Int64(androidCount),
|
||||||
LastHourNewUserCountFromIos: goproto.Int64(iosCount),
|
LastHourNewUserCountFromIos: goproto.Int64(iosCount),
|
||||||
LastHourNewUserCountFromH5: goproto.Int64(h5Count),
|
LastHourNewUserCountFromH5: goproto.Int64(h5Count),
|
||||||
|
ZoneListFromOutsideCount: goproto.Int64(int64(zoneListFromOusideCount)),
|
||||||
StartTime: goproto.Int64(startTimeStamp),
|
StartTime: goproto.Int64(startTimeStamp),
|
||||||
EndTime: goproto.Int64(endTimeStamp),
|
EndTime: goproto.Int64(endTimeStamp),
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,6 +9,7 @@ type DailyStatement struct {
|
||||||
LastHourNewUserCountFromAndroid *int64 `json:"last_hour_new_user_count_from_android" bson:"last_hour_new_user_count_from_android"` // 安卓注册总量
|
LastHourNewUserCountFromAndroid *int64 `json:"last_hour_new_user_count_from_android" bson:"last_hour_new_user_count_from_android"` // 安卓注册总量
|
||||||
LastHourNewUserCountFromIos *int64 `json:"last_hour_new_user_count_from_ios" bson:"last_hour_new_user_count_from_ios"` // ios注册总量
|
LastHourNewUserCountFromIos *int64 `json:"last_hour_new_user_count_from_ios" bson:"last_hour_new_user_count_from_ios"` // ios注册总量
|
||||||
LastHourNewUserCountFromH5 *int64 `json:"last_hour_new_user_count_from_h5" bson:"last_hour_new_user_count_from_h5"` // h5注册总量
|
LastHourNewUserCountFromH5 *int64 `json:"last_hour_new_user_count_from_h5" bson:"last_hour_new_user_count_from_h5"` // h5注册总量
|
||||||
|
ZoneListFromOutsideCount *int64 `json:"zone_list_from_outside_count" bson:"zone_list_from_outside_count"` // 站外user_id查询空间总量
|
||||||
StartTime *int64 `json:"start_time" bson:"start_time"` // 起始时间
|
StartTime *int64 `json:"start_time" bson:"start_time"` // 起始时间
|
||||||
EndTime *int64 `json:"end_time" bson:"end_time"` // 结束时间
|
EndTime *int64 `json:"end_time" bson:"end_time"` // 结束时间
|
||||||
Ct *int64 `json:"ct" bson:"ct"` // 创建时间
|
Ct *int64 `json:"ct" bson:"ct"` // 创建时间
|
||||||
|
|
|
@ -75,7 +75,7 @@ apollo:
|
||||||
dysmsapi:
|
dysmsapi:
|
||||||
access_key_id: "LTAI5tMZEAgdr7ZqHQfBF314"
|
access_key_id: "LTAI5tMZEAgdr7ZqHQfBF314"
|
||||||
access_key_secret: "Qd8Sf94841y22vUjAhXCpLTdo2r0ys"
|
access_key_secret: "Qd8Sf94841y22vUjAhXCpLTdo2r0ys"
|
||||||
sign_name: "成都心意到了科技"
|
sign_name: "铁粉空间"
|
||||||
template_code: "SMS_290196756"
|
template_code: "SMS_290196756"
|
||||||
|
|
||||||
imageaudit:
|
imageaudit:
|
||||||
|
|
|
@ -74,7 +74,7 @@ apollo:
|
||||||
dysmsapi:
|
dysmsapi:
|
||||||
access_key_id: "LTAI5tMZEAgdr7ZqHQfBF314"
|
access_key_id: "LTAI5tMZEAgdr7ZqHQfBF314"
|
||||||
access_key_secret: "Qd8Sf94841y22vUjAhXCpLTdo2r0ys"
|
access_key_secret: "Qd8Sf94841y22vUjAhXCpLTdo2r0ys"
|
||||||
sign_name: "成都心意到了科技"
|
sign_name: "铁粉空间"
|
||||||
template_code: "SMS_290196756"
|
template_code: "SMS_290196756"
|
||||||
|
|
||||||
imageaudit:
|
imageaudit:
|
||||||
|
|
|
@ -48,7 +48,7 @@ func Run(batchId string) (successNum int, failNum int, err error) {
|
||||||
|
|
||||||
// 2.创建请求
|
// 2.创建请求
|
||||||
// oss不在上海的服务器,需要调用Advance接口
|
// oss不在上海的服务器,需要调用Advance接口
|
||||||
req, err := createScanImageAdvanceRequest(ctrlBlock)
|
reqs, err := createScanImageAdvanceRequest(ctrlBlock)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Info("Create Scan ImageRequest fail: %v", err)
|
logger.Info("Create Scan ImageRequest fail: %v", err)
|
||||||
handleBatchError(ctrlBlock, err)
|
handleBatchError(ctrlBlock, err)
|
||||||
|
@ -60,25 +60,31 @@ func Run(batchId string) (successNum int, failNum int, err error) {
|
||||||
runtime := &teautils.RuntimeOptions{
|
runtime := &teautils.RuntimeOptions{
|
||||||
ConnectTimeout: tea.Int(30000),
|
ConnectTimeout: tea.Int(30000),
|
||||||
}
|
}
|
||||||
_result, err := defaultImageAuditClient.ScanImageAdvance(req, runtime)
|
|
||||||
if err != nil {
|
results := make([]*imageaudit.ScanImageResponseBodyDataResults, 0)
|
||||||
if _t, ok := err.(*tea.SDKError); ok {
|
for _, req := range reqs {
|
||||||
logger.Error("ScanImageAdvance fail, errinfo : %v", util.DerefString(_t.Data))
|
var _result *imageaudit.ScanImageResponse
|
||||||
|
_result, err = defaultImageAuditClient.ScanImageAdvance(req, runtime)
|
||||||
|
if err != nil {
|
||||||
|
if _t, ok := err.(*tea.SDKError); ok {
|
||||||
|
logger.Error("ScanImageAdvance fail, errinfo : %v", util.DerefString(_t.Data))
|
||||||
|
}
|
||||||
|
handleBatchError(ctrlBlock, err)
|
||||||
|
failNum = len(imageaudittasks)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
handleBatchError(ctrlBlock, err)
|
results = append(results, _result.Body.Data.Results...)
|
||||||
failNum = len(imageaudittasks)
|
logger.Info("Receive the response from ScanImageAdvance: %v", _result.String())
|
||||||
return
|
|
||||||
}
|
}
|
||||||
logger.Info("Receive the response from ScanImageAdvance: %v", _result.String())
|
|
||||||
|
|
||||||
// 4.处理应答
|
// 4.处理应答
|
||||||
err = handleScanImageResponse(ctrlBlock, _result)
|
err = handleScanImageResponseBodyDataResults(ctrlBlock, results)
|
||||||
|
|
||||||
successNum = len(imageaudittasks)
|
successNum = len(imageaudittasks)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func createScanImageAdvanceRequest(ctrlBlock *ImageAuditTaskBatchControlBlock) (request *imageaudit.ScanImageAdvanceRequest, err error) {
|
func createScanImageAdvanceRequest(ctrlBlock *ImageAuditTaskBatchControlBlock) (requests []*imageaudit.ScanImageAdvanceRequest, err error) {
|
||||||
httpClient := http.Client{}
|
httpClient := http.Client{}
|
||||||
imageauditIds := ctrlBlock.ImageAuditIds
|
imageauditIds := ctrlBlock.ImageAuditIds
|
||||||
reqTasks := make([]*imageaudit.ScanImageAdvanceRequestTask, 0)
|
reqTasks := make([]*imageaudit.ScanImageAdvanceRequestTask, 0)
|
||||||
|
@ -90,7 +96,6 @@ func createScanImageAdvanceRequest(ctrlBlock *ImageAuditTaskBatchControlBlock) (
|
||||||
logger.Error("httpClient Get fail : %v", err)
|
logger.Error("httpClient Get fail : %v", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
reqTasks = append(reqTasks, &imageaudit.ScanImageAdvanceRequestTask{
|
reqTasks = append(reqTasks, &imageaudit.ScanImageAdvanceRequestTask{
|
||||||
DataId: goproto.String(imageauditIds[i]),
|
DataId: goproto.String(imageauditIds[i]),
|
||||||
ImageURLObject: file.Body,
|
ImageURLObject: file.Body,
|
||||||
|
@ -101,16 +106,29 @@ func createScanImageAdvanceRequest(ctrlBlock *ImageAuditTaskBatchControlBlock) (
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
request = &imageaudit.ScanImageAdvanceRequest{
|
// 阿里云一次最多审10条,将待审图片按10条拆分
|
||||||
Scene: scenes,
|
requests = make([]*imageaudit.ScanImageAdvanceRequest, 0)
|
||||||
Task: reqTasks,
|
i := 0
|
||||||
|
for ; i < len(reqTasks)/10; i++ {
|
||||||
|
request := &imageaudit.ScanImageAdvanceRequest{
|
||||||
|
Scene: scenes,
|
||||||
|
Task: reqTasks[i*10 : (i+1)*10],
|
||||||
|
}
|
||||||
|
requests = append(requests, request)
|
||||||
}
|
}
|
||||||
|
if i*10 < len(reqTasks) {
|
||||||
|
request := &imageaudit.ScanImageAdvanceRequest{
|
||||||
|
Scene: scenes,
|
||||||
|
Task: reqTasks[i*10:],
|
||||||
|
}
|
||||||
|
requests = append(requests, request)
|
||||||
|
}
|
||||||
|
|
||||||
logger.Info("本次打包:%v", reqs)
|
logger.Info("本次打包:%v", reqs)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func handleScanImageResponse(ctrlBlock *ImageAuditTaskBatchControlBlock, resp *imageaudit.ScanImageResponse) (err error) {
|
func handleScanImageResponseBodyDataResults(ctrlBlock *ImageAuditTaskBatchControlBlock, results []*imageaudit.ScanImageResponseBodyDataResults) (err error) {
|
||||||
results := resp.Body.Data.Results
|
|
||||||
taskCtrlBlocks := ctrlBlock.TaskCtrlBlocks
|
taskCtrlBlocks := ctrlBlock.TaskCtrlBlocks
|
||||||
img2taskIndexMap := ctrlBlock.Img2taskIndexMap
|
img2taskIndexMap := ctrlBlock.Img2taskIndexMap
|
||||||
actionMap := ctrlBlock.ActionMap
|
actionMap := ctrlBlock.ActionMap
|
||||||
|
|
Loading…
Reference in New Issue