예제 #1
0
        public Task <vh_expense_type_field_d_itemC> GetSingle(int id)
        {
            vh_expense_type_field_d_itemC _item = null;
            string _sql = null;

            try
            {
                using (var _db = fnn.GetDbConnection())
                {
                    _sql  = string.Format("select * from {0} where et_field_item_id = {1} and delete_id = 0", table_name.ToDbSchemaTable(), id);
                    _item = _db.Query <vh_expense_type_field_d_itemC>(_sql).FirstOrDefault();
                }
            }
            catch (SqlException ex)
            {
                LoggerX.LogException(ex);
            }
            catch (DbException ex)
            {
                LoggerX.LogException(ex);
            }
            catch (Exception ex)
            {
                LoggerX.LogException(ex);
            }
            return(Task.FromResult(_item));
        }
예제 #2
0
        public Task <vh_expense_type_field_d_itemC> AddExpenseTypeFieldItem(dto_expense_type_field_item_newC _dto)
        {
            vh_expense_type_field_d_itemC _obj = null;

            if (fnn.LOGGED_USER.DoesNotHaveRight(em.user_rights_types.can_create_expense_type_field_item))
            {
                _obj = null;
                AddErrorMessage("Limited Rights Error", "Rights Error", "You Can Not Perform This Operation");
                return(Task.FromResult(_obj));
            }
            if (_dto == null)
            {
                AddErrorMessage("Error", "Error", "Field Item Is Null");
                return(Task.FromResult(_obj));
            }
            if (string.IsNullOrEmpty(_dto.et_field_item_name))
            {
                AddErrorMessage("Error", "Error", "Field Item Name Is Missing");
                return(Task.FromResult(_obj));
            }
            if (_dto.exp_type_id == 0)
            {
                AddErrorMessage("Error", "Error", "Expense Type Not Selected");
                return(Task.FromResult(_obj));
            }
            if (_dto.et_field_id == 0)
            {
                AddErrorMessage("Error", "Error", "Extra Field Id Is MIssing");
                return(Task.FromResult(_obj));
            }
            try
            {
                using (var _db = fnn.GetDbContext())
                {
                    var exp_type = _db.EXPENSE_TYPES.Where(e => e.exp_type_id == _dto.exp_type_id & e.delete_id == 0).FirstOrDefault();
                    var field    = _db.EXPENSE_TYPE_FIELDS.Where(e => e.et_field_id == _dto.et_field_id & e.delete_id == 0).FirstOrDefault();
                    if (exp_type == null)
                    {
                        AddErrorMessage("Error", "Error", "Expense Type Object Can Not Be Found");
                        return(Task.FromResult(_obj));
                    }
                    if (field == null)
                    {
                        AddErrorMessage("Error", "Error", "Expense Extra Feild Object Can Not Be Found");
                        return(Task.FromResult(_obj));
                    }
                    _obj = new vh_expense_type_field_d_itemC()
                    {
                        et_field_item_name = _dto.et_field_item_name.Trim(),
                        exp_type_id        = _dto.exp_type_id,
                        et_field_id        = _dto.et_field_id,
                        et_field_name      = field.et_field_name.Trim(),
                        fs_timestamp       = fnn.GetUnixTimeStamp(),
                        server_edate       = fnn.GetServerDate(),
                        created_by_user_id = m_logged_user.user_id
                    };
                    _db.EXPENSE_FIELD_TYPE_ITEMS.Add(_obj);
                    var _retVal = _db.SaveChangesWithDuplicateKeyDetected();
                    if (_retVal == null || _retVal.Value == true)
                    {
                        AddErrorMessage("Duplicate Key Error", "Duplicate Key Error", "You Have Entered A Duplicate Field Item Name");
                        _obj = null;
                        return(Task.FromResult(_obj));
                    }
                }
            }
            catch (SqlException ex)
            {
                LoggerX.LogException(ex);
            }
            catch (DbException ex)
            {
                LoggerX.LogException(ex);
            }
            catch (Exception ex)
            {
                LoggerX.LogException(ex);
            }
            return(Task.FromResult(_obj));
        }
예제 #3
0
        public Task <vh_expense_type_field_d_itemC> UpdateExpenseTypeFieldItem(dto_expense_type_field_item_updateC _dto)
        {
            vh_expense_type_field_d_itemC _existing = null;

            if (fnn.LOGGED_USER.DoesNotHaveRight(em.user_rights_types.can_create_expense_type_field_item))
            {
                _existing = null;
                AddErrorMessage("Limited Rights Error", "Rights Error", "You Can Not Perform This Operation");
                return(Task.FromResult(_existing));
            }
            if (_dto == null)
            {
                AddErrorMessage("Update Error", "Save Error", "Object Is Null!");
                _existing = null;
                return(Task.FromResult(_existing));
            }
            if (_dto.et_field_item_id == 0)
            {
                AddErrorMessage("Update Error", "Save Error", "Expense Type Field Item Id Is Null!");
                _existing = null;
                return(Task.FromResult(_existing));
            }
            if (string.IsNullOrEmpty(_dto.et_field_item_name))
            {
                AddErrorMessage("Error", "Error", "Expense Type Field Name Is Missing");
                return(Task.FromResult(_existing));
            }
            try
            {
                using (var _trans = new ZUpdateContext())
                {
                    _existing = _trans.Context.EXPENSE_FIELD_TYPE_ITEMS.Where(e => e.et_field_item_id == _dto.et_field_item_id & e.delete_id == 0).FirstOrDefault();
                    if (_existing == null)
                    {
                        _existing = null;
                        AddErrorMessage("Update Error", "Save Error", "Unable To Find Vehicle Object");
                        return(Task.FromResult(_existing));
                    }
                    if (_existing.et_field_item_name.ToLower() != _dto.et_field_item_name.ToLower())
                    {
                        var _ret = DbHelper.UpdatePrimaryKeyColumn(new DbHelperPrimarykeyUpdateC
                        {
                            col_to_update = "et_field_item_name",
                            new_col_value = _dto.et_field_item_name.Trim().ToProperCase(),
                            table_name    = DbHelper.GetTableSchemaName(table_name),
                            pk_col_name   = "et_field_item_id",
                            pk_id         = _dto.et_field_item_id
                        }, _trans.Context);
                        if (_ret == null || _ret.Value == false)
                        {
                            AddErrorMessage("Error", "Update Error", "Expense Type Field Item Name Already Exists");
                            _existing = null;
                            _trans.RollBack();
                            return(Task.FromResult(_existing));
                        }
                        else
                        {
                            _trans.Context.SaveChanges();
                            _existing = _trans.Context.EXPENSE_FIELD_TYPE_ITEMS.Where(e => e.et_field_item_id == _dto.et_field_item_id & e.delete_id == 0).FirstOrDefault();
                        }
                    }

                    SimpleMapper.PropertyMap(_dto, _existing);
                    // _existing.fs_timestamp = fnn.GetUnixTimeStamp();
                    _trans.Context.EXPENSE_FIELD_TYPE_ITEMS.AddOrUpdateExtension(_existing);
                    _trans.Context.SaveChanges();
                    _trans.Commit();
                    return(Task.FromResult(_existing));
                }
            }
            catch (SqlException ex)
            {
                _existing = null;
                LoggerX.LogException(ex);
            }
            catch (DbException ex)
            {
                _existing = null;
                LoggerX.LogException(ex);
            }
            catch (Exception ex)
            {
                _existing = null;
                LoggerX.LogException(ex);
            }
            return(Task.FromResult(_existing));
        }