public void validate_when_FabricGradeTests_moreThan_1() { var fabricGradeTests = new List <FabricGradeTestViewModel>() { new FabricGradeTestViewModel() { InitLength = 0, AvalLength = 2, SampleLength = 2, Width = 0, PcsNo = "PcsNo", PointLimit = 1, PointSystem = 1, Criteria = new List <CriteriaViewModel>() { new CriteriaViewModel() { Code = "Code", Group = "Group", Name = "Name" } } } }; FabricQualityControlViewModel viewModel = new FabricQualityControlViewModel() { FabricGradeTests = fabricGradeTests }; var result = viewModel.Validate(null); Assert.True(0 < result.Count()); }
public void validate_default() { FabricQualityControlViewModel viewModel = new FabricQualityControlViewModel(); var result = viewModel.Validate(null); Assert.True(0 < result.Count()); }
public void Should_Success_Instantiate() { var time = DateTimeOffset.Now; var fabricGradeTests = new List <FabricGradeTestViewModel>() { new FabricGradeTestViewModel() { } }; FabricQualityControlViewModel viewModel = new FabricQualityControlViewModel() { Active = true, Buyer = "Buyer", CartNo = "CartNo", Code = "Code", Color = "Color", Construction = "Construction", DateIm = time, IsUsed = true, Group = "Group", KanbanCode = "KanbanCode", KanbanId = 1, MachineNoIm = "MachineNoIm", OperatorIm = "OperatorIm", OrderQuantity = 1, PackingInstruction = "PackingInstruction", PointLimit = 1, ProductionOrderNo = "ProductionOrderNo", ShiftIm = "ShiftIm", PointSystem = 1, UId = "UId", ProductionOrderType = "ProductionOrderType", Uom = "Uom", FabricGradeTests = fabricGradeTests }; Assert.True(viewModel.Active); Assert.Equal("Buyer", viewModel.Buyer); Assert.Equal("CartNo", viewModel.CartNo); Assert.Equal("Code", viewModel.Code); Assert.Equal("Color", viewModel.Color); Assert.Equal("Construction", viewModel.Construction); Assert.Equal(time, viewModel.DateIm); Assert.True(viewModel.IsUsed); Assert.Equal("Group", viewModel.Group); Assert.Equal(1, viewModel.KanbanId); Assert.Equal("MachineNoIm", viewModel.MachineNoIm); Assert.Equal("OperatorIm", viewModel.OperatorIm); Assert.Equal(1, viewModel.OrderQuantity); Assert.Equal("PackingInstruction", viewModel.PackingInstruction); Assert.Equal(1, viewModel.PointLimit); Assert.Equal("ProductionOrderNo", viewModel.ProductionOrderNo); Assert.Equal("ShiftIm", viewModel.ShiftIm); Assert.Equal(1, viewModel.PointSystem); Assert.Equal("UId", viewModel.UId); Assert.Equal("ProductionOrderType", viewModel.ProductionOrderType); Assert.Equal("Uom", viewModel.Uom); Assert.Equal(fabricGradeTests, viewModel.FabricGradeTests); }
public void Should_Validator_Success() { var dataUtil = new FabricQualityControlViewModel(); var validator = new FabricQualityControlValidator(); var result = validator.Validate(dataUtil); Assert.NotEqual(0, result.Errors.Count); }
public void validate_when_PointSystem_Equal_4() { FabricQualityControlViewModel viewModel = new FabricQualityControlViewModel() { PointSystem = 4 }; var result = viewModel.Validate(null); Assert.True(0 < result.Count()); }
public void Mapping_With_AutoMapper_Profiles() { var configuration = new MapperConfiguration(cfg => { cfg.AddProfile <FabricQualityControlProfile>(); }); var mapper = configuration.CreateMapper(); FabricQualityControlViewModel vm = new FabricQualityControlViewModel { Id = 1 }; FabricQualityControlModel model = mapper.Map <FabricQualityControlModel>(vm); Assert.Equal(vm.Id, model.Id); }
public void validate_when_SampleLength_and_avalength_moreThan_InitLength() { var fabricGradeTests = new List <FabricGradeTestViewModel>() { new FabricGradeTestViewModel() { InitLength = 2, AvalLength = 2, SampleLength = 1, Width = 0, } }; FabricQualityControlViewModel viewModel = new FabricQualityControlViewModel() { FabricGradeTests = fabricGradeTests }; var result = viewModel.Validate(null); Assert.True(0 < result.Count()); }
public async Task Should_NotValid_Put() { var dataUtil = new FabricQualityControlViewModel(); //v var serviceMock = new Mock <IFabricQualityControlService>(); serviceMock.Setup(s => s.Update(It.IsAny <int>(), It.IsAny <FabricQualityControlViewModel>())).ReturnsAsync(1); var service = serviceMock.Object; var identityProviderMock = new Mock <IIdentityProvider>(); var identityProvider = identityProviderMock.Object; var controller = GetController(service, identityProvider); controller.ModelState.AddModelError("test", "test"); //controller.ModelState.IsValid == false; var response = await controller.Put(dataUtil.Id, dataUtil); Assert.Equal((int)HttpStatusCode.BadRequest, GetStatusCode(response)); }
public async Task <IActionResult> Post([FromBody] FabricQualityControlViewModel viewModel) { if (!ModelState.IsValid) { var excpetion = new { error = ResultFormatter.FormatErrorMessage(ModelState) }; return(new BadRequestObjectResult(excpetion)); } try { VerifyUser(); var result = await _service.Create(viewModel); return(Created("/", result)); } catch (Exception ex) { return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message)); } }
public async Task <IActionResult> Put([FromRoute] int id, [FromBody] FabricQualityControlViewModel viewModel) { VerifyUser(); if (!ModelState.IsValid) { var exception = new { error = ResultFormatter.FormatErrorMessage(ModelState) }; return(new BadRequestObjectResult(exception)); } try { await _service.Update(id, viewModel); return(NoContent()); } catch (Exception ex) { return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message)); } }
public MemoryStream GeneratePdfTemplate(FabricQualityControlViewModel viewModel, int timeoffset) { const int MARGIN = 20; Font header_font = FontFactory.GetFont(BaseFont.HELVETICA, BaseFont.CP1250, BaseFont.NOT_EMBEDDED, 14); Font normal_font = FontFactory.GetFont(BaseFont.HELVETICA, BaseFont.CP1250, BaseFont.NOT_EMBEDDED, 8); Font body_font = FontFactory.GetFont(BaseFont.HELVETICA, BaseFont.CP1250, BaseFont.NOT_EMBEDDED, 8); Font normal_font_underlined = FontFactory.GetFont(BaseFont.HELVETICA, BaseFont.CP1250, BaseFont.NOT_EMBEDDED, 8, Font.UNDERLINE); Font bold_font = FontFactory.GetFont(BaseFont.HELVETICA_BOLD, BaseFont.CP1250, BaseFont.NOT_EMBEDDED, 8); Font body_bold_font = FontFactory.GetFont(BaseFont.HELVETICA_BOLD, BaseFont.CP1250, BaseFont.NOT_EMBEDDED, 8); Document document = new Document(PageSize.A4, MARGIN, MARGIN, MARGIN, MARGIN); MemoryStream stream = new MemoryStream(); PdfWriter writer = PdfWriter.GetInstance(document, stream); document.Open(); #region Header PdfPTable headerTable = new PdfPTable(2); PdfPCell cellHeaderCS2 = new PdfPCell() { Border = Rectangle.NO_BORDER, Colspan = 2, PaddingTop = 1, PaddingBottom = 1 }; PdfPCell cellHeader = new PdfPCell() { Border = Rectangle.NO_BORDER, PaddingTop = 1, PaddingBottom = 1 }; float[] widths = new float[] { 1f, 4f }; headerTable.SetWidths(widths); headerTable.WidthPercentage = 100; cellHeaderCS2.Phrase = new Phrase("FM-FP-00-PC-19-020", body_bold_font); cellHeaderCS2.HorizontalAlignment = Element.ALIGN_RIGHT; headerTable.AddCell(cellHeaderCS2); cellHeaderCS2.Phrase = new Phrase("Pemeriksaan Kain", header_font); cellHeaderCS2.HorizontalAlignment = Element.ALIGN_CENTER; headerTable.AddCell(cellHeaderCS2); //cellHeaderCS4.Phrase = new Phrase("KARTU PENGANTAR PROSES PRODUKSI", normal_font_underlined); //cellHeaderCS4.HorizontalAlignment = Element.ALIGN_CENTER; //headerTable.AddCell(cellHeaderCS4); //cellHeaderCS4.Phrase = new Phrase($"Delivery: {DateTime.Now.ToString("dd MMMM yyyy", new System.Globalization.CultureInfo("id-ID"))}", body_font); ////cellHeader.Phrase = new Phrase($"Delivery: {viewModel.ProductionOrder.DeliveryDate.Value.ToString("dd MMMM yyyy", new System.Globalization.CultureInfo("id-ID"))}", normal_font); //cellHeaderCS4.HorizontalAlignment = Element.ALIGN_RIGHT; //headerTable.AddCell(cellHeaderCS4); //cellHeaderCS4.Phrase = new Phrase("--------------------------------", bold_font); //cellHeaderCS4.HorizontalAlignment = Element.ALIGN_RIGHT; //headerTable.AddCell(cellHeaderCS4); cellHeaderCS2.Phrase = new Phrase("", bold_font); cellHeaderCS2.HorizontalAlignment = Element.ALIGN_CENTER; headerTable.AddCell(cellHeaderCS2); cellHeader.Phrase = new Phrase("Nomor Pemeriksaan Kain", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.Code}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Tanggal IM", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.DateIm.Value.ToString("dd MMMM yyyy", new System.Globalization.CultureInfo("id-ID"))}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Shift", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.ShiftIm}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Operator IM", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.OperatorIm}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Nomor Mesin IM", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.MachineNoIm}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Nomor Kereta", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.CartNo}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Nomor Order", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.ProductionOrderNo}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Jenis Order", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.ProductionOrderType}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Konstruksi", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.Construction}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Buyer", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.Buyer}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Warna", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.Color}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Jumlah Order", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.OrderQuantity}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase("Packing Instruction", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); cellHeader.Phrase = new Phrase($": {viewModel.PackingInstruction}", body_font); cellHeader.HorizontalAlignment = Element.ALIGN_LEFT; headerTable.AddCell(cellHeader); document.Add(headerTable); #endregion Header document.Add(new Paragraph("\n")); #region Body Table PdfPTable bodyTable = new PdfPTable(7); float[] bodyTableWidths = new float[] { 1f, 1f, 1f, 1f, 1f, 1f, 1f }; bodyTable.SetWidths(bodyTableWidths); bodyTable.WidthPercentage = 100; #region Set Body Table Header PdfPCell bodyTableHeader = new PdfPCell() { FixedHeight = 20 }; //PdfPCell table1RightCellHeader = new PdfPCell() { FixedHeight = 20, Colspan = 4 }; bodyTableHeader.Phrase = new Phrase("No Pcs", body_bold_font); bodyTableHeader.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableHeader.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableHeader); bodyTableHeader.Phrase = new Phrase("Panjang Pcs", body_bold_font); bodyTableHeader.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableHeader.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableHeader); bodyTableHeader.Phrase = new Phrase("Lebar Pcs", body_bold_font); bodyTableHeader.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableHeader.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableHeader); bodyTableHeader.Phrase = new Phrase("Aval", body_bold_font); bodyTableHeader.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableHeader.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableHeader); bodyTableHeader.Phrase = new Phrase("Sampel", body_bold_font); bodyTableHeader.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableHeader.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableHeader); bodyTableHeader.Phrase = new Phrase("Nilai", body_bold_font); bodyTableHeader.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableHeader.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableHeader); bodyTableHeader.Phrase = new Phrase("Grade", body_bold_font); bodyTableHeader.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableHeader.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableHeader); #endregion #region Set Body Table Value PdfPCell bodyTableCell = new PdfPCell() { FixedHeight = 15 }; foreach (var fabricGradeTest in viewModel.FabricGradeTests) { bodyTableCell.Phrase = new Phrase($"{fabricGradeTest.PcsNo}", body_font); bodyTableCell.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableCell.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableCell); bodyTableCell.Phrase = new Phrase($"{fabricGradeTest.InitLength}", body_font); bodyTableCell.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableCell.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableCell); bodyTableCell.Phrase = new Phrase($"{fabricGradeTest.Width}", body_font); bodyTableCell.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableCell.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableCell); bodyTableCell.Phrase = new Phrase($"{fabricGradeTest.AvalLength}", body_font); bodyTableCell.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableCell.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableCell); bodyTableCell.Phrase = new Phrase($"{fabricGradeTest.SampleLength}", body_font); bodyTableCell.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableCell.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableCell); bodyTableCell.Phrase = new Phrase($"{fabricGradeTest.Score}", body_font); bodyTableCell.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableCell.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableCell); bodyTableCell.Phrase = new Phrase($"{fabricGradeTest.Grade}", body_font); bodyTableCell.HorizontalAlignment = Element.ALIGN_CENTER; bodyTableCell.VerticalAlignment = Element.ALIGN_CENTER; bodyTable.AddCell(bodyTableCell); } //try //{ // document.Add(bodyTable1); //} //catch(Exception e) //{ // throw new Exception(e.Message); //} #endregion document.Add(bodyTable); #endregion document.Add(new Paragraph("\n")); #region Footer Table PdfPTable footerTable = new PdfPTable(3); float[] footerTableWidths = new float[] { 30f, 30f, 30f }; footerTable.SetWidths(footerTableWidths); footerTable.WidthPercentage = 100; PdfPCell thinCell = new PdfPCell() { FixedHeight = 20 }; PdfPCell thickCell = new PdfPCell() { FixedHeight = 60 }; thinCell.Phrase = new Phrase("Dibuat Oleh", body_bold_font); thinCell.HorizontalAlignment = Element.ALIGN_CENTER; thinCell.VerticalAlignment = Element.ALIGN_CENTER; footerTable.AddCell(thinCell); thinCell.Phrase = new Phrase("Mengetahui", body_bold_font); thinCell.HorizontalAlignment = Element.ALIGN_CENTER; thinCell.VerticalAlignment = Element.ALIGN_CENTER; footerTable.AddCell(thinCell); thinCell.Phrase = new Phrase("Menyetujui", body_bold_font); thinCell.HorizontalAlignment = Element.ALIGN_CENTER; thinCell.VerticalAlignment = Element.ALIGN_CENTER; footerTable.AddCell(thinCell); for (int i = 0; i < 3; i++) { thickCell.Phrase = new Phrase("", body_bold_font); thickCell.HorizontalAlignment = Element.ALIGN_CENTER; thickCell.VerticalAlignment = Element.ALIGN_CENTER; footerTable.AddCell(thickCell); } thinCell.Phrase = new Phrase("ADMIN QC", body_bold_font); thinCell.HorizontalAlignment = Element.ALIGN_CENTER; thinCell.VerticalAlignment = Element.ALIGN_CENTER; footerTable.AddCell(thinCell); thinCell.Phrase = new Phrase("KABAG QC", body_bold_font); thinCell.HorizontalAlignment = Element.ALIGN_CENTER; thinCell.VerticalAlignment = Element.ALIGN_CENTER; footerTable.AddCell(thinCell); thinCell.Phrase = new Phrase("KASUBSIE QC", body_bold_font); thinCell.HorizontalAlignment = Element.ALIGN_CENTER; thinCell.VerticalAlignment = Element.ALIGN_CENTER; footerTable.AddCell(thinCell); document.Add(footerTable); #endregion document.Close(); byte[] byteInfo = stream.ToArray(); stream.Write(byteInfo, 0, byteInfo.Length); stream.Position = 0; return(stream); }