示例#1
0
        public void SingleLine15()
        {
            Reader      reader = Reader.CreateStringReader(ExampleStrings.DataType.SingleLine15);
            IDataParser parser = CreateDataParser(reader);

            AssertParsedUsingXml(parser, DataTypeModel.Factory("DataType", "MSF062-REQ-NO-RC PIC X(6)", "[ 38] Requisition number"));
        }
示例#2
0
        public IActionResult PostDataType(DataTypeModel dataType)
        {
            logger.Info($"POST: {Request.Path} called");
            logger.Info("Storing DataType: Id={0}, Name={1}, Properties={2}",
                        dataType.Id,
                        dataType.Name,
                        dataType.Properties);
            if (!ModelState.IsValid)
            {
                logger.Info("Bad request");
                return(BadRequest(ModelState));
            }

            try
            {
                datatypeRepo.AddDataType(dataType);
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }

            return(Created(Request.Path, dataType));
        }
示例#3
0
        public void SingleLine11()
        {
            Reader      reader = Reader.CreateStringReader(ExampleStrings.DataType.SingleLine11);
            IDataParser parser = CreateDataParser(reader);

            AssertParsedUsingXml(parser, DataTypeModel.Factory("DataType", "SUBLEDGER-TYPE PIC X(2)", "[ 30] Subledger Account Type OPTIONAL TABLE ('SA')"));
        }
示例#4
0
        public void SingleLine05Trimmed()
        {
            Reader      reader = Reader.CreateStringReader(ExampleStrings.DataType.SingleLine05.Substring(1));
            IDataParser parser = CreateDataParser(reader);

            AssertParsedUsingXml(parser, DataTypeModel.Factory("DataType", "FULL-PERIOD PIC X(6)", "[ 5] Full Period CCYYPP DB,KEY:0"));
        }
示例#5
0
        public void SingleLine09()
        {
            Reader      reader = Reader.CreateStringReader(ExampleStrings.DataType.SingleLine09);
            IDataParser parser = CreateDataParser(reader);

            AssertParsedUsingXml(parser, DataTypeModel.Factory("DataType", "AVAIL-SOH PIC S9(9) COMP-3", "[1851] Available SOH"));
        }
示例#6
0
        public void MultiLine31()
        {
            Reader      reader = Reader.CreateStringReader(ExampleStrings.DataType.MultiLines31);
            IDataParser parser = CreateDataParser(reader);

            AssertParsedUsingXml(parser, DataTypeModel.Factory("DataType", "MSF062-DATA-2-062-PB PIC X(24)", "[ 33] Reference data 2"));
        }
示例#7
0
        public void SingleLine03()
        {
            Reader      reader = Reader.CreateStringReader(ExampleStrings.DataType.SingleLine03);
            IDataParser parser = CreateDataParser(reader);

            AssertParsedUsingXml(parser, DataTypeModel.Factory("DataType", "TAX-PERIOD-CLOSED PIC X(1)", "[ 27] Tax Period Closed DB"));
        }
