public static decimal GiaIn(CauHinhTinhGiaCuon cauHinhTGCuon) { decimal ketQua = 0; var chiPhiIn = TinhPhi.PhiIn(cauHinhTGCuon.CHinhIn, cauHinhTGCuon.SoToChayTong); var mucLoiNhuanIn_TP = (double)cauHinhTGCuon.MucLoiNhuanInThanhPham_PCT / 100; //Tinh theo muc loi nhuan gop /doanh thu ketQua = chiPhiIn + chiPhiIn * (decimal)mucLoiNhuanIn_TP / (decimal)(1 - mucLoiNhuanIn_TP); return(ketQua); }
public static decimal GiaCanMang(CauHinhTinhGiaCuon cauHinhTGCuon) { decimal ketQua = 0; var maGiayRuot = cauHinhTGCuon.MaGiayAp; //Xác định có màng cán không bằng cách kiểm tra 2 item cuối của mã giấy áp string[] maGiays = maGiayRuot.Split('-'); if (maGiays[maGiays.Length - 1] != "CM") //mục cuối dùng { return(0); } //Có thì tìm mã tờ cán phủ string maToCanMang = ""; foreach (var tcp in ToCanPhuBDO.LayTatCa()) { if (tcp.MA_TO_CAN.Substring(0, 2) == "CM") { maToCanMang = tcp.MA_TO_CAN; break; } } var soToChay = cauHinhTGCuon.SoToChayTong; var toCanPhuBDO = ToCanPhuBDO.LayTheoID(maToCanMang); var cauHinhCan1 = new CauHinhCanPhu(toCanPhuBDO.BHR, toCanPhuBDO.TOC_DO_M2, 2, toCanPhuBDO.THOI_GIAN_CHUAN_BI); var chiPhiCanPhu = TinhPhi.PhiCanMang(cauHinhCan1, soToChay); //Tinh theo muc loi nhuan gop /doanh thu double mucLoiNhuanIn_TP = (double)cauHinhTGCuon.MucLoiNhuanInThanhPham_PCT / 100; ketQua = chiPhiCanPhu + (decimal)mucLoiNhuanIn_TP * chiPhiCanPhu / (1 - (decimal)mucLoiNhuanIn_TP); return(ketQua); }