作者 唐旭辉

Merge branch 'test'

@@ -6,6 +6,7 @@ import ( @@ -6,6 +6,7 @@ import (
6 "fmt" 6 "fmt"
7 "time" 7 "time"
8 8
  9 + "github.com/astaxie/beego/logs"
9 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/factory" 10 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/factory"
10 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/domain" 11 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/domain"
11 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/lib" 12 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/lib"
@@ -77,6 +78,7 @@ func (service SyncCompanyService) DoAction(action string, byteData []byte) error @@ -77,6 +78,7 @@ func (service SyncCompanyService) DoAction(action string, byteData []byte) error
77 } 78 }
78 } 79 }
79 80
  81 +//addCompany 添加公司
80 func (service SyncCompanyService) addCompany(data CompanytData) error { 82 func (service SyncCompanyService) addCompany(data CompanytData) error {
81 var ( 83 var (
82 transactionContext, _ = factory.CreateTransactionContext(nil) 84 transactionContext, _ = factory.CreateTransactionContext(nil)
@@ -145,6 +147,7 @@ func (service SyncCompanyService) addCompany(data CompanytData) error { @@ -145,6 +147,7 @@ func (service SyncCompanyService) addCompany(data CompanytData) error {
145 return nil 147 return nil
146 } 148 }
147 149
  150 +//updateCompany 更新公司数据
148 func (service SyncCompanyService) updateCompany(data CompanytData) error { 151 func (service SyncCompanyService) updateCompany(data CompanytData) error {
149 var ( 152 var (
150 transactionContext, _ = factory.CreateTransactionContext(nil) 153 transactionContext, _ = factory.CreateTransactionContext(nil)
@@ -160,7 +163,8 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error { @@ -160,7 +163,8 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error {
160 companyRespository domain.CompanyRepository 163 companyRespository domain.CompanyRepository
161 userRespository domain.UsersRepository 164 userRespository domain.UsersRepository
162 oldCompany domain.Company 165 oldCompany domain.Company
163 - oldUser domain.Users 166 + oldCompanyAdmins []domain.Users
  167 + newUser domain.Users
164 ) 168 )
165 if companyRespository, err = factory.CreateCompanyRepository(map[string]interface{}{ 169 if companyRespository, err = factory.CreateCompanyRepository(map[string]interface{}{
166 "transactionContext": transactionContext, 170 "transactionContext": transactionContext,
@@ -175,7 +179,11 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error { @@ -175,7 +179,11 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error {
175 oldCompany, err = companyRespository.FindOne(domain.CompanyFindOneOptions{ 179 oldCompany, err = companyRespository.FindOne(domain.CompanyFindOneOptions{
176 Id: data.Company.Id, 180 Id: data.Company.Id,
177 }) 181 })
178 - oldUser, err = userRespository.FindOne(domain.UsersFindOneQuery{ 182 + _, oldCompanyAdmins, err = userRespository.Find(domain.UsersFindQuery{
  183 + CompanyId: data.Company.Id,
  184 + AdminType: domain.UserIsAdmin,
  185 + })
  186 + newUser, err = userRespository.FindOne(domain.UsersFindOneQuery{
179 Id: data.User.Id, 187 Id: data.User.Id,
180 }) 188 })
181 oldCompany.Update(map[string]interface{}{ 189 oldCompany.Update(map[string]interface{}{
@@ -185,8 +193,29 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error { @@ -185,8 +193,29 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error {
185 "AdminCompanyId": data.Company.AdminCompanyId, 193 "AdminCompanyId": data.Company.AdminCompanyId,
186 "Abbreviation": data.Company.Abbreviation, 194 "Abbreviation": data.Company.Abbreviation,
187 }) 195 })
188 - entryTime, _ := time.Parse("2006-01-02", data.User.EntryTime)  
189 - oldUser.Update(map[string]interface{}{ 196 + for i := range oldCompanyAdmins {
  197 + oldCompanyAdmins[i].Update(map[string]interface{}{
  198 + "AdminType": domain.UserIsNotAdmin,
  199 + })
  200 + err = userRespository.Edit(&oldCompanyAdmins[i])
  201 + if err != nil {
  202 + e := fmt.Sprintf("更新公司主管user数据(id=%d)失败:%s",
  203 + oldCompanyAdmins[i].Id, err)
  204 + return lib.ThrowError(lib.BUSINESS_ERROR, e)
  205 + }
  206 + }
  207 + err = companyRespository.Edit(&oldCompany)
  208 + if err != nil {
  209 + return lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
  210 + }
  211 + var entryTime time.Time
  212 + if len(data.User.EntryTime) > 0 {
  213 + entryTime, err = time.Parse("2006-01-02", data.User.EntryTime)
  214 + if err != nil {
  215 + logs.Error("Parse User.EntryTime 错误:%s", err)
  216 + }
  217 + }
  218 + newUser.Update(map[string]interface{}{
190 "CompanyId": data.User.CompanyId, 219 "CompanyId": data.User.CompanyId,
191 "OpenId": data.User.OpenId, 220 "OpenId": data.User.OpenId,
192 "Name": data.User.Name, 221 "Name": data.User.Name,
@@ -204,11 +233,7 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error { @@ -204,11 +233,7 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error {
204 "EntryTime": entryTime, 233 "EntryTime": entryTime,
205 "AdminType": data.User.AdminType, 234 "AdminType": data.User.AdminType,
206 }) 235 })
207 - err = companyRespository.Edit(&oldCompany)  
208 - if err != nil {  
209 - return lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())  
210 - }  
211 - err = userRespository.Edit(&oldUser) 236 + err = userRespository.Edit(&newUser)
212 if err != nil { 237 if err != nil {
213 return lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error()) 238 return lib.ThrowError(lib.INTERNAL_SERVER_ERROR, err.Error())
214 } 239 }
@@ -216,6 +241,7 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error { @@ -216,6 +241,7 @@ func (service SyncCompanyService) updateCompany(data CompanytData) error {
216 return nil 241 return nil
217 } 242 }
218 243
  244 +//updateCompanyCharge 变更公司的负责人
219 func (service SyncCompanyService) updateCompanyCharge(data CompanyCharge) error { 245 func (service SyncCompanyService) updateCompanyCharge(data CompanyCharge) error {
220 var ( 246 var (
221 transactionContext, _ = factory.CreateTransactionContext(nil) 247 transactionContext, _ = factory.CreateTransactionContext(nil)
@@ -6,6 +6,8 @@ import ( @@ -6,6 +6,8 @@ import (
6 "fmt" 6 "fmt"
7 "time" 7 "time"
8 8
  9 + "github.com/astaxie/beego/logs"
  10 +
9 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/factory" 11 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/factory"
10 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/unifiedUserCenter/command" 12 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/unifiedUserCenter/command"
11 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/domain" 13 "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/domain"
@@ -155,6 +157,7 @@ func (service SyncEmployeeService) DoAction(action string, byteData []byte) erro @@ -155,6 +157,7 @@ func (service SyncEmployeeService) DoAction(action string, byteData []byte) erro
155 } 157 }
156 } 158 }
157 159
  160 +//addEmployeeData 添加用户
158 func (service SyncEmployeeService) addEmployeeData(datas []EmployeeData) error { 161 func (service SyncEmployeeService) addEmployeeData(datas []EmployeeData) error {
159 var ( 162 var (
160 transactionContext, _ = factory.CreateTransactionContext(nil) 163 transactionContext, _ = factory.CreateTransactionContext(nil)
@@ -203,6 +206,7 @@ func (service SyncEmployeeService) addEmployeeData(datas []EmployeeData) error { @@ -203,6 +206,7 @@ func (service SyncEmployeeService) addEmployeeData(datas []EmployeeData) error {
203 return err 206 return err
204 } 207 }
205 208
  209 +// updateEmployeeData 更新用户
206 func (service SyncEmployeeService) updateEmployeeData(datas []EmployeeData) error { 210 func (service SyncEmployeeService) updateEmployeeData(datas []EmployeeData) error {
207 var ( 211 var (
208 transactionContext, _ = factory.CreateTransactionContext(nil) 212 transactionContext, _ = factory.CreateTransactionContext(nil)
@@ -280,7 +284,7 @@ func (service SyncEmployeeService) deleteEmployeeData(data DeleteUserData) error @@ -280,7 +284,7 @@ func (service SyncEmployeeService) deleteEmployeeData(data DeleteUserData) error
280 return err 284 return err
281 } 285 }
282 286
283 -//UpdateUsersStatus 批量更新用户的状态 287 +//updateUsersStatus 批量更新用户的状态
284 func (service SyncEmployeeService) updateUsersStatus(data ForbidAllowUserData) error { 288 func (service SyncEmployeeService) updateUsersStatus(data ForbidAllowUserData) error {
285 var ( 289 var (
286 transactionContext, _ = factory.CreateTransactionContext(nil) 290 transactionContext, _ = factory.CreateTransactionContext(nil)
@@ -338,16 +342,13 @@ func (service SyncEmployeeService) ChangeSuperAdmin(cmd command.ChanceSuperAdmin @@ -338,16 +342,13 @@ func (service SyncEmployeeService) ChangeSuperAdmin(cmd command.ChanceSuperAdmin
338 return lib.ThrowError(lib.INTERNAL_SERVER_ERROR, e) 342 return lib.ThrowError(lib.INTERNAL_SERVER_ERROR, e)
339 } 343 }
340 if len(userList) == 0 { 344 if len(userList) == 0 {
341 - e := fmt.Sprintf("没有获得公司主管数据(admin_type=%d;company_id=%d)",  
342 - domain.UserIsAdmin, cmd.CompanyId)  
343 - return lib.ThrowError(lib.BUSINESS_ERROR, e) 345 + logs.Error(fmt.Sprintf("没有获得公司主管数据(admin_type=%d;company_id=%d)",
  346 + domain.UserIsAdmin, cmd.CompanyId))
344 } 347 }
345 if len(userList) > 1 { 348 if len(userList) > 1 {
346 - e := fmt.Sprintf("存在复数公司主管数据(admin_type=%d;company_id=%d)",  
347 - domain.UserIsAdmin, cmd.CompanyId)  
348 - return lib.ThrowError(lib.BUSINESS_ERROR, e) 349 + logs.Error(fmt.Sprintf("存在复数公司主管数据(admin_type=%d;company_id=%d)",
  350 + domain.UserIsAdmin, cmd.CompanyId))
349 } 351 }
350 - oldSuperUser = userList[0]  
351 newSuperUser, err = usersRepository.FindOne(domain.UsersFindOneQuery{ 352 newSuperUser, err = usersRepository.FindOne(domain.UsersFindOneQuery{
352 CompanyId: cmd.CompanyId, 353 CompanyId: cmd.CompanyId,
353 Phone: cmd.Phone, 354 Phone: cmd.Phone,
@@ -357,24 +358,26 @@ func (service SyncEmployeeService) ChangeSuperAdmin(cmd command.ChanceSuperAdmin @@ -357,24 +358,26 @@ func (service SyncEmployeeService) ChangeSuperAdmin(cmd command.ChanceSuperAdmin
357 cmd.Phone, cmd.CompanyId) 358 cmd.Phone, cmd.CompanyId)
358 return lib.ThrowError(lib.BUSINESS_ERROR, e) 359 return lib.ThrowError(lib.BUSINESS_ERROR, e)
359 } 360 }
360 - err = oldSuperUser.Update(map[string]interface{}{ 361 + for i := range userList {
  362 + err = userList[i].Update(map[string]interface{}{
361 "AdminType": domain.UserIsNotAdmin, 363 "AdminType": domain.UserIsNotAdmin,
362 }) 364 })
363 if err != nil { 365 if err != nil {
364 return lib.ThrowError(lib.BUSINESS_ERROR, err.Error()) 366 return lib.ThrowError(lib.BUSINESS_ERROR, err.Error())
365 } 367 }
  368 + err = usersRepository.Edit(&userList[i])
  369 + if err != nil {
  370 + e := fmt.Sprintf("更新公司主管user数据(id=%d)失败:%s",
  371 + oldSuperUser.Id, err)
  372 + return lib.ThrowError(lib.BUSINESS_ERROR, e)
  373 + }
  374 + }
366 err = newSuperUser.Update(map[string]interface{}{ 375 err = newSuperUser.Update(map[string]interface{}{
367 "AdminType": domain.UserIsAdmin, 376 "AdminType": domain.UserIsAdmin,
368 }) 377 })
369 if err != nil { 378 if err != nil {
370 return lib.ThrowError(lib.BUSINESS_ERROR, err.Error()) 379 return lib.ThrowError(lib.BUSINESS_ERROR, err.Error())
371 } 380 }
372 - err = usersRepository.Edit(&oldSuperUser)  
373 - if err != nil {  
374 - e := fmt.Sprintf("更新公司主管user数据(id=%d)失败:%s",  
375 - oldSuperUser.Id, err)  
376 - return lib.ThrowError(lib.BUSINESS_ERROR, e)  
377 - }  
378 err = usersRepository.Edit(&newSuperUser) 381 err = usersRepository.Edit(&newSuperUser)
379 if err != nil { 382 if err != nil {
380 e := fmt.Sprintf("更新公司主管user数据(id=%d)失败:%s", 383 e := fmt.Sprintf("更新公司主管user数据(id=%d)失败:%s",
@@ -123,7 +123,7 @@ func (reponsitory UsersRepository) FindOne(queryOptions domain.UsersFindOneQuery @@ -123,7 +123,7 @@ func (reponsitory UsersRepository) FindOne(queryOptions domain.UsersFindOneQuery
123 hasCondition bool 123 hasCondition bool
124 ) 124 )
125 query := tx.Model(&m) 125 query := tx.Model(&m)
126 - query.Where("delete_at ISNULL") 126 + query = query.Where("delete_at ISNULL")
127 if queryOptions.Id > 0 { 127 if queryOptions.Id > 0 {
128 hasCondition = true 128 hasCondition = true
129 query = query.Where("id=?", queryOptions.Id) 129 query = query.Where("id=?", queryOptions.Id)
@@ -90,7 +90,7 @@ type ResponseLogin struct { @@ -90,7 +90,7 @@ type ResponseLogin struct {
90 Imtoken string `json:"imtoken"` //网易云imtoken 90 Imtoken string `json:"imtoken"` //网易云imtoken
91 Accid int64 `json:"accid"` //网易云id 91 Accid int64 `json:"accid"` //网易云id
92 CustomerAccount int64 `json:"customerAccount"` //客服id 92 CustomerAccount int64 `json:"customerAccount"` //客服id
93 - CompanyId int64 `json:"companyId"` //总后台的公司id 93 + CompanyId int64 `json:"companyId"` //总后台的公司id ,对应company表中的admin_company_id
94 Muid int64 `json:"muid"` //企业平台的用户id,对应本系统中users表的id 94 Muid int64 `json:"muid"` //企业平台的用户id,对应本系统中users表的id
95 } `json:"data"` 95 } `json:"data"`
96 } 96 }
@@ -54,7 +54,7 @@ func (c *SyncDataController) CompanyAdminChance() { @@ -54,7 +54,7 @@ func (c *SyncDataController) CompanyAdminChance() {
54 return 54 return
55 } 55 }
56 syncEmployeeSrv := syncService.NewSyncEmployeeService(nil) 56 syncEmployeeSrv := syncService.NewSyncEmployeeService(nil)
57 - syncEmployeeSrv.ChangeSuperAdmin(param) 57 + err = syncEmployeeSrv.ChangeSuperAdmin(param)
58 if err != nil { 58 if err != nil {
59 logs.Error("变更公司的主管失败;%s", err) 59 logs.Error("变更公司的主管失败;%s", err)
60 } 60 }