Merge branch 'dev' of http://gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway into dev
正在显示
26 个修改的文件
包含
663 行增加
和
280 行删除
| @@ -4,6 +4,7 @@ go 1.16 | @@ -4,6 +4,7 @@ go 1.16 | ||
| 4 | 4 | ||
| 5 | require ( | 5 | require ( |
| 6 | github.com/beego/beego/v2 v2.0.1 | 6 | github.com/beego/beego/v2 v2.0.1 |
| 7 | + github.com/boombuler/barcode v1.0.1 | ||
| 7 | github.com/dgrijalva/jwt-go v3.2.0+incompatible | 8 | github.com/dgrijalva/jwt-go v3.2.0+incompatible |
| 8 | github.com/go-pg/pg/v10 v10.10.1 | 9 | github.com/go-pg/pg/v10 v10.10.1 |
| 9 | github.com/go-redis/redis v6.14.2+incompatible | 10 | github.com/go-redis/redis v6.14.2+incompatible |
pkg/application/web/auth/command/login.go
0 → 100644
| 1 | +package command | ||
| 2 | + | ||
| 3 | +import ( | ||
| 4 | + "fmt" | ||
| 5 | + | ||
| 6 | + "github.com/beego/beego/v2/core/validation" | ||
| 7 | +) | ||
| 8 | + | ||
| 9 | +type LoginCommand struct { | ||
| 10 | + Phone string `json:"phone" valid:"Required"` | ||
| 11 | + GrantType string `json:"grantType" valid:"Required"` //登录方式(signInPassword 密码登录、signInCaptcha 验证码登录) | ||
| 12 | + Password string `json:"password"` | ||
| 13 | + Captcha string `json:"captcha"` | ||
| 14 | +} | ||
| 15 | + | ||
| 16 | +func (orgAddCommand *LoginCommand) Valid(validation *validation.Validation) { | ||
| 17 | + | ||
| 18 | +} | ||
| 19 | + | ||
| 20 | +func (orgAddCommand *LoginCommand) ValidateCommand() error { | ||
| 21 | + valid := validation.Validation{} | ||
| 22 | + b, err := valid.Valid(orgAddCommand) | ||
| 23 | + if err != nil { | ||
| 24 | + return err | ||
| 25 | + } | ||
| 26 | + if !b { | ||
| 27 | + for _, validErr := range valid.Errors { | ||
| 28 | + return fmt.Errorf("%s %s", validErr.Key, validErr.Message) | ||
| 29 | + } | ||
| 30 | + } | ||
| 31 | + return nil | ||
| 32 | +} |
pkg/application/web/auth/dto/dto.go
0 → 100644
| 1 | +package dto | ||
| 2 | + | ||
| 3 | +type CompanyItem struct { | ||
| 4 | + CompanyId int `json:"companyId,string"` | ||
| 5 | + CompanyName string `json:"companyName"` | ||
| 6 | +} | ||
| 7 | + | ||
| 8 | +type OrgItem struct { | ||
| 9 | + OrganizationId int `json:"organizationId,string"` | ||
| 10 | + OrganizationName string `json:"organizationName"` | ||
| 11 | + CompanyId int `json:"companyId"` | ||
| 12 | +} |
| 1 | +package query | ||
| 2 | + | ||
| 3 | +import ( | ||
| 4 | + "fmt" | ||
| 5 | + | ||
| 6 | + "github.com/beego/beego/v2/core/validation" | ||
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 8 | +) | ||
| 9 | + | ||
| 10 | +type GetCompanyOrgsByUserQuery struct { | ||
| 11 | + //操作人 | ||
| 12 | + Operator domain.Operator `json:"-"` | ||
| 13 | + Phone string `json:"phone" valid:"Required"` //手机号 | ||
| 14 | +} | ||
| 15 | + | ||
| 16 | +func (orgAddCommand *GetCompanyOrgsByUserQuery) Valid(validation *validation.Validation) { | ||
| 17 | + | ||
| 18 | +} | ||
| 19 | + | ||
| 20 | +func (orgAddCommand *GetCompanyOrgsByUserQuery) ValidateCommand() error { | ||
| 21 | + valid := validation.Validation{} | ||
| 22 | + b, err := valid.Valid(orgAddCommand) | ||
| 23 | + if err != nil { | ||
| 24 | + return err | ||
| 25 | + } | ||
| 26 | + if !b { | ||
| 27 | + for _, validErr := range valid.Errors { | ||
| 28 | + return fmt.Errorf("%s %s", validErr.Key, validErr.Message) | ||
| 29 | + } | ||
| 30 | + } | ||
| 31 | + return nil | ||
| 32 | +} |
pkg/application/web/auth/service/service.go
0 → 100644
| 1 | +package service | ||
| 2 | + | ||
| 3 | +import ( | ||
| 4 | + "errors" | ||
| 5 | + | ||
| 6 | + "github.com/linmadan/egglib-go/core/application" | ||
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/auth/command" | ||
| 8 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/auth/dto" | ||
| 9 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/auth/query" | ||
| 10 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 11 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/cache" | ||
| 12 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_user" | ||
| 13 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/sms_serve" | ||
| 14 | +) | ||
| 15 | + | ||
| 16 | +type AuthService struct{} | ||
| 17 | + | ||
| 18 | +//AuthLogin 用户登录 | ||
| 19 | +func (srv AuthService) AuthLogin(loginCommand *command.LoginCommand) (interface{}, error) { | ||
| 20 | + var ( | ||
| 21 | + result interface{} | ||
| 22 | + err error | ||
| 23 | + ) | ||
| 24 | + switch loginCommand.GrantType { | ||
| 25 | + case "signInPassword": | ||
| 26 | + //账号密码登录 | ||
| 27 | + result, err = srv.SignInPassword(loginCommand.Phone, loginCommand.Password) | ||
| 28 | + case "signInCaptcha": | ||
| 29 | + //手机验证码登录 | ||
| 30 | + result, err = srv.SignInCaptcha(loginCommand.Phone, loginCommand.Captcha) | ||
| 31 | + default: | ||
| 32 | + err = errors.New("登录方式无法解析") | ||
| 33 | + } | ||
| 34 | + return result, err | ||
| 35 | +} | ||
| 36 | + | ||
| 37 | +//SignInPassword 使用账号密码校验 | ||
| 38 | +func (srv AuthService) SignInPassword(account string, password string) (interface{}, error) { | ||
| 39 | + creationUserGateway := allied_creation_user.NewHttplibAlliedCreationUser(domain.Operator{}) | ||
| 40 | + _, err := creationUserGateway.AuthCheckPassword(allied_creation_user.ReqAuthCheckPassword{ | ||
| 41 | + Password: password, | ||
| 42 | + Phone: account, | ||
| 43 | + }) | ||
| 44 | + if err != nil { | ||
| 45 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 46 | + } | ||
| 47 | + ltoken := domain.LoginToken{ | ||
| 48 | + UserId: 0, | ||
| 49 | + Account: account, | ||
| 50 | + Platform: domain.LoginPlatformApp, | ||
| 51 | + CompanyId: 0, | ||
| 52 | + } | ||
| 53 | + authcode, err := ltoken.GenerateAuthCode() | ||
| 54 | + if err != nil { | ||
| 55 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 56 | + } | ||
| 57 | + result := map[string]string{ | ||
| 58 | + "authCode": authcode, | ||
| 59 | + } | ||
| 60 | + return result, nil | ||
| 61 | +} | ||
| 62 | + | ||
| 63 | +//SignInCaptcha 使用手机验证码登录 | ||
| 64 | +func (srv AuthService) SignInCaptcha(phone string, captcha string) (interface{}, error) { | ||
| 65 | + smsServeGateway := sms_serve.NewHttplibHttplibSmsServe() | ||
| 66 | + err := smsServeGateway.CheckSmsCode(phone, captcha) | ||
| 67 | + if err != nil { | ||
| 68 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 69 | + } | ||
| 70 | + ltoken := domain.LoginToken{ | ||
| 71 | + UserId: 0, | ||
| 72 | + Account: phone, | ||
| 73 | + Platform: domain.LoginPlatformApp, | ||
| 74 | + CompanyId: 0, | ||
| 75 | + } | ||
| 76 | + authcode, err := ltoken.GenerateAuthCode() | ||
| 77 | + if err != nil { | ||
| 78 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 79 | + } | ||
| 80 | + result := map[string]string{ | ||
| 81 | + "authCode": authcode, | ||
| 82 | + } | ||
| 83 | + return result, nil | ||
| 84 | +} | ||
| 85 | + | ||
| 86 | +//GetCompanyOrgsByUser 获取登录用户的公司组织列表 | ||
| 87 | +func (srv AuthService) GetCompanyOrgsByUser(queryParam query.GetCompanyOrgsByUserQuery) (interface{}, error) { | ||
| 88 | + | ||
| 89 | + creationUserGateway := allied_creation_user.NewHttplibAlliedCreationUser(queryParam.Operator) | ||
| 90 | + result, err := creationUserGateway.UserSearch(allied_creation_user.ReqUserSearch{ | ||
| 91 | + Phone: queryParam.Phone, | ||
| 92 | + }) | ||
| 93 | + if err != nil { | ||
| 94 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 95 | + } | ||
| 96 | + var ( | ||
| 97 | + companys []dto.CompanyItem | ||
| 98 | + orgs []dto.OrgItem | ||
| 99 | + ) | ||
| 100 | + | ||
| 101 | + for _, v := range result.Users { | ||
| 102 | + companys = append(companys, dto.CompanyItem{ | ||
| 103 | + CompanyId: v.Company.CompanyId, | ||
| 104 | + CompanyName: v.Company.CompanyName, | ||
| 105 | + }) | ||
| 106 | + for _, vv := range v.UserOrg { | ||
| 107 | + orgs = append(orgs, dto.OrgItem{ | ||
| 108 | + OrganizationId: vv.OrgID, | ||
| 109 | + OrganizationName: vv.OrgName, | ||
| 110 | + CompanyId: v.Company.CompanyId, | ||
| 111 | + }) | ||
| 112 | + } | ||
| 113 | + } | ||
| 114 | + | ||
| 115 | + data := map[string]interface{}{ | ||
| 116 | + "companys": companys, | ||
| 117 | + "organizations": orgs, | ||
| 118 | + } | ||
| 119 | + return data, nil | ||
| 120 | +} | ||
| 121 | + | ||
| 122 | +//GetQrcode 获取扫码登录需要的二维码 | ||
| 123 | +func (srv AuthService) GetQrcode() (interface{}, error) { | ||
| 124 | + qrmsg := domain.QrcodeMessage{} | ||
| 125 | + imgBase64, err := qrmsg.GenerateImageBase64() | ||
| 126 | + if err != nil { | ||
| 127 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 128 | + } | ||
| 129 | + qrCache := cache.LoginQrcodeCache{} | ||
| 130 | + err = qrCache.Save(qrmsg) | ||
| 131 | + if err != nil { | ||
| 132 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 133 | + } | ||
| 134 | + data := map[string]interface{}{ | ||
| 135 | + "image": imgBase64, | ||
| 136 | + "token": qrmsg.Token, | ||
| 137 | + } | ||
| 138 | + return data, nil | ||
| 139 | +} | ||
| 140 | + | ||
| 141 | +//QrcodeLoginStatus 扫码登录状态 | ||
| 142 | +func (srv AuthService) QrcodeLoginStatus(queryParam query.QrcodeLoginStatusQuery) (interface{}, error) { | ||
| 143 | + qrmsg := domain.QrcodeMessage{} | ||
| 144 | + err := qrmsg.ParseToken(queryParam.Token) | ||
| 145 | + if err != nil { | ||
| 146 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 147 | + } | ||
| 148 | + qrCache := cache.LoginQrcodeCache{} | ||
| 149 | + qrmsgCache, err := qrCache.Get(qrmsg.Id) | ||
| 150 | + if err != nil { | ||
| 151 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 152 | + } | ||
| 153 | + data := map[string]interface{}{ | ||
| 154 | + "isLogin": qrmsgCache.IsLogin, | ||
| 155 | + } | ||
| 156 | + return data, nil | ||
| 157 | +} |
| @@ -4,84 +4,14 @@ import ( | @@ -4,84 +4,14 @@ import ( | ||
| 4 | "fmt" | 4 | "fmt" |
| 5 | 5 | ||
| 6 | "github.com/beego/beego/v2/core/validation" | 6 | "github.com/beego/beego/v2/core/validation" |
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 8 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_cooperation" | ||
| 7 | ) | 9 | ) |
| 8 | 10 | ||
| 9 | type CreateCooperationContractCommand struct { | 11 | type CreateCooperationContractCommand struct { |
| 10 | - CooperationContract struct { | ||
| 11 | - CooperationContractId int `json:"cooperationContractId,string"` | ||
| 12 | - // 共创合约描述 | ||
| 13 | - Description string `json:"Description"` | ||
| 14 | - // 共创合约编号 | ||
| 15 | - CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 16 | - // 共创项目编号, | ||
| 17 | - CooperationProjectNumber string `json:"cooperationProjectNumber"` | ||
| 18 | - // 共创合约发起部门编码 | ||
| 19 | - DepartmentId string `json:"departmentId"` | ||
| 20 | - // 共创合约承接对象,1员工,2共创用户,3公开 | ||
| 21 | - CooperationContractUndertakerType []int `json:"cooperationContractUndertakerType"` | ||
| 22 | - // 共创合约名称 | ||
| 23 | - CooperationContractName string `json:"cooperationContractName"` | ||
| 24 | - // 共创模式编码,手动输入,唯一确定 | ||
| 25 | - CooperationModeNumber string `json:"cooperationModeNumber"` | ||
| 26 | - // 共创合约发起人uid | ||
| 27 | - SponsorUserId string `json:"sponsorUserId"` | ||
| 28 | - } `json:"cooperationContract"` | ||
| 29 | - | ||
| 30 | - // 业绩分红激励规则列表 | ||
| 31 | - DividendsIncentivesRules []struct { | ||
| 32 | - // 关联的项目合约编号 | ||
| 33 | - CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 34 | - // 推荐人抽成比例 | ||
| 35 | - ReferrerPercentage float64 `json:"referrerPercentage"` | ||
| 36 | - // 业务员抽成比例 | ||
| 37 | - SalesmanPercentage float64 `json:"salesmanPercentage"` | ||
| 38 | - // 分红规则激励百分点 | ||
| 39 | - DividendsIncentivesPercentage float64 `json:"dividendsIncentivesPercentage"` | ||
| 40 | - // 分红规则激励阶段, | ||
| 41 | - DividendsIncentivesStage int64 `json:"dividendsIncentivesStage,string,"` | ||
| 42 | - // 分红规则激励阶段结束 | ||
| 43 | - DividendsIncentivesStageEnd int `json:"dividendsIncentivesStageEnd"` | ||
| 44 | - // 分红规则激励阶段开始 | ||
| 45 | - DividendsIncentivesStageStart int `json:"dividendsIncentivesStageStart"` | ||
| 46 | - } `json:"dividendsIncentivesRules"` | ||
| 47 | - // 金额激励规则列表 | ||
| 48 | - MoneyIncentivesRules []struct { | ||
| 49 | - // 金额激励规则ID | ||
| 50 | - MoneyIncentivesRuleId int64 `json:"moneyIncentivesRuleId,string,"` | ||
| 51 | - // 关联的共创合约编号 | ||
| 52 | - CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 53 | - // 激励金额 | ||
| 54 | - MoneyIncentivesAmount float64 `json:"moneyIncentivesAmount"` | ||
| 55 | - // 金额激励阶段, | ||
| 56 | - MoneyIncentivesStage int64 `json:"moneyIncentivesStage,string,"` | ||
| 57 | - // 金额激励规则时间 | ||
| 58 | - MoneyIncentivesTime int `json:"moneyIncentivesTime"` | ||
| 59 | - // 推荐人抽成比例 | ||
| 60 | - ReferrerPercentage float64 `json:"referrerPercentage"` | ||
| 61 | - // 业务员抽成比例 | ||
| 62 | - SalesmanPercentage float64 `json:"salesmanPercentage"` | ||
| 63 | - } `json:"moneyIncentivesRules"` | ||
| 64 | - | ||
| 65 | - // 关联用户id | ||
| 66 | - RelationUser []int `json:"relationUser"` | ||
| 67 | - //承接人列表 | ||
| 68 | - ContractUndertaker []struct { | ||
| 69 | - HasReferrer bool `json:"hasReferrer"` | ||
| 70 | - HasSalesman bool `json:"hasSalesman"` | ||
| 71 | - UsersId int `json:"usersId,string,"` | ||
| 72 | - ReferrerUser struct { | ||
| 73 | - UserId int `json:"userId,string,"` | ||
| 74 | - } `json:"referrerUser"` | ||
| 75 | - SalesmanUser struct { | ||
| 76 | - UserId int `json:"userId"` | ||
| 77 | - } `json:"salesmanUser"` | ||
| 78 | - Attachment []struct { | ||
| 79 | - Name string `json:"name"` | ||
| 80 | - Type string `json:"type"` | ||
| 81 | - Url string `json:"url"` | ||
| 82 | - FileSize int `json:"fileSize"` | ||
| 83 | - } `json:"attachment"` | ||
| 84 | - } `json:"contractUndertaker"` | 12 | + //操作人 |
| 13 | + Operator domain.Operator `json:"-"` | ||
| 14 | + allied_creation_cooperation.ReqCooperationContractAdd | ||
| 85 | } | 15 | } |
| 86 | 16 | ||
| 87 | func (createCooperationContractCommand *CreateCooperationContractCommand) Valid(validation *validation.Validation) { | 17 | func (createCooperationContractCommand *CreateCooperationContractCommand) Valid(validation *validation.Validation) { |
| @@ -4,9 +4,12 @@ import ( | @@ -4,9 +4,12 @@ import ( | ||
| 4 | "fmt" | 4 | "fmt" |
| 5 | 5 | ||
| 6 | "github.com/beego/beego/v2/core/validation" | 6 | "github.com/beego/beego/v2/core/validation" |
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 7 | ) | 8 | ) |
| 8 | 9 | ||
| 9 | type EnableCooperationContractCommand struct { | 10 | type EnableCooperationContractCommand struct { |
| 11 | + //操作人 | ||
| 12 | + Operator domain.Operator `json:"-"` | ||
| 10 | // 共创合约ID | 13 | // 共创合约ID |
| 11 | CooperationContractId []string `json:"cooperationContractId" valid:"Required"` | 14 | CooperationContractId []string `json:"cooperationContractId" valid:"Required"` |
| 12 | // 暂停和恢复的状态 | 15 | // 暂停和恢复的状态 |
| @@ -2,87 +2,16 @@ package command | @@ -2,87 +2,16 @@ package command | ||
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | "fmt" | 4 | "fmt" |
| 5 | - "time" | ||
| 6 | 5 | ||
| 7 | "github.com/beego/beego/v2/core/validation" | 6 | "github.com/beego/beego/v2/core/validation" |
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 8 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_cooperation" | ||
| 8 | ) | 9 | ) |
| 9 | 10 | ||
| 10 | type UpdateCooperationContractCommand struct { | 11 | type UpdateCooperationContractCommand struct { |
| 11 | - CooperationContract struct { | ||
| 12 | - CooperationContractId int `json:"cooperationContractId,string"` | ||
| 13 | - // 共创合约描述 | ||
| 14 | - Description string `json:"Description"` | ||
| 15 | - // 共创合约编号 | ||
| 16 | - CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 17 | - // 共创项目编号, | ||
| 18 | - CooperationProjectNumber string `json:"cooperationProjectNumber"` | ||
| 19 | - // 共创合约发起部门编码 | ||
| 20 | - DepartmentId string `json:"departmentId"` | ||
| 21 | - // 共创合约承接对象,1员工,2共创用户,3公开 | ||
| 22 | - CooperationContractUndertakerType []int `json:"cooperationContractUndertakerType"` | ||
| 23 | - // 共创合约名称 | ||
| 24 | - CooperationContractName string `json:"cooperationContractName"` | ||
| 25 | - // 共创模式编码,手动输入,唯一确定 | ||
| 26 | - CooperationModeNumber string `json:"cooperationModeNumber"` | ||
| 27 | - // 共创合约发起人uid | ||
| 28 | - SponsorUserId string `json:"sponsorUserId"` | ||
| 29 | - } `json:"cooperationContract"` | ||
| 30 | - | ||
| 31 | - // 业绩分红激励规则列表 | ||
| 32 | - DividendsIncentivesRules []struct { | ||
| 33 | - // 关联的项目合约编号 | ||
| 34 | - CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 35 | - // 推荐人抽成比例 | ||
| 36 | - ReferrerPercentage float64 `json:"referrerPercentage"` | ||
| 37 | - // 业务员抽成比例 | ||
| 38 | - SalesmanPercentage float64 `json:"salesmanPercentage"` | ||
| 39 | - // 分红规则激励百分点 | ||
| 40 | - DividendsIncentivesPercentage float64 `json:"dividendsIncentivesPercentage"` | ||
| 41 | - // 分红规则激励阶段, | ||
| 42 | - DividendsIncentivesStage int64 `json:"dividendsIncentivesStage,string,"` | ||
| 43 | - // 分红规则激励阶段结束 | ||
| 44 | - DividendsIncentivesStageEnd time.Time `json:"dividendsIncentivesStageEnd"` | ||
| 45 | - // 分红规则激励阶段开始 | ||
| 46 | - DividendsIncentivesStageStart time.Time `json:"dividendsIncentivesStageStart"` | ||
| 47 | - } `json:"dividendsIncentivesRules"` | ||
| 48 | - // 金额激励规则列表 | ||
| 49 | - MoneyIncentivesRules []struct { | ||
| 50 | - // 金额激励规则ID | ||
| 51 | - MoneyIncentivesRuleId int64 `json:"moneyIncentivesRuleId,string,"` | ||
| 52 | - // 关联的共创合约编号 | ||
| 53 | - CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 54 | - // 激励金额 | ||
| 55 | - MoneyIncentivesAmount float64 `json:"moneyIncentivesAmount"` | ||
| 56 | - // 金额激励阶段, | ||
| 57 | - MoneyIncentivesStage int64 `json:"moneyIncentivesStage,string,"` | ||
| 58 | - // 金额激励规则时间 | ||
| 59 | - MoneyIncentivesTime time.Time `json:"moneyIncentivesTime"` | ||
| 60 | - // 推荐人抽成比例 | ||
| 61 | - ReferrerPercentage float64 `json:"referrerPercentage"` | ||
| 62 | - // 业务员抽成比例 | ||
| 63 | - SalesmanPercentage float64 `json:"salesmanPercentage"` | ||
| 64 | - } `json:"moneyIncentivesRules"` | ||
| 65 | - | ||
| 66 | - // 关联用户id | ||
| 67 | - RelationUser []int `json:"relationUser"` | ||
| 68 | - //承接人列表 | ||
| 69 | - ContractUndertaker []struct { | ||
| 70 | - HasReferrer bool `json:"hasReferrer"` | ||
| 71 | - HasSalesman bool `json:"hasSalesman"` | ||
| 72 | - UsersId int `json:"usersId,string,"` | ||
| 73 | - ReferrerUser struct { | ||
| 74 | - UserId int `json:"userId,string,"` | ||
| 75 | - } `json:"referrerUser"` | ||
| 76 | - SalesmanUser struct { | ||
| 77 | - UserId int `json:"userId"` | ||
| 78 | - } `json:"salesmanUser"` | ||
| 79 | - Attachment []struct { | ||
| 80 | - Name string `json:"name"` | ||
| 81 | - Type string `json:"type"` | ||
| 82 | - Url string `json:"url"` | ||
| 83 | - FileSize int `json:"fileSize"` | ||
| 84 | - } `json:"attachment"` | ||
| 85 | - } `json:"contractUndertaker"` | 12 | + //操作人 |
| 13 | + Operator domain.Operator `json:"-"` | ||
| 14 | + allied_creation_cooperation.ReqCooperationContractUpdate | ||
| 86 | } | 15 | } |
| 87 | 16 | ||
| 88 | func (updateCooperationContractCommand *UpdateCooperationContractCommand) Valid(validation *validation.Validation) { | 17 | func (updateCooperationContractCommand *UpdateCooperationContractCommand) Valid(validation *validation.Validation) { |
| 1 | +package dto | ||
| 2 | + | ||
| 3 | +import "time" | ||
| 4 | + | ||
| 5 | +type CooperationContractItem struct { | ||
| 6 | + CooperationContractId int `json:"cooperationContractId,string,"` | ||
| 7 | + CooperationContractNumber string `json:"cooperationContractNumber"` //合约编号 | ||
| 8 | + CooperationProjectNumber string `json:"cooperationProjectNumber"` | ||
| 9 | + CooperationContractName string `json:"CooperationContractName"` //合约名称 | ||
| 10 | + Department string `json:"department"` | ||
| 11 | + IncentivesType string `json:"incentivesType"` //Incentives激励方式 | ||
| 12 | + CooperationContractSponsor struct { | ||
| 13 | + UserId int `json:"userId,string,"` | ||
| 14 | + UserName string `json:"userName"` | ||
| 15 | + } `json:"cooperationContractSponsor"` //共创发起人 | ||
| 16 | + CooperationMode struct { | ||
| 17 | + CooperationModeId int `json:"cooperationModeId,string,"` // 共创模式ID | ||
| 18 | + CooperationModeNumber string `json:"cooperationModeNumber"` // 共创模式编码, | ||
| 19 | + CooperationModeName string `json:"cooperationModeName"` // 模式名称, | ||
| 20 | + } `json:"cooperationMode"` //共创模式 | ||
| 21 | + Status int `json:"status"` //合约状态 | ||
| 22 | + CreateTtime time.Time `json:"createTtime"` | ||
| 23 | + Org struct { | ||
| 24 | + OrgId int `json:"orgId"` //发部门, id | ||
| 25 | + OrgName string `json:"orgName"` //发起企业 | ||
| 26 | + } `json:"org"` //组织结构 | ||
| 27 | +} | ||
| 28 | + | ||
| 29 | +type CooperationContractInfo struct { | ||
| 30 | +} |
| @@ -4,11 +4,14 @@ import ( | @@ -4,11 +4,14 @@ import ( | ||
| 4 | "fmt" | 4 | "fmt" |
| 5 | 5 | ||
| 6 | "github.com/beego/beego/v2/core/validation" | 6 | "github.com/beego/beego/v2/core/validation" |
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 7 | ) | 8 | ) |
| 8 | 9 | ||
| 9 | type GetCooperationContractQuery struct { | 10 | type GetCooperationContractQuery struct { |
| 11 | + //操作人 | ||
| 12 | + Operator domain.Operator `json:"-"` | ||
| 10 | // 共创合约ID | 13 | // 共创合约ID |
| 11 | - CooperationContractId int `json:"cooperationContractId" valid:"Required"` | 14 | + CooperationContractId int `json:"cooperationContractId,string" valid:"Required"` |
| 12 | } | 15 | } |
| 13 | 16 | ||
| 14 | func (getCooperationContractQuery *GetCooperationContractQuery) Valid(validation *validation.Validation) { | 17 | func (getCooperationContractQuery *GetCooperationContractQuery) Valid(validation *validation.Validation) { |
| @@ -4,9 +4,12 @@ import ( | @@ -4,9 +4,12 @@ import ( | ||
| 4 | "fmt" | 4 | "fmt" |
| 5 | 5 | ||
| 6 | "github.com/beego/beego/v2/core/validation" | 6 | "github.com/beego/beego/v2/core/validation" |
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 7 | ) | 8 | ) |
| 8 | 9 | ||
| 9 | type ListCooperationContractQuery struct { | 10 | type ListCooperationContractQuery struct { |
| 11 | + //操作人 | ||
| 12 | + Operator domain.Operator `json:"-"` | ||
| 10 | // 查询偏离量 | 13 | // 查询偏离量 |
| 11 | PageNumber int `json:"pageNumber"` | 14 | PageNumber int `json:"pageNumber"` |
| 12 | // 查询限制 | 15 | // 查询限制 |
| @@ -4,6 +4,7 @@ import ( | @@ -4,6 +4,7 @@ import ( | ||
| 4 | "github.com/linmadan/egglib-go/core/application" | 4 | "github.com/linmadan/egglib-go/core/application" |
| 5 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/cooperationContract/command" | 5 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/cooperationContract/command" |
| 6 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/cooperationContract/query" | 6 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/cooperationContract/query" |
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_cooperation" | ||
| 7 | ) | 8 | ) |
| 8 | 9 | ||
| 9 | // 共创合约管理 | 10 | // 共创合约管理 |
| @@ -15,7 +16,12 @@ func (cooperationContractService *CooperationContractService) CreateCooperationC | @@ -15,7 +16,12 @@ func (cooperationContractService *CooperationContractService) CreateCooperationC | ||
| 15 | if err := createCooperationContractCommand.ValidateCommand(); err != nil { | 16 | if err := createCooperationContractCommand.ValidateCommand(); err != nil { |
| 16 | return nil, application.ThrowError(application.ARG_ERROR, err.Error()) | 17 | return nil, application.ThrowError(application.ARG_ERROR, err.Error()) |
| 17 | } | 18 | } |
| 18 | - return nil, nil | 19 | + creationCooperationGateway := allied_creation_cooperation.NewHttplibAlliedCreationCooperation(createCooperationContractCommand.Operator) |
| 20 | + _, err := creationCooperationGateway.CooperationContractAdd(createCooperationContractCommand.ReqCooperationContractAdd) | ||
| 21 | + if err != nil { | ||
| 22 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 23 | + } | ||
| 24 | + return createCooperationContractCommand, err | ||
| 19 | } | 25 | } |
| 20 | 26 | ||
| 21 | // 暂停恢复共创合约 | 27 | // 暂停恢复共创合约 |
| @@ -32,7 +38,14 @@ func (cooperationContractService *CooperationContractService) GetCooperationCont | @@ -32,7 +38,14 @@ func (cooperationContractService *CooperationContractService) GetCooperationCont | ||
| 32 | if err := getCooperationContractQuery.ValidateQuery(); err != nil { | 38 | if err := getCooperationContractQuery.ValidateQuery(); err != nil { |
| 33 | return nil, application.ThrowError(application.ARG_ERROR, err.Error()) | 39 | return nil, application.ThrowError(application.ARG_ERROR, err.Error()) |
| 34 | } | 40 | } |
| 35 | - return nil, nil | 41 | + creationCooperationGateway := allied_creation_cooperation.NewHttplibAlliedCreationCooperation(getCooperationContractQuery.Operator) |
| 42 | + result, err := creationCooperationGateway.CooperationContractGet(allied_creation_cooperation.ReqCooperationContractGet{ | ||
| 43 | + CooperationContractId: getCooperationContractQuery.CooperationContractId, | ||
| 44 | + }) | ||
| 45 | + if err != nil { | ||
| 46 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 47 | + } | ||
| 48 | + return result, nil | ||
| 36 | } | 49 | } |
| 37 | 50 | ||
| 38 | // 返回共创合约管理列表 | 51 | // 返回共创合约管理列表 |
| @@ -40,6 +53,12 @@ func (cooperationContractService *CooperationContractService) ListCooperationCon | @@ -40,6 +53,12 @@ func (cooperationContractService *CooperationContractService) ListCooperationCon | ||
| 40 | if err := listCooperationContractQuery.ValidateQuery(); err != nil { | 53 | if err := listCooperationContractQuery.ValidateQuery(); err != nil { |
| 41 | return nil, application.ThrowError(application.ARG_ERROR, err.Error()) | 54 | return nil, application.ThrowError(application.ARG_ERROR, err.Error()) |
| 42 | } | 55 | } |
| 56 | + creationCooperationGateway := allied_creation_cooperation.NewHttplibAlliedCreationCooperation(listCooperationContractQuery.Operator) | ||
| 57 | + result, err := creationCooperationGateway.CooperationContractSearch(allied_creation_cooperation.ReqCooperationContractSearch{}) | ||
| 58 | + if err != nil { | ||
| 59 | + return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | ||
| 60 | + } | ||
| 61 | + _ = result | ||
| 43 | return nil, nil | 62 | return nil, nil |
| 44 | } | 63 | } |
| 45 | 64 |
| @@ -2,11 +2,10 @@ package command | @@ -2,11 +2,10 @@ package command | ||
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | 4 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" |
| 5 | - "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_cooperation" | ||
| 6 | ) | 5 | ) |
| 7 | 6 | ||
| 8 | type RemoveDividendsReturnedOrderCommand struct { | 7 | type RemoveDividendsReturnedOrderCommand struct { |
| 9 | //操作人 | 8 | //操作人 |
| 10 | - Operator domain.Operator `json:"-"` | ||
| 11 | - allied_creation_cooperation.ReqDividendsReturnedOrderRemove | 9 | + Operator domain.Operator `json:"-"` |
| 10 | + DividendsReturnedOrderID []string `json:"dividendsReturnedOrderId"` //分红退货单记录id | ||
| 12 | } | 11 | } |
| 1 | package service | 1 | package service |
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | + "strconv" | ||
| 5 | + | ||
| 4 | "github.com/linmadan/egglib-go/core/application" | 6 | "github.com/linmadan/egglib-go/core/application" |
| 5 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/dividendsReturnedOrder/command" | 7 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/dividendsReturnedOrder/command" |
| 6 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/dividendsReturnedOrder/query" | 8 | "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/web/dividendsReturnedOrder/query" |
| @@ -37,7 +39,14 @@ func (dividendsReturnedOrderService *DividendsReturnedOrderService) GetDividends | @@ -37,7 +39,14 @@ func (dividendsReturnedOrderService *DividendsReturnedOrderService) GetDividends | ||
| 37 | // 移除分红退货单服务 | 39 | // 移除分红退货单服务 |
| 38 | func (dividendsReturnedOrderService *DividendsReturnedOrderService) RemoveDividendsReturnedOrder(removeDividendsReturnedOrderCommand *command.RemoveDividendsReturnedOrderCommand) (interface{}, error) { | 40 | func (dividendsReturnedOrderService *DividendsReturnedOrderService) RemoveDividendsReturnedOrder(removeDividendsReturnedOrderCommand *command.RemoveDividendsReturnedOrderCommand) (interface{}, error) { |
| 39 | creationCooperationGateway := allied_creation_cooperation.NewHttplibAlliedCreationCooperation(removeDividendsReturnedOrderCommand.Operator) | 41 | creationCooperationGateway := allied_creation_cooperation.NewHttplibAlliedCreationCooperation(removeDividendsReturnedOrderCommand.Operator) |
| 40 | - _, err := creationCooperationGateway.DividendsReturnedOrderRemove(removeDividendsReturnedOrderCommand.ReqDividendsReturnedOrderRemove) | 42 | + ids := []int{} |
| 43 | + for _, v := range removeDividendsReturnedOrderCommand.DividendsReturnedOrderID { | ||
| 44 | + id, _ := strconv.Atoi(v) | ||
| 45 | + ids = append(ids, id) | ||
| 46 | + } | ||
| 47 | + _, err := creationCooperationGateway.DividendsReturnedOrderBatchRemove(allied_creation_cooperation.ReqDividendsReturnedOrderBatchRemove{ | ||
| 48 | + DividendsReturnedOrderIDs: ids, | ||
| 49 | + }) | ||
| 41 | if err != nil { | 50 | if err != nil { |
| 42 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | 51 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) |
| 43 | } | 52 | } |
pkg/domain/qrcode.go
0 → 100644
| 1 | +package domain | ||
| 2 | + | ||
| 3 | +import ( | ||
| 4 | + "bytes" | ||
| 5 | + "encoding/base64" | ||
| 6 | + "fmt" | ||
| 7 | + "image/png" | ||
| 8 | + "time" | ||
| 9 | + | ||
| 10 | + "github.com/boombuler/barcode" | ||
| 11 | + "github.com/boombuler/barcode/qr" | ||
| 12 | + jwt "github.com/dgrijalva/jwt-go" | ||
| 13 | +) | ||
| 14 | + | ||
| 15 | +const ( | ||
| 16 | + qrcodeTokenSecret string = "bbe35ad433dd8e67" | ||
| 17 | + qrcodeCodeExpire int64 = 60 * 30 //15分钟过期 | ||
| 18 | +) | ||
| 19 | + | ||
| 20 | +type QrcodeMessage struct { | ||
| 21 | + jwt.StandardClaims | ||
| 22 | + Id string `json:"id"` | ||
| 23 | + Token string `json:"token"` | ||
| 24 | + IsLogin bool `json:"isLogin"` | ||
| 25 | + //用户id | ||
| 26 | + UserId int64 `json:"userId"` | ||
| 27 | + UserBaseId int64 `json:"userBaseId"` | ||
| 28 | + // 账号 | ||
| 29 | + Account string `json:"account"` | ||
| 30 | + // 公司id | ||
| 31 | + CompanyId int64 `json:"companyId"` | ||
| 32 | + // 组织id | ||
| 33 | + OrgId int64 `json:"orgId"` | ||
| 34 | +} | ||
| 35 | + | ||
| 36 | +func (qrmsg *QrcodeMessage) GenerateImageBase64() ([]byte, error) { | ||
| 37 | + nowTime := time.Now().Unix() | ||
| 38 | + qrmsg.StandardClaims = jwt.StandardClaims{ | ||
| 39 | + NotBefore: nowTime, | ||
| 40 | + IssuedAt: nowTime, | ||
| 41 | + ExpiresAt: nowTime + qrcodeCodeExpire, | ||
| 42 | + Issuer: "allied_creation_gateway", | ||
| 43 | + } | ||
| 44 | + qrmsg.Id = fmt.Sprintf("%d", time.Now().UnixNano()) | ||
| 45 | + token := jwt.NewWithClaims(jwt.SigningMethodHS256, *qrmsg) | ||
| 46 | + str, err := token.SignedString([]byte(qrcodeTokenSecret)) | ||
| 47 | + if err != nil { | ||
| 48 | + return nil, err | ||
| 49 | + } | ||
| 50 | + //初始化数据 | ||
| 51 | + qrmsg.Token = str | ||
| 52 | + qrmsg.IsLogin = false | ||
| 53 | + | ||
| 54 | + qrCode, err := qr.Encode(str, qr.M, qr.Auto) | ||
| 55 | + if err != nil { | ||
| 56 | + return nil, err | ||
| 57 | + } | ||
| 58 | + qrCode, err = barcode.Scale(qrCode, 200, 200) | ||
| 59 | + if err != nil { | ||
| 60 | + return nil, err | ||
| 61 | + } | ||
| 62 | + var buf bytes.Buffer | ||
| 63 | + err = png.Encode(&buf, qrCode) | ||
| 64 | + if err != nil { | ||
| 65 | + return nil, err | ||
| 66 | + } | ||
| 67 | + var result []byte | ||
| 68 | + base64.StdEncoding.Encode(result, buf.Bytes()) | ||
| 69 | + return result, err | ||
| 70 | +} | ||
| 71 | + | ||
| 72 | +func (qrmsg *QrcodeMessage) ParseToken(str string) error { | ||
| 73 | + tokenClaims, err := jwt.ParseWithClaims( | ||
| 74 | + str, | ||
| 75 | + qrmsg, | ||
| 76 | + func(token *jwt.Token) (interface{}, error) { | ||
| 77 | + return []byte(loginTokenSecret), nil | ||
| 78 | + }) | ||
| 79 | + if err != nil { | ||
| 80 | + return err | ||
| 81 | + } | ||
| 82 | + if claim, ok := tokenClaims.Claims.(*QrcodeMessage); ok && tokenClaims.Valid { | ||
| 83 | + *qrmsg = *claim | ||
| 84 | + } | ||
| 85 | + return nil | ||
| 86 | +} |
| 1 | package cache | 1 | package cache |
| 2 | 2 | ||
| 3 | +import ( | ||
| 4 | + "encoding/json" | ||
| 5 | + "time" | ||
| 6 | + | ||
| 7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 8 | +) | ||
| 9 | + | ||
| 3 | //二维码信息缓存 | 10 | //二维码信息缓存 |
| 4 | type LoginQrcodeCache struct { | 11 | type LoginQrcodeCache struct { |
| 5 | } | 12 | } |
| 13 | + | ||
| 14 | +func (lq LoginQrcodeCache) keyString(str string) string { | ||
| 15 | + str1 := KEY_PREFIX + "login:qrcode:" + str | ||
| 16 | + return str1 | ||
| 17 | +} | ||
| 18 | + | ||
| 19 | +func (lq LoginQrcodeCache) Save(qrcode domain.QrcodeMessage) error { | ||
| 20 | + nowTime := time.Now().Unix() | ||
| 21 | + exp := qrcode.ExpiresAt - nowTime | ||
| 22 | + if exp <= 0 { | ||
| 23 | + exp = 60 * 60 * 2 | ||
| 24 | + } | ||
| 25 | + key := lq.keyString(qrcode.Id) | ||
| 26 | + bt, _ := json.Marshal(qrcode) | ||
| 27 | + result := clientRedis.Set(key, string(bt), time.Duration(exp)) | ||
| 28 | + return result.Err() | ||
| 29 | +} | ||
| 30 | + | ||
| 31 | +func (lq LoginQrcodeCache) Remove(id string) error { | ||
| 32 | + keyStr := lq.keyString(id) | ||
| 33 | + result := clientRedis.Del(keyStr) | ||
| 34 | + return result.Err() | ||
| 35 | +} | ||
| 36 | + | ||
| 37 | +func (lq LoginQrcodeCache) Get(id string) (*domain.QrcodeMessage, error) { | ||
| 38 | + keyStr := lq.keyString(id) | ||
| 39 | + result := clientRedis.Get(keyStr) | ||
| 40 | + re, _ := result.Result() | ||
| 41 | + var data domain.QrcodeMessage | ||
| 42 | + err := json.Unmarshal([]byte(re), &data) | ||
| 43 | + if err != nil { | ||
| 44 | + return nil, err | ||
| 45 | + } | ||
| 46 | + return &data, err | ||
| 47 | +} |
| @@ -40,37 +40,6 @@ func (gateway HttplibAlliedCreationCooperation) DividendsEstimateIncentive(param | @@ -40,37 +40,6 @@ func (gateway HttplibAlliedCreationCooperation) DividendsEstimateIncentive(param | ||
| 40 | return &data, err | 40 | return &data, err |
| 41 | } | 41 | } |
| 42 | 42 | ||
| 43 | -// DividendsEstimateAdd 创建分红预算 | ||
| 44 | -func (gateway HttplibAlliedCreationCooperation) DividendsEstimateAdd(param ReqDividendsEstimateAdd) (*DataDividendsEstimateAdd, error) { | ||
| 45 | - url := gateway.baseUrL + "/dividends-estimates" | ||
| 46 | - method := "POST" | ||
| 47 | - req := gateway.CreateRequest(url, method) | ||
| 48 | - log.Logger.Debug("向业务模块请求数据:创建分红预算。", map[string]interface{}{ | ||
| 49 | - "api": method + ":" + url, | ||
| 50 | - "param": param, | ||
| 51 | - }) | ||
| 52 | - req, err := req.JSONBody(param) | ||
| 53 | - if err != nil { | ||
| 54 | - return nil, fmt.Errorf("请求创建分红预算失败:%w", err) | ||
| 55 | - } | ||
| 56 | - | ||
| 57 | - byteResult, err := req.Bytes() | ||
| 58 | - if err != nil { | ||
| 59 | - return nil, fmt.Errorf("获取创建分红预算失败:%w", err) | ||
| 60 | - } | ||
| 61 | - log.Logger.Debug("获取业务模块请求数据:创建分红预算。", map[string]interface{}{ | ||
| 62 | - "result": string(byteResult), | ||
| 63 | - }) | ||
| 64 | - var result service_gateway.GatewayResponse | ||
| 65 | - err = json.Unmarshal(byteResult, &result) | ||
| 66 | - if err != nil { | ||
| 67 | - return nil, fmt.Errorf("解析创建分红预算:%w", err) | ||
| 68 | - } | ||
| 69 | - var data DataDividendsEstimateAdd | ||
| 70 | - err = gateway.GetResponseData(result, &data) | ||
| 71 | - return &data, err | ||
| 72 | -} | ||
| 73 | - | ||
| 74 | // DividendsEstimateUpdate 更新分红预算 | 43 | // DividendsEstimateUpdate 更新分红预算 |
| 75 | func (gateway HttplibAlliedCreationCooperation) DividendsEstimateUpdate(param ReqDividendsEstimateUpdate) (*DataDividendsEstimateUpdate, error) { | 44 | func (gateway HttplibAlliedCreationCooperation) DividendsEstimateUpdate(param ReqDividendsEstimateUpdate) (*DataDividendsEstimateUpdate, error) { |
| 76 | url := gateway.baseUrL + "/dividends-estimates/{dividendsEstimateId}" | 45 | url := gateway.baseUrL + "/dividends-estimates/{dividendsEstimateId}" |
| @@ -198,8 +198,8 @@ func (gateway HttplibAlliedCreationCooperation) DividendsReturnedOrderGet(param | @@ -198,8 +198,8 @@ func (gateway HttplibAlliedCreationCooperation) DividendsReturnedOrderGet(param | ||
| 198 | } | 198 | } |
| 199 | 199 | ||
| 200 | // DividendsReturnedOrderBatchRemove 批量移除分红退货单 | 200 | // DividendsReturnedOrderBatchRemove 批量移除分红退货单 |
| 201 | -func (gateway HttplibAlliedCreationCooperation) DividendsReturnedOrderBatchRemove(param ReqDividendsReturnedOrderRemove) ( | ||
| 202 | - *DataDividendsReturnedOrderRemove, error) { | 201 | +func (gateway HttplibAlliedCreationCooperation) DividendsReturnedOrderBatchRemove(param ReqDividendsReturnedOrderBatchRemove) ( |
| 202 | + *DataDividendsReturnedOrderBatchRemove, error) { | ||
| 203 | url := gateway.baseUrL + "/dividends-returned-orders/batch-remove" | 203 | url := gateway.baseUrL + "/dividends-returned-orders/batch-remove" |
| 204 | method := "POST" | 204 | method := "POST" |
| 205 | req := gateway.CreateRequest(url, method) | 205 | req := gateway.CreateRequest(url, method) |
| @@ -224,7 +224,7 @@ func (gateway HttplibAlliedCreationCooperation) DividendsReturnedOrderBatchRemov | @@ -224,7 +224,7 @@ func (gateway HttplibAlliedCreationCooperation) DividendsReturnedOrderBatchRemov | ||
| 224 | if err != nil { | 224 | if err != nil { |
| 225 | return nil, fmt.Errorf("解析移除分红退货单:%w", err) | 225 | return nil, fmt.Errorf("解析移除分红退货单:%w", err) |
| 226 | } | 226 | } |
| 227 | - var data DataDividendsReturnedOrderRemove | 227 | + var data DataDividendsReturnedOrderBatchRemove |
| 228 | err = gateway.GetResponseData(result, &data) | 228 | err = gateway.GetResponseData(result, &data) |
| 229 | return &data, err | 229 | return &data, err |
| 230 | } | 230 | } |
| 1 | package allied_creation_cooperation | 1 | package allied_creation_cooperation |
| 2 | 2 | ||
| 3 | -import "time" | 3 | +import ( |
| 4 | + "time" | ||
| 5 | + | ||
| 6 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 7 | +) | ||
| 4 | 8 | ||
| 5 | //创建共创合约 | 9 | //创建共创合约 |
| 6 | type ( | 10 | type ( |
| 11 | + //分红激励规则 | ||
| 12 | + DividendsIncentivesRule struct { | ||
| 13 | + // 关联的项目合约编号 | ||
| 14 | + CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 15 | + // 推荐人抽成比例 | ||
| 16 | + ReferrerPercentage float64 `json:"referrerPercentage"` | ||
| 17 | + // 业务员抽成比例 | ||
| 18 | + SalesmanPercentage float64 `json:"salesmanPercentage"` | ||
| 19 | + // 分红规则激励百分点 | ||
| 20 | + DividendsIncentivesPercentage float64 `json:"dividendsIncentivesPercentage"` | ||
| 21 | + // 分红规则激励阶段, | ||
| 22 | + DividendsIncentivesStage int64 `json:"dividendsIncentivesStage,string"` | ||
| 23 | + // 分红规则激励阶段结束 | ||
| 24 | + DividendsIncentivesStageEnd time.Time `json:"dividendsIncentivesStageEnd"` | ||
| 25 | + // 分红规则激励阶段开始 | ||
| 26 | + DividendsIncentivesStageStart time.Time `json:"dividendsIncentivesStageStart"` | ||
| 27 | + } | ||
| 28 | + //金额激励规则 | ||
| 29 | + MoneyIncentivesRule struct { | ||
| 30 | + // 金额激励规则ID | ||
| 31 | + MoneyIncentivesRuleId int64 `json:"moneyIncentivesRuleId,string"` | ||
| 32 | + // 关联的共创合约编号 | ||
| 33 | + CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 34 | + // 激励金额 | ||
| 35 | + MoneyIncentivesAmount float64 `json:"moneyIncentivesAmount"` | ||
| 36 | + // 金额激励阶段 | ||
| 37 | + MoneyIncentivesStage int `json:"moneyIncentivesStage"` | ||
| 38 | + // 金额激励规则时间 | ||
| 39 | + MoneyIncentivesTime time.Time `json:"moneyIncentivesTime"` | ||
| 40 | + // 推荐人抽成比例 | ||
| 41 | + ReferrerPercentage float64 `json:"referrerPercentage"` | ||
| 42 | + // 业务员抽成比例 | ||
| 43 | + SalesmanPercentage float64 `json:"salesmanPercentage"` | ||
| 44 | + } | ||
| 45 | + | ||
| 46 | + //合约承接方 | ||
| 47 | + Undertaker struct { | ||
| 48 | + UndertakerId string `json:"undertakerId"` //承接人用户id | ||
| 49 | + RerferrerId string `json:"rerferrerId"` //推荐人用户id | ||
| 50 | + SalesmanId string `json:"salesmanId"` //关联业务员id | ||
| 51 | + Attachment domain.Attachment `json:"attachment"` | ||
| 52 | + } | ||
| 53 | + | ||
| 7 | ReqCooperationContractAdd struct { | 54 | ReqCooperationContractAdd struct { |
| 8 | // 共创合约描述 | 55 | // 共创合约描述 |
| 9 | - CooperationContractDescription string ` json:"cooperationContractDescription"` | 56 | + CooperationContractDescription string `json:"cooperationContractDescription"` |
| 10 | // 共创合约编号 | 57 | // 共创合约编号 |
| 11 | - CooperationContractNumber string ` json:"cooperationContractNumber"` | 58 | + CooperationContractNumber string `json:"cooperationContractNumber"` |
| 12 | // 共创项目编号, | 59 | // 共创项目编号, |
| 13 | - CooperationProjectNumber string `json:"cooperationProjectNumber" ` | ||
| 14 | - // 共创合约发起部门编码 | ||
| 15 | - DepartmentNumber string `json:"departmentNumber"` | 60 | + CooperationProjectNumber string `json:"cooperationProjectNumber"` |
| 61 | + // 共创合约发起部门id | ||
| 62 | + DepartmentId string `json:"departmentId"` | ||
| 16 | // 共创合约承接对象,1员工,2共创用户,3公开 | 63 | // 共创合约承接对象,1员工,2共创用户,3公开 |
| 17 | - CooperationContractUndertakerType []int ` json:"cooperationContractUndertakerType"` | 64 | + CooperationContractUndertakerType []int `json:"cooperationContractUndertakerType"` |
| 18 | // 共创合约名称 | 65 | // 共创合约名称 |
| 19 | CooperationContractName string `json:"cooperationContractName"` | 66 | CooperationContractName string `json:"cooperationContractName"` |
| 20 | - // 共创模式编码,手动输入,唯一确定 | ||
| 21 | - CooperationModeNumber string ` json:"cooperationModeNumber"` | 67 | + // 共创模式编码, |
| 68 | + CooperationModeNumber string `json:"cooperationModeNumber"` | ||
| 22 | // 共创合约发起人uid | 69 | // 共创合约发起人uid |
| 23 | - SponsorUid string `json:"sponsorUid,omitempty"` | 70 | + SponsorUid string `json:"sponsorUid"` |
| 24 | // 业绩分红激励规则列表 | 71 | // 业绩分红激励规则列表 |
| 25 | - DividendsIncentivesRules []struct { | ||
| 26 | - // 关联的项目合约编号 | ||
| 27 | - CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 28 | - // 推荐人抽成比例 | ||
| 29 | - ReferrerPercentage float64 `json:"referrerPercentage"` | ||
| 30 | - // 业务员抽成比例 | ||
| 31 | - SalesmanPercentage float64 `json:"salesmanPercentage"` | ||
| 32 | - // 分红规则激励百分点 | ||
| 33 | - DividendsIncentivesPercentage float64 `json:"dividendsIncentivesPercentage"` | ||
| 34 | - // 分红规则激励阶段,阶段返回时需要转换为中文数字 | ||
| 35 | - DividendsIncentivesStage int64 `json:"dividendsIncentivesStage,string"` | ||
| 36 | - // 分红规则激励阶段结束 | ||
| 37 | - DividendsIncentivesStageEnd time.Time `json:"dividendsIncentivesStageEnd"` | ||
| 38 | - // 分红规则激励阶段开始 | ||
| 39 | - DividendsIncentivesStageStart time.Time `json:"dividendsIncentivesStageStart"` | ||
| 40 | - } `json:"dividendsIncentivesRules"` | 72 | + DividendsIncentivesRules []DividendsIncentivesRule `json:"dividendsIncentivesRules"` |
| 41 | // 金额激励规则列表 | 73 | // 金额激励规则列表 |
| 42 | - MoneyIncentivesRules []struct { | ||
| 43 | - // 金额激励规则ID | ||
| 44 | - MoneyIncentivesRuleId int64 `json:"moneyIncentivesRuleId,string"` | ||
| 45 | - // 关联的共创合约编号 | ||
| 46 | - CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 47 | - // 激励金额 | ||
| 48 | - MoneyIncentivesAmount float64 `json:"moneyIncentivesAmount"` | ||
| 49 | - // 金额激励阶段,阶段返回时需要转换为中文数字 | ||
| 50 | - MoneyIncentivesStage int64 `json:"moneyIncentivesStage,string"` | ||
| 51 | - // 金额激励阶段有效期结束 | ||
| 52 | - MoneyIncentivesStageEnd time.Time `json:"moneyIncentivesStageEnd"` | ||
| 53 | - // 金额激励阶段有效期开始 | ||
| 54 | - MoneyIncentivesStageStart time.Time `json:"moneyIncentivesStageStart"` | ||
| 55 | - // 金额激励规则时间 | ||
| 56 | - MoneyIncentivesTime time.Time `json:"moneyIncentivesTime"` | ||
| 57 | - // 推荐人抽成比例 | ||
| 58 | - ReferrerPercentage float64 `json:"referrerPercentage"` | ||
| 59 | - // 业务员抽成比例 | ||
| 60 | - SalesmanPercentage float64 `json:"salesmanPercentage"` | ||
| 61 | - } `json:"moneyIncentivesRules"` | 74 | + MoneyIncentivesRules []MoneyIncentivesRule `json:"moneyIncentivesRules"` |
| 62 | // 承接方列表 | 75 | // 承接方列表 |
| 63 | - Undertakers []struct { | ||
| 64 | - UserId int64 `json:"userId,string"` | ||
| 65 | - // 用户基本id | ||
| 66 | - UserBaseId int64 `json:"userBaseId,string"` | ||
| 67 | - // 用户所属组织机构 | ||
| 68 | - Org struct { | ||
| 69 | - // 组织机构ID | ||
| 70 | - OrgId int64 `json:"orgId,string"` | ||
| 71 | - // 组织名称 | ||
| 72 | - OrgName string `json:"orgName"` | ||
| 73 | - } | ||
| 74 | - } `json:"undertakers"` | 76 | + Undertakers []Undertaker `json:"undertakers"` |
| 77 | + //关联业务员 | ||
| 78 | + RelevantIds []string `json:"relevantIds"` | ||
| 75 | } | 79 | } |
| 76 | 80 | ||
| 77 | DataCooperationContractAdd struct { | 81 | DataCooperationContractAdd struct { |
| @@ -81,7 +85,31 @@ type ( | @@ -81,7 +85,31 @@ type ( | ||
| 81 | //更新共创合约 | 85 | //更新共创合约 |
| 82 | type ( | 86 | type ( |
| 83 | ReqCooperationContractUpdate struct { | 87 | ReqCooperationContractUpdate struct { |
| 84 | - CooperationContractId int | 88 | + CooperationContractId int `json:"cooperationContractId"` |
| 89 | + // 共创合约描述 | ||
| 90 | + CooperationContractDescription string `json:"cooperationContractDescription"` | ||
| 91 | + // 共创合约编号 | ||
| 92 | + CooperationContractNumber string `json:"cooperationContractNumber"` | ||
| 93 | + // 共创项目编号, | ||
| 94 | + CooperationProjectNumber string `json:"cooperationProjectNumber"` | ||
| 95 | + // 共创合约发起部门id | ||
| 96 | + DepartmentId string `json:"departmentId"` | ||
| 97 | + // 共创合约承接对象,1员工,2共创用户,3公开 | ||
| 98 | + CooperationContractUndertakerType []int `json:"cooperationContractUndertakerType"` | ||
| 99 | + // 共创合约名称 | ||
| 100 | + CooperationContractName string `json:"cooperationContractName"` | ||
| 101 | + // 共创模式编码, | ||
| 102 | + CooperationModeNumber string `json:"cooperationModeNumber"` | ||
| 103 | + // 共创合约发起人uid | ||
| 104 | + SponsorUid string `json:"sponsorUid,omitempty,"` | ||
| 105 | + // 业绩分红激励规则列表 | ||
| 106 | + DividendsIncentivesRules []DividendsIncentivesRule `json:"dividendsIncentivesRules"` | ||
| 107 | + // 金额激励规则列表 | ||
| 108 | + MoneyIncentivesRules []MoneyIncentivesRule `json:"moneyIncentivesRules"` | ||
| 109 | + // 承接方列表 | ||
| 110 | + Undertakers []Undertaker `json:"undertakers"` | ||
| 111 | + //关联业务员 | ||
| 112 | + RelevantIds []string `json:"relevantIds"` | ||
| 85 | } | 113 | } |
| 86 | 114 | ||
| 87 | DataCooperationContractUpdate struct { | 115 | DataCooperationContractUpdate struct { |
| @@ -91,6 +119,10 @@ type ( | @@ -91,6 +119,10 @@ type ( | ||
| 91 | //查询共创合约 | 119 | //查询共创合约 |
| 92 | type ( | 120 | type ( |
| 93 | ReqCooperationContractSearch struct { | 121 | ReqCooperationContractSearch struct { |
| 122 | + // 查询偏离量 | ||
| 123 | + PageNumber int `json:"pageNumber"` | ||
| 124 | + // 查询限制 | ||
| 125 | + PageSize int `json:"pageSize" valid:"Required"` | ||
| 94 | } | 126 | } |
| 95 | 127 | ||
| 96 | DataCooperationContractSearch struct { | 128 | DataCooperationContractSearch struct { |
| @@ -100,6 +132,11 @@ type ( | @@ -100,6 +132,11 @@ type ( | ||
| 100 | //根据承接人查询并返回共创项目合约 | 132 | //根据承接人查询并返回共创项目合约 |
| 101 | type ( | 133 | type ( |
| 102 | ReqCooperationContractSearchByUndertaker struct { | 134 | ReqCooperationContractSearchByUndertaker struct { |
| 135 | + CooperationContractName string //合约名称 | ||
| 136 | + SponsorName string //项目发起人姓名 | ||
| 137 | + UserId int //合约发起人 | ||
| 138 | + PageNumber int | ||
| 139 | + PageIndex int | ||
| 103 | } | 140 | } |
| 104 | 141 | ||
| 105 | DataCooperationContractSearchByUndertaker struct { | 142 | DataCooperationContractSearchByUndertaker struct { |
| @@ -128,7 +165,7 @@ type ( | @@ -128,7 +165,7 @@ type ( | ||
| 128 | //返回共创合约详情 | 165 | //返回共创合约详情 |
| 129 | type ( | 166 | type ( |
| 130 | ReqCooperationContractGet struct { | 167 | ReqCooperationContractGet struct { |
| 131 | - CooperationContractId int | 168 | + CooperationContractId int `json:"cooperationContractId"` |
| 132 | } | 169 | } |
| 133 | 170 | ||
| 134 | DataCooperationContractGet struct { | 171 | DataCooperationContractGet struct { |
| 1 | package allied_creation_cooperation | 1 | package allied_creation_cooperation |
| 2 | 2 | ||
| 3 | +import "time" | ||
| 4 | + | ||
| 3 | //确定预算分红激励 | 5 | //确定预算分红激励 |
| 4 | type ( | 6 | type ( |
| 5 | ReqDividendsEstimateIncentive struct { | 7 | ReqDividendsEstimateIncentive struct { |
| 8 | + // companyId | ||
| 9 | + // orgId | ||
| 10 | + // userId | ||
| 11 | + CooperationContractNumber string //合约编号 | ||
| 12 | + OrderOrReturnedOrderNum string //分红订单号/退货单号 | ||
| 6 | } | 13 | } |
| 7 | 14 | ||
| 8 | DataDividendsEstimateIncentive struct { | 15 | DataDividendsEstimateIncentive struct { |
| 9 | } | 16 | } |
| 10 | ) | 17 | ) |
| 11 | 18 | ||
| 12 | -//创建分红预算 | ||
| 13 | -type ( | ||
| 14 | - ReqDividendsEstimateAdd struct { | ||
| 15 | - } | ||
| 16 | - | ||
| 17 | - DataDividendsEstimateAdd struct { | ||
| 18 | - } | ||
| 19 | -) | ||
| 20 | - | ||
| 21 | //更新分红预算 | 19 | //更新分红预算 |
| 22 | type ( | 20 | type ( |
| 23 | ReqDividendsEstimateUpdate struct { | 21 | ReqDividendsEstimateUpdate struct { |
| @@ -39,9 +37,41 @@ type ( | @@ -39,9 +37,41 @@ type ( | ||
| 39 | //查询分红预算单 | 37 | //查询分红预算单 |
| 40 | type ( | 38 | type ( |
| 41 | ReqDividendsEstimateSearch struct { | 39 | ReqDividendsEstimateSearch struct { |
| 40 | + PageNumber int `json:"pageNumber"` | ||
| 41 | + PageSize int `json:"pageSize"` | ||
| 42 | } | 42 | } |
| 43 | 43 | ||
| 44 | DataDividendsEstimateSearch struct { | 44 | DataDividendsEstimateSearch struct { |
| 45 | + Grid struct { | ||
| 46 | + Total int | ||
| 47 | + List []struct { | ||
| 48 | + DividendsEstimateId int64 `json:"dividendsEstimateId,string"` // 承接人分红预算记录ID | ||
| 49 | + DividendsAccountStatus int32 `json:"dividendsAccountStatus"` // 分红结算状态 | ||
| 50 | + DividendsAmount float64 `json:"dividendsAmount"` // 分红金额 | ||
| 51 | + DividendsEstimateOrderNumber string `json:"dividendsEstimateOrderNumber"` // 承接人分红预算单号 | ||
| 52 | + DividendsEstimateTime time.Time `json:"dividendsEstimateTime"` // 分红预算时间 | ||
| 53 | + DividendsParticipateType int32 `json:"dividendsParticipateType"` // 参与分红类型,1承接人,2推荐人,3关联业务员 | ||
| 54 | + DividendsType int32 `json:"dividendsType"` // 分红类型,1订单分红,2退货冲销,3金额激励 | ||
| 55 | + OrderOrReturnedOrderNum string `json:"orderOrReturnedOrderNum"` // 分红订单号或退货单号 | ||
| 56 | + CooperationProjectNumber string `json:"cooperationProjectNumber"` // 共创项目编号, | ||
| 57 | + DividendsUser struct { | ||
| 58 | + UserId int64 `json:"userId,string"` // 用户ID, | ||
| 59 | + UserBaseId int64 `json:"userBaseId,string"` // 用户基本id | ||
| 60 | + UserType int32 `json:"userType"` // 用户类型 | ||
| 61 | + } `json:"dividendsUser"` // 分红用户 | ||
| 62 | + Org struct { | ||
| 63 | + OrgId int64 `json:"orgId,string"` // 组织机构ID | ||
| 64 | + OrgName string `json:"orgName"` // 组织名称 | ||
| 65 | + } `json:"org"` // 数据所属组织机构 | ||
| 66 | + Company struct { | ||
| 67 | + CompanyId int64 `json:"companyId,string"` // 公司ID, | ||
| 68 | + CompanyLogo string `json:"companyLogo"` // 公司logo | ||
| 69 | + CompanyName string `json:"companyName"` // 公司名称 | ||
| 70 | + } `json:"company"` // 公司 | ||
| 71 | + CreatedAt time.Time `json:"createdAt"` // 创建时间 | ||
| 72 | + UpdatedAt time.Time `json:"updatedAt"` // 更新时间 | ||
| 73 | + } | ||
| 74 | + } | ||
| 45 | } | 75 | } |
| 46 | ) | 76 | ) |
| 47 | 77 | ||
| @@ -108,6 +138,31 @@ type ( | @@ -108,6 +138,31 @@ type ( | ||
| 108 | } | 138 | } |
| 109 | 139 | ||
| 110 | DataDividendsEstimateGet struct { | 140 | DataDividendsEstimateGet struct { |
| 141 | + DividendsEstimateId int64 `json:"dividendsEstimateId,string"` // 承接人分红预算记录ID | ||
| 142 | + DividendsAccountStatus int32 `json:"dividendsAccountStatus"` // 分红结算状态 | ||
| 143 | + DividendsAmount float64 `json:"dividendsAmount"` // 分红金额 | ||
| 144 | + DividendsEstimateOrderNumber string `json:"dividendsEstimateOrderNumber"` // 承接人分红预算单号 | ||
| 145 | + DividendsEstimateTime time.Time `json:"dividendsEstimateTime"` // 分红预算时间 | ||
| 146 | + DividendsParticipateType int32 `json:"dividendsParticipateType"` // 参与分红类型,1承接人,2推荐人,3关联业务员 | ||
| 147 | + DividendsType int32 `json:"dividendsType"` // 分红类型,1订单分红,2退货冲销,3金额激励 | ||
| 148 | + OrderOrReturnedOrderNum string `json:"orderOrReturnedOrderNum"` // 分红订单号或退货单号 | ||
| 149 | + CooperationProjectNumber string `json:"cooperationProjectNumber"` // 共创项目编号, | ||
| 150 | + DividendsUser struct { | ||
| 151 | + UserId int64 `json:"userId,string"` // 用户ID, | ||
| 152 | + UserBaseId int64 `json:"userBaseId,string"` // 用户基本id | ||
| 153 | + UserType int32 `json:"userType"` // 用户类型 | ||
| 154 | + } `json:"dividendsUser"` // 分红用户 | ||
| 155 | + Org struct { | ||
| 156 | + OrgId int64 `json:"orgId,string"` // 组织机构ID | ||
| 157 | + OrgName string `json:"orgName"` // 组织名称 | ||
| 158 | + } `json:"org"` // 数据所属组织机构 | ||
| 159 | + Company struct { | ||
| 160 | + CompanyId int64 `json:"companyId,string"` // 公司ID, | ||
| 161 | + CompanyLogo string `json:"companyLogo"` // 公司logo | ||
| 162 | + CompanyName string `json:"companyName"` // 公司名称 | ||
| 163 | + } `json:"company"` // 公司 | ||
| 164 | + CreatedAt time.Time `json:"createdAt"` // 创建时间 | ||
| 165 | + UpdatedAt time.Time `json:"updatedAt"` // 更新时间 | ||
| 111 | } | 166 | } |
| 112 | ) | 167 | ) |
| 113 | 168 |
| @@ -110,6 +110,16 @@ type ( | @@ -110,6 +110,16 @@ type ( | ||
| 110 | } | 110 | } |
| 111 | ) | 111 | ) |
| 112 | 112 | ||
| 113 | +//批量移除分红退货单 | ||
| 114 | +type ( | ||
| 115 | + ReqDividendsReturnedOrderBatchRemove struct { | ||
| 116 | + DividendsReturnedOrderIDs []int `json:"dividendsReturnedOrderIds"` //分红退货单记录id | ||
| 117 | + } | ||
| 118 | + | ||
| 119 | + DataDividendsReturnedOrderBatchRemove struct { | ||
| 120 | + } | ||
| 121 | +) | ||
| 122 | + | ||
| 113 | //返回分红退货单列表 | 123 | //返回分红退货单列表 |
| 114 | type ( | 124 | type ( |
| 115 | ReqDividendsReturnedOrderList struct { | 125 | ReqDividendsReturnedOrderList struct { |
| @@ -19,23 +19,15 @@ func (controller *baseController) returnPageListData(count int64, data interface | @@ -19,23 +19,15 @@ func (controller *baseController) returnPageListData(count int64, data interface | ||
| 19 | controller.Response(dataMap, err) | 19 | controller.Response(dataMap, err) |
| 20 | } | 20 | } |
| 21 | 21 | ||
| 22 | -func (controller *baseController) GetUserId() int64 { | ||
| 23 | - return 1 | ||
| 24 | -} | ||
| 25 | - | ||
| 26 | -func (controller *baseController) GetCompanyId() int64 { | ||
| 27 | - return 1 | ||
| 28 | -} | ||
| 29 | - | ||
| 30 | -func (controller *baseController) GetUserBaseId() int64 { | ||
| 31 | - return 1 | ||
| 32 | -} | ||
| 33 | - | ||
| 34 | -func (controller *baseController) GetOrgId() int64 { | ||
| 35 | - return 1 | ||
| 36 | -} | ||
| 37 | - | ||
| 38 | func (controller *baseController) GetOperator() domain.Operator { | 22 | func (controller *baseController) GetOperator() domain.Operator { |
| 23 | + | ||
| 24 | + // tk, _ := middleware.FormCtxLoginToken(controller.Ctx) | ||
| 25 | + // operator := domain.Operator{ | ||
| 26 | + // UserId: tk.UserId, | ||
| 27 | + // CompanyId: tk.CompanyId, | ||
| 28 | + // OrgId: tk.OrgId, | ||
| 29 | + // UserBaseId: tk.UserBaseId, | ||
| 30 | + // } | ||
| 39 | return domain.Operator{ | 31 | return domain.Operator{ |
| 40 | UserId: 9, | 32 | UserId: 9, |
| 41 | CompanyId: 23, | 33 | CompanyId: 23, |
| @@ -24,7 +24,7 @@ func (controller *CooperationContractController) UpdateCooperationContract() { | @@ -24,7 +24,7 @@ func (controller *CooperationContractController) UpdateCooperationContract() { | ||
| 24 | updateCooperationContractCommand := &command.UpdateCooperationContractCommand{} | 24 | updateCooperationContractCommand := &command.UpdateCooperationContractCommand{} |
| 25 | controller.Unmarshal(updateCooperationContractCommand) | 25 | controller.Unmarshal(updateCooperationContractCommand) |
| 26 | contractId, _ := controller.GetInt(":contractId") | 26 | contractId, _ := controller.GetInt(":contractId") |
| 27 | - updateCooperationContractCommand.CooperationContract.CooperationContractId = contractId | 27 | + updateCooperationContractCommand.CooperationContractId = contractId |
| 28 | data, err := cooperationContractService.UpdateCooperationContract(updateCooperationContractCommand) | 28 | data, err := cooperationContractService.UpdateCooperationContract(updateCooperationContractCommand) |
| 29 | controller.Response(data, err) | 29 | controller.Response(data, err) |
| 30 | } | 30 | } |
| @@ -44,8 +44,6 @@ func (controller *DividendsReturnedOrderController) RemoveDividendsReturnedOrder | @@ -44,8 +44,6 @@ func (controller *DividendsReturnedOrderController) RemoveDividendsReturnedOrder | ||
| 44 | if err != nil { | 44 | if err != nil { |
| 45 | log.Logger.Debug("json err:" + err.Error()) | 45 | log.Logger.Debug("json err:" + err.Error()) |
| 46 | } | 46 | } |
| 47 | - projectId, _ := controller.GetInt(":projectId") | ||
| 48 | - removeDividendsReturnedOrderCommand.DividendsReturnedOrderID = projectId | ||
| 49 | removeDividendsReturnedOrderCommand.Operator = controller.GetOperator() | 47 | removeDividendsReturnedOrderCommand.Operator = controller.GetOperator() |
| 50 | data, err := dividendsReturnedOrderService.RemoveDividendsReturnedOrder(removeDividendsReturnedOrderCommand) | 48 | data, err := dividendsReturnedOrderService.RemoveDividendsReturnedOrder(removeDividendsReturnedOrderCommand) |
| 51 | controller.Response(data, err) | 49 | controller.Response(data, err) |
| 1 | package middleware | 1 | package middleware |
| 2 | + | ||
| 3 | +import ( | ||
| 4 | + "github.com/beego/beego/v2/server/web/context" | ||
| 5 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/domain" | ||
| 6 | +) | ||
| 7 | + | ||
| 8 | +type CtxKeyLoginToken struct{} | ||
| 9 | + | ||
| 10 | +func JWTAuth(ctx *context.Context) { | ||
| 11 | + tokenStr := ctx.Input.Header("xxxx") | ||
| 12 | + tk := domain.LoginToken{} | ||
| 13 | + err := tk.ParseToken(tokenStr) | ||
| 14 | + if err != nil { | ||
| 15 | + // | ||
| 16 | + return | ||
| 17 | + } | ||
| 18 | + ctx.Input.SetData(CtxKeyLoginToken{}, domain.LoginToken{}) | ||
| 19 | +} | ||
| 20 | + | ||
| 21 | +func NewCtxLoginToken(ctx *context.Context, tk domain.LoginToken) { | ||
| 22 | + ctx.Input.SetData(CtxKeyLoginToken{}, domain.LoginToken{}) | ||
| 23 | +} | ||
| 24 | + | ||
| 25 | +func FormCtxLoginToken(ctx *context.Context) (domain.LoginToken, bool) { | ||
| 26 | + val := ctx.Input.GetData(CtxKeyLoginToken{}) | ||
| 27 | + if v, ok := val.(domain.LoginToken); ok { | ||
| 28 | + return v, true | ||
| 29 | + } | ||
| 30 | + return domain.LoginToken{}, false | ||
| 31 | +} |
-
请 注册 或 登录 后发表评论