public void Deal(UserContract contract) { var userDbEntity = ConvertToT_User(contract); var userRoleDbEntity = ConvertToT_User_Role(contract); var userApDbEntity = ConvertTot_customer_user(contract); var userFacade = new T_UserFacade(); var userRoleFacade = new T_User_RoleFacade(); var userApFacade = new t_customer_userFacade(); var result = userRoleFacade.GetIdByUserId(contract.UserId); foreach (var i in result) { userRoleFacade.Delete(new T_User_RoleEntity { user_role_id = i }); } switch (contract.Operation) { case OptEnum.Create: userDbEntity.user_password = "******"; userFacade.Create(userDbEntity); userApDbEntity.cu_pwd = userDbEntity.user_password; userApFacade.Create(userApDbEntity); foreach (var i in userRoleDbEntity) { userRoleFacade.Create(i); } break; case OptEnum.Update: userDbEntity.user_password = userFacade.GetUserPwd(userDbEntity.user_id); userFacade.Update(userDbEntity); userApDbEntity.cu_pwd = userDbEntity.user_password; userApFacade.Update(userApDbEntity); foreach (var i in userRoleDbEntity) { userRoleFacade.Create(i); } break; case OptEnum.Delete: userFacade.Delete(userDbEntity); userApFacade.Delete(userApDbEntity); break; } }