public Operation Delete(SlsTransferDetail objSlsTransferDetail)
        {
            Operation objOperation = new Operation { Success = true, OperationId = objSlsTransferDetail.Id };
            _TransferDetailRepository.Delete(objSlsTransferDetail);

            try
            {
                _UnitOfWork.Commit();
            }
            catch (Exception)
            {

                objOperation.Success = false;
            }
            return objOperation;
        }
        public Operation Save(SlsTransferDetail objSlsTransferDetail)
        {
            Operation objOperation = new Operation { Success = true };

            long Id = _TransferDetailRepository.AddEntity(objSlsTransferDetail);
            objOperation.OperationId = Id;

            try
            {
                _UnitOfWork.Commit();
            }
            catch (Exception ex)
            {
                objOperation.Success = false;
            }
            return objOperation;
        }
        public ActionResult Save(SlsTransfer transfer, List<SlsTransferDetail> transferDetail)
        {
            int companyId = Convert.ToInt32(Session["companyId"]);
            int userId = Convert.ToInt32(Session["userId"]);
            Operation objOperation = new Operation { Success = false };
            if (ModelState.IsValid && transferDetail != null)
            {
                if (transfer.Id == 0)
                {
                    if ((bool)Session["Add"])
                    {
                        transfer.SecCompanyId = companyId;
                        transfer.CreatedBy = userId;
                        transfer.CreatedDate = DateTime.Now;
                        objOperation = _TransferService.Save(transfer);

                        int transferId = Convert.ToInt32(objOperation.OperationId);

                        foreach (var item in transferDetail)
                        {
                            SlsTransferDetail objSlsTransferDetail = _TransferDetailService.GetById(item.Id);
                            if (objSlsTransferDetail != null)
                            {
                                objSlsTransferDetail.SlsTransferId = transfer.Id;
                                objSlsTransferDetail.SlsProductId = item.SlsProductId;
                                objSlsTransferDetail.Quantity = item.Quantity;
                                objSlsTransferDetail.SlsUnitId = item.SlsUnitId;
                                _TransferDetailService.Update(objSlsTransferDetail);
                            }
                            else
                            {
                                objSlsTransferDetail = new SlsTransferDetail();
                                objSlsTransferDetail.SlsTransferId = transferId;
                                objSlsTransferDetail.SlsProductId = item.SlsProductId;
                                objSlsTransferDetail.Quantity = item.Quantity;
                                objSlsTransferDetail.SlsUnitId = item.SlsUnitId;
                                _TransferDetailService.Save(objSlsTransferDetail);
                            }

                        }

                    }

                }
                else
                {
                    if ((bool)Session["Edit"])
                    {
                        transfer.SecCompanyId = companyId;
                        transfer.ModifiedBy = userId;
                        transfer.ModifiedDate = DateTime.Now;
                        objOperation = _TransferService.Update(transfer);

                        foreach (var item in transferDetail)
                        {
                            SlsTransferDetail objSlsTransferDetail = _TransferDetailService.GetById(item.Id);
                            if (objSlsTransferDetail != null)
                            {
                                objSlsTransferDetail.SlsTransferId = transfer.Id;
                                objSlsTransferDetail.SlsProductId = item.SlsProductId;
                                objSlsTransferDetail.Quantity = item.Quantity;
                                objSlsTransferDetail.SlsUnitId = item.SlsUnitId;
                                _TransferDetailService.Update(objSlsTransferDetail);
                            }
                            else
                            {
                                objSlsTransferDetail = new SlsTransferDetail();
                                objSlsTransferDetail.SlsTransferId = transfer.Id;
                                objSlsTransferDetail.SlsProductId = item.SlsProductId;
                                objSlsTransferDetail.Quantity = item.Quantity;
                                objSlsTransferDetail.SlsUnitId = item.SlsUnitId;
                                _TransferDetailService.Save(objSlsTransferDetail);
                            }

                        }

                    }

                }

                objOperation = _TransferService.Commit();

            }

            return Json(objOperation, JsonRequestBehavior.DenyGet);
        }