Esempio n. 1
0
        private AppBackgroundService ConvertDataRowToAppBackgroundService(DataRow row)
        {
            var obj = new AppBackgroundService();

            obj.Id                    = row["bg_id"] == DBNull.Value ? 0 : int.Parse(row["bg_id"].ToString());
            obj.CreatedOn             = row["createdon"] == DBNull.Value ? DateTime.MinValue : DateTime.Parse(row["createdon"].ToString());
            obj.CreatedBy.Account     = row["createdbyacc"] == DBNull.Value ? 0 : int.Parse(row["createdbyacc"].ToString());
            obj.CreatedBy.Id          = row["createdby"] == DBNull.Value ? string.Empty : row["createdby"].ToString();
            obj.CreatedBy.Name        = row["createdby_name"] == DBNull.Value ? string.Empty : row["createdby_name"].ToString();
            obj.Source.Id             = row["bg_source"] == DBNull.Value ? string.Empty : row["bg_source"].ToString();
            obj.Source.Name           = row["bg_source_name"] == DBNull.Value ? string.Empty : row["bg_source_name"].ToString();
            obj.Partner.Account       = row["partner_acc"] == DBNull.Value ? 0 : int.Parse(row["partner_acc"].ToString());
            obj.Partner.Id            = row["partner_id"] == DBNull.Value ? string.Empty : row["partner_id"].ToString();
            obj.Partner.Name          = row["partner_name"] == DBNull.Value ? string.Empty : row["partner_name"].ToString();
            obj.RefPartner            = row["ref_partner"] == DBNull.Value ? string.Empty : row["ref_partner"].ToString();
            obj.StartDate             = row["start_date"] == DBNull.Value ? DateTime.MinValue : DateTime.Parse(row["start_date"].ToString());
            obj.EndDate               = row["end_date"] == DBNull.Value ? DateTime.MinValue : DateTime.Parse(row["end_date"].ToString());
            obj.RecordCount           = row["record_count"] == DBNull.Value ? 0 : int.Parse(row["record_count"].ToString());
            obj.DurationInSec         = row["duration_sec"] == DBNull.Value ? 0 : int.Parse(row["duration_sec"].ToString());
            obj.Status.Id             = row["status"] == DBNull.Value ? string.Empty : row["status"].ToString();
            obj.Status.Name           = row["status_name"] == DBNull.Value ? string.Empty : row["status_name"].ToString();
            obj.StatusTime            = row["status_time"] == DBNull.Value ? DateTime.MinValue : DateTime.Parse(row["status_time"].ToString());
            obj.FileName              = row["file_name"] == DBNull.Value ? string.Empty : row["file_name"].ToString();
            obj.FileLocation          = row["file_location"] == DBNull.Value ? string.Empty : row["file_location"].ToString();
            obj.Note                  = row["note"] == DBNull.Value ? string.Empty : row["note"].ToString();
            obj.Name                  = row["service_name"] == DBNull.Value ? string.Empty : row["service_name"].ToString();
            obj.ActiveTime            = row["active_time"] == DBNull.Value ? DateTime.MinValue : DateTime.Parse(row["active_time"].ToString());
            obj.FileSize              = row["file_size"] == DBNull.Value ? 0 : Int64.Parse(row["file_size"].ToString());
            obj.ActualStartTime       = row["actual_start_time"] == DBNull.Value ? DateTime.MinValue : DateTime.Parse(row["actual_start_time"].ToString());
            obj.ActionPartner.Account = row["action_partner_acc"] == DBNull.Value ? 0 : int.Parse(row["action_partner_acc"].ToString());
            obj.ActionPartner.Id      = row["action_partner_id"] == DBNull.Value ? string.Empty : row["action_partner_id"].ToString();
            obj.ActionPartner.Name    = row["action_partner_name"] == DBNull.Value ? string.Empty : row["action_partner_name"].ToString();
            return(obj);
        }
Esempio n. 2
0
        public OpertionResult Update(AppBackgroundService obj)
        {
            try
            {
                #region Parameters
                var parameters = new List <OracleParameter> {
                    new OracleParameter {
                        ParameterName = "retVal", OracleDbType = OracleDbType.Int32, Direction = ParameterDirection.ReturnValue
                    },
                    new OracleParameter {
                        ParameterName = "v_bg_id", OracleDbType = OracleDbType.Int32, Value = obj.Id
                    },
                    new OracleParameter {
                        ParameterName = "v_record_count", OracleDbType = OracleDbType.Int32, Value = obj.RecordCount
                    },
                    new OracleParameter {
                        ParameterName = "v_file_name", OracleDbType = OracleDbType.Varchar2, Value = obj.FileName
                    },
                    new OracleParameter {
                        ParameterName = "v_file_location", OracleDbType = OracleDbType.Varchar2, Value = obj.FileLocation
                    },
                    new OracleParameter {
                        ParameterName = "v_status", OracleDbType = OracleDbType.Varchar2, Value = obj.Status.Id
                    },
                    new OracleParameter {
                        ParameterName = "v_status_time", OracleDbType = OracleDbType.Date, Value = obj.StatusTime
                    },
                    new OracleParameter {
                        ParameterName = "v_duration_sec", OracleDbType = OracleDbType.Int32, Value = obj.DurationInSec
                    },
                    new OracleParameter {
                        ParameterName = "v_file_size", OracleDbType = OracleDbType.Int64, Value = obj.FileSize
                    }
                };
                #endregion
                db.ExecuteStoredProc("pk_infra.fn_Update_bgService", parameters);
                var result = int.Parse(parameters.Find(x => x.ParameterName == "retVal").Value.ToString());

                if (result > 0)
                {
                    return(new OpertionResult {
                        AffectedCount = result, Success = true, Error = string.Empty
                    });
                }
                else
                {
                    return(new OpertionResult {
                        AffectedCount = result, Success = false, Error = string.Empty
                    });
                }
            }
            catch (Exception ex)
            {
                return(new OpertionResult {
                    AffectedCount = -1, Success = false, Error = ex.Message
                });
            }
        }
