public async Task <ModelMenuC2Data> GetProjectNumberWithDataC2Async(string project_number)
        {
            string sql = "SELECT (C.first_name + C.full_name) AS project_head_name, B.faculty_name, B.project_name_thai, B.project_name_eng " +
                         "FROM Doc_MenuB1 A " +
                         "INNER JOIN Doc_MenuA1 B ON A.project_id = B.doc_id " +
                         "INNER JOIN RegisterUser C ON B.project_head = C.register_id " +
                         "LEFT JOIN MST_AcceptType D ON A.accept_type = D.id " +
                         "WHERE A.project_key_number='" + project_number + "'";

            using (SqlConnection conn = new SqlConnection(ConnectionString))
            {
                conn.Open();
                using (SqlCommand command = new SqlCommand(sql, conn))
                {
                    SqlDataReader reader = await command.ExecuteReaderAsync();

                    if (reader.HasRows)
                    {
                        ModelMenuC2Data e = new ModelMenuC2Data();
                        while (await reader.ReadAsync())
                        {
                            e.projectheadname = reader["project_head_name"].ToString();
                            e.projectnamethai = reader["project_name_thai"].ToString();
                            e.projectnameeng  = reader["project_name_eng"].ToString();
                            e.facultyname     = reader["faculty_name"].ToString();
                        }
                        return(e);
                    }
                }
                conn.Close();
            }
            return(null);
        }
        public async Task <ModelMenuC2Data> GetRegisterUserDataC2Async(string register_id)
        {
            string register_id_ = Encoding.UTF8.GetString(Convert.FromBase64String(register_id));

            string sql = "SELECT A.register_id, A.first_name, A.full_name, A.work_phone, A.mobile, B.name_thai as position_name " +
                         "FROM RegisterUser A INNER JOIN MST_Character B ON A.position = B.id " +
                         "WHERE register_id='" + register_id_ + "'";

            using (SqlConnection conn = new SqlConnection(ConnectionString))
            {
                conn.Open();
                using (SqlCommand command = new SqlCommand(sql, conn))
                {
                    SqlDataReader reader = await command.ExecuteReaderAsync();

                    if (reader.HasRows)
                    {
                        ModelMenuC2Data e = new ModelMenuC2Data();
                        while (await reader.ReadAsync())
                        {
                            e.registerid        = reader["register_id"].ToString();
                            e.fullname          = reader["first_name"].ToString() + " " + reader["full_name"].ToString();
                            e.positionname      = reader["position_name"].ToString();
                            e.ListProjectNumber = await GetAllProjectAsync(register_id, "C2,C34");
                        }
                        return(e);
                    }
                }
                conn.Close();
            }
            return(null);
        }
        public async Task <IActionResult> GetRegisterUserDataC2(string RegisterId)
        {
            ModelMenuC2Data e = await _IDocMenuCService.GetRegisterUserDataC2Async(RegisterId);

            if (e != null)
            {
                return(Ok(e));
            }
            else
            {
                return(BadRequest());
            }
        }
        public async Task <IActionResult> GetProjectNumberWithDataC2(string ProjectNumber)
        {
            ModelMenuC2Data e = await _IDocMenuCService.GetProjectNumberWithDataC2Async(ProjectNumber);

            if (e != null)
            {
                return(Ok(e));
            }
            else
            {
                return(BadRequest());
            }
        }