Compare commits

..

1 Commits
dev ... main

Author SHA1 Message Date
sxy
ef6d40cf81 单价模式增加总价 2025-09-11 14:50:42 +08:00
29 changed files with 4916 additions and 5893 deletions

File diff suppressed because it is too large Load Diff

View File

@ -95,13 +95,6 @@ func (this *BundleProfile) Validate() error {
} }
} }
} }
for _, item := range this.SelectValueAdditionalService {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("SelectValueAdditionalService", err)
}
}
}
for _, item := range this.BundleProfileLang { for _, item := range this.BundleProfileLang {
if item != nil { if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
@ -112,16 +105,6 @@ func (this *BundleProfile) Validate() error {
return nil return nil
} }
func (this *BundleProfileLang) Validate() error { func (this *BundleProfileLang) Validate() error {
for _, item := range this.ServiceLangInfo {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("ServiceLangInfo", err)
}
}
}
return nil
}
func (this *ServiceLangInfo) Validate() error {
return nil return nil
} }
func (this *SaveResponse) Validate() error { func (this *SaveResponse) Validate() error {
@ -130,9 +113,6 @@ func (this *SaveResponse) Validate() error {
func (this *SelectValueAddService) Validate() error { func (this *SelectValueAddService) Validate() error {
return nil return nil
} }
func (this *SelectValueAdditionalService) Validate() error {
return nil
}
func (this *DelBundleRequest) Validate() error { func (this *DelBundleRequest) Validate() error {
return nil return nil
} }
@ -486,72 +466,3 @@ func (this *UnfinishedInfo) Validate() error {
func (this *SoftDeleteUnfinishedInfoRequest) Validate() error { func (this *SoftDeleteUnfinishedInfoRequest) Validate() error {
return nil return nil
} }
func (this *TaskQueryRequest) Validate() error {
return nil
}
func (this *TaskQueryResponse) Validate() error {
for _, item := range this.Tasks {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("Tasks", err)
}
}
}
return nil
}
func (this *TaskManagementInfo) Validate() error {
return nil
}
func (this *TaskAssignRequest) Validate() error {
return nil
}
func (this *UpdatePendingCountRequest) Validate() error {
return nil
}
func (this *RecentAssignRecordsRequest) Validate() error {
return nil
}
func (this *RecentAssignRecordsResponse) Validate() error {
return nil
}
func (this *EmployeeTaskQueryRequest) Validate() error {
return nil
}
func (this *EmployeeTaskQueryResponse) Validate() error {
for _, item := range this.Records {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("Records", err)
}
}
}
return nil
}
func (this *TaskAssignRecordInfo) Validate() error {
return nil
}
func (this *CompleteTaskManuallyRequest) Validate() error {
return nil
}
func (this *UpdateTaskProgressRequest) Validate() error {
return nil
}
func (this *TaskAssignRecordsQueryRequest) Validate() error {
return nil
}
func (this *TaskAssignRecordsQueryResponse) Validate() error {
for _, item := range this.Records {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("Records", err)
}
}
}
return nil
}
func (this *ArtistBundleBalanceRequest) Validate() error {
return nil
}
func (this *ArtistBundleBalanceResponse) Validate() error {
return nil
}

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go-triple. DO NOT EDIT. // Code generated by protoc-gen-go-triple. DO NOT EDIT.
// versions: // versions:
// - protoc-gen-go-triple v1.0.5 // - protoc-gen-go-triple v1.0.8
// - protoc v6.32.0 // - protoc v3.20.3
// source: pb/bundle.proto // source: pb/bundle.proto
package bundle package bundle
@ -50,11 +50,11 @@ type BundleClient interface {
OrderRecordsListV2(ctx context.Context, in *OrderRecordsRequestV2, opts ...grpc_go.CallOption) (*OrderRecordsResponseV2, common.ErrorWithAttachment) OrderRecordsListV2(ctx context.Context, in *OrderRecordsRequestV2, opts ...grpc_go.CallOption) (*OrderRecordsResponseV2, common.ErrorWithAttachment)
OrderListByOrderNo(ctx context.Context, in *OrderInfoByOrderNoRequest, opts ...grpc_go.CallOption) (*OrderInfoByOrderNoResp, common.ErrorWithAttachment) OrderListByOrderNo(ctx context.Context, in *OrderInfoByOrderNoRequest, opts ...grpc_go.CallOption) (*OrderInfoByOrderNoResp, common.ErrorWithAttachment)
OnlyAddValueListByOrderNo(ctx context.Context, in *OnlyAddValueListByOrderNoRequest, opts ...grpc_go.CallOption) (*OnlyAddValueListByOrderNoResp, common.ErrorWithAttachment) OnlyAddValueListByOrderNo(ctx context.Context, in *OnlyAddValueListByOrderNoRequest, opts ...grpc_go.CallOption) (*OnlyAddValueListByOrderNoResp, common.ErrorWithAttachment)
// 增值套餐 //增值套餐
CreateValueAddBundle(ctx context.Context, in *CreateValueAddBundleRequest, opts ...grpc_go.CallOption) (*CreateValueAddBundleResponse, common.ErrorWithAttachment) CreateValueAddBundle(ctx context.Context, in *CreateValueAddBundleRequest, opts ...grpc_go.CallOption) (*CreateValueAddBundleResponse, common.ErrorWithAttachment)
ValueAddBundleList(ctx context.Context, in *ValueAddBundleListRequest, opts ...grpc_go.CallOption) (*ValueAddBundleListResponse, common.ErrorWithAttachment) ValueAddBundleList(ctx context.Context, in *ValueAddBundleListRequest, opts ...grpc_go.CallOption) (*ValueAddBundleListResponse, common.ErrorWithAttachment)
ValueAddBundleDetail(ctx context.Context, in *ValueAddBundleDetailRequest, opts ...grpc_go.CallOption) (*ValueAddBundleDetailResponse, common.ErrorWithAttachment) ValueAddBundleDetail(ctx context.Context, in *ValueAddBundleDetailRequest, opts ...grpc_go.CallOption) (*ValueAddBundleDetailResponse, common.ErrorWithAttachment)
// 新增值服务 //新增值服务
SaveValueAddService(ctx context.Context, in *ValueAddServiceLang, opts ...grpc_go.CallOption) (*SaveResponse, common.ErrorWithAttachment) SaveValueAddService(ctx context.Context, in *ValueAddServiceLang, opts ...grpc_go.CallOption) (*SaveResponse, common.ErrorWithAttachment)
ValueAddServiceList(ctx context.Context, in *ValueAddServiceListRequest, opts ...grpc_go.CallOption) (*ValueAddServiceListResponse, common.ErrorWithAttachment) ValueAddServiceList(ctx context.Context, in *ValueAddServiceListRequest, opts ...grpc_go.CallOption) (*ValueAddServiceListResponse, common.ErrorWithAttachment)
ValueAddServiceDetail(ctx context.Context, in *ValueAddServiceDetailRequest, opts ...grpc_go.CallOption) (*ValueAddServiceDetailResponse, common.ErrorWithAttachment) ValueAddServiceDetail(ctx context.Context, in *ValueAddServiceDetailRequest, opts ...grpc_go.CallOption) (*ValueAddServiceDetailResponse, common.ErrorWithAttachment)
@ -75,7 +75,7 @@ type BundleClient interface {
GetVedioWorkDetail(ctx context.Context, in *GetVedioWorkDetailReq, opts ...grpc_go.CallOption) (*GetVedioeWorkDetailResp, common.ErrorWithAttachment) GetVedioWorkDetail(ctx context.Context, in *GetVedioWorkDetailReq, opts ...grpc_go.CallOption) (*GetVedioeWorkDetailResp, common.ErrorWithAttachment)
ToBeComfirmedWorks(ctx context.Context, in *ToBeComfirmedWorksReq, opts ...grpc_go.CallOption) (*ToBeComfirmedWorksResp, common.ErrorWithAttachment) ToBeComfirmedWorks(ctx context.Context, in *ToBeComfirmedWorksReq, opts ...grpc_go.CallOption) (*ToBeComfirmedWorksResp, common.ErrorWithAttachment)
ConfirmWork(ctx context.Context, in *ConfirmWorkReq, opts ...grpc_go.CallOption) (*ConfirmWorkResp, common.ErrorWithAttachment) ConfirmWork(ctx context.Context, in *ConfirmWorkReq, opts ...grpc_go.CallOption) (*ConfirmWorkResp, common.ErrorWithAttachment)
// 对账单 //对账单
GetReconciliationList(ctx context.Context, in *GetReconciliationListReq, opts ...grpc_go.CallOption) (*GetReconciliationListResp, common.ErrorWithAttachment) GetReconciliationList(ctx context.Context, in *GetReconciliationListReq, opts ...grpc_go.CallOption) (*GetReconciliationListResp, common.ErrorWithAttachment)
CreateReconciliation(ctx context.Context, in *ReconciliationInfo, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) CreateReconciliation(ctx context.Context, in *ReconciliationInfo, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
UpdateReconciliation(ctx context.Context, in *ReconciliationInfo, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) UpdateReconciliation(ctx context.Context, in *ReconciliationInfo, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
@ -83,16 +83,6 @@ type BundleClient interface {
// 查出没处理的数据 // 查出没处理的数据
ListUnfinishedInfos(ctx context.Context, in *AutoCreateUserAndOrderRequest, opts ...grpc_go.CallOption) (*UnfinishedInfos, common.ErrorWithAttachment) ListUnfinishedInfos(ctx context.Context, in *AutoCreateUserAndOrderRequest, opts ...grpc_go.CallOption) (*UnfinishedInfos, common.ErrorWithAttachment)
SoftDeleteUnfinishedInfo(ctx context.Context, in *SoftDeleteUnfinishedInfoRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) SoftDeleteUnfinishedInfo(ctx context.Context, in *SoftDeleteUnfinishedInfoRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
// 任务台
GetPendingTaskList(ctx context.Context, in *TaskQueryRequest, opts ...grpc_go.CallOption) (*TaskQueryResponse, common.ErrorWithAttachment)
AssignTask(ctx context.Context, in *TaskAssignRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
UpdatePendingCount(ctx context.Context, in *UpdatePendingCountRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
GetRecentAssignRecords(ctx context.Context, in *RecentAssignRecordsRequest, opts ...grpc_go.CallOption) (*RecentAssignRecordsResponse, common.ErrorWithAttachment)
GetEmployeeAssignedTasks(ctx context.Context, in *EmployeeTaskQueryRequest, opts ...grpc_go.CallOption) (*EmployeeTaskQueryResponse, common.ErrorWithAttachment)
CompleteTaskManually(ctx context.Context, in *CompleteTaskManuallyRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
UpdateTaskProgress(ctx context.Context, in *UpdateTaskProgressRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
GetTaskAssignRecordsList(ctx context.Context, in *TaskAssignRecordsQueryRequest, opts ...grpc_go.CallOption) (*TaskAssignRecordsQueryResponse, common.ErrorWithAttachment)
GetArtistBundleBalance(ctx context.Context, in *ArtistBundleBalanceRequest, opts ...grpc_go.CallOption) (*ArtistBundleBalanceResponse, common.ErrorWithAttachment)
} }
type bundleClient struct { type bundleClient struct {
@ -149,15 +139,6 @@ type BundleClientImpl struct {
UpdateReconciliationStatusBySerialNumber func(ctx context.Context, in *UpdateStatusAndPayTimeBySerialNumber) (*CommonResponse, error) UpdateReconciliationStatusBySerialNumber func(ctx context.Context, in *UpdateStatusAndPayTimeBySerialNumber) (*CommonResponse, error)
ListUnfinishedInfos func(ctx context.Context, in *AutoCreateUserAndOrderRequest) (*UnfinishedInfos, error) ListUnfinishedInfos func(ctx context.Context, in *AutoCreateUserAndOrderRequest) (*UnfinishedInfos, error)
SoftDeleteUnfinishedInfo func(ctx context.Context, in *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error) SoftDeleteUnfinishedInfo func(ctx context.Context, in *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error)
GetPendingTaskList func(ctx context.Context, in *TaskQueryRequest) (*TaskQueryResponse, error)
AssignTask func(ctx context.Context, in *TaskAssignRequest) (*CommonResponse, error)
UpdatePendingCount func(ctx context.Context, in *UpdatePendingCountRequest) (*CommonResponse, error)
GetRecentAssignRecords func(ctx context.Context, in *RecentAssignRecordsRequest) (*RecentAssignRecordsResponse, error)
GetEmployeeAssignedTasks func(ctx context.Context, in *EmployeeTaskQueryRequest) (*EmployeeTaskQueryResponse, error)
CompleteTaskManually func(ctx context.Context, in *CompleteTaskManuallyRequest) (*CommonResponse, error)
UpdateTaskProgress func(ctx context.Context, in *UpdateTaskProgressRequest) (*CommonResponse, error)
GetTaskAssignRecordsList func(ctx context.Context, in *TaskAssignRecordsQueryRequest) (*TaskAssignRecordsQueryResponse, error)
GetArtistBundleBalance func(ctx context.Context, in *ArtistBundleBalanceRequest) (*ArtistBundleBalanceResponse, error)
} }
func (c *BundleClientImpl) GetDubboStub(cc *triple.TripleConn) BundleClient { func (c *BundleClientImpl) GetDubboStub(cc *triple.TripleConn) BundleClient {
@ -466,60 +447,6 @@ func (c *bundleClient) SoftDeleteUnfinishedInfo(ctx context.Context, in *SoftDel
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/SoftDeleteUnfinishedInfo", in, out) return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/SoftDeleteUnfinishedInfo", in, out)
} }
func (c *bundleClient) GetPendingTaskList(ctx context.Context, in *TaskQueryRequest, opts ...grpc_go.CallOption) (*TaskQueryResponse, common.ErrorWithAttachment) {
out := new(TaskQueryResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetPendingTaskList", in, out)
}
func (c *bundleClient) AssignTask(ctx context.Context, in *TaskAssignRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) {
out := new(CommonResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/AssignTask", in, out)
}
func (c *bundleClient) UpdatePendingCount(ctx context.Context, in *UpdatePendingCountRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) {
out := new(CommonResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdatePendingCount", in, out)
}
func (c *bundleClient) GetRecentAssignRecords(ctx context.Context, in *RecentAssignRecordsRequest, opts ...grpc_go.CallOption) (*RecentAssignRecordsResponse, common.ErrorWithAttachment) {
out := new(RecentAssignRecordsResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetRecentAssignRecords", in, out)
}
func (c *bundleClient) GetEmployeeAssignedTasks(ctx context.Context, in *EmployeeTaskQueryRequest, opts ...grpc_go.CallOption) (*EmployeeTaskQueryResponse, common.ErrorWithAttachment) {
out := new(EmployeeTaskQueryResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetEmployeeAssignedTasks", in, out)
}
func (c *bundleClient) CompleteTaskManually(ctx context.Context, in *CompleteTaskManuallyRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) {
out := new(CommonResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/CompleteTaskManually", in, out)
}
func (c *bundleClient) UpdateTaskProgress(ctx context.Context, in *UpdateTaskProgressRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) {
out := new(CommonResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateTaskProgress", in, out)
}
func (c *bundleClient) GetTaskAssignRecordsList(ctx context.Context, in *TaskAssignRecordsQueryRequest, opts ...grpc_go.CallOption) (*TaskAssignRecordsQueryResponse, common.ErrorWithAttachment) {
out := new(TaskAssignRecordsQueryResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetTaskAssignRecordsList", in, out)
}
func (c *bundleClient) GetArtistBundleBalance(ctx context.Context, in *ArtistBundleBalanceRequest, opts ...grpc_go.CallOption) (*ArtistBundleBalanceResponse, common.ErrorWithAttachment) {
out := new(ArtistBundleBalanceResponse)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetArtistBundleBalance", in, out)
}
// BundleServer is the server API for Bundle service. // BundleServer is the server API for Bundle service.
// All implementations must embed UnimplementedBundleServer // All implementations must embed UnimplementedBundleServer
// for forward compatibility // for forward compatibility
@ -546,11 +473,11 @@ type BundleServer interface {
OrderRecordsListV2(context.Context, *OrderRecordsRequestV2) (*OrderRecordsResponseV2, error) OrderRecordsListV2(context.Context, *OrderRecordsRequestV2) (*OrderRecordsResponseV2, error)
OrderListByOrderNo(context.Context, *OrderInfoByOrderNoRequest) (*OrderInfoByOrderNoResp, error) OrderListByOrderNo(context.Context, *OrderInfoByOrderNoRequest) (*OrderInfoByOrderNoResp, error)
OnlyAddValueListByOrderNo(context.Context, *OnlyAddValueListByOrderNoRequest) (*OnlyAddValueListByOrderNoResp, error) OnlyAddValueListByOrderNo(context.Context, *OnlyAddValueListByOrderNoRequest) (*OnlyAddValueListByOrderNoResp, error)
// 增值套餐 //增值套餐
CreateValueAddBundle(context.Context, *CreateValueAddBundleRequest) (*CreateValueAddBundleResponse, error) CreateValueAddBundle(context.Context, *CreateValueAddBundleRequest) (*CreateValueAddBundleResponse, error)
ValueAddBundleList(context.Context, *ValueAddBundleListRequest) (*ValueAddBundleListResponse, error) ValueAddBundleList(context.Context, *ValueAddBundleListRequest) (*ValueAddBundleListResponse, error)
ValueAddBundleDetail(context.Context, *ValueAddBundleDetailRequest) (*ValueAddBundleDetailResponse, error) ValueAddBundleDetail(context.Context, *ValueAddBundleDetailRequest) (*ValueAddBundleDetailResponse, error)
// 新增值服务 //新增值服务
SaveValueAddService(context.Context, *ValueAddServiceLang) (*SaveResponse, error) SaveValueAddService(context.Context, *ValueAddServiceLang) (*SaveResponse, error)
ValueAddServiceList(context.Context, *ValueAddServiceListRequest) (*ValueAddServiceListResponse, error) ValueAddServiceList(context.Context, *ValueAddServiceListRequest) (*ValueAddServiceListResponse, error)
ValueAddServiceDetail(context.Context, *ValueAddServiceDetailRequest) (*ValueAddServiceDetailResponse, error) ValueAddServiceDetail(context.Context, *ValueAddServiceDetailRequest) (*ValueAddServiceDetailResponse, error)
@ -571,7 +498,7 @@ type BundleServer interface {
GetVedioWorkDetail(context.Context, *GetVedioWorkDetailReq) (*GetVedioeWorkDetailResp, error) GetVedioWorkDetail(context.Context, *GetVedioWorkDetailReq) (*GetVedioeWorkDetailResp, error)
ToBeComfirmedWorks(context.Context, *ToBeComfirmedWorksReq) (*ToBeComfirmedWorksResp, error) ToBeComfirmedWorks(context.Context, *ToBeComfirmedWorksReq) (*ToBeComfirmedWorksResp, error)
ConfirmWork(context.Context, *ConfirmWorkReq) (*ConfirmWorkResp, error) ConfirmWork(context.Context, *ConfirmWorkReq) (*ConfirmWorkResp, error)
// 对账单 //对账单
GetReconciliationList(context.Context, *GetReconciliationListReq) (*GetReconciliationListResp, error) GetReconciliationList(context.Context, *GetReconciliationListReq) (*GetReconciliationListResp, error)
CreateReconciliation(context.Context, *ReconciliationInfo) (*CommonResponse, error) CreateReconciliation(context.Context, *ReconciliationInfo) (*CommonResponse, error)
UpdateReconciliation(context.Context, *ReconciliationInfo) (*CommonResponse, error) UpdateReconciliation(context.Context, *ReconciliationInfo) (*CommonResponse, error)
@ -579,16 +506,6 @@ type BundleServer interface {
// 查出没处理的数据 // 查出没处理的数据
ListUnfinishedInfos(context.Context, *AutoCreateUserAndOrderRequest) (*UnfinishedInfos, error) ListUnfinishedInfos(context.Context, *AutoCreateUserAndOrderRequest) (*UnfinishedInfos, error)
SoftDeleteUnfinishedInfo(context.Context, *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error) SoftDeleteUnfinishedInfo(context.Context, *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error)
// 任务台
GetPendingTaskList(context.Context, *TaskQueryRequest) (*TaskQueryResponse, error)
AssignTask(context.Context, *TaskAssignRequest) (*CommonResponse, error)
UpdatePendingCount(context.Context, *UpdatePendingCountRequest) (*CommonResponse, error)
GetRecentAssignRecords(context.Context, *RecentAssignRecordsRequest) (*RecentAssignRecordsResponse, error)
GetEmployeeAssignedTasks(context.Context, *EmployeeTaskQueryRequest) (*EmployeeTaskQueryResponse, error)
CompleteTaskManually(context.Context, *CompleteTaskManuallyRequest) (*CommonResponse, error)
UpdateTaskProgress(context.Context, *UpdateTaskProgressRequest) (*CommonResponse, error)
GetTaskAssignRecordsList(context.Context, *TaskAssignRecordsQueryRequest) (*TaskAssignRecordsQueryResponse, error)
GetArtistBundleBalance(context.Context, *ArtistBundleBalanceRequest) (*ArtistBundleBalanceResponse, error)
mustEmbedUnimplementedBundleServer() mustEmbedUnimplementedBundleServer()
} }
@ -744,33 +661,6 @@ func (UnimplementedBundleServer) ListUnfinishedInfos(context.Context, *AutoCreat
func (UnimplementedBundleServer) SoftDeleteUnfinishedInfo(context.Context, *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error) { func (UnimplementedBundleServer) SoftDeleteUnfinishedInfo(context.Context, *SoftDeleteUnfinishedInfoRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SoftDeleteUnfinishedInfo not implemented") return nil, status.Errorf(codes.Unimplemented, "method SoftDeleteUnfinishedInfo not implemented")
} }
func (UnimplementedBundleServer) GetPendingTaskList(context.Context, *TaskQueryRequest) (*TaskQueryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetPendingTaskList not implemented")
}
func (UnimplementedBundleServer) AssignTask(context.Context, *TaskAssignRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method AssignTask not implemented")
}
func (UnimplementedBundleServer) UpdatePendingCount(context.Context, *UpdatePendingCountRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdatePendingCount not implemented")
}
func (UnimplementedBundleServer) GetRecentAssignRecords(context.Context, *RecentAssignRecordsRequest) (*RecentAssignRecordsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetRecentAssignRecords not implemented")
}
func (UnimplementedBundleServer) GetEmployeeAssignedTasks(context.Context, *EmployeeTaskQueryRequest) (*EmployeeTaskQueryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetEmployeeAssignedTasks not implemented")
}
func (UnimplementedBundleServer) CompleteTaskManually(context.Context, *CompleteTaskManuallyRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CompleteTaskManually not implemented")
}
func (UnimplementedBundleServer) UpdateTaskProgress(context.Context, *UpdateTaskProgressRequest) (*CommonResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateTaskProgress not implemented")
}
func (UnimplementedBundleServer) GetTaskAssignRecordsList(context.Context, *TaskAssignRecordsQueryRequest) (*TaskAssignRecordsQueryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetTaskAssignRecordsList not implemented")
}
func (UnimplementedBundleServer) GetArtistBundleBalance(context.Context, *ArtistBundleBalanceRequest) (*ArtistBundleBalanceResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetArtistBundleBalance not implemented")
}
func (s *UnimplementedBundleServer) XXX_SetProxyImpl(impl protocol.Invoker) { func (s *UnimplementedBundleServer) XXX_SetProxyImpl(impl protocol.Invoker) {
s.proxyImpl = impl s.proxyImpl = impl
} }
@ -2220,267 +2110,6 @@ func _Bundle_SoftDeleteUnfinishedInfo_Handler(srv interface{}, ctx context.Conte
return interceptor(ctx, in, info, handler) return interceptor(ctx, in, info, handler)
} }
func _Bundle_GetPendingTaskList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(TaskQueryRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetPendingTaskList", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_AssignTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(TaskAssignRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("AssignTask", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_UpdatePendingCount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdatePendingCountRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("UpdatePendingCount", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetRecentAssignRecords_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(RecentAssignRecordsRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetRecentAssignRecords", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetEmployeeAssignedTasks_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(EmployeeTaskQueryRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetEmployeeAssignedTasks", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_CompleteTaskManually_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(CompleteTaskManuallyRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("CompleteTaskManually", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_UpdateTaskProgress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(UpdateTaskProgressRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("UpdateTaskProgress", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetTaskAssignRecordsList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(TaskAssignRecordsQueryRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetTaskAssignRecordsList", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetArtistBundleBalance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(ArtistBundleBalanceRequest)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetArtistBundleBalance", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
// Bundle_ServiceDesc is the grpc_go.ServiceDesc for Bundle service. // Bundle_ServiceDesc is the grpc_go.ServiceDesc for Bundle service.
// It's only intended for direct use with grpc_go.RegisterService, // It's only intended for direct use with grpc_go.RegisterService,
// and not to be introspected or modified (even as a copy) // and not to be introspected or modified (even as a copy)
@ -2684,42 +2313,6 @@ var Bundle_ServiceDesc = grpc_go.ServiceDesc{
MethodName: "SoftDeleteUnfinishedInfo", MethodName: "SoftDeleteUnfinishedInfo",
Handler: _Bundle_SoftDeleteUnfinishedInfo_Handler, Handler: _Bundle_SoftDeleteUnfinishedInfo_Handler,
}, },
{
MethodName: "GetPendingTaskList",
Handler: _Bundle_GetPendingTaskList_Handler,
},
{
MethodName: "AssignTask",
Handler: _Bundle_AssignTask_Handler,
},
{
MethodName: "UpdatePendingCount",
Handler: _Bundle_UpdatePendingCount_Handler,
},
{
MethodName: "GetRecentAssignRecords",
Handler: _Bundle_GetRecentAssignRecords_Handler,
},
{
MethodName: "GetEmployeeAssignedTasks",
Handler: _Bundle_GetEmployeeAssignedTasks_Handler,
},
{
MethodName: "CompleteTaskManually",
Handler: _Bundle_CompleteTaskManually_Handler,
},
{
MethodName: "UpdateTaskProgress",
Handler: _Bundle_UpdateTaskProgress_Handler,
},
{
MethodName: "GetTaskAssignRecordsList",
Handler: _Bundle_GetTaskAssignRecordsList_Handler,
},
{
MethodName: "GetArtistBundleBalance",
Handler: _Bundle_GetArtistBundleBalance_Handler,
},
}, },
Streams: []grpc_go.StreamDesc{}, Streams: []grpc_go.StreamDesc{},
Metadata: "pb/bundle.proto", Metadata: "pb/bundle.proto",

View File

@ -190,9 +190,9 @@ type IsSecFilingExistReq struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
FilingDate string `protobuf:"bytes,1,opt,name=filingDate,proto3" json:"filingDate"` FilingDate string `protobuf:"bytes,1,opt,name=filingDate,proto3" json:"filingDate,omitempty"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form"` Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form,omitempty"`
FinalLink string `protobuf:"bytes,3,opt,name=finalLink,proto3" json:"finalLink"` FinalLink string `protobuf:"bytes,3,opt,name=finalLink,proto3" json:"finalLink,omitempty"`
} }
func (x *IsSecFilingExistReq) Reset() { func (x *IsSecFilingExistReq) Reset() {
@ -253,7 +253,7 @@ type IsSecFilingExistResp struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Exist bool `protobuf:"varint,1,opt,name=exist,proto3" json:"exist"` Exist bool `protobuf:"varint,1,opt,name=exist,proto3" json:"exist,omitempty"`
} }
func (x *IsSecFilingExistResp) Reset() { func (x *IsSecFilingExistResp) Reset() {
@ -300,8 +300,8 @@ type CommonResp struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg"` Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
FilingKey string `protobuf:"bytes,2,opt,name=filingKey,json=filing_key,proto3" json:"filingKey"` FilingKey string `protobuf:"bytes,2,opt,name=filingKey,json=filing_key,proto3" json:"filingKey,omitempty"`
} }
func (x *CommonResp) Reset() { func (x *CommonResp) Reset() {
@ -355,22 +355,22 @@ type SecFiling struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Idx int32 `protobuf:"varint,1,opt,name=idx,proto3" json:"idx"` Idx int32 `protobuf:"varint,1,opt,name=idx,proto3" json:"idx,omitempty"`
FilingKey string `protobuf:"bytes,2,opt,name=filingKey,json=filing_key,proto3" json:"filingKey"` FilingKey string `protobuf:"bytes,2,opt,name=filingKey,json=filing_key,proto3" json:"filingKey,omitempty"`
FilingDate string `protobuf:"bytes,3,opt,name=filingDate,json=filing_date,proto3" json:"filingDate"` FilingDate string `protobuf:"bytes,3,opt,name=filingDate,json=filing_date,proto3" json:"filingDate,omitempty"`
Form string `protobuf:"bytes,4,opt,name=form,proto3" json:"form"` Form string `protobuf:"bytes,4,opt,name=form,proto3" json:"form,omitempty"`
Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description"` Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
FormDescription string `protobuf:"bytes,6,opt,name=formDescription,json=form_description,proto3" json:"formDescription"` FormDescription string `protobuf:"bytes,6,opt,name=formDescription,json=form_description,proto3" json:"formDescription,omitempty"`
FileLink string `protobuf:"bytes,7,opt,name=fileLink,json=file_link,proto3" json:"fileLink"` FileLink string `protobuf:"bytes,7,opt,name=fileLink,json=file_link,proto3" json:"fileLink,omitempty"`
DataFiles []*DataFiles `protobuf:"bytes,8,rep,name=dataFiles,json=data_files,proto3" json:"dataFiles"` DataFiles []*DataFiles `protobuf:"bytes,8,rep,name=dataFiles,json=data_files,proto3" json:"dataFiles,omitempty"`
PdfFile string `protobuf:"bytes,9,opt,name=pdfFile,json=pdf_file,proto3" json:"pdfFile"` PdfFile string `protobuf:"bytes,9,opt,name=pdfFile,json=pdf_file,proto3" json:"pdfFile,omitempty"`
WordFile string `protobuf:"bytes,10,opt,name=wordFile,json=word_file,proto3" json:"wordFile"` WordFile string `protobuf:"bytes,10,opt,name=wordFile,json=word_file,proto3" json:"wordFile,omitempty"`
ExcelFile string `protobuf:"bytes,11,opt,name=excelFile,json=excel_file,proto3" json:"excelFile"` ExcelFile string `protobuf:"bytes,11,opt,name=excelFile,json=excel_file,proto3" json:"excelFile,omitempty"`
Status int32 `protobuf:"varint,12,opt,name=status,proto3" json:"status"` Status int32 `protobuf:"varint,12,opt,name=status,proto3" json:"status,omitempty"`
Operator string `protobuf:"bytes,13,opt,name=operator,proto3" json:"operator"` Operator string `protobuf:"bytes,13,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,14,opt,name=operatorId,json=operator_id,proto3" json:"operatorId"` OperatorId int32 `protobuf:"varint,14,opt,name=operatorId,json=operator_id,proto3" json:"operatorId,omitempty"`
CreatedAt string `protobuf:"bytes,15,opt,name=createdAt,json=created_at,proto3" json:"createdAt"` CreatedAt string `protobuf:"bytes,15,opt,name=createdAt,json=created_at,proto3" json:"createdAt,omitempty"`
UpdatedAt string `protobuf:"bytes,16,opt,name=updatedAt,json=updated_at,proto3" json:"updatedAt"` UpdatedAt string `protobuf:"bytes,16,opt,name=updatedAt,json=updated_at,proto3" json:"updatedAt,omitempty"`
} }
func (x *SecFiling) Reset() { func (x *SecFiling) Reset() {
@ -522,8 +522,8 @@ type DataFiles struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description"` Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
FileUrl string `protobuf:"bytes,2,opt,name=fileUrl,json=file_url,proto3" json:"fileUrl"` FileUrl string `protobuf:"bytes,2,opt,name=fileUrl,json=file_url,proto3" json:"fileUrl,omitempty"`
} }
func (x *DataFiles) Reset() { func (x *DataFiles) Reset() {
@ -577,17 +577,17 @@ type CreateSecFilingReq struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
FilingDate string `protobuf:"bytes,1,opt,name=filingDate,proto3" json:"filingDate"` FilingDate string `protobuf:"bytes,1,opt,name=filingDate,proto3" json:"filingDate,omitempty"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form"` Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form,omitempty"`
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description"` Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
FormDescription string `protobuf:"bytes,4,opt,name=formDescription,proto3" json:"formDescription"` FormDescription string `protobuf:"bytes,4,opt,name=formDescription,proto3" json:"formDescription,omitempty"`
FileLink string `protobuf:"bytes,5,opt,name=fileLink,proto3" json:"fileLink"` FileLink string `protobuf:"bytes,5,opt,name=fileLink,proto3" json:"fileLink,omitempty"`
DataFiles []*DataFiles `protobuf:"bytes,6,rep,name=dataFiles,proto3" json:"dataFiles"` DataFiles []*DataFiles `protobuf:"bytes,6,rep,name=dataFiles,proto3" json:"dataFiles,omitempty"`
PdfFile string `protobuf:"bytes,7,opt,name=pdfFile,proto3" json:"pdfFile"` PdfFile string `protobuf:"bytes,7,opt,name=pdfFile,proto3" json:"pdfFile,omitempty"`
WordFile string `protobuf:"bytes,8,opt,name=wordFile,proto3" json:"wordFile"` WordFile string `protobuf:"bytes,8,opt,name=wordFile,proto3" json:"wordFile,omitempty"`
ExcelFile string `protobuf:"bytes,9,opt,name=excelFile,proto3" json:"excelFile"` ExcelFile string `protobuf:"bytes,9,opt,name=excelFile,proto3" json:"excelFile,omitempty"`
Operator string `protobuf:"bytes,10,opt,name=operator,proto3" json:"operator"` Operator string `protobuf:"bytes,10,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,11,opt,name=operatorId,proto3" json:"operatorId"` OperatorId int32 `protobuf:"varint,11,opt,name=operatorId,proto3" json:"operatorId,omitempty"`
} }
func (x *CreateSecFilingReq) Reset() { func (x *CreateSecFilingReq) Reset() {
@ -704,18 +704,18 @@ type UpdateSecFilingReq struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey"` FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey,omitempty"`
Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form"` Form string `protobuf:"bytes,2,opt,name=form,proto3" json:"form,omitempty"`
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description"` Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
FormDescription string `protobuf:"bytes,4,opt,name=formDescription,proto3" json:"formDescription"` FormDescription string `protobuf:"bytes,4,opt,name=formDescription,proto3" json:"formDescription,omitempty"`
FileLink string `protobuf:"bytes,5,opt,name=fileLink,proto3" json:"fileLink"` FileLink string `protobuf:"bytes,5,opt,name=fileLink,proto3" json:"fileLink,omitempty"`
DataFiles []*DataFiles `protobuf:"bytes,6,rep,name=dataFiles,proto3" json:"dataFiles"` DataFiles []*DataFiles `protobuf:"bytes,6,rep,name=dataFiles,proto3" json:"dataFiles,omitempty"`
PdfFile string `protobuf:"bytes,7,opt,name=pdfFile,proto3" json:"pdfFile"` PdfFile string `protobuf:"bytes,7,opt,name=pdfFile,proto3" json:"pdfFile,omitempty"`
WordFile string `protobuf:"bytes,8,opt,name=wordFile,proto3" json:"wordFile"` WordFile string `protobuf:"bytes,8,opt,name=wordFile,proto3" json:"wordFile,omitempty"`
ExcelFile string `protobuf:"bytes,9,opt,name=excelFile,proto3" json:"excelFile"` ExcelFile string `protobuf:"bytes,9,opt,name=excelFile,proto3" json:"excelFile,omitempty"`
Operator string `protobuf:"bytes,10,opt,name=operator,proto3" json:"operator"` Operator string `protobuf:"bytes,10,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,11,opt,name=operatorId,proto3" json:"operatorId"` OperatorId int32 `protobuf:"varint,11,opt,name=operatorId,proto3" json:"operatorId,omitempty"`
FilingDate string `protobuf:"bytes,12,opt,name=filingDate,proto3" json:"filingDate"` FilingDate string `protobuf:"bytes,12,opt,name=filingDate,proto3" json:"filingDate,omitempty"`
} }
func (x *UpdateSecFilingReq) Reset() { func (x *UpdateSecFilingReq) Reset() {
@ -839,7 +839,7 @@ type DetailSecFilingReq struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey"` FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey,omitempty"`
} }
func (x *DetailSecFilingReq) Reset() { func (x *DetailSecFilingReq) Reset() {
@ -886,8 +886,8 @@ type SecFilingDetailResp struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg"` Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
Data *SecFiling `protobuf:"bytes,2,opt,name=data,proto3" json:"data"` Data *SecFiling `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
} }
func (x *SecFilingDetailResp) Reset() { func (x *SecFilingDetailResp) Reset() {
@ -941,12 +941,12 @@ type ListSecFilingReq struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Page uint32 `protobuf:"varint,1,opt,name=page,proto3" json:"page"` Page uint32 `protobuf:"varint,1,opt,name=page,proto3" json:"page,omitempty"`
PageSize uint32 `protobuf:"varint,2,opt,name=pageSize,proto3" json:"pageSize"` PageSize uint32 `protobuf:"varint,2,opt,name=pageSize,proto3" json:"pageSize,omitempty"`
Form string `protobuf:"bytes,3,opt,name=form,proto3" json:"form"` Form string `protobuf:"bytes,3,opt,name=form,proto3" json:"form,omitempty"`
FilingDateBegin string `protobuf:"bytes,4,opt,name=filingDateBegin,proto3" json:"filingDateBegin"` FilingDateBegin string `protobuf:"bytes,4,opt,name=filingDateBegin,proto3" json:"filingDateBegin,omitempty"`
FilingDateEnd string `protobuf:"bytes,5,opt,name=filingDateEnd,proto3" json:"filingDateEnd"` FilingDateEnd string `protobuf:"bytes,5,opt,name=filingDateEnd,proto3" json:"filingDateEnd,omitempty"`
Status int32 `protobuf:"varint,6,opt,name=status,proto3" json:"status"` Status int32 `protobuf:"varint,6,opt,name=status,proto3" json:"status,omitempty"`
} }
func (x *ListSecFilingReq) Reset() { func (x *ListSecFilingReq) Reset() {
@ -1028,9 +1028,9 @@ type SecFilingListResp struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg"` Msg string `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"`
Total uint32 `protobuf:"varint,2,opt,name=total,proto3" json:"total"` Total uint32 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
Data []*SecFiling `protobuf:"bytes,3,rep,name=data,proto3" json:"data"` Data []*SecFiling `protobuf:"bytes,3,rep,name=data,proto3" json:"data,omitempty"`
} }
func (x *SecFilingListResp) Reset() { func (x *SecFilingListResp) Reset() {
@ -1233,9 +1233,9 @@ type DeleteSecFilingReq struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey"` FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey,omitempty"`
Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator"` Operator string `protobuf:"bytes,2,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,3,opt,name=operatorId,proto3" json:"operatorId"` OperatorId int32 `protobuf:"varint,3,opt,name=operatorId,proto3" json:"operatorId,omitempty"`
} }
func (x *DeleteSecFilingReq) Reset() { func (x *DeleteSecFilingReq) Reset() {
@ -1296,10 +1296,10 @@ type UpdateSecFilingStatusReq struct {
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields unknownFields protoimpl.UnknownFields
FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey"` FilingKey string `protobuf:"bytes,1,opt,name=filingKey,proto3" json:"filingKey,omitempty"`
Status int32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"` Status int32 `protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"`
Operator string `protobuf:"bytes,3,opt,name=operator,proto3" json:"operator"` Operator string `protobuf:"bytes,3,opt,name=operator,proto3" json:"operator,omitempty"`
OperatorId int32 `protobuf:"varint,4,opt,name=operatorId,proto3" json:"operatorId"` OperatorId int32 `protobuf:"varint,4,opt,name=operatorId,proto3" json:"operatorId,omitempty"`
} }
func (x *UpdateSecFilingStatusReq) Reset() { func (x *UpdateSecFilingStatusReq) Reset() {

View File

@ -21,7 +21,6 @@ import (
"fmt" "fmt"
"fonchain-fiee/cmd/config" "fonchain-fiee/cmd/config"
"fonchain-fiee/pkg/cache" "fonchain-fiee/pkg/cache"
"fonchain-fiee/pkg/common"
"fonchain-fiee/pkg/logger" "fonchain-fiee/pkg/logger"
"fonchain-fiee/pkg/router" "fonchain-fiee/pkg/router"
) )
@ -56,7 +55,6 @@ func bootstrap() (err error) {
} }
cache.LoadRedis(redisConfig) cache.LoadRedis(redisConfig)
common.Init()
// //
//gpt.InitSet(configEnv.Ai.Host, configEnv.Ai.TelNum, configEnv.Ai.Password) //gpt.InitSet(configEnv.Ai.Host, configEnv.Ai.TelNum, configEnv.Ai.Password)
return nil return nil

View File

@ -1,15 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>隐私政策</title>
<style>
body { font-family: Arial, sans-serif; line-height: 1.6; }
</style>
</head>
<body>
<p>H5系统隐私政策</p><p>生效日期2025年9月2日</p><p>1. 信息收集与使用</p><p>收集的个人信息类型</p><p>基础信息手机号、微信昵称、头像、设备信息IMEI、操作系统版本</p><p>支付信息:订单号、支付金额、交易时间(通过加密方式传输,不存储银行卡信息)。</p><p>自媒体平台授权信息,例如:</p><p>抖音API接口权限仅限内容同步</p><p>内容生成数据:用户输入的关键词、风格偏好、历史生成内容。</p><p>收集目的</p><p>账号验证与支付:手机号用于身份核验,支付信息用于完成交易。</p><p>内容发布通过授权信息调用第三方平台API执行用户指令。</p><p>2. 信息共享与转让</p><p>第三方平台接口仅在用户授权范围内调用API不共享用户平台账号密码。</p><p>支付合作方:与微信支付、支付宝等服务商共享订单信息以完成交易。</p><p>法律要求:如配合司法机关调查或响应政府要求,可能披露必要信息。</p><p>3. 用户权利</p><p>访问与控制:</p><p>可随时在“个人中心”查看历史生成内容、订单记录及授权状态。</p><p>删除与撤回:</p><p>可申请删除个人账户及生成内容(不包含已同步至第三方平台的内容)。</p><p>4. 数据安全</p><p>技术措施采用HTTPS加密传输、数据库脱敏存储定期进行安全漏洞检测。</p><p>第三方SDK仅接入必要SDK如微信登录、地图服务等并签署数据保密协议。</p><p>5. 隐私政策更新</p><p>如涉及重大变更(如新增数据收集项),将通过短信/邮件通知并要求重新授权。</p><p>6. 联系我们</p><p>如有疑问,请通过以下方式联系:</p><p>客服邮箱develop@fiee.com</p>
</body>
</html>

View File

@ -1,15 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>服务条款</title>
<style>
body { font-family: Arial, sans-serif; line-height: 1.6; }
</style>
</head>
<body>
<p>服务条款</p><p>生效日期2025年9月2日</p><p>1. 接受条款</p><p>通过注册或使用本系统(以下简称“服务”),您确认已阅读、理解并同意以下条款。若您不同意本条款,请立即停止使用本服务。</p><p>2. 服务内容</p><p>本系统提供自媒体内容生成与发布服务,用户可购买套餐后生成图文、短视频等原创内容,并通过系统接口同步至指定自媒体平台(如微信公众号、抖音、小红书等)。</p><p>服务包含AI辅助创作、内容优化建议、一键发布功能具体内容以实际功能模块为准。</p><p>3. 用户权利与义务</p><p>账号与支付</p><p>注册需提供手机号或微信授权,购买套餐需通过系统支持的支付方式(如微信支付、支付宝)。</p><p>您需确保支付账户信息真实有效,因虚假信息导致的损失由您自行承担。</p><p>内容生成与发布</p><p>生成内容为原创作品,最终发布权归用户所有。</p><p>用户需对生成内容进行人工审核,确认无误后方可发布。因内容违规导致的平台处罚或法律纠纷,责任由用户承担。</p><p>系统不对用户未审核内容的合规性负责,但有权对明显违法内容(如涉黄、涉政)进行过滤拦截。</p><p>第三方平台接口</p><p>用户需授权系统调用其自媒体平台API如tiktok开发者接口授权范围限于内容发布及数据同步。</p><p>授权信息仅用于执行用户指令,系统不存储用户平台账号密码等敏感信息。</p><p>4. 套餐与退款</p><p>套餐有效期自购买成功日起计算,逾期未使用的套餐不支持退款。</p><p>如因系统故障或服务瑕疵导致无法正常使用,可联系客服协商退款。</p><p>5. 知识产权</p><p>由系统生成的内容(如文案、图片)默认无版权归属限制,但用户需遵守以下规则:</p><p>不得将内容用于商业用途(如转售、批量分发);</p><p>不得篡改系统生成内容的署名或标识;</p><p>若内容包含第三方素材(如音乐、图片),用户需自行确保使用合法性。</p><p>6. 责任限制</p><p>系统不对以下情形承担责任:</p><p>用户未审核内容导致的平台封禁、投诉或法律风险;</p><p>第三方平台接口变更或服务中断;</p><p>因不可抗力(如网络故障)导致的发布延迟。</p><p>7. 其他</p><p>本条款解释权归服务提供方所有,更新后将在系统内公示,用户继续使用即视为同意。</p>
</body>
</html>

View File

@ -14,7 +14,6 @@ BosUrl = ".bj.bcebos.com"
BosBaseDir = "fiee" BosBaseDir = "fiee"
BosHttp = "https://" BosHttp = "https://"
BosDomain = "cdns.fontree.cn" BosDomain = "cdns.fontree.cn"
[oss] [oss]
AccessKeyId = "OSS_AK" AccessKeyId = "OSS_AK"
AccessKeySecret = "OSS_SK" AccessKeySecret = "OSS_SK"

View File

@ -1,11 +0,0 @@
package common
import "fonchain-fiee/pkg/utils"
func Init() {
_ = utils.CreateDirPath("./runtime")
utils.CopyFile("./data/policy.html", "./runtime")
utils.CopyFile("./data/service.html", "./runtime")
utils.CopyFile("../data/policy.html", "./runtime")
utils.CopyFile("../data/service.html", "./runtime")
}

View File

@ -9,381 +9,381 @@ const (
) )
var EnMessages = map[string]string{ var EnMessages = map[string]string{
"获取套餐列表失败": "Failed to get bundle list", "获取套餐列表失败": "Failed to get bundle list",
"创建套餐信息失败": "Failed to create bundle information", "创建套餐信息失败": "Failed to create bundle information",
"创建套餐信息成功": "Successfully created bundle information", "创建套餐信息成功": "Successfully created bundle information",
"更新套餐信息失败": "Failed to update bundle information", "更新套餐信息失败": "Failed to update bundle information",
"更新套餐信息成功": "Successfully updated bundle information", "更新套餐信息成功": "Successfully updated bundle information",
"删除套餐信息失败": "Failed to delete bundle information", "删除套餐信息失败": "Failed to delete bundle information",
"删除套餐信息成功": "Successfully deleted bundle information", "删除套餐信息成功": "Successfully deleted bundle information",
"获取套餐信息失败": "Failed to get bundle information", "获取套餐信息失败": "Failed to get bundle information",
"创建订单信息失败": "Failed to create order information", "创建订单信息失败": "Failed to create order information",
"创建订单信息成功": "Successfully created order information", "创建订单信息成功": "Successfully created order information",
"更新订单信息失败": "Failed to update order information", "更新订单信息失败": "Failed to update order information",
"更新订单信息成功": "Successfully updated order information", "更新订单信息成功": "Successfully updated order information",
"获取订单信息失败": "Failed to get order information", "获取订单信息失败": "Failed to get order information",
"获取订单列表失败": "Failed to get order list", "获取订单列表失败": "Failed to get order list",
"缺少套餐UUID": "Missing bundle UUID", "缺少套餐UUID": "Missing bundle UUID",
"缺少客户签名信息": "Missing customer signature", "缺少客户签名信息": "Missing customer signature",
"插入签名失败": "Failed to insert signature", "插入签名失败": "Failed to insert signature",
"缺少订单号": "Missing order number", "缺少订单号": "Missing order number",
"缺少订单信息": "Missing order information", "缺少订单信息": "Missing order information",
"非当前用户订单信息不可操作": "Cannot operate on order information of other users", "非当前用户订单信息不可操作": "Cannot operate on order information of other users",
"订单已支付": "Order has been paid", "订单已支付": "Order has been paid",
"您已购买过套餐,无法再次购买": "You have already purchased this bundle and cannot purchase again", "您已购买过套餐,无法再次购买": "You have already purchased this bundle and cannot purchase again",
"查询支付信息失败": "Failed to query payment information", "查询支付信息失败": "Failed to query payment information",
"下载文件失败": "Failed to download file", "下载文件失败": "Failed to download file",
"上传文件失败": "Failed to upload file", "上传文件失败": "Failed to upload file",
"时间格式错误": "Invalid time format", "时间格式错误": "Invalid time format",
"账号或密码错误": "The account or password is incorrect", "账号或密码错误": "The account or password is incorrect",
"账号或验证码错误": "The account or verification code is incorrect", "账号或验证码错误": "The account or verification code is incorrect",
"账号已存在": "Account already exists", "账号已存在": "Account already exists",
"没有找到数据": "No data found", "没有找到数据": "No data found",
"已经发送过,验证码尚可用": "It was sent. The verification code is still working", "已经发送过,验证码尚可用": "It was sent. The verification code is still working",
"系统提示:已经发送过,验证码尚可用": "System message: Already sent, verification code is still available", "系统提示:已经发送过,验证码尚可用": "System message: Already sent, verification code is still available",
"您的手机号当天发送次数过多,请联系管理员通过密码登录": "Your mobile phone number is sent too many times that day, please contact the administrator to log in through the password", "您的手机号当天发送次数过多,请联系管理员通过密码登录": "Your mobile phone number is sent too many times that day, please contact the administrator to log in through the password",
"您的手机号验证码错误,请确认之后注册": "Your phone number verification code is incorrect, please confirm and register", "您的手机号验证码错误,请确认之后注册": "Your phone number verification code is incorrect, please confirm and register",
"手机号不合法": "The phone number is illegal", "手机号不合法": "The phone number is illegal",
"手机号未更改": "The phone number has not been changed", "手机号未更改": "The phone number has not been changed",
"新手机号过期": "New phone number expired", "新手机号过期": "New phone number expired",
"验证码错误": "Verification code error", "验证码错误": "Verification code error",
"验证码未发送": "The verification code was not sent", "验证码未发送": "The verification code was not sent",
"账号不存在": "Account does not exist", "账号不存在": "Account does not exist",
"已实名": "In real name", "已实名": "In real name",
"实名审核中,请勿重复提交": "During real-name audit, please do not submit repeatedly", "实名审核中,请勿重复提交": "During real-name audit, please do not submit repeatedly",
"用户状态异常,无法进行审核": "The user is abnormal and cannot be audited. Procedure", "用户状态异常,无法进行审核": "The user is abnormal and cannot be audited. Procedure",
"验证码已失效": "The verification code is invalid", "验证码已失效": "The verification code is invalid",
"服务器错误": "Server error", "服务器错误": "Server error",
"验证失败,请控制拼图对齐缺口": "Verification failed, please control puzzle alignment gap", "验证失败,请控制拼图对齐缺口": "Verification failed, please control puzzle alignment gap",
"滑块验证状态不存在,请退出重试": "The slider verification status does not exist. Please exit and try again", "滑块验证状态不存在,请退出重试": "The slider verification status does not exist. Please exit and try again",
"语言不能为空": "The language cannot be empty", "语言不能为空": "The language cannot be empty",
"排序参数需为正整数": "The sorting parameter must be a positive integer", "排序参数需为正整数": "The sorting parameter must be a positive integer",
"请先创建中文版本套餐": "Please create the Chinese version bundle first", "请先创建中文版本套餐": "Please create the Chinese version bundle first",
"增值服务不存在": "Value-added service does not exist", "增值服务不存在": "Value-added service does not exist",
"所选增值服务币种与套餐币种不一致": "The selected value-added service currency is not the same as the bundle currency", "所选增值服务币种与套餐币种不一致": "The selected value-added service currency is not the same as the bundle currency",
"文件转换失败": "File conversion failed", "文件转换失败": "File conversion failed",
"每种增值服务类型只可选择一个": "Each type of value-added service can only be selected once", "每种增值服务类型只可选择一个": "Each type of value-added service can only be selected once",
"保存套餐与增值服务关联失败": "Failed to save bundle with value-added service association", "保存套餐与增值服务关联失败": "Failed to save bundle with value-added service association",
"删除套餐与增值服务关联失败": "Failed to delete bundle with value-added service association", "删除套餐与增值服务关联失败": "Failed to delete bundle with value-added service association",
"查询套餐与增值服务关联失败": "Failed to query bundle with value-added service association", "查询套餐与增值服务关联失败": "Failed to query bundle with value-added service association",
"更新套餐与增值服务关联失败": "Failed to update bundle with value-added service association", "更新套餐与增值服务关联失败": "Failed to update bundle with value-added service association",
"查询增值服务失败": "Failed to query value-added service", "查询增值服务失败": "Failed to query value-added service",
"更新套餐状态失败": "Failed to update bundle status", "更新套餐状态失败": "Failed to update bundle status",
"查询增值服务详情失败": "Failed to query value-added service details", "查询增值服务详情失败": "Failed to query value-added service details",
"序列化转换失败": "Serialization conversion failed", "序列化转换失败": "Serialization conversion failed",
"保存套餐历史记录失败": "Failed to save bundle history record", "保存套餐历史记录失败": "Failed to save bundle history record",
"原价不能为空": "Original price cannot be empty", "原价不能为空": "Original price cannot be empty",
"原价格式转换失败": "Original price format conversion failed", "原价格式转换失败": "Original price format conversion failed",
"数量参数需为0-99": "Quantity parameter must be between 0 and 99", "数量参数需为0-99": "Quantity parameter must be between 0 and 99",
"优惠单价需小于等于原价": "The discounted price must be less than or equal to the original price", "优惠单价需小于等于原价": "The discounted price must be less than or equal to the original price",
"请先创建中文版本增值服务": "Please create the Chinese version value-added service first", "请先创建中文版本增值服务": "Please create the Chinese version value-added service first",
"保存增值服务失败": "Failed to save value-added service", "保存增值服务失败": "Failed to save value-added service",
"保存增值服务历史记录失败": "Failed to save value-added service history record", "保存增值服务历史记录失败": "Failed to save value-added service history record",
"更新增值服务失败": "Failed to update value-added service", "更新增值服务失败": "Failed to update value-added service",
"查询增值服务列表失败": "Failed to query value-added service list", "查询增值服务列表失败": "Failed to query value-added service list",
"计算价格失败": "Failed to calculate price", "计算价格失败": "Failed to calculate price",
"更新成功": "Update successful", "更新成功": "Update successful",
"保存成功": "Save successful", "保存成功": "Save successful",
"优惠单价转换失败": "Discount unit price conversion failed", "优惠单价转换失败": "Discount unit price conversion failed",
"符号错误": "Symbol error", "符号错误": "Symbol error",
"条件存在冲突,请重新设置": "Condition conflict exists, please reconfigure", "条件存在冲突,请重新设置": "Condition conflict exists, please reconfigure",
"币种已修改,已取消关联部分增值服务": "Currency has been modified, some value-added services have been unlinked", "币种已修改,已取消关联部分增值服务": "Currency has been modified, some value-added services have been unlinked",
"币种已修改,已取消关联部分套餐": "Currency has been modified, some packages have been unlinked", "币种已修改,已取消关联部分套餐": "Currency has been modified, some packages have been unlinked",
"新增增值服务成功": "Successfully added value-added service", "新增增值服务成功": "Successfully added value-added service",
"状态值无效": "Invalid status value", "状态值无效": "Invalid status value",
"套餐已上架,请勿重复操作": "Plan is already published, do not repeat the operation", "套餐已上架,请勿重复操作": "Plan is already published, do not repeat the operation",
"套餐已下架,请勿重复操作": "Plan is already unpublished, do not repeat the operation", "套餐已下架,请勿重复操作": "Plan is already unpublished, do not repeat the operation",
"请先实名": "Please use your real name first", "请先实名": "Please use your real name first",
"实名审核中": "Real-name verification is underway", "实名审核中": "Real-name verification is underway",
"实名审核失败": "The real-name verification failed", "实名审核失败": "The real-name verification failed",
"未知实名状态": "Unknown real-name status", "未知实名状态": "Unknown real-name status",
} }
var DeDEMessages = map[string]string{ var DeDEMessages = map[string]string{
"获取套餐列表失败": "Fehler beim Abrufen der Bundle-Liste", "获取套餐列表失败": "Fehler beim Abrufen der Bundle-Liste",
"创建套餐信息失败": "Fehler beim Erstellen von Bundle-Informationen", "创建套餐信息失败": "Fehler beim Erstellen von Bundle-Informationen",
"创建套餐信息成功": "Bundle-Informationen erfolgreich erstellt", "创建套餐信息成功": "Bundle-Informationen erfolgreich erstellt",
"更新套餐信息失败": "Fehler beim Aktualisieren von Bundle-Informationen", "更新套餐信息失败": "Fehler beim Aktualisieren von Bundle-Informationen",
"更新套餐信息成功": "Bundle-Informationen erfolgreich aktualisiert", "更新套餐信息成功": "Bundle-Informationen erfolgreich aktualisiert",
"删除套餐信息失败": "Fehler beim Löschen von Bundle-Informationen", "删除套餐信息失败": "Fehler beim Löschen von Bundle-Informationen",
"删除套餐信息成功": "Bundle-Informationen erfolgreich gelöscht", "删除套餐信息成功": "Bundle-Informationen erfolgreich gelöscht",
"获取套餐信息失败": "Fehler beim Abrufen von Bundle-Informationen", "获取套餐信息失败": "Fehler beim Abrufen von Bundle-Informationen",
"创建订单信息失败": "Fehler beim Erstellen von Bestellinformationen", "创建订单信息失败": "Fehler beim Erstellen von Bestellinformationen",
"创建订单信息成功": "Bestellinformationen erfolgreich erstellt", "创建订单信息成功": "Bestellinformationen erfolgreich erstellt",
"更新订单信息失败": "Fehler beim Aktualisieren von Bestellinformationen", "更新订单信息失败": "Fehler beim Aktualisieren von Bestellinformationen",
"更新订单信息成功": "Bestellinformationen erfolgreich aktualisiert", "更新订单信息成功": "Bestellinformationen erfolgreich aktualisiert",
"获取订单信息失败": "Fehler beim Abrufen von Bestellinformationen", "获取订单信息失败": "Fehler beim Abrufen von Bestellinformationen",
"获取订单列表失败": "Fehler beim Abrufen der Bestellliste", "获取订单列表失败": "Fehler beim Abrufen der Bestellliste",
"缺少套餐UUID": "Fehlende Bundle-UUID", "缺少套餐UUID": "Fehlende Bundle-UUID",
"缺少客户签名信息": "Fehlende Kundenunterschrift", "缺少客户签名信息": "Fehlende Kundenunterschrift",
"插入签名失败": "Fehler beim Einfügen der Signatur", "插入签名失败": "Fehler beim Einfügen der Signatur",
"缺少订单号": "Fehlende Bestellnummer", "缺少订单号": "Fehlende Bestellnummer",
"缺少订单信息": "Fehlende Bestellinformationen", "缺少订单信息": "Fehlende Bestellinformationen",
"非当前用户订单信息不可操作": "Bestellinformationen anderer Benutzer können nicht bearbeitet werden", "非当前用户订单信息不可操作": "Bestellinformationen anderer Benutzer können nicht bearbeitet werden",
"订单已支付": "Bestellung wurde bezahlt", "订单已支付": "Bestellung wurde bezahlt",
"您已购买过套餐,无法再次购买": "Sie haben dieses Bundle bereits gekauft und können es nicht erneut kaufen", "您已购买过套餐,无法再次购买": "Sie haben dieses Bundle bereits gekauft und können es nicht erneut kaufen",
"查询支付信息失败": "Fehler beim Abfragen von Zahlungsinformationen", "查询支付信息失败": "Fehler beim Abfragen von Zahlungsinformationen",
"下载文件失败": "Fehler beim Herunterladen der Datei", "下载文件失败": "Fehler beim Herunterladen der Datei",
"上传文件失败": "Fehler beim Hochladen der Datei", "上传文件失败": "Fehler beim Hochladen der Datei",
"时间格式错误": "Ungültiges Zeitformat", "时间格式错误": "Ungültiges Zeitformat",
"账号或密码错误": "Konto oder Passwort falsch", "账号或密码错误": "Konto oder Passwort falsch",
"账号或验证码错误": "Konto oder Verifizierungscode falsch", "账号或验证码错误": "Konto oder Verifizierungscode falsch",
"账号已存在": "Konto existiert bereits", "账号已存在": "Konto existiert bereits",
"没有找到数据": "Keine Daten gefunden", "没有找到数据": "Keine Daten gefunden",
"已经发送过,验证码尚可用": "Es wurde gesendet. Der Verifizierungscode funktioniert noch", "已经发送过,验证码尚可用": "Es wurde gesendet. Der Verifizierungscode funktioniert noch",
"系统提示:已经发送过,验证码尚可用": "Systemnachricht: Bereits gesendet, Verifizierungscode ist noch verfügbar", "系统提示:已经发送过,验证码尚可用": "Systemnachricht: Bereits gesendet, Verifizierungscode ist noch verfügbar",
"您的手机号当天发送次数过多,请联系管理员通过密码登录": "Ihre Telefonnummer wurde an diesem Tag zu oft gesendet. Bitte wenden Sie sich an den Administrator, um sich über das Passwort anzumelden", "您的手机号当天发送次数过多,请联系管理员通过密码登录": "Ihre Telefonnummer wurde an diesem Tag zu oft gesendet. Bitte wenden Sie sich an den Administrator, um sich über das Passwort anzumelden",
"您的手机号验证码错误,请确认之后注册": "Ihre Telefonnummer Verifizierungscode ist falsch, bitte bestätigen und registrieren", "您的手机号验证码错误,请确认之后注册": "Ihre Telefonnummer Verifizierungscode ist falsch, bitte bestätigen und registrieren",
"手机号不合法": "Telefonnummer ungültig", "手机号不合法": "Telefonnummer ungültig",
"手机号未更改": "Telefonnummer wurde nicht geändert", "手机号未更改": "Telefonnummer wurde nicht geändert",
"新手机号过期": "Neue Telefonnummer abgelaufen", "新手机号过期": "Neue Telefonnummer abgelaufen",
"验证码错误": "Verifizierungscode falsch", "验证码错误": "Verifizierungscode falsch",
"验证码未发送": "Der Verifizierungscode wurde nicht gesendet", "验证码未发送": "Der Verifizierungscode wurde nicht gesendet",
"账号不存在": "Konto existiert nicht", "账号不存在": "Konto existiert nicht",
"已实名": "In echt", "已实名": "In echt",
"实名审核中,请勿重复提交": "Während der Echtheitsprüfung bitte nicht wiederholen", "实名审核中,请勿重复提交": "Während der Echtheitsprüfung bitte nicht wiederholen",
"用户状态异常,无法进行审核": "Der Benutzer ist abnorm und kann nicht geprüft werden. Verfahren", "用户状态异常,无法进行审核": "Der Benutzer ist abnorm und kann nicht geprüft werden. Verfahren",
"验证码已失效": "Der Verifizierungscode ist ungültig", "验证码已失效": "Der Verifizierungscode ist ungültig",
"服务器错误": "Serverfehler", "服务器错误": "Serverfehler",
"验证失败,请控制拼图对齐缺口": "Überprüfung fehlgeschlagen, bitte Steuerung Puzzle-Ausrichtungslücke", "验证失败,请控制拼图对齐缺口": "Überprüfung fehlgeschlagen, bitte Steuerung Puzzle-Ausrichtungslücke",
"滑块验证状态不存在,请退出重试": "Die krümmbestätigung existiert nicht. Bitte beenden sie den vorgang", "滑块验证状态不存在,请退出重试": "Die krümmbestätigung existiert nicht. Bitte beenden sie den vorgang",
"语言不能为空": "Sprache darf nicht leer sein", "语言不能为空": "Sprache darf nicht leer sein",
"排序参数需为正整数": "Sortierparameter muss eine positive ganze Zahl sein", "排序参数需为正整数": "Sortierparameter muss eine positive ganze Zahl sein",
"请先创建中文版本套餐": "Bitte erstelle das Chinese Version-Paket", "请先创建中文版本套餐": "Bitte erstelle das Chinese Version-Paket",
"增值服务不存在": "Der Werbeangebot existiert nicht", "增值服务不存在": "Der Werbeangebot existiert nicht",
"所选增值服务币种与套餐币种不一致": "Die ausgewählte Währung des Werbeangebots stimmt nicht mit der Währung des Pakets überein", "所选增值服务币种与套餐币种不一致": "Die ausgewählte Währung des Werbeangebots stimmt nicht mit der Währung des Pakets überein",
"文件转换失败": "Datei-Umwandlung fehlgeschlagen", "文件转换失败": "Datei-Umwandlung fehlgeschlagen",
"每种增值服务类型只可选择一个": "Jeder Werbeangebotstyp kann nur einmal ausgewählt werden", "每种增值服务类型只可选择一个": "Jeder Werbeangebotstyp kann nur einmal ausgewählt werden",
"保存套餐与增值服务关联失败": "Fehler beim Speichern des Pakets mit Werbeangebot", "保存套餐与增值服务关联失败": "Fehler beim Speichern des Pakets mit Werbeangebot",
"删除套餐与增值服务关联失败": "Fehler beim Löschen des Pakets mit Werbeangebot", "删除套餐与增值服务关联失败": "Fehler beim Löschen des Pakets mit Werbeangebot",
"查询套餐与增值服务关联失败": "Fehler beim Abrufen des Pakets mit Werbeangebot", "查询套餐与增值服务关联失败": "Fehler beim Abrufen des Pakets mit Werbeangebot",
"更新套餐与增值服务关联失败": "Fehler beim Aktualisieren des Pakets mit Werbeangebot", "更新套餐与增值服务关联失败": "Fehler beim Aktualisieren des Pakets mit Werbeangebot",
"查询增值服务失败": "Fehler beim Abrufen des Werbeangebots", "查询增值服务失败": "Fehler beim Abrufen des Werbeangebots",
"更新套餐状态失败": "Fehler beim Aktualisieren des Paketstatus", "更新套餐状态失败": "Fehler beim Aktualisieren des Paketstatus",
"查询增值服务详情失败": "Fehler beim Abrufen der Werbeangebotsdetails", "查询增值服务详情失败": "Fehler beim Abrufen der Werbeangebotsdetails",
"序列化转换失败": "Fehler beim Serialisieren", "序列化转换失败": "Fehler beim Serialisieren",
"保存套餐历史记录失败": "Fehler beim Speichern des Pakethistorie", "保存套餐历史记录失败": "Fehler beim Speichern des Pakethistorie",
"原价不能为空": "Der reguläre Preis darf nicht leer sein", "原价不能为空": "Der reguläre Preis darf nicht leer sein",
"原价格式转换失败": "Fehler beim Umwandeln des regulären Preises", "原价格式转换失败": "Fehler beim Umwandeln des regulären Preises",
"数量参数需为0-99": "Die Anzahlsmusterparameter muss eine positive ganze Zahl sein", "数量参数需为0-99": "Die Anzahlsmusterparameter muss eine positive ganze Zahl sein",
"优惠单价需小于等于原价": "Der Rabattpreis muss kleiner oder gleich dem regulären Preis sein", "优惠单价需小于等于原价": "Der Rabattpreis muss kleiner oder gleich dem regulären Preis sein",
"请先创建中文版本增值服务": "Bitte erstelle das Chinese Version-Werbeangebot", "请先创建中文版本增值服务": "Bitte erstelle das Chinese Version-Werbeangebot",
"保存增值服务失败": "Fehler beim Speichern des Werbeangebots", "保存增值服务失败": "Fehler beim Speichern des Werbeangebots",
"保存增值服务历史记录失败": "Fehler beim Speichern des Werbeangebots-Historie", "保存增值服务历史记录失败": "Fehler beim Speichern des Werbeangebots-Historie",
"更新增值服务失败": "Fehler beim Aktualisieren des Werbeangebots", "更新增值服务失败": "Fehler beim Aktualisieren des Werbeangebots",
"查询增值服务列表失败": "Fehler beim Abrufen der Werbeangebotsliste", "查询增值服务列表失败": "Fehler beim Abrufen der Werbeangebotsliste",
"计算价格失败": "Fehler beim Berechnen des Preises", "计算价格失败": "Fehler beim Berechnen des Preises",
"更新成功": "Aktualisierung erfolgreich", "更新成功": "Aktualisierung erfolgreich",
"保存成功": "Speichern erfolgreich", "保存成功": "Speichern erfolgreich",
"优惠单价转换失败": "Rabatt-Einzelpreisumrechnung fehlgeschlagen", "优惠单价转换失败": "Rabatt-Einzelpreisumrechnung fehlgeschlagen",
"符号错误": "Symbolfehler", "符号错误": "Symbolfehler",
"条件存在冲突,请重新设置": "Bedingungskonflikt vorhanden, bitte neu konfigurieren", "条件存在冲突,请重新设置": "Bedingungskonflikt vorhanden, bitte neu konfigurieren",
"币种已修改,已取消关联部分增值服务": "Währung wurde geändert, einige Mehrwertdienste wurden getrennt", "币种已修改,已取消关联部分增值服务": "Währung wurde geändert, einige Mehrwertdienste wurden getrennt",
"币种已修改,已取消关联部分套餐": "Währung wurde geändert, einige Pakete wurden getrennt", "币种已修改,已取消关联部分套餐": "Währung wurde geändert, einige Pakete wurden getrennt",
"新增增值服务成功": "Mehrwertdienst erfolgreich hinzugefügt", "新增增值服务成功": "Mehrwertdienst erfolgreich hinzugefügt",
"状态值无效": "Ungültiger Statuswert", "状态值无效": "Ungültiger Statuswert",
"套餐已上架,请勿重复操作": "Paket ist bereits veröffentlicht, bitte nicht wiederholen", "套餐已上架,请勿重复操作": "Paket ist bereits veröffentlicht, bitte nicht wiederholen",
"套餐已下架,请勿重复操作": "Paket ist bereits zurückgezogen, bitte nicht wiederholen", "套餐已下架,请勿重复操作": "Paket ist bereits zurückgezogen, bitte nicht wiederholen",
"请先实名": "Bitte, nur der name", "请先实名": "Bitte, nur der name",
"实名审核中": "Contest läuft", "实名审核中": "Contest läuft",
"实名审核失败": "Die confirmation hat versagt", "实名审核失败": "Die confirmation hat versagt",
"未知实名状态": "Noch nicht registriert", "未知实名状态": "Noch nicht registriert",
} }
var JaJPMessages = map[string]string{ var JaJPMessages = map[string]string{
"获取套餐列表失败": "バンドルリストの取得に失敗しました", "获取套餐列表失败": "バンドルリストの取得に失敗しました",
"创建套餐信息失败": "バンドル情報の作成に失敗しました", "创建套餐信息失败": "バンドル情報の作成に失敗しました",
"创建套餐信息成功": "バンドル情報の作成に成功しました", "创建套餐信息成功": "バンドル情報の作成に成功しました",
"更新套餐信息失败": "バンドル情報の更新に失敗しました", "更新套餐信息失败": "バンドル情報の更新に失敗しました",
"更新套餐信息成功": "バンドル情報の更新に成功しました", "更新套餐信息成功": "バンドル情報の更新に成功しました",
"删除套餐信息失败": "バンドル情報の削除に失敗しました", "删除套餐信息失败": "バンドル情報の削除に失敗しました",
"删除套餐信息成功": "バンドル情報の削除に成功しました", "删除套餐信息成功": "バンドル情報の削除に成功しました",
"获取套餐信息失败": "バンドル情報の取得に失敗しました", "获取套餐信息失败": "バンドル情報の取得に失敗しました",
"创建订单信息失败": "注文情報の作成に失敗しました", "创建订单信息失败": "注文情報の作成に失敗しました",
"创建订单信息成功": "注文情報の作成に成功しました", "创建订单信息成功": "注文情報の作成に成功しました",
"更新订单信息失败": "注文情報の更新に失敗しました", "更新订单信息失败": "注文情報の更新に失敗しました",
"更新订单信息成功": "注文情報の更新に成功しました", "更新订单信息成功": "注文情報の更新に成功しました",
"获取订单信息失败": "注文情報の取得に失敗しました", "获取订单信息失败": "注文情報の取得に失敗しました",
"获取订单列表失败": "注文リストの取得に失敗しました", "获取订单列表失败": "注文リストの取得に失敗しました",
"缺少套餐UUID": "バンドルUUIDがありません", "缺少套餐UUID": "バンドルUUIDがありません",
"缺少客户签名信息": "顧客署名情報がありません", "缺少客户签名信息": "顧客署名情報がありません",
"插入签名失败": "署名の挿入に失敗しました", "插入签名失败": "署名の挿入に失敗しました",
"缺少订单号": "注文番号がありません", "缺少订单号": "注文番号がありません",
"缺少订单信息": "注文情報がありません", "缺少订单信息": "注文情報がありません",
"非当前用户订单信息不可操作": "他のユーザーの注文情報を操作できません", "非当前用户订单信息不可操作": "他のユーザーの注文情報を操作できません",
"订单已支付": "注文は支払われました", "订单已支付": "注文は支払われました",
"您已购买过套餐,无法再次购买": "このバンドルはすでに購入済みであり、再度購入することはできません", "您已购买过套餐,无法再次购买": "このバンドルはすでに購入済みであり、再度購入することはできません",
"查询支付信息失败": "支払い情報のクエリに失敗しました", "查询支付信息失败": "支払い情報のクエリに失敗しました",
"下载文件失败": "ファイルのダウンロードに失敗しました", "下载文件失败": "ファイルのダウンロードに失敗しました",
"上传文件失败": "ファイルのアップロードに失敗しました", "上传文件失败": "ファイルのアップロードに失敗しました",
"时间格式错误": "無効な時間形式", "时间格式错误": "無効な時間形式",
"账号或密码错误": "アカウントまたはパスワードが間違っています", "账号或密码错误": "アカウントまたはパスワードが間違っています",
"账号或验证码错误": "アカウントまたは検証コードが間違っています", "账号或验证码错误": "アカウントまたは検証コードが間違っています",
"账号已存在": "アカウントはすでに存在します", "账号已存在": "アカウントはすでに存在します",
"没有找到数据": "データが見つかりません", "没有找到数据": "データが見つかりません",
"已经发送过,验证码尚可用": "送信されました。検証コードは引き続き有効です", "已经发送过,验证码尚可用": "送信されました。検証コードは引き続き有効です",
"系统提示:已经发送过,验证码尚可用": "システムメッセージ:すでに送信され、検証コードは引き続き有効です", "系统提示:已经发送过,验证码尚可用": "システムメッセージ:すでに送信され、検証コードは引き続き有効です",
"您的手机号当天发送次数过多,请联系管理员通过密码登录": "その日の電話番号が送信されすぎています。管理者に連絡してパスワードでログインしてください", "您的手机号当天发送次数过多,请联系管理员通过密码登录": "その日の電話番号が送信されすぎています。管理者に連絡してパスワードでログインしてください",
"您的手机号验证码错误,请确认之后注册": "電話番号の検証コードが間違っています。確認して登録してください", "您的手机号验证码错误,请确认之后注册": "電話番号の検証コードが間違っています。確認して登録してください",
"手机号不合法": "電話番号が無効です", "手机号不合法": "電話番号が無効です",
"手机号未更改": "電話番号が変更されていません", "手机号未更改": "電話番号が変更されていません",
"新手机号过期": "新しい電話番号の有効期限が切れました", "新手机号过期": "新しい電話番号の有効期限が切れました",
"验证码错误": "検証コードが間違っています", "验证码错误": "検証コードが間違っています",
"验证码未发送": "検証コードが送信されていません", "验证码未发送": "検証コードが送信されていません",
"账号不存在": "アカウントが存在しません", "账号不存在": "アカウントが存在しません",
"已实名": "実名", "已实名": "実名",
"实名审核中,请勿重复提交": "実名審査中、繰り返し提出しないでください", "实名审核中,请勿重复提交": "実名審査中、繰り返し提出しないでください",
"用户状态异常,无法进行审核": "ユーザーが異常であり、審査できません。手続き", "用户状态异常,无法进行审核": "ユーザーが異常であり、審査できません。手続き",
"验证码已失效": "検証コードが無効です", "验证码已失效": "検証コードが無効です",
"服务器错误": "サーバーエラー", "服务器错误": "サーバーエラー",
"验证失败,请控制拼图对齐缺口": "検証に失敗しました。パズルの整列ギャップを制御してください", "验证失败,请控制拼图对齐缺口": "検証に失敗しました。パズルの整列ギャップを制御してください",
"滑块验证状态不存在,请退出重试": "スライダー検証状態が存在しません,リトライをログアウトしてください", "滑块验证状态不存在,请退出重试": "スライダー検証状態が存在しません,リトライをログアウトしてください",
"语言不能为空": "言語が空です", "语言不能为空": "言語が空です",
"排序参数需为正整数": "ソートパラメーターは正の整数でなければなりません", "排序参数需为正整数": "ソートパラメーターは正の整数でなければなりません",
"请先创建中文版本套餐": "最初に中国語バージョンのパッケージを作成してください", "请先创建中文版本套餐": "最初に中国語バージョンのパッケージを作成してください",
"增值服务不存在": "付加サービスは存在しません", "增值服务不存在": "付加サービスは存在しません",
"所选增值服务币种与套餐币种不一致": "選択した付加サービスの通貨とパッケージの通貨が一致しません", "所选增值服务币种与套餐币种不一致": "選択した付加サービスの通貨とパッケージの通貨が一致しません",
"文件转换失败": "ファイル変換に失敗しました", "文件转换失败": "ファイル変換に失敗しました",
"每种增值服务类型只可选择一个": "各種付加サービスタイプは一つしか選択できません", "每种增值服务类型只可选择一个": "各種付加サービスタイプは一つしか選択できません",
"保存套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの保存に失敗しました", "保存套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの保存に失敗しました",
"删除套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの削除に失敗しました", "删除套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの削除に失敗しました",
"查询套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの検索に失敗しました", "查询套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの検索に失敗しました",
"更新套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの更新に失敗しました", "更新套餐与增值服务关联失败": "パッケージと付加サービスの関連付けの更新に失敗しました",
"查询增值服务失败": "付加サービスの検索に失敗しました", "查询增值服务失败": "付加サービスの検索に失敗しました",
"更新套餐状态失败": "パッケージステータスの更新に失敗しました", "更新套餐状态失败": "パッケージステータスの更新に失敗しました",
"查询增值服务详情失败": "付加サービスの詳細検索に失敗しました", "查询增值服务详情失败": "付加サービスの詳細検索に失敗しました",
"序列化转换失败": "シリアライズ変換に失敗しました", "序列化转换失败": "シリアライズ変換に失敗しました",
"保存套餐历史记录失败": "パッケージ履歴の保存に失敗しました", "保存套餐历史记录失败": "パッケージ履歴の保存に失敗しました",
"原价不能为空": "原価は空にできません", "原价不能为空": "原価は空にできません",
"原价格式转换失败": "原価のフォーマット変換に失敗しました", "原价格式转换失败": "原価のフォーマット変換に失敗しました",
"数量参数需为0-99": "数量パラメーターは0-99でなければなりません", "数量参数需为0-99": "数量パラメーターは0-99でなければなりません",
"优惠单价需小于等于原价": "割引単価は原価以下でなければなりません", "优惠单价需小于等于原价": "割引単価は原価以下でなければなりません",
"请先创建中文版本增值服务": "最初に中国語バージョンの付加サービスを作成してください", "请先创建中文版本增值服务": "最初に中国語バージョンの付加サービスを作成してください",
"保存增值服务失败": "付加サービスの保存に失敗しました", "保存增值服务失败": "付加サービスの保存に失敗しました",
"保存增值服务历史记录失败": "付加サービス履歴の保存に失敗しました", "保存增值服务历史记录失败": "付加サービス履歴の保存に失敗しました",
"更新增值服务失败": "付加サービスの更新に失敗しました", "更新增值服务失败": "付加サービスの更新に失敗しました",
"查询增值服务列表失败": "付加サービスリストの検索に失敗しました", "查询增值服务列表失败": "付加サービスリストの検索に失敗しました",
"计算价格失败": "価格計算に失敗しました", "计算价格失败": "価格計算に失敗しました",
"更新成功": "更新が成功しました", "更新成功": "更新が成功しました",
"保存成功": "保存が成功しました", "保存成功": "保存が成功しました",
"优惠单价转换失败": "割引単価変換に失敗しました", "优惠单价转换失败": "割引単価変換に失敗しました",
"符号错误": "記号エラー", "符号错误": "記号エラー",
"条件存在冲突,请重新设置": "条件が競合しています、再設定してください", "条件存在冲突,请重新设置": "条件が競合しています、再設定してください",
"币种已修改,已取消关联部分增值服务": "通貨が変更され、一部の付加サービスの関連付けが解除されました", "币种已修改,已取消关联部分增值服务": "通貨が変更され、一部の付加サービスの関連付けが解除されました",
"币种已修改,已取消关联部分套餐": "通貨が変更され、一部のパッケージの関連付けが解除されました", "币种已修改,已取消关联部分套餐": "通貨が変更され、一部のパッケージの関連付けが解除されました",
"新增增值服务成功": "付加サービスの追加に成功しました", "新增增值服务成功": "付加サービスの追加に成功しました",
"状态值无效": "状態値が無効です", "状态值无效": "状態値が無効です",
"套餐已上架,请勿重复操作": "プランはすでに公開済みです、重複操作は避けてください", "套餐已上架,请勿重复操作": "プランはすでに公開済みです、重複操作は避けてください",
"套餐已下架,请勿重复操作": "プランはすでに非公開です、重複操作は避けてください", "套餐已下架,请勿重复操作": "プランはすでに非公開です、重複操作は避けてください",
"请先实名": "まずは実名でお願いします", "请先实名": "まずは実名でお願いします",
"实名审核中": "実名審査中です", "实名审核中": "実名審査中です",
"实名审核失败": "実名検証失敗です", "实名审核失败": "実名検証失敗です",
"未知实名状态": "未知の実名状態です", "未知实名状态": "未知の実名状態です",
} }
var ZhTWMessages = map[string]string{ var ZhTWMessages = map[string]string{
"获取套餐列表失败": "獲取套餐列表失敗", "获取套餐列表失败": "獲取套餐列表失敗",
"创建套餐信息失败": "創建套餐信息失敗", "创建套餐信息失败": "創建套餐信息失敗",
"创建套餐信息成功": "創建套餐信息成功", "创建套餐信息成功": "創建套餐信息成功",
"更新套餐信息失败": "更新套餐信息失敗", "更新套餐信息失败": "更新套餐信息失敗",
"更新套餐信息成功": "更新套餐信息成功", "更新套餐信息成功": "更新套餐信息成功",
"删除套餐信息失败": "刪除套餐信息失敗", "删除套餐信息失败": "刪除套餐信息失敗",
"删除套餐信息成功": "刪除套餐信息成功", "删除套餐信息成功": "刪除套餐信息成功",
"获取套餐信息失败": "獲取套餐信息失敗", "获取套餐信息失败": "獲取套餐信息失敗",
"创建订单信息失败": "創建訂單信息失敗", "创建订单信息失败": "創建訂單信息失敗",
"创建订单信息成功": "創建訂單信息成功", "创建订单信息成功": "創建訂單信息成功",
"更新订单信息失败": "更新訂單信息失敗", "更新订单信息失败": "更新訂單信息失敗",
"更新订单信息成功": "更新訂單信息成功", "更新订单信息成功": "更新訂單信息成功",
"获取订单信息失败": "獲取訂單信息失敗", "获取订单信息失败": "獲取訂單信息失敗",
"获取订单列表失败": "獲取訂單列表失敗", "获取订单列表失败": "獲取訂單列表失敗",
"缺少套餐UUID": "缺少套餐UUID", "缺少套餐UUID": "缺少套餐UUID",
"缺少客户签名信息": "缺少客戶簽名信息", "缺少客户签名信息": "缺少客戶簽名信息",
"插入签名失败": "插入簽名失敗", "插入签名失败": "插入簽名失敗",
"缺少订单号": "缺少訂單號", "缺少订单号": "缺少訂單號",
"缺少订单信息": "缺少訂單信息", "缺少订单信息": "缺少訂單信息",
"非当前用户订单信息不可操作": "非當前用戶訂單信息不可操作", "非当前用户订单信息不可操作": "非當前用戶訂單信息不可操作",
"订单已支付": "訂單已支付", "订单已支付": "訂單已支付",
"您已购买过套餐,无法再次购买": "您已購買過套餐,無法再次購買", "您已购买过套餐,无法再次购买": "您已購買過套餐,無法再次購買",
"查询支付信息失败": "查詢支付信息失敗", "查询支付信息失败": "查詢支付信息失敗",
"下载文件失败": "下載文件失敗", "下载文件失败": "下載文件失敗",
"上传文件失败": "上傳文件失敗", "上传文件失败": "上傳文件失敗",
"时间格式错误": "時間格式錯誤", "时间格式错误": "時間格式錯誤",
"账号或密码错误": "帳號或密碼錯誤", "账号或密码错误": "帳號或密碼錯誤",
"账号或验证码错误": "帳號或驗證碼錯誤", "账号或验证码错误": "帳號或驗證碼錯誤",
"账号已存在": "帳號已存在", "账号已存在": "帳號已存在",
"没有找到数据": "沒有找到數據", "没有找到数据": "沒有找到數據",
"已经发送过,验证码尚可用": "已經發送過,驗證碼尚可用", "已经发送过,验证码尚可用": "已經發送過,驗證碼尚可用",
"系统提示:已经发送过,验证码尚可用": "系統提示:已經發送過,驗證碼尚可用", "系统提示:已经发送过,验证码尚可用": "系統提示:已經發送過,驗證碼尚可用",
"您的手机号当天发送次数过多,请联系管理员通过密码登录": "您的手機號當天發送次數過多,請聯繫管理員通過密碼登錄", "您的手机号当天发送次数过多,请联系管理员通过密码登录": "您的手機號當天發送次數過多,請聯繫管理員通過密碼登錄",
"您的手机号验证码错误,请确认之后注册": "您的手機號驗證碼錯誤,請確認之後註冊", "您的手机号验证码错误,请确认之后注册": "您的手機號驗證碼錯誤,請確認之後註冊",
"手机号不合法": "手機號不合法", "手机号不合法": "手機號不合法",
"手机号未更改": "手機號未更改", "手机号未更改": "手機號未更改",
"新手机号过期": "新手機號過期", "新手机号过期": "新手機號過期",
"验证码错误": "驗證碼錯誤", "验证码错误": "驗證碼錯誤",
"验证码未发送": "驗證碼未發送", "验证码未发送": "驗證碼未發送",
"账号不存在": "帳號不存在", "账号不存在": "帳號不存在",
"已实名": "已實名", "已实名": "已實名",
"实名审核中,请勿重复提交": "實名審核中,請勿重複提交", "实名审核中,请勿重复提交": "實名審核中,請勿重複提交",
"用户状态异常,无法进行审核": "用戶狀態異常,無法進行審核", "用户状态异常,无法进行审核": "用戶狀態異常,無法進行審核",
"验证码已失效": "驗證碼已失效", "验证码已失效": "驗證碼已失效",
"服务器错误": "服務器錯誤", "服务器错误": "服務器錯誤",
"验证失败,请控制拼图对齐缺口": "驗證失敗,請控制拼圖對齊缺口", "验证失败,请控制拼图对齐缺口": "驗證失敗,請控制拼圖對齊缺口",
"滑块验证状态不存在,请退出重试": "滑塊驗證狀態不存在,請退出重試", "滑块验证状态不存在,请退出重试": "滑塊驗證狀態不存在,請退出重試",
"语言不能为空": "語言不能為空", "语言不能为空": "語言不能為空",
"排序参数需为正整数": "排序參數需為正整數", "排序参数需为正整数": "排序參數需為正整數",
"请先创建中文版本套餐": "請先建立中文版本套餐", "请先创建中文版本套餐": "請先建立中文版本套餐",
"增值服务不存在": "增值服務不存在", "增值服务不存在": "增值服務不存在",
"所选增值服务币种与套餐币种不一致": "所選增值服務幣種與套餐幣種不一致", "所选增值服务币种与套餐币种不一致": "所選增值服務幣種與套餐幣種不一致",
"文件转换失败": "文件轉換失敗", "文件转换失败": "文件轉換失敗",
"每种增值服务类型只可选择一个": "每種增值服務類型只可選擇一個", "每种增值服务类型只可选择一个": "每種增值服務類型只可選擇一個",
"保存套餐与增值服务关联失败": "保存套餐與增值服務關聯失敗", "保存套餐与增值服务关联失败": "保存套餐與增值服務關聯失敗",
"删除套餐与增值服务关联失败": "刪除套餐與增值服務關聯失敗", "删除套餐与增值服务关联失败": "刪除套餐與增值服務關聯失敗",
"查询套餐与增值服务关联失败": "查詢套餐與增值服務關聯失敗", "查询套餐与增值服务关联失败": "查詢套餐與增值服務關聯失敗",
"更新套餐与增值服务关联失败": "更新套餐與增值服務關聯失敗", "更新套餐与增值服务关联失败": "更新套餐與增值服務關聯失敗",
"查询增值服务失败": "查詢增值服務失敗", "查询增值服务失败": "查詢增值服務失敗",
"更新套餐状态失败": "更新套餐狀態失敗", "更新套餐状态失败": "更新套餐狀態失敗",
"查询增值服务详情失败": "查詢增值服務詳情失敗", "查询增值服务详情失败": "查詢增值服務詳情失敗",
"序列化转换失败": "序列化轉換失敗", "序列化转换失败": "序列化轉換失敗",
"保存套餐历史记录失败": "保存套餐歷史記錄失敗", "保存套餐历史记录失败": "保存套餐歷史記錄失敗",
"原价不能为空": "原價不能為空", "原价不能为空": "原價不能為空",
"原价格式转换失败": "原價格式轉換失敗", "原价格式转换失败": "原價格式轉換失敗",
"数量参数需为0-99": "數量參數需為0-99", "数量参数需为0-99": "數量參數需為0-99",
"优惠单价需小于等于原价": "優惠單價需小於等於原價", "优惠单价需小于等于原价": "優惠單價需小於等於原價",
"请先创建中文版本增值服务": "請先建立中文版本增值服務", "请先创建中文版本增值服务": "請先建立中文版本增值服務",
"保存增值服务失败": "保存增值服務失敗", "保存增值服务失败": "保存增值服務失敗",
"保存增值服务历史记录失败": "保存增值服務歷史記錄失敗", "保存增值服务历史记录失败": "保存增值服務歷史記錄失敗",
"更新增值服务失败": "更新增值服務失敗", "更新增值服务失败": "更新增值服務失敗",
"查询增值服务列表失败": "查詢增值服務列表失敗", "查询增值服务列表失败": "查詢增值服務列表失敗",
"计算价格失败": "計算價格失敗", "计算价格失败": "計算價格失敗",
"更新成功": "更新成功", "更新成功": "更新成功",
"保存成功": "儲存成功", "保存成功": "儲存成功",
"优惠单价转换失败": "優惠單價轉換失敗", "优惠单价转换失败": "優惠單價轉換失敗",
"符号错误": "符號錯誤", "符号错误": "符號錯誤",
"条件存在冲突,请重新设置": "條件存在衝突,請重新設定", "条件存在冲突,请重新设置": "條件存在衝突,請重新設定",
"币种已修改,已取消关联部分增值服务": "幣種已修改,已取消關聯部分增值服務", "币种已修改,已取消关联部分增值服务": "幣種已修改,已取消關聯部分增值服務",
"币种已修改,已取消关联部分套餐": "幣種已修改,已取消關聯部分套餐", "币种已修改,已取消关联部分套餐": "幣種已修改,已取消關聯部分套餐",
"新增增值服务成功": "新增增值服務成功", "新增增值服务成功": "新增增值服務成功",
"状态值无效": "狀態值無效", "状态值无效": "狀態值無效",
"套餐已上架,请勿重复操作": "套餐已上架,請勿重複操作", "套餐已上架,请勿重复操作": "套餐已上架,請勿重複操作",
"套餐已下架,请勿重复操作": "套餐已下架,請勿重複操作", "套餐已下架,请勿重复操作": "套餐已下架,請勿重複操作",
"请先实名": "請先實名", "请先实名": "請先實名",
"实名审核中": "實名審覈中", "实名审核中": "實名審覈中",
"实名审核失败": "實名審覈失敗", "实名审核失败": "實名審覈失敗",
"未知实名状态": "未知實名狀態", "未知实名状态": "未知實名狀態",
"已存在标题相同的数据": "已存在標題相同的數據", "已存在标题相同的数据": "已存在標題相同的數據",
"展示数量不能超过5个": "展示數量不能超過5個", "展示数量不能超过5个": "展示數量不能超過5個",
"查询失败": "查詢失敗", "查询失败": "查詢失敗",
"操作失败": "操作失敗", "操作失败": "操作失敗",
"参数缺失": "參數缺失", "参数缺失": "參數缺失",
"创建失败": "創建失敗", "创建失败": "創建失敗",
"更新失败": "更新失敗", "更新失败": "更新失敗",
"删除失败": "刪除失敗", "删除失败": "刪除失敗",
"更新状态失败": "更新狀態失敗", "更新状态失败": "更新狀態失敗",
} }

View File

@ -236,7 +236,6 @@ func (o *ChatRoom) SendSessionMessage(sender *accountFiee.ChatUserData, sessionI
o.Session[sessionId] = usableClients o.Session[sessionId] = usableClients
fmt.Printf("sessionId:[%s],客户端数量%d\n", sessionId, len(o.Session[sessionId])) fmt.Printf("sessionId:[%s],客户端数量%d\n", sessionId, len(o.Session[sessionId]))
fmt.Println("userIdInSession", userIdInSession) fmt.Println("userIdInSession", userIdInSession)
fmt.Println("pushed", pushed)
return return
} }
func (o *ChatRoom) GetUserIdInSession(sessionId string, withoutUserId ...int64) (userIds []int64) { func (o *ChatRoom) GetUserIdInSession(sessionId string, withoutUserId ...int64) (userIds []int64) {

View File

@ -161,6 +161,7 @@ func CheckWebLogin(provider *account.AccountClientImpl) gin.HandlerFunc {
Domain: info.Domain, Domain: info.Domain,
ID: info.ID, ID: info.ID,
Name: info.NickName, Name: info.NickName,
//Account: info.Account,
//NickName: info.NickName, //NickName: info.NickName,
//PositionUsers: qres.PositionUsers, //PositionUsers: qres.PositionUsers,
//Extend: infoRes.Info.Extend, //Extend: infoRes.Info.Extend,

View File

@ -44,7 +44,7 @@ func BundleOrderRouter(r *gin.RouterGroup) {
bundleOrderAppRoute := bundleOrderRoute.Group("app") bundleOrderAppRoute := bundleOrderRoute.Group("app")
{ {
bundleOrderAppRoute.POST("order-signature", bundle.CreateBundleOrderSignature) bundleOrderAppRoute.POST("order-signature", bundle.CreateBundleOrderSignature)
//bundleOrderAppRoute.POST("order-add-signature", bundle.CreateBundleOrderAddSignature) bundleOrderAppRoute.POST("order-add-signature", bundle.CreateBundleOrderAddSignature)
bundleOrderAppRoute.POST("order-del", bundle.DeleteBundleOrder) bundleOrderAppRoute.POST("order-del", bundle.DeleteBundleOrder)
bundleOrderAppRoute.POST("update-pay", bundle.UpdateBundleOrderStatusPaid) bundleOrderAppRoute.POST("update-pay", bundle.UpdateBundleOrderStatusPaid)
bundleOrderAppRoute.POST("order-detail", bundle.OrderRecordsDetail) bundleOrderAppRoute.POST("order-detail", bundle.OrderRecordsDetail)

View File

@ -51,7 +51,6 @@ func NewRouter() *gin.Engine {
BundleRouter(privateGroup) BundleRouter(privateGroup)
BundleOrderRouter(privateGroup) BundleOrderRouter(privateGroup)
ValueAddBundleRouter(privateGroup) ValueAddBundleRouter(privateGroup)
TaskBenchRouter(privateGroup) // 新增任务台路由
MediaRouter(privateGroup) MediaRouter(privateGroup)
SecFilingRouter(privateGroup) SecFilingRouter(privateGroup)
app.MediaAppRouter(privateGroup) app.MediaAppRouter(privateGroup)

View File

@ -1,58 +0,0 @@
package router
import (
"fonchain-fiee/pkg/middleware"
"fonchain-fiee/pkg/service"
"fonchain-fiee/pkg/service/taskbench"
"github.com/gin-gonic/gin"
)
// TaskBenchRouter 任务台路由
func TaskBenchRouter(r *gin.RouterGroup) {
// 创建任务台路由组
taskBenchRoute := r.Group("task-bench")
// 使用Web登录中间件进行权限验证
taskBenchRoute.Use(middleware.CheckWebLogin(service.AccountProvider))
// 任务台管理
{
// 查询待指派任务记录
taskBenchRoute.POST("pending-task-list", taskbench.GetPendingTaskList)
// 指派某位员工完成某个艺人的任务
taskBenchRoute.POST("assign-task", taskbench.AssignTask)
// 修改待发数量
taskBenchRoute.POST("update-pending-count", taskbench.UpdatePendingCount)
// 查询最近被指派记录
taskBenchRoute.POST("recent-assign-records", taskbench.GetRecentAssignRecords)
// 多条件查询操作记录表
taskBenchRoute.POST("task-assign-records-list", taskbench.GetTaskAssignRecordsList)
// 员工完成图片作品任务带任务UUID
taskBenchRoute.POST("update-work-image-with-task-uuid", taskbench.UpdateWorkImageWithTaskUUID)
// 员工完成视频作品任务带任务UUID
taskBenchRoute.POST("update-work-video-with-task-uuid", taskbench.UpdateWorkVideoWithUUID)
// 根据登录人信息查询被指派给该员工的任务
taskBenchRoute.POST("assigned-tasks", taskbench.GetEmployeeAssignedTasks)
// 员工手动点击完成任务
taskBenchRoute.POST("complete-manually", taskbench.CompleteTaskManually)
// 查询艺人套餐剩余数量
taskBenchRoute.POST("artist-bundle-balance", taskbench.GetArtistBundleBalance)
}
// 员工任务相关路由需要App登录验证
taskBenchAppRoute := r.Group("task-bench")
taskBenchAppRoute.Use(middleware.CheckLogin(service.AccountFieeProvider))
{
// 员工实际完成任务状态更新
taskBenchAppRoute.POST("update-progress", taskbench.UpdateTaskProgress)
}
}

View File

@ -134,9 +134,6 @@ func (cr ChatHandler) NewMessage(c *gin.Context) {
service.ErrWithCode(c, code) service.ErrWithCode(c, code)
return return
} }
if request.LocalStamp == 0 {
request.LocalStamp = time.Now().Unix()
}
err := logic.NewMessage(c, &cr.cache, chatUser, request) err := logic.NewMessage(c, &cr.cache, chatUser, request)
if err != nil { if err != nil {
service.Error(c, err) service.Error(c, err)
@ -263,9 +260,8 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
// return // return
// } // }
//} //}
// 启用或禁用缓存 messages := cr.cache.GetChatRecord(request.SessionId)
//messages := cr.cache.GetChatRecord(request.SessionId) //messages := []*accountFiee.ChatRecordData{}
messages := []*accountFiee.ChatRecordData{}
var returnDataIdList = make([]int64, 0) var returnDataIdList = make([]int64, 0)
defer func() { defer func() {
//获取最新数据时,重置新消息数量统计 //获取最新数据时,重置新消息数量统计
@ -281,7 +277,6 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
} }
} }
} }
fmt.Println("defer CoverChatRecord , message len:", len(messages))
err := cr.cache.CoverChatRecord(request.SessionId, messages) err := cr.cache.CoverChatRecord(request.SessionId, messages)
if err != nil { if err != nil {
log.Print("设置消息已读失败", zap.Error(err)) log.Print("设置消息已读失败", zap.Error(err))
@ -307,7 +302,6 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
return return
} }
messages = recordResp.List messages = recordResp.List
fmt.Println("GetChatRecordList len:", len(messages))
err = cr.cache.CoverChatRecord(request.SessionId, messages) err = cr.cache.CoverChatRecord(request.SessionId, messages)
if err != nil { if err != nil {
log.Print("覆盖聊天记录失败", zap.Error(err)) log.Print("覆盖聊天记录失败", zap.Error(err))
@ -338,7 +332,7 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
return messages[i].ID > messages[j].ID return messages[i].ID > messages[j].ID
} }
}) })
//fmt.Printf("data is %+v\n", messages) fmt.Printf("data is %+v\n", messages)
total := 0 total := 0
for i, message := range messages { for i, message := range messages {
switch request.Direction { switch request.Direction {
@ -373,6 +367,8 @@ func (cr ChatHandler) MessageList(c *gin.Context) {
resp[i].Message.Media = []dto.MessageMedia{} resp[i].Message.Media = []dto.MessageMedia{}
} }
} }
if accessUser.Role == 1 {
}
service.Success(c, resp) service.Success(c, resp)
} }
@ -634,13 +630,13 @@ func (a *ChatHandler) UserSwitchAutoReplyStatus(c *gin.Context) {
} }
service.Success(c, resp) service.Success(c, resp)
} }
func (a *ChatHandler) SetSwitchAutoReplyStatus(c *gin.Context) { func (a *ChatHandler) SetSwitchAutoReplyStatus(c *gin.Context) {
chatUser, code := jwt.ParseToChatUser(c) chatUser, code := jwt.ParseToChatUser(c)
if code != 0 { if code != 0 {
service.ErrWithCode(c, code) service.ErrWithCode(c, code)
return return
} }
sessionId := a.cache.GetUserSession(chatUser.ID)
var req dto.UserSwitchAutoReplyReq var req dto.UserSwitchAutoReplyReq
if err := c.ShouldBindJSON(&req); err != nil { if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err) service.Error(c, err)
@ -656,18 +652,9 @@ func (a *ChatHandler) SetSwitchAutoReplyStatus(c *gin.Context) {
} else { } else {
msg.Text = "已进入人工,不会接收自动消息" msg.Text = "已进入人工,不会接收自动消息"
} }
sender := &accountFiee.ChatUserData{ err := logic.NewMessage(c, &a.cache, chatUser, dto.NewMessageRequest{
ID: a.robot.Info.ID,
NickName: a.robot.Name,
Account: a.robot.Info.Account,
Role: 3,
Origin: a.robot.Info.Origin,
OriginId: a.robot.Info.OriginId,
Avatar: a.robot.Info.Avatar,
}
err := logic.NewMessage(c, &a.cache, sender, dto.NewMessageRequest{
Robot: true, Robot: true,
SessionId: sessionId, SessionId: fmt.Sprintf("%d", chatUser.ID),
Message: msg, Message: msg,
}) })
if err != nil { if err != nil {

View File

@ -42,7 +42,6 @@ func NewMessage(ctx context.Context, cache *chatCache.ChatCache, sender *account
fmt.Println(request.LocalStamp - msgRecord.LocalStamp) fmt.Println(request.LocalStamp - msgRecord.LocalStamp)
if msgRecord.Message.Text == request.Message.Text && request.LocalStamp-msgRecord.LocalStamp < 1 { //秒级 if msgRecord.Message.Text == request.Message.Text && request.LocalStamp-msgRecord.LocalStamp < 1 { //秒级
cacheMap[request.AtUserId] = request cacheMap[request.AtUserId] = request
fmt.Println("\n\n跳过消息发送\n\t跳过消息发送\n\t\t跳过消息发送\n\n")
return nil return nil
} else { } else {
cacheMap[request.AtUserId] = request cacheMap[request.AtUserId] = request
@ -106,7 +105,6 @@ func NewMessage(ctx context.Context, cache *chatCache.ChatCache, sender *account
notice.BuildMessage(resp.Data) notice.BuildMessage(resp.Data)
fmt.Printf("ws消息提醒:%+v\n", notice) fmt.Printf("ws消息提醒:%+v\n", notice)
_, err = consts.ChatRoom.SendSessionMessage(sender, request.SessionId, ws.NewChatMsgType, notice) _, err = consts.ChatRoom.SendSessionMessage(sender, request.SessionId, ws.NewChatMsgType, notice)
fmt.Println("消息提醒结果:", err)
if err != nil { if err != nil {
log.Print("发送新消息通知失败", zap.Error(err), zap.Any("notice", notice)) log.Print("发送新消息通知失败", zap.Error(err), zap.Any("notice", notice))
} }

View File

@ -177,12 +177,10 @@ func (r *Robot) Run() {
if hit { if hit {
hasHit = true hasHit = true
if rule.RunTime().IsZero() { if rule.RunTime().IsZero() {
go func() { err := rule.Run(r.cache)
err := rule.Run(r.cache) if err != nil {
if err != nil { log.Printf("robot 执行任务失败:%v\n", err)
log.Printf("robot 执行任务失败:%v\n", err) }
}
}()
} else { } else {
r.RegisterDelayTask(rule) r.RegisterDelayTask(rule)
} }

View File

@ -27,12 +27,6 @@ func NewReplyWhenHitKeywords(title string, keywords []string) IRobotTask {
return &RobotTaskWithKeyworkds{title: title, keywords: keywords} return &RobotTaskWithKeyworkds{title: title, keywords: keywords}
} }
func (r *RobotTaskWithKeyworkds) Hit(event ws.ListenEventData, sender *accountFiee.ChatUserData) (hit bool) { func (r *RobotTaskWithKeyworkds) Hit(event ws.ListenEventData, sender *accountFiee.ChatUserData) (hit bool) {
//fmt.Printf("event.EventType != ws.EventChatMessage:%v\n", event.EventType != ws.EventChatMessage)
//fmt.Printf("event.Msg: %v\n", event.Msg == "")
//fmt.Printf("event.Client == nil: %v\n", event.Client == nil)
//fmt.Printf("event.ChatUser == nil: %v\n", event.ChatUser == nil)
//fmt.Printf("event.ChatUser.Role != 1: %v\n", event.ChatUser.Role != 1)
//fmt.Printf("r.keywords: %+v\n", r.keywords)
if event.EventType != ws.EventChatMessage || event.Msg == "" || event.Client == nil || event.ChatUser == nil { if event.EventType != ws.EventChatMessage || event.Msg == "" || event.Client == nil || event.ChatUser == nil {
return return
} }

View File

@ -6,7 +6,6 @@ import (
"fonchain-fiee/api/bundle" "fonchain-fiee/api/bundle"
"fonchain-fiee/api/cast" "fonchain-fiee/api/cast"
"fonchain-fiee/pkg/service" "fonchain-fiee/pkg/service"
"log"
"strconv" "strconv"
bundleModel "fonchain-fiee/pkg/model/bundle" bundleModel "fonchain-fiee/pkg/model/bundle"
@ -158,7 +157,7 @@ func WorkConfirm(c *gin.Context) { // 确认作品并扣除余量
service.Error(c, err) service.Error(c, err)
return return
} }
log.Print("req.ConfirmRemark:", req.ConfirmRemark)
if req.ConfirmStatus == 2 { // 驳回完直接结束 if req.ConfirmStatus == 2 { // 驳回完直接结束
res, err := service.CastProvider.UpdateStatus(c, &cast.UpdateStatusReq{ res, err := service.CastProvider.UpdateStatus(c, &cast.UpdateStatusReq{
WorkAction: cast.WorkActionENUM_CONFIRM, WorkAction: cast.WorkActionENUM_CONFIRM,

View File

@ -193,69 +193,161 @@ func calculateExpirationDate(startDate time.Time, num int32, unit string) string
} }
func CreateBundleOrderSignature(c *gin.Context) { func CreateBundleOrderSignature(c *gin.Context) {
var req bundle.OrderCreateRecord var req bundle.OrderCreateRecord
if err := c.ShouldBindBodyWith(&req, binding.JSON); err != nil { if err := c.ShouldBindBodyWith(&req, binding.JSON); err != nil {
service.Error(c, err) service.Error(c, err)
return return
} }
// 参数校验 if req.BundleUuid == "" {
if err := logic.ValidateRequest(c, &req); err != nil { service.Error(c, errors.New(common.MissBundleUUID))
service.Error(c, err)
return return
} }
if req.Language == "" {
// 获取用户信息并校验状态 req.Language = c.GetHeader("Accept-Language")
if req.Language == "" {
service.Error(c, errors.New(common.MissLanguageTypes))
return
}
}
// 不去校验 签名
/*if req.Signature == "" {
service.Error(c, errors.New(common.MissOrderSignature))
return
}*/
statusMessages := map[int32]string{
1: common.Unnamed,
2: common.UnderReview,
3: common.ReviewFailed,
}
// 获取 用户信息
userInfo := login.GetUserInfoFromC(c) userInfo := login.GetUserInfoFromC(c)
if err := logic.ValidateUserStatus(userInfo); err != nil { if userInfo.Status != 4 {
service.Error(c, err) if msg, exists := statusMessages[userInfo.Status]; exists {
service.Error(c, errors.New(msg))
return
} else {
service.Error(c, errors.New(common.UnknownStatus))
return
}
}
// 校验 当前用户只能买一次套餐
orderRecordsListReq := bundle.OrderRecordsRequest{
CustomerID: strconv.FormatUint(userInfo.ID, 10),
}
orderRecordsList, orderRecordsListErr := service.BundleProvider.OrderRecordsList(context.Background(), &orderRecordsListReq)
if orderRecordsListErr != nil {
service.Error(c, orderRecordsListErr)
return return
} }
//有套餐并且套餐未过期
// 校验套餐是否已购买 if orderRecordsList.OrderRecords != nil {
if err := logic.CheckUserOrder(userInfo.ID); err != nil { for _, orderInfo := range orderRecordsList.OrderRecords {
service.Error(c, err) if orderInfo.CustomerID == strconv.FormatUint(userInfo.ID, 10) && orderInfo.Status == 1 {
return service.Error(c, errors.New(common.ThereAreOutstandingOrders))
return
}
if orderInfo.CustomerID == strconv.FormatUint(userInfo.ID, 10) && orderInfo.ExpirationTime > time.Now().Format("2006-01-02 15:04:05") {
service.Error(c, errors.New(common.HadOrder))
return
}
}
} }
// 获取最后一次合同编号 // 获取 最后一次的 合同编号
lastContractNo, err := logic.GetLastContractNo() lastOrderRecord, lastOrderRecordErr := service.BundleProvider.OrderRecordsList(context.Background(), &bundle.OrderRecordsRequest{
if err != nil { PageSize: 1,
service.Error(c, err) Page: 1,
})
if lastOrderRecordErr != nil {
service.Error(c, lastOrderRecordErr)
return return
} }
lastContractNo := ""
// 获取套餐详情 if lastOrderRecord.OrderRecords != nil {
bundleDetail, err := logic.GetBundleDetail(req.BundleUuid, req.Language) for _, lastOrder := range lastOrderRecord.OrderRecords {
if err != nil { lastContractNo = lastOrder.ContractNo
service.Error(c, err) }
}
// 获取 套餐信息
bundleDetailReq := &bundle.BundleDetailRequest{
Uuid: req.BundleUuid,
Language: req.Language,
}
bundleDetail, detailErr := service.BundleProvider.BundleLangDetailV2(context.Background(), bundleDetailReq)
if detailErr != nil {
service.Error(c, detailErr)
return return
} }
//获取过期时间和增值服务金额
// 组装服务内容(套餐权益 + 附加权益) var addRecords []*bundle.OrderCreateAddRecord
addRecords, addTotalPrice, expirationDay, err := logic.BuildServiceRecords(&req, bundleDetail) var addTotalPrice float32
if err != nil { var expirationDay string
service.Error(c, err) for _, i := range req.AddRecords {
price, err := service.BundleProvider.CalculatePrice(context.Background(), &bundle.CalculatePriceRequest{
Uuid: i.ValueUid,
Num: i.Num,
Language: req.Language,
})
if err != nil {
service.Error(c, err)
return
}
addTotalPrice += price.Price
addService, err := service.BundleProvider.ValueAddServiceLangByUuidAndLanguage(context.Background(), &bundle.ValueAddServiceDetailRequest{
Uuid: i.ValueUid,
Language: req.Language,
})
if err != nil {
service.Error(c, err)
return
}
addRecords = append(addRecords, &bundle.OrderCreateAddRecord{
ServiceType: addService.ServiceType,
ValueUid: i.ValueUid,
CurrencyType: addService.PriceType,
Amount: price.Price,
Num: i.Num,
Unit: addService.Unit,
Source: 1,
PaymentStatus: 1,
})
//服务类型为时长 计算
if addService.ServiceType == 5 {
expirationDay = calculateExpirationDate(time.Now(), i.Num, addService.Unit)
} else {
expirationDay = time.Now().AddDate(0, 0, 7).Format("2006-01-02")
}
}
// 当前 未将 签名 写入合同中 todo 金额和有效时间待修改
signContract, signContractErr := logic.SignContractV2(req.CustomerNum, bundleDetail.Contract, bundleDetail.Price+addTotalPrice, expirationDay)
if signContractErr != nil {
service.Error(c, signContractErr)
return return
} }
req.CustomerNum = userInfo.SubNum
req.CustomerName = userInfo.Name
req.CustomerID = strconv.FormatUint(userInfo.ID, 10)
req.BundleName = bundleDetail.Name
req.Amount = bundleDetail.Price
req.AmountType = bundleDetail.PriceType
//req.BundleCommonUid = bundleDetail.BundleCommonUid
req.TotalAmount = bundleDetail.Price + addTotalPrice
req.ContractNo = common.GenerateContractNo(lastContractNo)
req.SignContract = signContract
req.SignedTime = common.GetBeijingTime()
req.Status = bundleModel.OrderSigned
req.AddRecords = addRecords
//req.ExpirationTime = expirationDay //过期日期取消 在完成支付是更新
req.PayType = 1
// 签合同(金额 + 有效期)
signContract, err := logic.SignContractV2(req.CustomerNum, bundleDetail.Contract, bundleDetail.Price+addTotalPrice, expirationDay)
if err != nil {
service.Error(c, err)
return
}
// 组装订单信息
req = logic.BuildOrderRequest(req, userInfo, bundleDetail, addRecords, addTotalPrice, lastContractNo, signContract)
// 创建订单
res, err := service.BundleProvider.CreateOrderRecord(context.Background(), &req) res, err := service.BundleProvider.CreateOrderRecord(context.Background(), &req)
if err != nil { if err != nil {
service.Error(c, err) service.Error(c, err)
return return
} }
service.Success(c, res) service.Success(c, res)
return
} }
func UpdateBundleOrderStatusPaid(c *gin.Context) { func UpdateBundleOrderStatusPaid(c *gin.Context) {

View File

@ -113,6 +113,7 @@ func BundleListV2(c *gin.Context) {
} }
func BundleDetailV2(c *gin.Context) { func BundleDetailV2(c *gin.Context) {
var req bundle.BundleDetailRequest var req bundle.BundleDetailRequest
if err := c.ShouldBindBodyWith(&req, binding.JSON); err != nil { if err := c.ShouldBindBodyWith(&req, binding.JSON); err != nil {
service.Error(c, err) service.Error(c, err)
return return

View File

@ -50,10 +50,6 @@ const (
ReviewFailed = "实名审核失败" ReviewFailed = "实名审核失败"
UnknownStatus = "未知实名状态" UnknownStatus = "未知实名状态"
) )
const (
UnknownAddServiceUUID = "未知增值服务"
BundleUnBindingAddService = "套餐未绑定增值服务"
)
/*var EnMessages = map[string]string{ /*var EnMessages = map[string]string{
"创建套餐信息失败": "Failed to create bundle information", "创建套餐信息失败": "Failed to create bundle information",

View File

@ -1,211 +0,0 @@
package logic
import (
"context"
"errors"
"fonchain-fiee/api/bundle"
"fonchain-fiee/pkg/model/login"
"fonchain-fiee/pkg/service"
"fonchain-fiee/pkg/service/bundle/common"
bundleModel "fonchain-fiee/pkg/service/bundle/model"
"strconv"
"time"
"github.com/gin-gonic/gin"
)
// 校验参数
func ValidateRequest(c *gin.Context, req *bundle.OrderCreateRecord) error {
if req.BundleUuid == "" {
return errors.New(common.MissBundleUUID)
}
if req.Language == "" {
req.Language = c.GetHeader("Accept-Language")
if req.Language == "" {
return errors.New(common.MissLanguageTypes)
}
}
return nil
}
// 校验用户状态
func ValidateUserStatus(userInfo login.Info) error {
statusMessages := map[int32]string{
1: common.Unnamed,
2: common.UnderReview,
3: common.ReviewFailed,
}
if userInfo.Status != 4 {
if msg, ok := statusMessages[userInfo.Status]; ok {
return errors.New(msg)
}
return errors.New(common.UnknownStatus)
}
return nil
}
// 校验用户是否已有套餐
func CheckUserOrder(userID uint64) error {
req := bundle.OrderRecordsRequest{CustomerID: strconv.FormatUint(userID, 10)}
records, err := service.BundleProvider.OrderRecordsList(context.Background(), &req)
if err != nil {
return err
}
for _, order := range records.OrderRecords {
if order.CustomerID == strconv.FormatUint(userID, 10) && order.Status == 1 {
return errors.New(common.ThereAreOutstandingOrders)
}
if order.CustomerID == strconv.FormatUint(userID, 10) && order.ExpirationTime > time.Now().Format("2006-01-02 15:04:05") {
return errors.New(common.HadOrder)
}
}
return nil
}
// 获取最后一次合同编号
func GetLastContractNo() (string, error) {
records, err := service.BundleProvider.OrderRecordsList(context.Background(), &bundle.OrderRecordsRequest{
PageSize: 1,
Page: 1,
})
if err != nil {
return "", err
}
if len(records.OrderRecords) > 0 {
return records.OrderRecords[0].ContractNo, nil
}
return "", nil
}
// 获取套餐详情
func GetBundleDetail(uuid, lang string) (*bundle.BundleProfileLang, error) {
return service.BundleProvider.BundleLangDetailV2(context.Background(), &bundle.BundleDetailRequest{
Uuid: uuid,
Language: lang,
})
}
// 组装服务内容(套餐权益和附加权益)
func BuildServiceRecords(req *bundle.OrderCreateRecord, bundleDetail *bundle.BundleProfileLang) ([]*bundle.OrderCreateAddRecord, float32, string, error) {
var (
addRecords []*bundle.OrderCreateAddRecord
addTotalPrice float32
expirationDay string
addUidService = make(map[string]bool)
bundleUidService = make(map[string]bool)
)
// 分类权益
for _, i := range bundleDetail.ServiceLangInfo {
switch i.BenefitsType {
case 1:
bundleUidService[i.ValueAddUuid] = true
case 2:
addUidService[i.ValueAddUuid] = true
}
}
if len(bundleUidService) == 0 {
return nil, 0, "", errors.New(common.BundleUnBindingAddService)
}
// 附加权益
for _, i := range req.AddRecords {
if !addUidService[i.ValueUid] {
return nil, 0, "", errors.New(common.UnknownAddServiceUUID)
}
price, err := service.BundleProvider.CalculatePrice(context.Background(), &bundle.CalculatePriceRequest{
Uuid: i.ValueUid,
Num: i.Num,
Language: req.Language,
})
if err != nil {
return nil, 0, "", err
}
addTotalPrice += price.Price
addService, err := service.BundleProvider.ValueAddServiceLangByUuidAndLanguage(context.Background(),
&bundle.ValueAddServiceDetailRequest{Uuid: i.ValueUid, Language: req.Language})
if err != nil {
return nil, 0, "", err
}
addRecords = append(addRecords, buildAddRecord(addService, i.ValueUid, price.Price, i.Num, 2))
}
// 套餐权益
for uid := range bundleUidService {
addService, err := service.BundleProvider.ValueAddServiceLangByUuidAndLanguage(context.Background(),
&bundle.ValueAddServiceDetailRequest{Uuid: uid, Language: req.Language})
if err != nil {
return nil, 0, "", err
}
var num int32
for _, s := range addService.Options {
if s.IsDefault {
num = s.Num
break
}
}
addRecords = append(addRecords, buildAddRecord(addService, uid, 0, num, 1))
// 计算到期时间
if addService.ServiceType == 5 {
expirationDay = calculateExpirationDate(time.Now(), num, addService.Unit)
} else {
expirationDay = time.Now().AddDate(0, 0, 7).Format("2006-01-02")
}
}
return addRecords, addTotalPrice, expirationDay, nil
}
// 构建单条服务记录
func buildAddRecord(addService *bundle.ValueAddServiceLang, uid string, price float32, num int32, equityType int32) *bundle.OrderCreateAddRecord {
return &bundle.OrderCreateAddRecord{
ServiceType: addService.ServiceType,
ValueUid: uid,
CurrencyType: addService.PriceType,
Amount: price,
Num: num,
Unit: addService.Unit,
Source: 1,
PaymentStatus: 1,
EquityType: equityType,
QuotaType: addService.QuotaType,
QuotaValue: addService.QuotaValue,
IsExpired: addService.IsExpired,
}
}
// 组装订单请求
func BuildOrderRequest(req bundle.OrderCreateRecord, userInfo login.Info,
bundleDetail *bundle.BundleProfileLang, addRecords []*bundle.OrderCreateAddRecord,
addTotalPrice float32, lastContractNo, signContract string) bundle.OrderCreateRecord {
req.CustomerNum = userInfo.SubNum
req.CustomerName = userInfo.Name
req.CustomerID = strconv.FormatUint(userInfo.ID, 10)
req.BundleName = bundleDetail.Name
req.Amount = bundleDetail.Price
req.AmountType = bundleDetail.PriceType
req.TotalAmount = bundleDetail.Price + addTotalPrice
req.ContractNo = common.GenerateContractNo(lastContractNo)
req.SignContract = signContract
req.SignedTime = common.GetBeijingTime()
req.Status = bundleModel.OrderSigned
req.AddRecords = addRecords
req.PayType = 1
return req
}
func calculateExpirationDate(startDate time.Time, num int32, unit string) string {
//now := time.Now()
switch unit {
case "天":
return startDate.AddDate(0, 0, int(num)).Format("2006-01-02")
case "月":
return startDate.AddDate(0, int(num), 0).Format("2006-01-02")
case "年":
return startDate.AddDate(int(num), 0, 0).Format("2006-01-02")
default:
return ""
}
}

View File

@ -6,13 +6,12 @@ import (
"fonchain-fiee/pkg/model" "fonchain-fiee/pkg/model"
"fonchain-fiee/pkg/service/bundle/common" "fonchain-fiee/pkg/service/bundle/common"
"fonchain-fiee/pkg/service/upload" "fonchain-fiee/pkg/service/upload"
"github.com/signintech/gopdf"
"go.uber.org/zap"
"log" "log"
"os" "os"
"strconv" "strconv"
"time" "time"
"github.com/signintech/gopdf"
"go.uber.org/zap"
) )
func SignContractV2(customerNum, contract string, price float32, expirationDate string) (outputUrl string, err error) { func SignContractV2(customerNum, contract string, price float32, expirationDate string) (outputUrl string, err error) {

View File

@ -57,25 +57,6 @@ func UpdateWorkImage(ctx *gin.Context) {
service.Error(ctx, err) service.Error(ctx, err)
return return
} }
// 更新任务台的任务数量,调用员工实际任务状态更新
if service.BundleProvider != nil {
resp1, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &bundle.UpdateTaskProgressRequest{
AssignRecordsUUID: "",
EmployeeName: infoResp.Name,
EmployeeNum: infoResp.TelNum,
TaskType: "post",
CompleteCount: 1,
})
if err != nil {
zap.L().Error("UpdateTaskProgress failed", zap.Error(err))
// 不直接返回错误,允许主要功能继续执行
} else {
zap.L().Info("UpdateTaskProgress", zap.Any("resp", resp1))
}
} else {
zap.L().Warn("BundleProvider is nil, skipping UpdateTaskProgress")
}
service.Success(ctx, resp) service.Success(ctx, resp)
return return
} }
@ -120,25 +101,6 @@ func UpdateWorkVideo(ctx *gin.Context) {
service.Error(ctx, err) service.Error(ctx, err)
return return
} }
// 更新任务台的任务数量,调用员工实际任务状态更新
if service.BundleProvider != nil {
resp1, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &bundle.UpdateTaskProgressRequest{
AssignRecordsUUID: "",
EmployeeName: infoResp.Name,
EmployeeNum: infoResp.TelNum,
TaskType: "video",
CompleteCount: 1,
})
if err != nil {
zap.L().Error("UpdateTaskProgress failed", zap.Error(err))
// 不直接返回错误,允许主要功能继续执行
} else {
zap.L().Info("UpdateTaskProgress", zap.Any("resp", resp1))
}
} else {
zap.L().Warn("BundleProvider is nil, skipping UpdateTaskProgress")
}
service.Success(ctx, resp) service.Success(ctx, resp)
return return
} }

View File

@ -1,9 +1,6 @@
package service package service
import ( import (
"dubbo.apache.org/dubbo-go/v3/common/constant"
"dubbo.apache.org/dubbo-go/v3/config"
_ "dubbo.apache.org/dubbo-go/v3/imports"
"fmt" "fmt"
"fonchain-fiee/api/account" "fonchain-fiee/api/account"
"fonchain-fiee/api/accountFiee" "fonchain-fiee/api/accountFiee"
@ -17,6 +14,10 @@ import (
"fonchain-fiee/api/secFilings" "fonchain-fiee/api/secFilings"
pkConfig "fonchain-fiee/pkg/config" pkConfig "fonchain-fiee/pkg/config"
"os" "os"
"dubbo.apache.org/dubbo-go/v3/common/constant"
"dubbo.apache.org/dubbo-go/v3/config"
_ "dubbo.apache.org/dubbo-go/v3/imports"
) )
var AccountProvider = new(account.AccountClientImpl) var AccountProvider = new(account.AccountClientImpl)

View File

@ -1,308 +0,0 @@
package taskbench
import (
"context"
"fmt"
"fonchain-fiee/api/accountFiee"
"fonchain-fiee/api/bundle"
"fonchain-fiee/api/cast"
"fonchain-fiee/cmd/config"
modelCast "fonchain-fiee/pkg/model/cast"
"fonchain-fiee/pkg/model/login"
"fonchain-fiee/pkg/service"
castService "fonchain-fiee/pkg/service/cast"
"strconv"
"github.com/gin-gonic/gin"
"go.uber.org/zap"
)
// GetPendingTaskList 查询待指派任务记录
func GetPendingTaskList(c *gin.Context) {
var req bundle.TaskQueryRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.GetPendingTaskList(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// AssignTask 指派某位员工完成某个艺人的任务
func AssignTask(c *gin.Context) {
var req bundle.TaskAssignRequest
userInfo := login.GetUserInfoFromC(c)
req.OperatorNum = userInfo.TelNum
req.Operator = userInfo.Name
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.AssignTask(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// UpdatePendingCount 修改待发数量
func UpdatePendingCount(c *gin.Context) {
var req bundle.UpdatePendingCountRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.UpdatePendingCount(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// GetRecentAssignRecords 查询最近被指派记录
func GetRecentAssignRecords(c *gin.Context) {
var req bundle.RecentAssignRecordsRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.GetRecentAssignRecords(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// GetEmployeeAssignedTasks 根据登录人信息查询被指派给该员工的任务
func GetEmployeeAssignedTasks(c *gin.Context) {
var req bundle.EmployeeTaskQueryRequest
userInfo := login.GetUserInfoFromC(c)
req.TaskAssigneeNum = userInfo.TelNum
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.GetEmployeeAssignedTasks(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// CompleteTaskManually 员工手动点击完成任务
func CompleteTaskManually(c *gin.Context) {
var req bundle.CompleteTaskManuallyRequest
userInfo := login.GetUserInfoFromC(c)
req.TaskAssigneeNum = userInfo.TelNum
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.CompleteTaskManually(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// UpdateTaskProgress 员工实际完成任务状态更新
func UpdateTaskProgress(c *gin.Context) {
var req bundle.UpdateTaskProgressRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
// GetTaskAssignRecordsList 多条件查询操作记录表
func GetTaskAssignRecordsList(c *gin.Context) {
var req bundle.TaskAssignRecordsQueryRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
// 添加空指针检查
if service.BundleProvider == nil {
service.Error(c, fmt.Errorf("BundleProvider is not initialized"))
return
}
res, err := service.BundleProvider.GetTaskAssignRecordsList(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}
type UpdateWorkVideoWithUUIDReq struct {
*cast.UpdateWorkVideoReq
AssignRecordsUUID string `json:"assignRecordsUUID"`
}
type UpdateWorkImageWithTaskUUIDReq struct {
*cast.UpdateWorkImageReq
AssignRecordsUUID string `json:"assignRecordsUUID"`
}
func UpdateWorkImageWithTaskUUID(ctx *gin.Context) {
var req UpdateWorkImageWithTaskUUIDReq
var infoResp *accountFiee.UserInfoResponse
var err error
if err = ctx.ShouldBind(&req); err != nil {
service.Error(ctx, err)
return
}
if config.AppConfig.System.AppMode != "dev" {
artistId, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
infoResp, err = service.AccountFieeProvider.Info(context.Background(), &accountFiee.InfoRequest{
ID: artistId,
Domain: "app",
})
if err != nil {
service.Error(ctx, err)
return
}
} else {
infoResp = &accountFiee.UserInfoResponse{
Name: "小波",
TelNum: "18288888888",
TelAreaCode: "86",
}
}
req.ArtistName = infoResp.Name
req.ArtistPhone = infoResp.TelNum
req.ArtistPhoneAreaCode = infoResp.TelAreaCode
artistID, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
if err = castService.CheckUserBundleBalance(int32(artistID), modelCast.BalanceTypeImageValue); err != nil {
service.Error(ctx, err)
return
}
newCtx := castService.NewCtxWithUserInfo(ctx)
req.Source = 1
resp, err := service.CastProvider.UpdateWorkImage(newCtx, req.UpdateWorkImageReq)
if err != nil {
service.Error(ctx, err)
return
}
// 调用员工实际任务状态更新
resp1, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &bundle.UpdateTaskProgressRequest{
AssignRecordsUUID: req.AssignRecordsUUID,
EmployeeName: infoResp.Name,
EmployeeNum: infoResp.TelNum, // 需要根据实际业务逻辑填充员工工号
TaskType: "post",
CompleteCount: 1,
})
if err != nil {
service.Error(ctx, err)
return
}
zap.L().Info("UpdateTaskProgress", zap.Any("resp", resp1))
service.Success(ctx, resp)
return
}
func UpdateWorkVideoWithUUID(ctx *gin.Context) {
var req UpdateWorkVideoWithUUIDReq
var infoResp *accountFiee.UserInfoResponse
var err error
if err = ctx.ShouldBind(&req); err != nil {
service.Error(ctx, err)
return
}
if config.AppConfig.System.AppMode != "dev" {
artistId, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
infoResp, err = service.AccountFieeProvider.Info(context.Background(), &accountFiee.InfoRequest{
ID: artistId,
Domain: "app",
})
if err != nil {
service.Error(ctx, err)
return
}
} else {
infoResp = &accountFiee.UserInfoResponse{
Name: "小波",
TelNum: "18288888888",
TelAreaCode: "86",
}
}
artistID, _ := strconv.ParseUint(req.ArtistUuid, 10, 64)
if err = castService.CheckUserBundleBalance(int32(artistID), modelCast.BalanceTypeVideoValue); err != nil {
service.Error(ctx, err)
return
}
req.ArtistName = infoResp.Name
req.ArtistPhone = infoResp.TelNum
req.ArtistPhoneAreaCode = infoResp.TelAreaCode
newCtx := castService.NewCtxWithUserInfo(ctx)
req.Source = 1
resp, err := service.CastProvider.UpdateWorkVideo(newCtx, req.UpdateWorkVideoReq)
if err != nil {
service.Error(ctx, err)
return
}
// 调用员工实际任务状态更新
resp1, err := service.BundleProvider.UpdateTaskProgress(context.Background(), &bundle.UpdateTaskProgressRequest{
AssignRecordsUUID: req.AssignRecordsUUID,
EmployeeName: infoResp.Name,
EmployeeNum: infoResp.TelNum, // 需要根据实际业务逻辑填充员工工号
TaskType: "video",
CompleteCount: 1,
})
if err != nil {
service.Error(ctx, err)
return
}
zap.L().Info("UpdateTaskProgress", zap.Any("resp", resp1))
service.Success(ctx, resp)
return
}
// GetArtistBundleBalance 查询艺人套餐剩余数量
func GetArtistBundleBalance(c *gin.Context) {
var req bundle.ArtistBundleBalanceRequest
if err := c.ShouldBindJSON(&req); err != nil {
service.Error(c, err)
return
}
res, err := service.BundleProvider.GetArtistBundleBalance(context.Background(), &req)
if err != nil {
service.Error(c, err)
return
}
service.Success(c, res)
}

View File

@ -7,16 +7,14 @@ import (
"errors" "errors"
"fmt" "fmt"
"fonchain-fiee/pkg/e" "fonchain-fiee/pkg/e"
"github.com/gin-gonic/gin"
"github.com/tealeg/xlsx"
"io" "io"
"io/ioutil" "io/ioutil"
"net/http" "net/http"
"net/url" "net/url"
"os" "os"
"path/filepath"
"time" "time"
"github.com/gin-gonic/gin"
"github.com/tealeg/xlsx"
) )
const ( const (
@ -130,36 +128,3 @@ func ResponseXls(c *gin.Context, content io.ReadSeeker, fileTag string) {
//c.Writer.Header().Add("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") //c.Writer.Header().Add("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
http.ServeContent(c.Writer, c.Request, fileName, time.Now(), content) http.ServeContent(c.Writer, c.Request, fileName, time.Now(), content)
} }
func CreateDirPath(path string) (err error) {
if _, err = os.Stat(path); os.IsNotExist(err) {
if err = os.MkdirAll(path, os.ModePerm); err != nil {
return
}
}
return
}
func CopyFile(src, dstDir string) (string, error) {
in, err := os.Open(src)
if err != nil {
return "", err
}
defer in.Close()
if err := os.MkdirAll(dstDir, 0755); err != nil {
return "", err
}
dst := filepath.Join(dstDir, filepath.Base(src))
out, err := os.Create(dst)
if err != nil {
return "", err
}
defer out.Close()
if _, err = io.Copy(out, in); err != nil {
return "", err
}
if err = out.Sync(); err != nil {
return "", err
}
return dst, nil
}