示例#8
0
        protected override DataTypeModel MapDataType(DataRow row)
        {
            var dataType = new DataTypeModel();

            dataType.TypeName              = row.GetString("TypeName");
            dataType.ProviderDbType        = row.GetNullableInt("ProviderDbType");
            dataType.ColumnSize            = row.GetNullableLong("ColumnSize");
            dataType.CreateFormat          = row.GetString("CreateFormat");
            dataType.CreateParameters      = row.GetString("CreateParameters");
            dataType.DataTypeName          = row.GetString("DataType");
            dataType.IsAutoincrementable   = row.GetNullableBool("IsAutoincrementable");
            dataType.IsBestMatch           = row.GetNullableBool("IsBestMatch");
            dataType.IsCaseSensitive       = row.GetNullableBool("IsCaseSensitive");
            dataType.IsFixedLength         = row.GetNullableBool("IsFixedLength");
            dataType.IsFixedPrecisionScale = row.GetNullableBool("IsFixedPrecisionScale");
            dataType.IsLong               = row.GetNullableBool("IsLong");
            dataType.IsNullable           = row.GetNullableBool("IsNullable");
            dataType.IsSearchable         = row.GetNullableBool("IsSearchable");
            dataType.IsSearchableWithLike = row.GetNullableBool("IsSearchableWithLike");
            dataType.IsUnsigned           = row.GetNullableBool("IsUnsigned");
            dataType.MaximumScale         = row.GetNullableShort("MaximumScale");
            dataType.MinimumScale         = row.GetNullableShort("MinimumScale");
            dataType.IsConcurrencyType    = row.GetNullableBool("IsConcurrencyType");
            dataType.IsLiteralSupported   = row.GetNullableBool("IsLiteralSupported");
            dataType.LiteralPrefix        = row.GetString("LiteralPrefix");
            dataType.LiteralSuffix        = row.GetString("LiteralSuffix");
            dataType.NativeDataType       = null;

            return(dataType);
        }
