124 lines
4.1 KiB
C#
124 lines
4.1 KiB
C#
using EnVisage.Models;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data.Entity;
|
|
using System.Data.Entity.Infrastructure;
|
|
using System.Linq;
|
|
using System.Web;
|
|
|
|
namespace EnVisage.Code.BLL
|
|
{
|
|
public class ParseRecordManager : ManagerBase<supt_tbl_RecParser,ParseRecordModel>
|
|
{
|
|
public override DbSet<supt_tbl_RecParser> DataTable
|
|
{
|
|
get
|
|
{
|
|
return DbContext.supt_tbl_RecParser;
|
|
}
|
|
}
|
|
public ParseRecordManager(EnVisageEntities dbContext)
|
|
: base(dbContext) { }
|
|
|
|
protected override supt_tbl_RecParser InitInstance()
|
|
{
|
|
return new supt_tbl_RecParser
|
|
{
|
|
Id = Guid.NewGuid()
|
|
};
|
|
}
|
|
public override supt_tbl_RecParser Save(ParseRecordModel model)
|
|
{
|
|
if (model.Id != Guid.Empty)
|
|
{
|
|
var items2Delete = DbContext.supt_tbl_RecParser.Where(t => t.Id == model.Id);
|
|
foreach (var supt_tbl_RecParser in items2Delete)
|
|
{
|
|
DbContext.Entry(supt_tbl_RecParser).State = EntityState.Deleted;
|
|
}
|
|
}
|
|
var obj = base.Save(model);
|
|
//DbContext.supt_tbl_RecParser.Add(new supt_tbl_RecParser
|
|
//{
|
|
// ProcessID = model.ProcessID,
|
|
// Id = model.Id,
|
|
// ToType = model.ToType,
|
|
// ToName = model.ToName,
|
|
// ToField = model.ToField,
|
|
// StartPos = model.StartPos,
|
|
// Length = model.Length,
|
|
// index = model.index,
|
|
// isDelimited = model.isDelimited,
|
|
// Delimitor = model.Delimitor,
|
|
// AdditionalFormat = model.AdditionalFormat,
|
|
// DBFieldFormat = model.DBFieldFormat,
|
|
// TableOrder = model.TableOrder,
|
|
// ForeignKey = model.ForeignKey
|
|
//});
|
|
|
|
return obj;
|
|
}
|
|
protected override supt_tbl_RecParser RetrieveReadOnlyById(Guid key)
|
|
{
|
|
return DataTable.AsNoTracking().FirstOrDefault(t => t.Id == key);
|
|
}
|
|
public IList<ParseRecordModel> getProcessIDs()
|
|
{
|
|
var resources = new List<ParseRecordModel>();
|
|
|
|
foreach (var x in DataTable)
|
|
{
|
|
resources.Add(new ParseRecordModel()
|
|
{
|
|
Id = x.Id,
|
|
ProcessID = x.ProcessID,
|
|
ToType = x.ToType,
|
|
ToName = x.ToName,
|
|
ToField = x.ToField,
|
|
StartPos = x.StartPos,
|
|
Length = x.Length,
|
|
index = x.index,
|
|
isDelimited = x.isDelimited,
|
|
Delimitor = x.Delimitor,
|
|
AdditionalFormat = x.AdditionalFormat,
|
|
Overlay = x.Overlay,
|
|
DBFieldFormat = x.DBFieldFormat,
|
|
TableOrder = x.TableOrder,
|
|
ForeignKey = x.ForeignKey
|
|
|
|
});
|
|
}
|
|
|
|
return resources;
|
|
}
|
|
public IList<ParseRecordModel> GetRecordDefinition(string schemaID)
|
|
{
|
|
var resources = new List<ParseRecordModel>();
|
|
|
|
foreach (var x in DataTable.Where(x => x.ProcessID == schemaID))
|
|
{
|
|
resources.Add(new ParseRecordModel()
|
|
{
|
|
Id = x.Id,
|
|
ProcessID = x.ProcessID,
|
|
ToType = x.ToType,
|
|
ToName = x.ToName,
|
|
ToField = x.ToField,
|
|
StartPos = x.StartPos,
|
|
Length = x.Length,
|
|
index = x.index,
|
|
isDelimited = x.isDelimited,
|
|
Delimitor = x.Delimitor,
|
|
AdditionalFormat = x.AdditionalFormat,
|
|
Overlay = x.Overlay,
|
|
DBFieldFormat = x.DBFieldFormat,
|
|
TableOrder = x.TableOrder,
|
|
ForeignKey = x.ForeignKey
|
|
|
|
});
|
|
}
|
|
|
|
return resources;
|
|
}
|
|
}
|
|
} |