public Users_cstm GenUser_cstm(UpdateUserDto updateUserDto) { Users_cstm user = new Users_cstm(); user.HR_ID_C = new Guid(updateUserDto.HR_ID_C); user.USER_TYPE_C = new Guid(updateUserDto.USER_TYPE_C); user.USER_TITLE_ID_C = new Guid(updateUserDto.USER_TITLE_ID_C); user.ACCOUNT_NUMBER_C = new Guid(updateUserDto.ACCOUNT_NUMBER_C); user.REGION_ID_C = new Guid(updateUserDto.REGION_ID_C); user.ROLE_ID_C = new Guid(updateUserDto.ROLE_ID_C); user.HO_TEN_C = updateUserDto.FIRST_NAME; return(user); }
public long updateUser(UpdateUserDto updateUserDto) { User user = GenUser(updateUserDto); Users_cstm user_cstm = GenUser_cstm(updateUserDto); try { // Neu chua co thi tao if (user.ID == new Guid("00000000-0000-0000-0000-000000000000")) { Guid id = Guid.NewGuid(); Console.WriteLine("Tao user moi" + id); user_cstm.ID_C = id; List <User> users = new List <User>(); users.Add(user); user.DATE_ENTERED = DateTime.Now; user.DATE_MODIFIED = DateTime.Now; List <Users_cstm> user_Cstms = new List <Users_cstm>(); user_Cstms.Add(user_cstm); String userSql = @" INSERT INTO USERS(ID,USER_NAME, EMAIL1, PHONE_MOBILE, IS_ADMIN, STATUS, LAST_NAME, FIRST_NAME) VALUES(@ID, @USER_NAME, @EMAIL1, @PHONE_MOBILE, @IS_ADMIN, @STATUS, @LAST_NAME, @FIRST_NAME)"; DynamicParameters param = new DynamicParameters(); param.Add("@ID", id); param.Add("@USER_NAME", user.USER_NAME); param.Add("@PHONE_MOBILE", user.PHONE_MOBILE); param.Add("@EMAIL1", user.EMAIL1); param.Add("@IS_ADMIN", user.IS_ADMIN); param.Add("@STATUS", user.STATUS); param.Add("@LAST_NAME", user.LAST_NAME); param.Add("@FIRST_NAME", user.FIRST_NAME); DapperORM.InsertOne(userSql, param); // INSERT CSTM String userCstmSql = @" INSERT INTO USERS_CSTM(ID_C,HR_ID_C, USER_TYPE_C, USER_TITLE_ID_C, ACCOUNT_NUMBER_C, REGION_ID_C, ROLE_ID_C, HO_TEN_C) VALUES(@ID_C, @HR_ID_C, @USER_TYPE_C, @USER_TITLE_ID_C, @ACCOUNT_NUMBER_C,@REGION_ID_C, @ROLE_ID_C, @HO_TEN_C )"; DynamicParameters paramCstm = new DynamicParameters(); paramCstm.Add("@ID_C", id); paramCstm.Add("@HR_ID_C", user_cstm.HR_ID_C); paramCstm.Add("@USER_TYPE_C", user_cstm.USER_TYPE_C); paramCstm.Add("@USER_TITLE_ID_C", user_cstm.USER_TITLE_ID_C); paramCstm.Add("@ACCOUNT_NUMBER_C", user_cstm.ACCOUNT_NUMBER_C); paramCstm.Add("@REGION_ID_C", user_cstm.REGION_ID_C); paramCstm.Add("@ROLE_ID_C", user_cstm.ROLE_ID_C); paramCstm.Add("@HO_TEN_C", user_cstm.HO_TEN_C); DapperORM.InsertOne(userCstmSql, paramCstm); return(0); } else { // Check user name Exist bool checkUserName = checkUserExist("USER_NAME", user.USER_NAME, user.ID.ToString()); // 1: username exist, pick other name if (checkUserName) { return(1); } // Update List <User> users = new List <User>(); List <Users_cstm> user_Cstms = new List <Users_cstm>(); String userSql = "UPDATE USERS " + "SET PHONE_MOBILE = @PHONE_MOBILE ," + " EMAIL1 = @EMAIL1, " + " IS_ADMIN = @IS_ADMIN," + " STATUS = @STATUS, " + " LAST_NAME = @LAST_NAME, " + " FIRST_NAME = @FIRST_NAME," + " DATE_MODIFIED = @DATE_MODIFIED" + " WHERE ID = @ID"; String userCstmSql = "UPDATE USERS_CSTM " + "SET HR_ID_C = @HR_ID_C ," + " USER_TYPE_C = @USER_TYPE_C, " + " USER_TITLE_ID_C = @USER_TITLE_ID_C," + " ACCOUNT_NUMBER_C = @ACCOUNT_NUMBER_C, " + " REGION_ID_C = @REGION_ID_C, " + " ROLE_ID_C = @ROLE_ID_C," + " HO_TEN_C = @HO_TEN_C" + " WHERE ID_C = @ID_C"; DynamicParameters paramCstm = new DynamicParameters(); paramCstm.Add("@ID_C", user.ID); paramCstm.Add("@HR_ID_C", user_cstm.HR_ID_C); paramCstm.Add("@USER_TYPE_C", user_cstm.USER_TYPE_C); paramCstm.Add("@USER_TITLE_ID_C", user_cstm.USER_TITLE_ID_C); paramCstm.Add("@ACCOUNT_NUMBER_C", user_cstm.ACCOUNT_NUMBER_C); paramCstm.Add("@REGION_ID_C", user_cstm.REGION_ID_C); paramCstm.Add("@ROLE_ID_C", user_cstm.ROLE_ID_C); paramCstm.Add("@HO_TEN_C", user_cstm.HO_TEN_C); // update user DynamicParameters param = new DynamicParameters(); param.Add("@ID", user.ID); param.Add("@PHONE_MOBILE", user.PHONE_MOBILE); param.Add("@EMAIL1", user.EMAIL1); param.Add("@IS_ADMIN", user.IS_ADMIN); param.Add("@DATE_MODIFIED", DateTime.Now); param.Add("@STATUS", user.STATUS); param.Add("@LAST_NAME", user.LAST_NAME); param.Add("@FIRST_NAME", user.FIRST_NAME); DapperORM.Execute(userSql, param); DapperORM.Execute(userCstmSql, paramCstm); return(0); } } catch (Exception e) { Console.WriteLine(e); return(2); } }
//public async Task<Guid> CreateUserAsync(UpdateUserDto updateUserDto) //{ // Guid id = Guid.NewGuid(); // User user = GenUser(updateUserDto); // Users_cstm user_cstm = GenUser_cstm(updateUserDto); // try // { // user_cstm.ID_C = id; // List<User> users = new List<User>(); // users.Add(user); // user.DATE_ENTERED = DateTime.Now; // user.DATE_MODIFIED = DateTime.Now; // List<Users_cstm> user_Cstms = new List<Users_cstm>(); // user_Cstms.Add(user_cstm); // String userSql = @" // INSERT INTO USERS(ID,USER_NAME, EMAIL1, PHONE_MOBILE, IS_ADMIN, // STATUS, LAST_NAME, FIRST_NAME) // VALUES(@ID, @USER_NAME, @EMAIL1, @PHONE_MOBILE, @IS_ADMIN, @STATUS, @LAST_NAME, // @FIRST_NAME)"; // DynamicParameters param = new DynamicParameters(); // param.Add("@ID", id); // param.Add("@USER_NAME", user.USER_NAME); // param.Add("@PHONE_MOBILE", user.PHONE_MOBILE); // param.Add("@EMAIL1", user.EMAIL1); // param.Add("@IS_ADMIN", user.IS_ADMIN); // param.Add("@STATUS", user.STATUS); // param.Add("@LAST_NAME", user.LAST_NAME); // param.Add("@FIRST_NAME", user.FIRST_NAME); // // INSERT CSTM // String userCstmSql = @" // INSERT INTO USERS_CSTM(ID_C,HR_ID_C, USER_TYPE_C, USER_TITLE_ID_C, ACCOUNT_NUMBER_C, // REGION_ID_C, ROLE_ID_C, HO_TEN_C) // VALUES(@ID_C, @HR_ID_C, @USER_TYPE_C, @USER_TITLE_ID_C, @ACCOUNT_NUMBER_C,@REGION_ID_C, @ROLE_ID_C, @HO_TEN_C // )"; // DynamicParameters paramCstm = new DynamicParameters(); // paramCstm.Add("@ID_C", id); // paramCstm.Add("@HR_ID_C", user_cstm.HR_ID_C); // paramCstm.Add("@USER_TYPE_C", user_cstm.USER_TYPE_C); // paramCstm.Add("@USER_TITLE_ID_C", user_cstm.USER_TITLE_ID_C); // paramCstm.Add("@ACCOUNT_NUMBER_C", user_cstm.ACCOUNT_NUMBER_C); // paramCstm.Add("@REGION_ID_C", user_cstm.REGION_ID_C); // paramCstm.Add("@ROLE_ID_C", user_cstm.ROLE_ID_C); // paramCstm.Add("@HO_TEN_C", user_cstm.HO_TEN_C); // SqlForm[] sqlForms = new SqlForm[2]; // sqlForms[0] = new SqlForm(userSql, param); // sqlForms[1] = new SqlForm(userCstmSql, paramCstm); // //DapperORM.ExecuteTransaction(sqlForms); // await WithConnection(async conn => // { // await conn.ExecuteAsync(userSql, // new { // ID = id, // USER_NAME = user.USER_NAME, // PHONE_MOBILE = user.PHONE_MOBILE, // EMAIL1 = user.EMAIL1, // IS_ADMIN = user.IS_ADMIN, // STATUS = user.EMPLOYEE_STATUS, // LAST_NAME = user.LAST_NAME, // FIRST_NAME = user.FIRST_NAME // }); // await conn.ExecuteAsync(userCstmSql, // new { ID_C = id, HR_ID_C = user_cstm.HR_ID_C, USER_TYPE_C = user_cstm.USER_TYPE_C, USER_TITLE_ID_C = user_cstm.USER_TITLE_ID_C, // ACCOUNT_NUMBER_C = user_cstm.ACCOUNT_NUMBER_C, // REGION_ID_C = user_cstm.REGION_ID_C, // ROLE_ID_C = user_cstm.ROLE_ID_C, // HO_TEN_C = user_cstm.HO_TEN_C // }); // }); // return id; // } // catch (Exception e) // { // throw e; // } //} public Guid CreateUser(UpdateUserDto updateUserDto, string createdBy) { Guid id = Guid.NewGuid(); User user = GenUser(updateUserDto); Users_cstm user_cstm = GenUser_cstm(updateUserDto); try { user_cstm.ID_C = id; bool checkUserName = CheckUserExist("USER_NAME", user.USER_NAME, null); // 1: username exist, pick other name if (checkUserName) { throw new Exception("USERNAME_EXIST"); } List <User> users = new List <User>(); users.Add(user); user.DATE_ENTERED = DateTime.Now; user.DATE_MODIFIED = DateTime.Now; List <Users_cstm> user_Cstms = new List <Users_cstm>(); user_Cstms.Add(user_cstm); String userSql = @" INSERT INTO USERS(ID,USER_NAME, EMAIL1, PHONE_MOBILE, IS_ADMIN, STATUS, LAST_NAME, FIRST_NAME, CREATED_BY) VALUES(@ID, @USER_NAME, @EMAIL1, @PHONE_MOBILE, @IS_ADMIN, @STATUS, @LAST_NAME, @FIRST_NAME, @CREATED_BY)"; DynamicParameters param = new DynamicParameters(); param.Add("@ID", id); param.Add("@USER_NAME", user.USER_NAME); param.Add("@PHONE_MOBILE", user.PHONE_MOBILE); param.Add("@EMAIL1", user.EMAIL1); param.Add("@IS_ADMIN", user.IS_ADMIN); param.Add("@STATUS", user.STATUS); param.Add("@LAST_NAME", user.LAST_NAME); param.Add("@FIRST_NAME", user.FIRST_NAME); param.Add("@CREATED_BY", createdBy); // INSERT CSTM String userCstmSql = @" INSERT INTO USERS_CSTM(ID_C,HR_ID_C, USER_TYPE_C, USER_TITLE_ID_C, ACCOUNT_NUMBER_C, REGION_ID_C, ROLE_ID_C, HO_TEN_C, AGENT_ID_C) VALUES(@ID_C, @HR_ID_C, @USER_TYPE_C, @USER_TITLE_ID_C, @ACCOUNT_NUMBER_C,@REGION_ID_C, @ROLE_ID_C, @HO_TEN_C, @AGENT_ID_C )"; DynamicParameters paramCstm = new DynamicParameters(); paramCstm.Add("@ID_C", id); paramCstm.Add("@HR_ID_C", user_cstm.HR_ID_C); paramCstm.Add("@USER_TYPE_C", user_cstm.USER_TYPE_C); paramCstm.Add("@USER_TITLE_ID_C", user_cstm.USER_TITLE_ID_C); paramCstm.Add("@ACCOUNT_NUMBER_C", user_cstm.ACCOUNT_NUMBER_C); paramCstm.Add("@REGION_ID_C", user_cstm.REGION_ID_C); paramCstm.Add("@ROLE_ID_C", user_cstm.ROLE_ID_C); paramCstm.Add("@HO_TEN_C", user_cstm.HO_TEN_C); paramCstm.Add("@AGENT_ID_C", user_cstm.AGENT_ID_C); SqlForm[] sqlForms = new SqlForm[2]; sqlForms[0] = new SqlForm(userSql, param); sqlForms[1] = new SqlForm(userCstmSql, paramCstm); DapperORM.ExecuteTransaction(sqlForms); return(id); } catch (Exception e) { return(new Guid("00000000-0000-0000-0000-000000000000")); } }