public async Task <IActionResult> GetAllReportDataHome1([FromBody] ModelMenuHome1_InterfaceData search_data)
        {
            var    requestUri = $"{_WebApiModel.BaseURL}/{"PrivateDocMenuHome"}/{"GetAllReportDataHome1"}";
            string authHeader = HttpContext.Request?.Headers["Authorization"];

            if (authHeader != null && authHeader.StartsWith("Bearer"))
            {
                BearerToken = authHeader.Substring("Bearer ".Length).Trim();
            }
            var response = await HttpRequestFactory.Post(requestUri, BearerToken, search_data);

            switch (response.StatusCode)
            {
            case HttpStatusCode.Unauthorized:
                return(Unauthorized(response.ContentAsString()));

            case HttpStatusCode.BadRequest:
                return(BadRequest(response.ContentAsString()));

            case HttpStatusCode.OK:
                return(Ok(response.ContentAsString()));

            default:
                return(StatusCode(500));
            }
        }
示例#2
0
        public async Task <IActionResult> GetAllReportDataHome1([FromBody] ModelMenuHome1_InterfaceData search_data)
        {
            IList <ModelMenuHome1ReportData> e = await _IDocMenuHomeService.GetAllReportDataHome1Async(search_data);

            if (e != null)
            {
                return(Ok(e));
            }
            else
            {
                return(BadRequest());
            }
        }
示例#3
0
        public async Task <IActionResult> MenuHome1InterfaceData(string RegisterId)
        {
            ModelMenuHome1_InterfaceData e = await _IDocMenuHomeService.MenuHome1InterfaceDataAsync(RegisterId);

            if (e != null)
            {
                return(Ok(e));
            }
            else
            {
                return(BadRequest());
            }
        }
示例#4
0
 public async Task <IList <ModelMenuHome1ReportData> > GetAllReportDataHome1Async(ModelMenuHome1_InterfaceData search_data)
 {
     return(await _IDocMenuHomeRepository.GetAllReportDataHome1Async(search_data));
 }