示例#9
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(DataTypeModel model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into tbDataType(");
            strSql.Append("DataType,DataTypeName,Sort,CreateBy,CreateTime,UpdateBy,UpdateTime");
            strSql.Append(") values (");
            strSql.Append("@DataType,@DataTypeName,@Sort,@CreateBy,@CreateTime,@UpdateBy,@UpdateTime");
            strSql.Append(") ");
            strSql.Append(";select @@IDENTITY");
            SqlParameter[] parameters =
            {
                new SqlParameter("@DataTypeName", SqlDbType.NVarChar,  50),
                new SqlParameter("@CreateBy",     SqlDbType.NVarChar,  50),
                new SqlParameter("@CreateTime",   SqlDbType.DateTime),
                new SqlParameter("@UpdateBy",     SqlDbType.NVarChar,  50),
                new SqlParameter("@UpdateTime",   SqlDbType.DateTime),
                new SqlParameter("@Sort",         SqlDbType.Int),
                new SqlParameter("@DataType",     SqlDbType.NVarChar, 50)
            };

            parameters[0].Value = model.DataTypeName;
            parameters[1].Value = model.CreateBy;
            parameters[2].Value = model.CreateTime;
            parameters[3].Value = model.UpdateBy;
            parameters[4].Value = model.UpdateTime;
            parameters[5].Value = model.Sort;
            parameters[6].Value = model.DataType;
            object obj = Convert.ToInt32(SqlHelper.ExecuteScalar(SqlHelper.connStr, CommandType.Text, strSql.ToString(), parameters));

            return(Convert.ToInt32(obj));
        }
示例#10
0
 public void AddDataType(DataTypeModel dataType)
 {
     try
     {
         db.DataType.Add(dataType);
         var validationContext = new ValidationContext(dataType);
         Validator.ValidateObject(dataType, validationContext);
         db.SaveChanges();
     }
     catch (DbUpdateException ex)
     {
         if (DataTypeExists(dataType.Properties))
         {
             logger.Error(ex);
             throw new Exception("A datatype with these properties already exists.");
         }
         else
         {
             logger.Error(ex);
             throw;
         }
     }
     catch (ValidationException ex)
     {
         logger.Error(ex);
         throw;
     }
 }
示例#11
0
        public void SingleLine13()
        {
            Reader      reader = Reader.CreateStringReader(ExampleStrings.DataType.SingleLine13);
            IDataParser parser = CreateDataParser(reader);

            AssertParsedUsingXml(parser, DataTypeModel.Factory("DataType", "MSF061-MSB566-RUN-1A PIC X(4)", "[ 5] MSB566 Run Number NUMERIC RANGE (11)"));
        }
示例#12
0
        public void MultiLine05()
        {
            Reader      reader = Reader.CreateStringReader(ExampleStrings.DataType.MultiLines05);
            IDataParser parser = CreateDataParser(reader);

            AssertParsedUsingXml(parser, DataTypeModel.Factory("DataType", "DSTRCT-CODE PIC X(4)", "[ 1] District Code MANDATORY VALUE\n(DSTRCT-CODE) ERROR\n(6534) ACTIVE\nDB,KEY:0"));
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="WizardSteps"/> class.
 /// </summary>
 /// <param name="dataTypeModel">The data type model.</param>
 /// <param name="datasetId">The dataset identifier.</param>
 public WizardSteps(DataTypeModel dataTypeModel, int?datasetId)
 {
     Context.SelectedDataType  = dataTypeModel;
     Context.ExistingDatasetId = datasetId;
     Context.Steps             = this;
     AddGroupOfSteps(new StepGroup("Nursing Home Compare Data")
     {
         IsCurrent = true
     }, CreateSteps());
 }
示例#14
0
        public void DeleteDataType(int id)
        {
            DataTypeModel dataType = db.DataType.Find(id);

            if (dataType != null)
            {
                db.DataType.Remove(dataType);
                db.SaveChanges();
            }
        }
示例#15
0
        private static DataTypeModel GenerateDataTypeModel(ObjectDataType type, ObjectDataType underlyingType, string propertyName)
        {
            var model = new DataTypeModel();

            model.Type           = type;
            model.UnderlyingType = underlyingType;
            model.Identifier     = GetKeywordText(GetDataTypeKeyword(type, true));
            model.PropertyName   = propertyName;

            return(model);
        }
示例#16
0
        public ActionResult AddDataType(DataTypeModel model)
        {
            var dataType = new DataDictionaryTypeDto()
            {
                Name   = model.Name,
                Remark = model.Remark
            };

            Ioc.Resolve <IDataDictionaryService>().AddDataDictionaryType(dataType);
            return(Success());
        }
示例#17
0
 /// <summary>
 /// Initializes a new instance of the <see cref="WizardSteps"/> class.
 /// </summary>
 /// <param name="dataTypeModel">The data type model.</param>
 /// <param name="datasetId">The dataset identifier.</param>
 public WizardSteps(DataTypeModel dataTypeModel, int?datasetId)
     : base()
 {
     Context.SelectedDataType  = dataTypeModel;
     Context.ExistingDatasetId = datasetId;
     Context.Steps             = this;
     this.AddGroupOfSteps(new StepGroup("Hospital Compare Data")
     {
         IsCurrent = true
     }, CreateSteps());
 }
示例#18
0
        /// <summary>
        /// 获取model属性类型string
        /// </summary>
        /// <param name="column">列信息</param>
        /// <returns>model属性类型string</returns>
        public override string GetPropertyType(ColumnInfoModel column)
        {
            string        type = "";
            DataTypeModel m    = null;

            dic.TryGetValue(column.DataType, out m);
            if (m != null)
            {
                type = column.IsNullable ? m.NullableType : m.Type;
            }

            return(type);
        }
示例#19
0
        /// <summary>
        /// 获取model属性类型string
        /// </summary>
        /// <param name="column">列信息</param>
        /// <returns>model属性类型string</returns>
        public override string GetPropertyType(ColumnInfoModel column)
        {
            if (column == null) throw new ArgumentNullException("column");
            string type = "";
            DataTypeModel m = null;
            dic.TryGetValue(column.DataType, out m);
            if (m != null)
            {
                type = column.IsNullable ? m.NullableType : m.Type;
            }

            return type;
        }
        /// <summary>
        /// Gets the installed datasets.
        /// </summary>
        /// <returns></returns>
        private ObservableCollection <DataTypeModel> GetInstalledDatasets()
        {
            ObservableCollection <DataTypeModel> data = new ObservableCollection <DataTypeModel>();

            using (var session = SessionProvider.SessionFactory.OpenSession())
            {
                //this.Service.CleanUnFinishedDatasets();

                ListExtensions.ForEach(TargetLookup, target =>
                {
                    var types = new List <int> {
                        target.Value.Id
                    };

                    var crit = PredicateBuilder.True <Dataset>();
                    crit     = types.Aggregate(crit, (current, typeId) => current.And(item => item.ContentType.Id == typeId));

                    var contentItems = session.Query <Dataset>().Where(crit)
                                       .ToFuture()
                                       .Select(d => new Dataset
                    {
                        Id                         = d.Id,
                        IsFinished                 = d.IsFinished,
                        Name                       = d.Name,
                        ReportingQuarter           = d.ReportingQuarter,
                        ReportingYear              = d.ReportingYear,
                        DRGMDCMappingStatus        = d.DRGMDCMappingStatus,
                        DRGMDCMappingStatusMessage = d.DRGMDCMappingStatusMessage,
                        ContentType                = d.ContentType,
                        VersionYear                = d.VersionYear,
                        VersionMonth               = d.VersionMonth,
                        DateImported               = d.DateImported,
                        ProviderStates             = d.ProviderStates,
                        TotalRows                  = d.TotalRows,
                        RowsImported               = d.RowsImported
                    })
                                       .ToList();

                    var items = contentItems.Select(item => new DataTypeDetailsViewModel(item)).ToList();
                    var dtm   = new DataTypeModel(target.Value)
                    {
                        RecordsList = new ObservableCollection <DataTypeDetailsViewModel>(items)
                    };

                    data.Add(dtm);
                });
            }
            return(data.OrderBy(ct => ct.DisplayOrder).ToObservableCollection());
        }
        /// <summary>
        /// Gets a DataTypeModel by its Id.
        /// Used for showing the Properties Frame.
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public DataTypeModel GetDataTypeModelById(int id)
        {
            var properties = _bridge.GetDataTypeProperties(id);
            var model      = new DataTypeModel
            {
                Id           = id,
                Type         = "DataType",
                Created      = properties["CreateDate"],
                Name         = properties["Name"],
                UniqueId     = new Guid(properties["UniqueId"]),
                ControlId    = new Guid(properties["ControlId"]),
                DatabaseType = properties["DatabaseType"]
            };

            return(model);
        }
示例#22
0
        /// <summary>
        /// 获取model属性类型string
        /// </summary>
        /// <param name="column">列信息</param>
        /// <returns>model属性类型string</returns>
        public override string GetPropertyType(ColumnInfoModel column)
        {
            if (column == null)
            {
                throw new ArgumentNullException("column");
            }
            string        type = "";
            DataTypeModel m    = null;

            dic.TryGetValue(column.DataType, out m);
            if (m != null)
            {
                type = column.IsNullable ? m.NullableType : m.Type;
                if (column.DataType.ToUpper() == "NUMBER")
                {
                    if (column.MinLength == 0)
                    {
                        if (column.MaxLength <= 1)
                        {
                            type = "bool";
                        }
                        else if (column.MaxLength <= 3)
                        {
                            type = "byte";
                        }
                        else if (column.MaxLength <= 5)
                        {
                            type = "short";
                        }
                        else if (column.MaxLength <= 11)
                        {
                            type = "int";
                        }
                        else
                        {
                            type = "long";
                        }
                    }
                    else
                    {
                        type = "decimal";
                    }
                }
            }

            return(type);
        }
示例#23
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public DataTypeModel GetModel(int id)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select id, DataType,DataTypeName, Sort, CreateTime,CreateBy,UpdateTime,UpdateBy ");
            strSql.Append("  from tbDataType ");
            strSql.Append(" where id=@id");
            SqlParameter[] parameters =
            {
                new SqlParameter("@id", SqlDbType.Int, 4)
            };
            parameters[0].Value = id;


            DataTypeModel model = new DataTypeModel();
            DataTable     dt    = SqlHelper.GetDataTable(SqlHelper.connStr, CommandType.Text, strSql.ToString(), parameters);

            if (dt.Rows.Count > 0)
            {
                if (dt.Rows[0]["id"].ToString() != "")
                {
                    model.id = int.Parse(dt.Rows[0]["id"].ToString());
                }
                model.DataType     = dt.Rows[0]["DataType"].ToString();
                model.DataTypeName = dt.Rows[0]["DataTypeName"].ToString();
                if (dt.Rows[0]["Sort"].ToString() != "")
                {
                    model.Sort = int.Parse(dt.Rows[0]["Sort"].ToString());
                }
                model.CreateBy = dt.Rows[0]["CreateBy"].ToString();
                if (dt.Rows[0]["CreateTime"].ToString() != "")
                {
                    model.CreateTime = DateTime.Parse(dt.Rows[0]["CreateTime"].ToString());
                }
                model.UpdateBy = dt.Rows[0]["UpdateBy"].ToString();
                if (dt.Rows[0]["UpdateTime"].ToString() != "")
                {
                    model.UpdateTime = DateTime.Parse(dt.Rows[0]["UpdateTime"].ToString());
                }
                return(model);
            }
            else
            {
                return(null);
            }
        }
示例#24
0
        public ActionResult GetDataType(int id)
        {
            DataTypeModel dataType = datatypeRepo.GetDataType(id);

            if (dataType == null)
            {
                return(NotFound());
            }

            var item = new DataTypeModel
            {
                Id         = dataType.Id,
                Name       = dataType.Name,
                Properties = dataType.Properties
            };

            return(Ok(item));
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="WizardSteps"/> class.
        /// </summary>
        /// <param name="dataTypeModel">The data type model.</param>
        /// <param name="datasetId">The dataset identifier.</param>
        /// <exception cref="System.ApplicationException">Unrecognized AHRQ import type</exception>
        public WizardSteps(DataTypeModel dataTypeModel, int?datasetId)
        {
            Context.SelectedDataType  = dataTypeModel;
            Context.ExistingDatasetId = datasetId;
            Context.Steps             = this;


            // Create a group of wizard steps giving the ViewModel a function to import each line of the file
            if (dataTypeModel.Target.Guid == Area.Constants.WingTargetGuidAsGuid)
            {
                var importer = new Area.ImportProcessor(Context);

                AddGroupOfSteps(new StepGroup(dataTypeModel.DataTypeName)
                {
                    IsCurrent = true
                },
                                CreateSteps(importer, importer.HeaderLine, importer.LineFunction));
            }
            else if (dataTypeModel.Target.Guid == Composite.Constants.WingTargetGuidAsGuid)
            {
                var importer = new Composite.ImportProcessor(Context);

                AddGroupOfSteps(new StepGroup(dataTypeModel.DataTypeName)
                {
                    IsCurrent = true
                },
                                CreateSteps(importer, importer.HeaderLine, importer.LineFunction));
            }
            else if (dataTypeModel.Target.Guid == Provider.Constants.WingTargetGuidAsGuid)
            {
                var importer = new Provider.ImportProcessor(Context);

                AddGroupOfSteps(new StepGroup(dataTypeModel.DataTypeName)
                {
                    IsCurrent = true
                },
                                CreateSteps(importer, importer.HeaderLine, importer.LineFunction));
            }
            else
            {
                throw new ApplicationException("Unrecognized AHRQ import type");
            }
        }
        public WizardSteps(DataTypeModel dataTypeModel)
        {
            Context.SelectedDataType = dataTypeModel;
            Context.Steps            = this;


            // Create a group of wizard steps giving the ViewModel a function to import each line of the file
            if (dataTypeModel.Target.Guid == Constants.WingGuidAsGuid)
            {
                var importer = new ImportProcessor(Context);

                AddGroupOfSteps(new StepGroup(dataTypeModel.DataTypeName)
                {
                    IsCurrent = true
                },
                                CreateSteps(importer, importer.HeaderLine, importer.LineFunction));
            }
            else
            {
                throw new ApplicationException("Unrecognized NH-CAHPS Survey Results import type");
            }
        }
示例#27
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public int Update(DataTypeModel model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update tbDataType set ");
            strSql.Append(" DataType = @DataType , ");
            strSql.Append(" DataTypeName = @DataTypeName , ");
            strSql.Append(" Sort = @Sort , ");
            strSql.Append(" CreateBy = @CreateBy , ");
            strSql.Append(" CreateTime = @CreateTime , ");
            strSql.Append(" UpdateBy = @UpdateBy , ");
            strSql.Append(" UpdateTime = @UpdateTime  ");
            strSql.Append(" where id=@id ");

            SqlParameter[] parameters =
            {
                new SqlParameter("@id",           SqlDbType.Int,        4),
                new SqlParameter("@DataTypeName", SqlDbType.NVarChar,  50),
                new SqlParameter("@CreateBy",     SqlDbType.NVarChar,  50),
                new SqlParameter("@CreateTime",   SqlDbType.DateTime),
                new SqlParameter("@UpdateBy",     SqlDbType.NVarChar,  50),
                new SqlParameter("@UpdateTime",   SqlDbType.DateTime),
                new SqlParameter("@Sort",         SqlDbType.Int),
                new SqlParameter("@DataType",     SqlDbType.NVarChar, 50)
            };

            parameters[0].Value = model.id;
            parameters[1].Value = model.DataTypeName;
            parameters[2].Value = model.CreateBy;
            parameters[3].Value = model.CreateTime;
            parameters[4].Value = model.UpdateBy;
            parameters[5].Value = model.UpdateTime;
            parameters[6].Value = model.Sort;
            parameters[7].Value = model.DataType;
            object obj = SqlHelper.ExecuteNonQuery(SqlHelper.connStr, CommandType.Text, strSql.ToString(), parameters);

            return(Convert.ToInt32(obj));
        }
示例#28
0
        public ActionResult PutDataType(int id, DataTypeModel dataType)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != dataType.Id)
            {
                return(BadRequest());
            }

            try
            {
                datatypeRepo.UpdateDataType(dataType);
            }
            catch (DbUpdateConcurrencyException ex)
            {
                logger.Error(ex);
                throw;
            }

            return(NoContent());
        }
