private bool CheckExists(PhieuModel Receipt, HMSEntities db) { H_Receiption obj = null; if (!string.IsNullOrEmpty(Receipt.SoPhieu)) { obj = db.H_Receiption.FirstOrDefault(x => !x.IsDeleted && x.Id != Receipt.Id && x.Code.Trim().ToUpper().Equals(Receipt.SoPhieu.Trim().ToUpper())); } return(obj != null ? true : false); }
public ResponseModel Edit(string connectString, PhieuEditModel model) { var result = new ResponseModel(); result.IsSuccess = true; using (var db = new HMSEntities(connectString)) { try { H_Receiption receiptInfo = db.H_Receiption.FirstOrDefault(x => !x.IsDeleted && x.Id == model.Id); if (receiptInfo != null) { receiptInfo.NV_KTTruong = model.KTDKyId; receiptInfo.NV_SuaXe = model.SuaXeId; receiptInfo.NV_ThuNgan = model.ThuNganId; receiptInfo.NV_TiepNhan = model.TiepNhanId; receiptInfo.NV_KTCuoi = model.KTraCuoiId; receiptInfo.Required = model.YeuCau; receiptInfo.CheckResult = model.NhanXet; receiptInfo.StatusBefore = model.TrangThai; receiptInfo.Note = model.GhiChu; receiptInfo.Total_Cong = model.DichVus.Sum(x => x.GiaCK); receiptInfo.Total_PTung = model.PhuTungs.Sum(x => x.GiaCK); receiptInfo.Total = receiptInfo.Total_Cong + receiptInfo.Total_PTung; receiptInfo.Total_NhapPT = model.PhuTungs.Sum(x => x.GiaBan * x.SoLuong); receiptInfo.SL_PT = model.PhuTungs.Count(x => x.PTId != null); receiptInfo.Date = (model.NgaySua.Year == 1 ? DateTime.Now : model.NgaySua); string query = ""; if (model.DichVus != null && model.DichVus.Count > 0) { query += (" update [H_Receipt_DichVu] set isdeleted=1 where ReceiptId=" + model.Id); receiptInfo.H_Receipt_DichVu = new List <H_Receipt_DichVu>(); for (int i = 0; i < model.DichVus.Count; i++) { if (model.DichVus[i].DVId > 0) { query += " INSERT INTO [dbo].[H_Receipt_DichVu] ([ReceiptId],[DichVuId],[Index],[Price],[Percent],[PricePercent],[IsDeleted]) VALUES (" + model.Id + "," + model.DichVus[i].DVId + ",1,'" + model.DichVus[i].GiaBan.ToString().Replace(',', '.') + "','" + model.DichVus[i].CKhau.ToString().Replace(',', '.') + "','" + model.DichVus[i].GiaCK.ToString().Replace(',', '.') + "',0)"; } } } if (model.PhuTungs != null && model.PhuTungs.Count > 0) { query += (" update [H_Receipt_PT] set isdeleted=1 where ReceiptId=" + model.Id); receiptInfo.H_Receipt_DichVu = new List <H_Receipt_DichVu>(); for (int i = 0; i < model.PhuTungs.Count; i++) { if (model.PhuTungs[i].PTId > 0) { query += " INSERT INTO [dbo].[H_Receipt_PT] ([ReceiptId],[PT_Id],[Index],[Quantities],[Price],[Percent],[PricePercent],[Total],[IsDeleted]) VALUES (" + model.Id + "," + model.PhuTungs[i].PTId + ",1," + model.PhuTungs[i].SoLuong + ",'" + model.PhuTungs[i].GiaBan.ToString().Replace(',', '.') + "','" + model.PhuTungs[i].CKhau.ToString().Replace(',', '.') + "','" + model.PhuTungs[i].GiaCK.ToString().Replace(',', '.') + "','" + (model.PhuTungs[i].SoLuong * model.PhuTungs[i].GiaCK).ToString().Replace(',', '.') + "',0)"; } } } if (!string.IsNullOrEmpty(query)) { db.Database.ExecuteSqlCommand(query); } db.SaveChanges(); } else { result.IsSuccess = false; result.sms = "Phiếu dịch vụ này đã bị xóa hoặc không tồn tại trong hệ thống. Vui lòng kiểm tra lại."; } } catch (Exception ex) { } return(result); } }
public ResponseModel Insert(string connectString, PhieuModel model) { var result = new ResponseModel(); result.IsSuccess = true; using (var db = new HMSEntities(connectString)) { if (!CheckExists(model, db)) { try { H_Receiption receiptInfo; H_KhachHang khObj = null; receiptInfo = new H_Receiption(); if (model.Id == 0) { khObj = new H_KhachHang() { Code = model.Ma, Name = model.Ten, Gender = model.GTinh, Birthday = model.NSinh, Phone = model.DThoai, Address = model.DChi, City = model.TPho, District = model.Huyen, Wards = model.Phuong, JobId = model.JobId, Note = model.Note }; khObj.H_Receiption = new List <H_Receiption>(); } receiptInfo.KHId = model.Id; receiptInfo.H_KhachHang = khObj; receiptInfo.Code = model.SoPhieu; receiptInfo.ModelId = model.ModelId; receiptInfo.LicenseNumber = model.BienSo; receiptInfo.MachineNumber = model.SoMay; receiptInfo.ChassisNumber = model.SoKhung; receiptInfo.New_Km = model.Km; receiptInfo.Required = model.Yeucau; receiptInfo.CheckResult = model.Nhanxet; receiptInfo.StatusBefore = model.Trangthai; receiptInfo.Note = model.GhiChu; receiptInfo.WorkTypeId = model.WTypeId; receiptInfo.CreatedDate = DateTime.Now; receiptInfo.Date = (model.Ngay.Year == 1 ? DateTime.Now : model.Ngay); receiptInfo.QMSServiceId = model.QMSServiceId; receiptInfo.Index = model.Index; if (model.XeId > 0) { receiptInfo.SellReceiptId = model.XeId; var xe = db.H_SellReceipt.FirstOrDefault(x => !x.IsDeleted && x.Id == model.XeId); if (xe != null) { xe.LicenseNumber = model.BienSo; } } db.H_Receiption.Add(receiptInfo); if (result.IsSuccess) { db.SaveChanges(); } } catch (Exception ex) { } } else { result.IsSuccess = false; result.sms = "Số phiếu này đã tồn tại trong hệ thống. Vui lòng nhập lại số phiếu khác."; } return(result); } }