示例#5
0
        public async Task <IList <ModelMenuHome1ReportData> > GetAllReportDataHome1Async(ModelMenuHome1_InterfaceData search_data)
        {
            ModelPermissionPage user_permission = await _IRegisterUserRepository.GetPermissionPageAsync(search_data.userid, "M001");

            string sql = "SELECT A.*, B.faculty, (B.first_name + ' ' + B.full_name) AS project_head_name " +
                         "FROM Transaction_Document A " +
                         "INNER JOIN RegisterUser B ON A.project_head = B.register_id " +
                         "WHERE 1=1 ";

            if (user_permission != null && user_permission.alldata == false)
            {
                string userid = Encoding.UTF8.GetString(Convert.FromBase64String(search_data.userid));

                sql += " AND (A.project_by='" + userid + "' OR A.committee_code_array LIKE '%" + userid + "%') ";
            }

            if (search_data != null)
            {
                if (!string.IsNullOrEmpty(search_data.year) && search_data.year.ToLower() != "all")
                {
                    sql += " AND A.year ='" + search_data.year + "'";
                }

                if (!string.IsNullOrEmpty(search_data.projecthead) && search_data.projecthead != "YWxs")
                {
                    search_data.projecthead = Encoding.UTF8.GetString(Convert.FromBase64String(search_data.projecthead));
                    sql += " AND A.project_head ='" + search_data.projecthead + "'";
                }

                if (!string.IsNullOrEmpty(search_data.accepttype) && search_data.accepttype.ToLower() != "all")
                {
                    sql += " AND A.project_type ='" + search_data.accepttype + "'";
                }

                if (!string.IsNullOrEmpty(search_data.faculty) && search_data.faculty.ToLower() != "all")
                {
                    sql += " AND B.faculty ='" + search_data.faculty + "'";
                }

                if (!string.IsNullOrEmpty(search_data.acronyms) && search_data.acronyms.ToLower() != "all")
                {
                    sql += " AND A.acronyms ='" + search_data.acronyms + "'";
                }

                if (!string.IsNullOrEmpty(search_data.risk) && search_data.risk.ToLower() != "all")
                {
                    sql += " AND A.risk_type LIKE'%" + search_data.risk + "%'";
                }
            }

            sql += " ORDER BY A.trans_id ASC ";

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

                    if (reader.HasRows)
                    {
                        int row_count = 1;
                        IList <ModelMenuHome1ReportData> e = new List <ModelMenuHome1ReportData>();
                        while (await reader.ReadAsync())
                        {
                            ModelMenuHome1ReportData item = new ModelMenuHome1ReportData();
                            item.project_request_id    = reader["project_request_id"].ToString();
                            item.project_name_thai     = reader["project_name_thai"].ToString();
                            item.project_name_eng      = reader["project_name_eng"].ToString();
                            item.project_number        = reader["project_number"].ToString();
                            item.project_head_name     = reader["project_head_name"].ToString();
                            item.acronyms              = reader["acronyms"].ToString();
                            item.risk_type             = reader["risk_type"].ToString();
                            item.delivery_online_date  = reader["delivery_online_date"].ToString();
                            item.review_request_date   = reader["review_request_date"].ToString();
                            item.result_doc_review     = reader["result_doc_review"].ToString();
                            item.committee_assign_date = reader["committee_assign_date"].ToString();
                            item.committee_name_array  = (user_permission.groupcode == "G002" ? user_permission.fullname : reader["committee_name_array"].ToString());

                            string comment_date = "";
                            if (user_permission.groupcode == "G002")
                            {
                                comment_date = await GetCommentDataAsync(reader["project_number"].ToString(), user_permission.groupcode, search_data.userid);
                            }

                            item.committee_comment_date = (user_permission.groupcode == "G002" ? comment_date : reader["committee_comment_date"].ToString());
                            item.meeting_date           = reader["meeting_date"].ToString();
                            item.meeting_approval_date  = reader["meeting_approval_date"].ToString();

                            string consider_result = reader["consider_result"].ToString() + (!string.IsNullOrEmpty(reader["consider_result"].ToString()) ? " (" + reader["safety_type"].ToString() + ")" : "");
                            item.consider_result = (reader["safety_type"].ToString() == "5" ? "-" : consider_result);

                            item.alert_date = reader["alert_date"].ToString();
                            item.request_edit_meeting_date = reader["request_edit_meeting_date"].ToString(); /////
                            item.request_edit_date         = reader["request_edit_date"].ToString();
                            item.report_status_date        = reader["report_status_date"].ToString();
                            item.certificate_expire_date   = reader["certificate_expire_date"].ToString();
                            item.request_renew_date        = reader["request_renew_date"].ToString();
                            item.close_project_date        = reader["close_project_date"].ToString();     /////
                            item.print_certificate_date    = reader["print_certificate_date"].ToString(); /////
                            e.Add(item);
                            row_count++;
                        }
                        return(e);
                    }
                }
                conn.Close();
            }
            return(null);
        }