示例#29
0
 /// <summary>
 /// 新增
 /// </summary>
 /// <returns></returns>
 public ActionResult AddDataType()
 {
     try
     {
         UserModel     uInfo   = ViewData["Account"] as UserModel;
         DataTypeModel typeAdd = new DataTypeModel();
         typeAdd.DataType     = Request["DataType"];
         typeAdd.DataTypeName = Request["DataTypeName"];
         typeAdd.Sort         = int.Parse(Request["Sort"] == null ? "0" : Request["Sort"]);
         typeAdd.CreateBy     = uInfo.AccountName;
         typeAdd.CreateTime   = DateTime.Now;
         typeAdd.UpdateBy     = uInfo.AccountName;
         typeAdd.UpdateTime   = DateTime.Now;
         bool exists = new DataTypeBLL().Exists(typeAdd.DataTypeName);
         if (exists)
         {
             return(Content("{\"msg\":\"添加失败,类型名称已存在!\",\"success\":false}"));
         }
         else
         {
             int typeId = new DataTypeBLL().Add(typeAdd);
             if (typeId > 0)
             {
                 return(Content("{\"msg\":\"添加成功!\",\"success\":true}"));
             }
             else
             {
                 return(Content("{\"msg\":\"添加失败!\",\"success\":false}"));
             }
         }
     }
     catch (Exception ex)
     {
         return(Content("{\"msg\":\"添加失败," + ex.Message + "\",\"success\":false}"));
     }
 }
示例#30
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public int Update(DataTypeModel model)
 {
     return(dal.Update(model));
 }