public JsonResult ReceivedDeliveryOrder(int id) { DeliveryOrderPusatResponse _response = new DeliveryOrderPusatResponse(); var request = new DeliveryOrderPusatRequest { Data = new DeliveryOrderPusatModel { Id = id } }; DeliveryOrderPusatResponse resp = new DeliveryOrderPusatHandler(_unitOfWork).GetDetail(request); resp.Entity.Account = (AccountModel)Session["UserLogon"]; resp.Entity.Recived = 1; resp.Entity.Validasi = 1; var receiveddeliveryorder = new DeliveryOrderPusatRequest { Data = resp.Entity }; new DeliveryOrderPusatHandler(_unitOfWork).ApproveData(receiveddeliveryorder); new DeliveryOrderPusatValidator(_unitOfWork).Validate(receiveddeliveryorder, out _response); DeliveryOrderPusatModel _model = resp.Entity; foreach (var item in resp.Entity.deliveryOrderDetailpusatModels) { var requestproductingudang = new ProductInGudangRequest { Data = new ProductInGudangModel { Account = (AccountModel)Session["UserLogon"], stock = Convert.ToInt32(item.qty_final) > 0 ? Convert.ToInt32(item.qty_final) : Convert.ToInt32(item.qty_final), GudangId = _model.GudangId, ProductId = item.ProductId } }; var requesthistoryproductingudang = new HistoryProductInGudangRequest { Data = new HistoryProductInGudangModel { Account = (AccountModel)Session["UserLogon"], value = Convert.ToInt32(item.qty_final) > 0 ? Convert.ToInt32(item.qty_final) : Convert.ToInt32(item.qty_final), GudangId = Convert.ToInt32(_model.GudangId), ProductId = item.ProductId } }; var saveproductingudang = new ProductInGudangHandler(_unitOfWork).CreateOrEdit(requestproductingudang); var savehistoryproductingudang = new HistoryProductInGudangHandler(_unitOfWork).CreateOrEdit(requesthistoryproductingudang); } return(Json(new { Status = _response.Status }, JsonRequestBehavior.AllowGet)); }
public void Validate(ProductInGudangRequest request, out ProductInGudangResponse response) { response = new ProductInGudangResponse(); if (request.Action != null && request.Action.Equals(ClinicEnums.Action.DELETE.ToString())) { ValidateForDelete(request, out response); } else { bool isHavePrivilege = true; if (request.Data.ProductId == null || request.Data.GudangId == null) { errorFields.Add("Gudang Id Product Id"); } if (errorFields.Any()) { response.Status = false; response.Message = string.Format(Messages.ValidationErrorFields, String.Join(",", errorFields)); } if (request.Data.Id == 0) { isHavePrivilege = IsHaveAuthorization(ADD_PRIVILEGE_NAME, request.Data.Account.Privileges.PrivilegeIDs); } else { isHavePrivilege = IsHaveAuthorization(EDIT_PRIVILEGE_NAME, request.Data.Account.Privileges.PrivilegeIDs); } if (!isHavePrivilege) { response.Status = false; response.Message = Messages.UnauthorizedAccess; } if (response.Status) { response = new ProductInGudangHandler(_unitOfWork).CreateOrEdit(request); } } }
private void ValidateForDelete(ProductInGudangRequest request, out ProductInGudangResponse response) { response = new ProductInGudangResponse(); if (request.Action == ClinicEnums.Action.DELETE.ToString()) { bool isHavePrivilege = IsHaveAuthorization(DELETE_PRIVILEGE_NAME, request.Data.Account.Privileges.PrivilegeIDs); if (!isHavePrivilege) { response.Status = false; response.Message = Messages.UnauthorizedAccess; } } if (response.Status) { response = new ProductInGudangHandler(_unitOfWork).RemoveData(request); } }