package BaseOrganizationManagerDao import ( "dsBaseRpc/Utils/CommonUtil" "dsBaseRpc/Utils/DbUtil" "dsBaseRpc/Utils/SqlKit" "dsBaseRpc/models" "errors" ) //操作数据库的变量 var db = DbUtil.Engine //更新部门的管理员 func UpdateOrgManager(OrgId string, OrgManagerIds []string) error { //1、先删除 tbom := new(models.TBaseOrganizationManager) tbom.BUse = -1 _, err := db.Where("org_id=?", OrgId).Update(tbom) if err != nil { return err } //2、后插入 //部门所在的单位 list := SqlKit.QueryByIds([]string{OrgId}, "t_base_organization") if list == nil || len(list) == 0 { return errors.New("无法找到指定的OrgId") } BureauId := list[0]["bureau_id"].(string) //事务声明 session := db.NewSession() defer session.Close() session.Begin() //事务的内容 for i := range OrgManagerIds { u := new(models.TBaseOrganizationManager) u.Id = CommonUtil.GetUUID() u.BUse = 1 u.PersonId = OrgManagerIds[i] u.BureauId = BureauId u.OrgId = OrgId _, err := session.Insert(u) if err != nil { session.Rollback() return err } } //事务提交 err = session.Commit() if err != nil { return err } return nil } //删除部门管理员(通过部门IDS) func DeleteOrgManagerByOrgIds(OrgIds []string) error { for i := range OrgIds { OrgId := OrgIds[i] tbom := new(models.TBaseOrganizationManager) tbom.BUse = -1 _, err := db.Where("org_id=?", OrgId).And("b_use=?", 1).Update(tbom) if err != nil { return err } } return nil } //删除部门管理员(通过人员IDS) func DeleteOrgManagerByPersonIds(PersonIds []string) error { for i := range PersonIds { PersonId := PersonIds[i] tbom := new(models.TBaseOrganizationManager) tbom.BUse = -1 _, err := db.Where("person_id=?", PersonId).And("b_use", 1).Update(tbom) if err != nil { return err } } return nil }