示例#6
0
        public async Task <ModelMenuHome1_InterfaceData> MenuHome1InterfaceDataAsync(string RegisterId)
        {
            ModelMenuHome1_InterfaceData resp = new ModelMenuHome1_InterfaceData();

            var cultureInfo = new CultureInfo("th-TH");

            CultureInfo.DefaultThreadCurrentCulture   = cultureInfo;
            CultureInfo.DefaultThreadCurrentUICulture = cultureInfo;

            int thai_year = CommonData.GetYearOfPeriod();

            resp.ListYear = new List <ModelSelectOption>();
            ModelSelectOption year_current = new ModelSelectOption();

            year_current.value = (thai_year).ToString();
            year_current.label = (thai_year).ToString();
            resp.ListYear.Add(year_current);

            for (int i = 1; i < 5; i++)
            {
                ModelSelectOption year_next = new ModelSelectOption();
                year_next.value = (thai_year + i).ToString();
                year_next.label = (thai_year + i).ToString();
                resp.ListYear.Add(year_next);
            }
            ModelSelectOption all_year = new ModelSelectOption();

            all_year.value = "All";
            all_year.label = "เลือก...";
            resp.ListYear.Add(all_year);

            //------------------------------------------------------------------------------------------
            resp.ListProjectHead = await GetAllProjectHeadAsync();

            if (resp.ListProjectHead == null)
            {
                resp.ListProjectHead = new List <ModelSelectOption>();
            }
            ModelSelectOption all_project_head = new ModelSelectOption();

            all_project_head.value = "YWxs";
            all_project_head.label = "เลือก...";
            resp.ListProjectHead.Add(all_project_head);

            //------------------------------------------------------------------------------------------
            resp.ListAcceptType = new List <ModelSelectOption>();
            ModelSelectOption accept_type_1 = new ModelSelectOption();

            accept_type_1.value = "1";
            accept_type_1.label = "ขอรับการพิจารณารับรองด้านความปลอดภัยทางชีวภาพระดับห้องทดลอง";
            resp.ListAcceptType.Add(accept_type_1);
            ModelSelectOption accept_type_2 = new ModelSelectOption();

            accept_type_2.value = "2";
            accept_type_2.label = "ขอรับการพิจารณารับรองด้านความปลอดภัยทางชีวภาพระดับภาคสนาม";
            resp.ListAcceptType.Add(accept_type_2);
            ModelSelectOption accept_type_all = new ModelSelectOption();

            accept_type_all.value = "ALL";
            accept_type_all.label = "เลือก...";
            resp.ListAcceptType.Add(accept_type_all);

            //------------------------------------------------------------------------------------------

            resp.ListFaculty = await GetAllFacultyAsync();

            if (resp.ListFaculty == null)
            {
                resp.ListFaculty = new List <ModelSelectOption>();
            }
            ModelSelectOption faculty_all = new ModelSelectOption();

            faculty_all.value = "All";
            faculty_all.label = "เลือก...";
            resp.ListFaculty.Add(faculty_all);

            //------------------------------------------------------------------------------------------
            resp.ListAcronyms = await GetAllAcronymsAsync();

            if (resp.ListAcronyms == null)
            {
                resp.ListAcronyms = new List <ModelSelectOption>();
            }
            ModelSelectOption acronyms_all = new ModelSelectOption();

            acronyms_all.value = "ALL";
            acronyms_all.label = "เลือก...";
            resp.ListAcronyms.Add(acronyms_all);

            //------------------------------------------------------------------------------------------
            resp.ListRisk = new List <ModelSelectOption>();
            ModelSelectOption risk_1 = new ModelSelectOption();

            risk_1.value = "1";
            risk_1.label = "งานวิจัยประเภทที่ 1";
            resp.ListRisk.Add(risk_1);
            ModelSelectOption risk_2 = new ModelSelectOption();

            risk_2.value = "2";
            risk_2.label = "งานวิจัยประเภทที่ 2";
            resp.ListRisk.Add(risk_2);
            ModelSelectOption risk_3 = new ModelSelectOption();

            risk_3.value = "3";
            risk_3.label = "งานวิจัยประเภทที่ 3";
            resp.ListRisk.Add(risk_3);
            ModelSelectOption risk_4 = new ModelSelectOption();

            risk_4.value = "4";
            risk_4.label = "งานวิจัยประเภทที่ 4";
            resp.ListRisk.Add(risk_4);
            ModelSelectOption risk_all = new ModelSelectOption();

            risk_all.value = "ALL";
            risk_all.label = "เลือก...";
            resp.ListRisk.Add(risk_all);


            //------------------------------------------------------------------------------------------

            resp.UserPermission = await _IRegisterUserRepository.GetPermissionPageAsync(RegisterId, "M001");

            resp.usergroup = (resp.UserPermission.groupcode == "G001" || resp.UserPermission.groupcode == "G005" ? 2 : 1);

            ModelMenuHome1_InterfaceData search_data = new ModelMenuHome1_InterfaceData()
            {
                userid = RegisterId
            };

            resp.ListReportData = new List <ModelMenuHome1ReportData>();

            resp.ListReportData = await GetAllReportDataHome1Async(search_data);

            return(resp);
        }