Esempio n. 3
0
        public async Task <AppBackgroundService> GetBackgroundServiceAsync(int id)
        {
            #region Parameters
            if (id <= 0)
            {
                return(null);
            }
            var parameters  = new List <OracleParameter>();
            var whereCluase = new StringBuilder();
            whereCluase.Append(" WHERE bg_id = :bgId");
            var p = new OracleParameter {
                ParameterName = "bgId", OracleDbType = OracleDbType.Int32, Value = id
            };
            parameters.Add(p);
            #endregion

            string    strSql = $"select * from v_bg_service {whereCluase}";
            DataTable masterDataTable;
            masterDataTable = await db.GetDataAsync(strSql, parameters);

            if (masterDataTable == null)
            {
                return(null);
            }
            if (masterDataTable.Rows.Count == 0)
            {
                return(null);
            }

            var result = new AppBackgroundService();
            foreach (DataRow row in masterDataTable.Rows)
            {
                result = ConvertDataRowToAppBackgroundService(row);
            }
            return(result);
        }
 public ExportRechargeCollections(IAppDbContext db, AppBackgroundService service, string fileLocation)
 {
     this.db           = db;
     this.service      = service;
     this.fileLocation = fileLocation;
 }
Esempio n. 5
0
        public IActionResult Create(CreateBackgroundServiceDto model)
        {
            if (model.Id > 0)
            {
                toastNotification.AddErrorToastMessage("لم يتم حفظ الطلب ، لقد تم حفظه مسبقا", new ToastrOptions
                {
                    Title = ""
                });
            }
            else if (ModelState.IsValid)
            {
                var currentRoleId = partnerManager.GetCurrentUserRole(this.HttpContext);
                var currentId     = partnerManager.GetCurrentUserId(this.HttpContext);
                var permission    = partnerActivity.GetPartAct("BgService.Create", currentRoleId);
                if (permission == null)
                {
                    toastNotification.AddErrorToastMessage("ليس لديك الصلاحية الكافية", new ToastrOptions {
                        Title = ""
                    });
                    //return Redirect(Request.Headers["Referer"].ToString());
                }
                else if (permission.Details == null || permission.Details.Count == 0)
                {
                    toastNotification.AddErrorToastMessage("ليس لديك الصلاحية الكافية", new ToastrOptions {
                        Title = ""
                    });
                    //return Redirect(Request.Headers["Referer"].ToString());
                }
                else if (model.StartDate != null && model.EndDate != null && model.StartDate > model.EndDate)
                {
                    ModelState.AddModelError("EndDate", "تاريخ النهاية اقل من تاريخ البداية");
                }
                else if (string.IsNullOrEmpty(model.PartnerId) || model.PartnerAccount <= 0)
                {
                    toastNotification.AddErrorToastMessage("يجب تحديد الجهة المطلوب بياناتها", new ToastrOptions {
                        Title = ""
                    });
                    //return Redirect(Request.Headers["Referer"].ToString());
                }
                else
                {
                    var targetPartner = partnerManager.GetPartnerByAccount(model.PartnerAccount);
                    if (targetPartner == null)
                    {
                        toastNotification.AddErrorToastMessage("الجهة المراد بياناتها غير موجودة", new ToastrOptions {
                            Title = ""
                        });
                        return(Redirect(Request.Headers["Referer"].ToString()));
                    }
                    if (!permission.Details.Exists(m => m.ToRole.Id == targetPartner.Role.Id))
                    {
                        toastNotification.AddErrorToastMessage("ليس لديك الصلاحية الكافية لطلب بيانات لهذه الجهة", new ToastrOptions {
                            Title = ""
                        });
                        return(Redirect(Request.Headers["Referer"].ToString()));
                    }

                    if (permission.Scope.Id == "CurOpOnly" && targetPartner.Id != currentId)
                    {
                        toastNotification.AddErrorToastMessage("صلاحيتك محدودة لطلب بيانات لرقمك فقط", new ToastrOptions {
                            Title = ""
                        });
                        return(Redirect(Request.Headers["Referer"].ToString()));
                    }

                    if (permission.Scope.Id == "Exclusive" && targetPartner.RefPartner.Id != currentId)
                    {
                        toastNotification.AddErrorToastMessage("صلاحيتك محدودة لطلب بيانات للجهات التابعة لك فقط", new ToastrOptions {
                            Title = ""
                        });
                        return(Redirect(Request.Headers["Referer"].ToString()));
                    }

                    var createdObj = new AppBackgroundService();
                    createdObj.CreatedBy.Id      = partnerManager.GetCurrentUserId(this.HttpContext);
                    createdObj.CreatedBy.Account = partnerManager.GetCurrentUserAccount(this.HttpContext);
                    createdObj.Source.Id         = model.Source;
                    createdObj.Name                  = model.Name;
                    createdObj.Partner.Id            = model.PartnerId;
                    createdObj.Partner.Account       = model.PartnerAccount;
                    createdObj.StartDate             = model.StartDate ?? DateTime.MinValue;
                    createdObj.EndDate               = model.EndDate ?? DateTime.MinValue;
                    createdObj.Note                  = model.Note;
                    createdObj.ActionPartner.Id      = model.ActionPartnerId;
                    createdObj.ActionPartner.Account = model.ActionPartnerAccount;
                    createdObj.ActiveTime            = model.ActiveTime ?? DateTime.MinValue;
                    var result = new AppBackgroundServiceRepo(db).Create(createdObj);
                    if (result.Success)
                    {
                        ModelState.Clear();
                        model.Id = result.AffectedCount;
                        toastNotification.AddSuccessToastMessage("تم حفظ العملية بنجاح، لمعرفة حالتها يرجى الاستعلام من شاشة استعلام الطلبات", new ToastrOptions
                        {
                            Title = ""
                        });
                    }
                    else
                    {
                        toastNotification.AddErrorToastMessage("لم يتم حفظ الطلب " + result.AffectedCount, new ToastrOptions
                        {
                            Title = ""
                        });
                    }
                }
            }
            var sources = new CommonCodeRepo(db).GetCodesByType("bg_service_source");

            model.Sources = sources;
            return(View(model));
        }
