Example #1
0
        //[Consumes("multipart/form-data")]
        public async Task <IActionResult> CreateDeXuat([FromBody] CreateDeXuatRequest request)
        {
            string MaNhanVien = post().MaNhanVien.ToString();

            request.NhanVienDeXuat = MaNhanVien;
            var result = await _managerDeXuatThanhToanService.CreateDeXuat(request);

            if (result == null)
            {
                return(BadRequest());
            }
            return(Created("ok", MaNhanVien));
        }
Example #2
0
        //public Task<string> CreateDeXuat(CreateDeXuatRequest request)
        //{

        //}

        public async Task <string> CreateDeXuat(CreateDeXuatRequest request)
        {
            var SoLuongNhanVien = from NV in _context.nhanVienCongTacs
                                  where NV.MaChuyenCongTac == request.MaChuyenCongTac
                                  select NV.MaNhanVien;
            var SoluongHoaDon = from HD in _context.thanhToans
                                select HD.MaHoaDon;
            var SoDeXuat = from HD in _context.deXuatThanhToans
                           select HD.MaDeXuat;
            var chuyenCongTac = await _context.chuyenCongTacs.FindAsync(request.MaChuyenCongTac);

            var checkCCT = from DX in _context.deXuatThanhToans
                           select DX;

            foreach (var item in checkCCT)
            {
                if (item.MaChuyenCongTac == request.MaChuyenCongTac)
                {
                    return(null);
                }
            }
            if (chuyenCongTac.TrangThai == "Chua thuc hien")
            {
                throw new TLUException("Chuyến Công tác chua xong  không thể de xuat thanh toan");
            }

            string soLuongDeXuat = SoDeXuat.Count().ToString();

            do
            {
                soLuongDeXuat = (Convert.ToInt32(soLuongDeXuat) + 1).ToString();
            }while (_context.deXuatThanhToans.Find("DX" + soLuongDeXuat) != null);
            var DeXuat = new DeXuatThanhToan()
            {
                MaDeXuat        = "DX" + soLuongDeXuat,
                MaChuyenCongTac = request.MaChuyenCongTac,
                SoNhanVien      = SoLuongNhanVien.Count(),
                TinhTrang       = "Chua xet duyet",
                MaNhanVien      = request.NhanVienDeXuat,
                TongTien        = request.TongTien,
                ThoiGianDeXuat  = DateTime.Now
            };
            //var ChuyenCongTacdf = await _context.chuyenCongTacs.FirstOrDefaultAsync
            //    (x => x.MaChuyenCongTac == request.MaChuyenCongTac);
            //ChuyenCongTacdf.TrangThai = "Da thuc hien";
            string soLuongHoaDon = SoluongHoaDon.Count().ToString();

            do
            {
                soLuongHoaDon = (Convert.ToInt32(soLuongHoaDon) + 1).ToString();
            }while (_context.deXuatThanhToans.Find("HD" + soLuongHoaDon) != null);
            var ThanhToan = new ThanhToan()
            {
                MaHoaDon       = "HD" + soLuongHoaDon,
                MaDeXuat       = DeXuat.MaDeXuat,
                ThoiGianDeXuat = DeXuat.ThoiGianDeXuat,
                TinhTrang      = "Chua xet duyet",
                TongChiPhi     = request.TongTien
            };
            //if (FileHoaDon != null)
            //{
            //    DeXuat.deXuatFiles = new List<DeXuatFile>()
            //    {
            //        new DeXuatFile()
            //        {
            //            FilePath= await this.SaveFile(FileHoaDon)

            //        }
            //    };
            //}
            await _context.deXuatThanhToans.AddAsync(DeXuat);

            await _context.thanhToans.AddAsync(ThanhToan);

            await _context.SaveChangesAsync();

            return(DeXuat.MaDeXuat);
        }