正在显示
3 个修改的文件
包含
51 行增加
和
4 行删除
| @@ -52,14 +52,17 @@ func (c PlatformController) CompanyAdminChance() { | @@ -52,14 +52,17 @@ func (c PlatformController) CompanyAdminChance() { | ||
| 52 | if err := json.Unmarshal(c.Ctx.Input.RequestBody, ¶m); err != nil { | 52 | if err := json.Unmarshal(c.Ctx.Input.RequestBody, ¶m); err != nil { |
| 53 | e := fmt.Errorf("json 解析失败 err:%s", err) | 53 | e := fmt.Errorf("json 解析失败 err:%s", err) |
| 54 | log.Error(e.Error()) | 54 | log.Error(e.Error()) |
| 55 | + msg.Errno = "0" | ||
| 55 | msg.Errmsg = e.Error() | 56 | msg.Errmsg = e.Error() |
| 56 | return | 57 | return |
| 57 | } | 58 | } |
| 58 | err := platform.AdminChance(param.CompanyId, param.Phone) | 59 | err := platform.AdminChance(param.CompanyId, param.Phone) |
| 59 | if err != nil { | 60 | if err != nil { |
| 60 | log.Error("总后台调用CompanyAdminChance发生错误;%s", err) | 61 | log.Error("总后台调用CompanyAdminChance发生错误;%s", err) |
| 62 | + msg.Errno = "-1" | ||
| 61 | msg.Errmsg = err.Error() | 63 | msg.Errmsg = err.Error() |
| 62 | } | 64 | } |
| 65 | + msg.Errno = "0" | ||
| 63 | c.Data["json"] = msg | 66 | c.Data["json"] = msg |
| 64 | c.ServeJSON() | 67 | c.ServeJSON() |
| 65 | return | 68 | return |
| 1 | package platform | 1 | package platform |
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | + "errors" | ||
| 4 | "fmt" | 5 | "fmt" |
| 5 | "oppmg/common/log" | 6 | "oppmg/common/log" |
| 6 | "oppmg/models" | 7 | "oppmg/models" |
| @@ -17,6 +18,7 @@ func AdminChance(companyid int64, phone string) error { | @@ -17,6 +18,7 @@ func AdminChance(companyid int64, phone string) error { | ||
| 17 | err error | 18 | err error |
| 18 | newCharge *models.UserCompany | 19 | newCharge *models.UserCompany |
| 19 | oldCharge *models.UserCompany | 20 | oldCharge *models.UserCompany |
| 21 | + defaultRole *models.Role | ||
| 20 | ) | 22 | ) |
| 21 | companyData, err = models.GetCompanyByUCenter(companyid) | 23 | companyData, err = models.GetCompanyByUCenter(companyid) |
| 22 | if err != nil { | 24 | if err != nil { |
| @@ -30,6 +32,12 @@ func AdminChance(companyid int64, phone string) error { | @@ -30,6 +32,12 @@ func AdminChance(companyid int64, phone string) error { | ||
| 30 | log.Error(err.Error()) | 32 | log.Error(err.Error()) |
| 31 | return e | 33 | return e |
| 32 | } | 34 | } |
| 35 | + defaultRole, err = models.GetCompanyDefaultRole(companyid) | ||
| 36 | + if err != nil { | ||
| 37 | + e := fmt.Errorf("变更主管理员角色失败:err:%s", err) | ||
| 38 | + log.Error(e.Error()) | ||
| 39 | + return errors.New("变更主管理员角色失败") | ||
| 40 | + } | ||
| 33 | newCharge, err = models.GetUserCompanyBy(userData.Id, companyData.Id) | 41 | newCharge, err = models.GetUserCompanyBy(userData.Id, companyData.Id) |
| 34 | if err != nil { | 42 | if err != nil { |
| 35 | e := fmt.Errorf("获取用户和公司的对应关系数据失败,user_id:%d,company_id:%d", userData.Id, companyData.Id) | 43 | e := fmt.Errorf("获取用户和公司的对应关系数据失败,user_id:%d,company_id:%d", userData.Id, companyData.Id) |
| @@ -52,8 +60,8 @@ func AdminChance(companyid int64, phone string) error { | @@ -52,8 +60,8 @@ func AdminChance(companyid int64, phone string) error { | ||
| 52 | log.Error(e.Error()) | 60 | log.Error(e.Error()) |
| 53 | return e | 61 | return e |
| 54 | } | 62 | } |
| 55 | - newCharge.ChargeStatus = models.USERCOMPANY_CHARGE_YES | ||
| 56 | - oldCharge.ChargeStatus = models.USERCOMPANY_CHARGE_NO | 63 | + newCharge.AdminType = models.USERCOMPANY_ADMIN_MAIN |
| 64 | + oldCharge.AdminType = models.USERCOMPANY_ADMIN_SUBSET | ||
| 57 | err = models.UpdateUserCompanyById(newCharge, []string{"ChargeStatus"}, o) | 65 | err = models.UpdateUserCompanyById(newCharge, []string{"ChargeStatus"}, o) |
| 58 | if err != nil { | 66 | if err != nil { |
| 59 | o.Rollback() | 67 | o.Rollback() |
| @@ -68,6 +76,20 @@ func AdminChance(companyid int64, phone string) error { | @@ -68,6 +76,20 @@ func AdminChance(companyid int64, phone string) error { | ||
| 68 | log.Error(e.Error()) | 76 | log.Error(e.Error()) |
| 69 | return e | 77 | return e |
| 70 | } | 78 | } |
| 79 | + //更新主管理员角色 | ||
| 80 | + _, err = o.QueryTable(&models.UserRole{}). | ||
| 81 | + Filter("role_id", defaultRole.Id). | ||
| 82 | + Filter("company_id", companyid). | ||
| 83 | + Filter("user_company_id", oldCharge.Id). | ||
| 84 | + Filter("enable_status", models.USER_ROLE_ENABLE_YES). | ||
| 85 | + Update(orm.Params{ | ||
| 86 | + "user_company_id": newCharge.Id, | ||
| 87 | + }) | ||
| 88 | + if err != nil { | ||
| 89 | + e := fmt.Errorf("变更主管理员角色失败:%s", err) | ||
| 90 | + log.Error(e.Error()) | ||
| 91 | + return errors.New("变更主管理员角色失败") | ||
| 92 | + } | ||
| 71 | o.Commit() | 93 | o.Commit() |
| 72 | return nil | 94 | return nil |
| 73 | } | 95 | } |
| @@ -118,6 +118,7 @@ func UpdateCompanyData(data ModuleCompanytData) error { | @@ -118,6 +118,7 @@ func UpdateCompanyData(data ModuleCompanytData) error { | ||
| 118 | companyData *models.Company | 118 | companyData *models.Company |
| 119 | err error | 119 | err error |
| 120 | topDepartment *models.Department | 120 | topDepartment *models.Department |
| 121 | + defaultRole *models.Role | ||
| 121 | ) | 122 | ) |
| 122 | newCompanyData := data.Company | 123 | newCompanyData := data.Company |
| 123 | companyData, err = models.GetCompanyByUCenter(newCompanyData.AdminCompanyId) | 124 | companyData, err = models.GetCompanyByUCenter(newCompanyData.AdminCompanyId) |
| @@ -142,11 +143,17 @@ func UpdateCompanyData(data ModuleCompanytData) error { | @@ -142,11 +143,17 @@ func UpdateCompanyData(data ModuleCompanytData) error { | ||
| 142 | log.Error("获取公司一级数据失败,company_id=%d,err:%s", companyData.Id, err) | 143 | log.Error("获取公司一级数据失败,company_id=%d,err:%s", companyData.Id, err) |
| 143 | return errors.New("获取公司一级数据失败") | 144 | return errors.New("获取公司一级数据失败") |
| 144 | } | 145 | } |
| 146 | + defaultRole, err = models.GetCompanyDefaultRole(companyData.Id) | ||
| 147 | + if err != nil { | ||
| 148 | + e := fmt.Errorf("变更主管理员角色失败:err:%s", err) | ||
| 149 | + log.Error(e.Error()) | ||
| 150 | + return errors.New("变更主管理员角色失败") | ||
| 151 | + } | ||
| 145 | o := orm.NewOrm() | 152 | o := orm.NewOrm() |
| 146 | o.Begin() | 153 | o.Begin() |
| 147 | if data.User.Id != oldAdminData.Id { | 154 | if data.User.Id != oldAdminData.Id { |
| 148 | //更新公司主管理员 | 155 | //更新公司主管理员 |
| 149 | - oldAdminData.ChargeStatus = models.USERCOMPANY_CHARGE_NO | 156 | + oldAdminData.AdminType = models.USERCOMPANY_ADMIN_SUBSET |
| 150 | err = models.UpdateUserCompanyById(oldAdminData, []string{"ChargeStatus"}, o) | 157 | err = models.UpdateUserCompanyById(oldAdminData, []string{"ChargeStatus"}, o) |
| 151 | if err != nil { | 158 | if err != nil { |
| 152 | o.Rollback() | 159 | o.Rollback() |
| @@ -160,7 +167,7 @@ func UpdateCompanyData(data ModuleCompanytData) error { | @@ -160,7 +167,7 @@ func UpdateCompanyData(data ModuleCompanytData) error { | ||
| 160 | log.Error("获取新的主管理员失败,user_company_id=%d,err:%s", data.User.Id, err) | 167 | log.Error("获取新的主管理员失败,user_company_id=%d,err:%s", data.User.Id, err) |
| 161 | return errors.New("获取新的主管理员") | 168 | return errors.New("获取新的主管理员") |
| 162 | } | 169 | } |
| 163 | - newAdminData.ChargeStatus = models.USERCOMPANY_CHARGE_YES | 170 | + newAdminData.AdminType = models.USERCOMPANY_ADMIN_MAIN |
| 164 | err = models.UpdateUserCompanyById(newAdminData, []string{"ChargeStatus"}, o) | 171 | err = models.UpdateUserCompanyById(newAdminData, []string{"ChargeStatus"}, o) |
| 165 | if err != nil { | 172 | if err != nil { |
| 166 | o.Rollback() | 173 | o.Rollback() |
| @@ -168,6 +175,20 @@ func UpdateCompanyData(data ModuleCompanytData) error { | @@ -168,6 +175,20 @@ func UpdateCompanyData(data ModuleCompanytData) error { | ||
| 168 | return errors.New("变更主管理员失败") | 175 | return errors.New("变更主管理员失败") |
| 169 | } | 176 | } |
| 170 | companyData.AdminId = newAdminData.UserId | 177 | companyData.AdminId = newAdminData.UserId |
| 178 | + //更新主管理员角色 | ||
| 179 | + _, err = o.QueryTable(&models.UserRole{}). | ||
| 180 | + Filter("role_id", defaultRole.Id). | ||
| 181 | + Filter("company_id", companyData.Id). | ||
| 182 | + Filter("user_company_id", oldAdminData.Id). | ||
| 183 | + Filter("enable_status", models.USER_ROLE_ENABLE_YES). | ||
| 184 | + Update(orm.Params{ | ||
| 185 | + "user_company_id": newAdminData.Id, | ||
| 186 | + }) | ||
| 187 | + if err != nil { | ||
| 188 | + e := fmt.Errorf("变更主管理员角色失败:%s", err) | ||
| 189 | + log.Error(e.Error()) | ||
| 190 | + return errors.New("变更主管理员角色失败") | ||
| 191 | + } | ||
| 171 | } | 192 | } |
| 172 | companyData.Logo = newCompanyData.Logo | 193 | companyData.Logo = newCompanyData.Logo |
| 173 | companyData.Name = newCompanyData.Name | 194 | companyData.Name = newCompanyData.Name |
| @@ -185,6 +206,7 @@ func UpdateCompanyData(data ModuleCompanytData) error { | @@ -185,6 +206,7 @@ func UpdateCompanyData(data ModuleCompanytData) error { | ||
| 185 | log.Error("更新公司一级部门数据失败:%s", err) | 206 | log.Error("更新公司一级部门数据失败:%s", err) |
| 186 | return errors.New("更新公司一级部门数据失败") | 207 | return errors.New("更新公司一级部门数据失败") |
| 187 | } | 208 | } |
| 209 | + | ||
| 188 | o.Commit() | 210 | o.Commit() |
| 189 | return nil | 211 | return nil |
| 190 | } | 212 | } |
-
请 注册 或 登录 后发表评论