Esempio n. 6
0
        public OpertionResult Create(AppBackgroundService obj)
        {
            try
            {
                #region Parameters
                var parameters = new List <OracleParameter> {
                    new OracleParameter {
                        ParameterName = "retVal", OracleDbType = OracleDbType.Int32, Direction = ParameterDirection.ReturnValue
                    },
                    new OracleParameter {
                        ParameterName = "v_createdby", OracleDbType = OracleDbType.Varchar2, Value = obj.CreatedBy.Id
                    },
                    new OracleParameter {
                        ParameterName = "v_createdbyacc", OracleDbType = OracleDbType.Int32, Value = obj.CreatedBy.Account
                    },
                    new OracleParameter {
                        ParameterName = "v_bg_source", OracleDbType = OracleDbType.Varchar2, Value = obj.Source.Id
                    },
                    new OracleParameter {
                        ParameterName = "v_partner_id", OracleDbType = OracleDbType.Varchar2, Value = obj.Partner.Id
                    },
                    new OracleParameter {
                        ParameterName = "v_partner_acc", OracleDbType = OracleDbType.Int32, Value = obj.Partner.Account
                    },
                    new OracleParameter {
                        ParameterName = "v_start_date", OracleDbType = OracleDbType.Date, Value = obj.StartDate
                    },
                    new OracleParameter {
                        ParameterName = "v_end_date", OracleDbType = OracleDbType.Date, Value = obj.EndDate
                    },
                    new OracleParameter {
                        ParameterName = "v_note", OracleDbType = OracleDbType.NVarchar2, Value = obj.Note
                    },
                    new OracleParameter {
                        ParameterName = "v_active_time", OracleDbType = OracleDbType.Date, Value = obj.ActiveTime
                    },
                    new OracleParameter {
                        ParameterName = "v_service_name", OracleDbType = OracleDbType.NVarchar2, Value = obj.Name
                    },
                    new OracleParameter {
                        ParameterName = "v_action_partner_id", OracleDbType = OracleDbType.Varchar2, Value = obj.ActionPartner.Id
                    }
                };
                #endregion
                db.ExecuteStoredProc("pk_infra.fn_create_bgservice", parameters);
                var result = int.Parse(parameters.Find(x => x.ParameterName == "retVal").Value.ToString());

                if (result > 0)
                {
                    return(new OpertionResult {
                        AffectedCount = result, Success = true, Error = string.Empty
                    });
                }
                else
                {
                    return(new OpertionResult {
                        AffectedCount = result, Success = false, Error = string.Empty
                    });
                }
            }
            catch (Exception ex)
            {
                return(new OpertionResult {
                    AffectedCount = -1, Success = false, Error = ex.Message
                });
            }
        }