public static List <DetailSpecComponent> GetComponent(List <tb_m_detail_spec> _data, tb_m_detail_spec _value, List <int> ignoreOrder) { List <DetailSpecComponent> specs = new List <DetailSpecComponent>(); List <tb_m_detail_spec> listOrder = new List <tb_m_detail_spec>(); listOrder.Add(_data[0]); List <tb_m_detail_spec> listHeader = new List <tb_m_detail_spec>(); listHeader.Add(_data[1]); List <tb_m_detail_spec> listValue = new List <tb_m_detail_spec>(); listValue.Add(_value); DataTable dtOrder = listOrder.ToDataTable(); DataTable dtHeader = listHeader.ToDataTable(); DataTable dtValue = listValue.ToDataTable(); foreach (DataRow dtRow in dtOrder.Rows) { foreach (DataColumn dcOrder in dtOrder.Columns) { DetailSpecComponent spec = new DetailSpecComponent(); if (ExcelColumn.dataIndex.Contains(dcOrder.ToString())) { String order = dtRow[dcOrder].ToString(); if (String.IsNullOrEmpty(order)) { continue; } spec.order = Convert.ToInt16(order); //---- foreach (DataRow dtRowHeader in dtHeader.Rows) { foreach (DataColumn dcHeader in dtHeader.Columns) { if (dcOrder.ToString().Equals(dcHeader.ToString())) { String specName = dtRowHeader[dcHeader].ToString(); if (specName.Equals("Total Silanes (ng/cm2)")) { spec.name = specName; } else { spec.name = specName.Substring(0, specName.IndexOf('(') == -1 ? specName.Length : specName.IndexOf('(')).Trim(); } break; } } } //---- //---- foreach (DataRow dtRowValue in dtValue.Rows) { foreach (DataColumn dcValue in dtValue.Columns) { if (dcOrder.ToString().Equals(dcValue.ToString())) { String value = dtRowValue[dcValue].ToString(); spec.value = value; break; } } } //---- } specs.Add(spec); } } return(specs.Where(x => !ignoreOrder.Contains(x.order)).OrderBy(x => x.order).ToList()); }
private void initialPage() { this.CommandName = CommandNameEnum.Add; tb_m_detail_spec detailSpec = new tb_m_detail_spec(); detailSpec.specification_id = this.jobSample.specification_id; detailSpec.template_id = this.jobSample.template_id; tb_m_component comp = new tb_m_component(); comp.specification_id = this.jobSample.specification_id; comp.template_id = this.jobSample.template_id; ddlAssignTo.Items.Clear(); ddlAssignTo.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.LOGIN_SELECT_SPEC), Convert.ToInt16(StatusEnum.LOGIN_SELECT_SPEC) + "")); ddlAssignTo.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.CHEMIST_TESTING), Convert.ToInt16(StatusEnum.CHEMIST_TESTING) + "")); ddlAssignTo.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.SR_CHEMIST_CHECKING), Convert.ToInt16(StatusEnum.SR_CHEMIST_CHECKING) + "")); ddlAssignTo.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.ADMIN_CONVERT_WORD), Convert.ToInt16(StatusEnum.ADMIN_CONVERT_WORD) + "")); ddlAssignTo.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.LABMANAGER_CHECKING), Convert.ToInt16(StatusEnum.LABMANAGER_CHECKING) + "")); ddlAssignTo.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.ADMIN_CONVERT_PDF), Convert.ToInt16(StatusEnum.ADMIN_CONVERT_PDF) + "")); #region "SAMPLE" if (this.jobSample != null) { RoleEnum userRole = (RoleEnum)Enum.Parse(typeof(RoleEnum), userLogin.role_id.ToString(), true); StatusEnum status = (StatusEnum)Enum.Parse(typeof(StatusEnum), this.jobSample.job_status.ToString(), true); lbJobStatus.Text = Constants.GetEnumDescription(status); ddlStatus.Items.Clear(); pRemark.Visible = false; pDisapprove.Visible = false; pStatus.Visible = false; pUploadfile.Visible = false; pDownload.Visible = false; btnSubmit.Visible = false; lbDowloadWorkSheet.Text = this.jobSample.job_number; pUploadWorkSheet.Visible = false; pCoverpage.Visible = true; switch (userRole) { case RoleEnum.LOGIN: if (status == StatusEnum.LOGIN_SELECT_SPEC) { pRemark.Visible = false; pDisapprove.Visible = false; pStatus.Visible = false; pUploadfile.Visible = false; pDownload.Visible = false; btnSubmit.Visible = true; } break; case RoleEnum.CHEMIST: if (status == StatusEnum.CHEMIST_TESTING) { pRemark.Visible = false; pDisapprove.Visible = false; pStatus.Visible = false; pUploadfile.Visible = false; pDownload.Visible = false; btnSubmit.Visible = true; pUploadWorkSheet.Visible = true; } break; case RoleEnum.SR_CHEMIST: if (status == StatusEnum.SR_CHEMIST_CHECKING) { ddlStatus.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.SR_CHEMIST_APPROVE), Convert.ToInt16(StatusEnum.SR_CHEMIST_APPROVE) + "")); ddlStatus.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.SR_CHEMIST_DISAPPROVE), Convert.ToInt16(StatusEnum.SR_CHEMIST_DISAPPROVE) + "")); pRemark.Visible = false; pDisapprove.Visible = false; pStatus.Visible = true; pUploadfile.Visible = false; pDownload.Visible = false; btnSubmit.Visible = true; } break; case RoleEnum.ADMIN: lbDownload.Text = this.jobSample.job_number; switch (status) { case StatusEnum.ADMIN_CONVERT_WORD: pRemark.Visible = false; pDisapprove.Visible = false; pStatus.Visible = false; pUploadfile.Visible = true; pDownload.Visible = true; btnSubmit.Visible = true; pCoverpage.Visible = false; lbDesc.Text = "ดาวโหลดไฟล์ Excel ที่ผ่านการ Sr.Chemist Approve แล้วมาแปลงเป็นไฟล์ word"; break; case StatusEnum.ADMIN_CONVERT_PDF: pRemark.Visible = false; pDisapprove.Visible = false; pStatus.Visible = false; pUploadfile.Visible = true; pDownload.Visible = true; btnSubmit.Visible = true; pCoverpage.Visible = false; lbDesc.Text = "ดาวโหลดไฟล์ word ที่ผ่านการ labManager Approve แล้วมาแปลงเป็นไฟล์ pdf"; break; } //if (status == StatusEnum.ADMIN_CONVERT_PDF || status == StatusEnum.ADMIN_CONVERT_WORD) //{ // pRemark.Visible = false; // pDisapprove.Visible = false; // pStatus.Visible = false; // pUploadfile.Visible = true; // pDownload.Visible = true; // btnSubmit.Visible = true; // pCoverpage.Visible = false; //} break; case RoleEnum.LABMANAGER: if (status == StatusEnum.LABMANAGER_CHECKING) { lbDownload.Text = this.jobSample.job_number; lbDesc.Text = "ดาวโหลดไฟล์ word มาตรวจสอบ"; ddlStatus.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.LABMANAGER_APPROVE), Convert.ToInt16(StatusEnum.LABMANAGER_APPROVE) + "")); ddlStatus.Items.Add(new ListItem(Constants.GetEnumDescription(StatusEnum.LABMANAGER_DISAPPROVE), Convert.ToInt16(StatusEnum.LABMANAGER_DISAPPROVE) + "")); pRemark.Visible = false; pDisapprove.Visible = false; pStatus.Visible = true; pUploadfile.Visible = false; pDownload.Visible = true; btnSubmit.Visible = true; pCoverpage.Visible = false; } break; } #region "METHOD/PROCEDURE:" if (status == StatusEnum.CHEMIST_TESTING || userLogin.role_id == Convert.ToInt32(RoleEnum.CHEMIST)) { #region ":: STAMP ANALYZED DATE ::" if (userLogin.role_id == Convert.ToInt32(RoleEnum.CHEMIST)) { if (this.jobSample.date_chemist_alalyze == null) { this.jobSample.date_chemist_alalyze = DateTime.Now; this.jobSample.Update(); } } #endregion btnCoverPage.Visible = true; btnDHS.Visible = true; } else { btnCoverPage.Visible = false; btnDHS.Visible = false; if (userLogin.role_id == Convert.ToInt32(RoleEnum.SR_CHEMIST)) { btnCoverPage.Visible = true; btnDHS.Visible = true; } } #endregion } #endregion //initial button. btnCoverPage.CssClass = "btn blue"; btnDHS.CssClass = "btn green"; //pCoverpage.Visible = true; pDSH.Visible = false; //switch (lbJobStatus.Text) //{ // case "CONVERT_PDF": // litDownloadIcon.Text = "<i class=\"fa fa-file-pdf-o\"></i>"; // break; // default: // litDownloadIcon.Text = "<i class=\"fa fa-file-word-o\"></i>"; // break; //} }
public void ReportWdDhs1(List <template_wd_dhs_coverpage> listResult) { //ReportHeader(); #region "Body" s.AddParagraph().AppendText("Results").ApplyCharacterFormat(bodyFormat); tb_m_detail_spec _detailSpec = new tb_m_detail_spec().SelectByID(listResult[0].detail_spec_id.Value); if (_detailSpec != null) { s.AddParagraph().AppendText(String.Format("The Specification is based on Western Digital's document no. {0} {1}", _detailSpec.B, _detailSpec.A)).ApplyCharacterFormat(bodyFormat); } Table tableResult = s.AddTable(true); String[] HeaderResult = { "Required Test", "Analytes", "Specification Limits(ng / part)", "Results(ng / part)", "PASS / FAIL" }; //Add Cells tableResult.ResetCells(listResult.Count, HeaderResult.Length); //Header Row TableRow FRowResult = tableResult.Rows[0]; FRowResult.IsHeader = true; //Row Height FRowResult.Height = fontSize; //Header Format FRowResult.RowFormat.BackColor = Color.LightGray; for (int i = 0; i < HeaderResult.Length; i++) { //Cell Alignment Paragraph p = FRowResult.Cells[i].AddParagraph(); FRowResult.Cells[i].CellFormat.VerticalAlignment = VerticalAlignment.Middle; p.Format.HorizontalAlignment = HorizontalAlignment.Center; //Data Format p.AppendText(HeaderResult[i]).ApplyCharacterFormat(bodyFormat); } StringBuilder sb = new StringBuilder(); for (int i = 0; i < listResult.Count; i++) { TableRow DataRow = tableResult.Rows[i]; Paragraph pRow = DataRow.Cells[0].AddParagraph(); pRow.AppendText("DHS").ApplyCharacterFormat(bodyFormat); pRow.Format.HorizontalAlignment = HorizontalAlignment.Center; sb.Append(String.Format("{0},{1},{2},{3},{4},{5},{6}\n", i, pRow.IsComposite, pRow.IsDeleteRevision, pRow.IsEndOfDocument, pRow.IsEndOfSection, pRow.IsInCell, pRow.IsInsertRevision)); pRow = DataRow.Cells[1].AddParagraph(); pRow.AppendText(listResult[i].analytes).ApplyCharacterFormat(bodyFormat); pRow.Format.HorizontalAlignment = HorizontalAlignment.Center; pRow = DataRow.Cells[2].AddParagraph(); pRow.AppendText(listResult[i].specification_limits).ApplyCharacterFormat(bodyFormat); pRow.Format.HorizontalAlignment = HorizontalAlignment.Center; pRow = DataRow.Cells[3].AddParagraph(); pRow.AppendText(listResult[i].result).ApplyCharacterFormat(bodyFormat); pRow.Format.HorizontalAlignment = HorizontalAlignment.Center; pRow = DataRow.Cells[4].AddParagraph(); pRow.AppendText(listResult[i].result_pass_or_false).ApplyCharacterFormat(bodyFormat); pRow.Format.HorizontalAlignment = HorizontalAlignment.Center; } #endregion MergeHeaderFooter(); }