Пример #1
0
        public void UpdateSemantics(SemanticsModel item, Operate operate)
        {
            var entity = new SD_Semantics
            {
                FTermClassId    = item.FTermClassId,
                SR              = item.SR,
                LTermClassId    = item.LTermClassId,
                FTerm           = item.FTerm,
                LTerm           = item.LTerm,
                OrderIndex      = item.OrderIndex,
                CreatedDate     = item.CreatedDate,
                CreatedBy       = item.CreatedBy,
                LastUpdatedDate = item.LastUpdatedDate,
                LastUpdatedBy   = item.LastUpdatedBy,
                Remark          = item.Remark
            };

            switch (operate)
            {
            case Operate.Create:
                _semanticsRepository.Add(entity);
                break;

            case Operate.Delete:
                var semanticsItem = _semanticsRepository.GetQuery()
                                    .Where(t => t.FTermClassId == entity.FTermClassId && t.LTermClassId == entity.LTermClassId && t.SR == entity.SR)
                                    .FirstOrDefault();
                if (semanticsItem != null)
                {
                    _semanticsRepository.Delete(semanticsItem);
                }
                break;

            default:
                _semanticsRepository.Update(entity);
                break;
            }
        }
Пример #2
0
        public void SavePtContext(string ptId, string pt, string sr, string ccId, string ccTerm, string userName)
        {
            var semantics = new List <SD_Semantics>();

            sr = sr.Trim();
            var index = sr.IndexOf("PT", StringComparison.Ordinal);

            if (!string.IsNullOrEmpty(ccId) && !string.IsNullOrEmpty(ccTerm))
            {
                var ccids   = ccId.Split('|');
                var ccTerms = ccTerm.Split(Convert.ToChar('|'));
                for (int i = 0; i < ccids.Length; i++)
                {
                    var fid   = ptId;
                    var lid   = ccids[i];
                    var fterm = pt;
                    var lterm = ccTerms[i];
                    if (index > 3)
                    {
                        fid = ccids[i]; lid = ptId; fterm = ccTerms[i]; lterm = pt;
                    }
                    var semantic = new SD_Semantics()
                    {
                        FTermClassId    = fid.ToInt32(),
                        LTermClassId    = lid.ToInt32(),
                        FTerm           = fterm,
                        LTerm           = lterm,
                        SR              = sr,
                        CreatedBy       = userName,
                        CreatedDate     = DateTime.Now,
                        LastUpdatedBy   = userName,
                        LastUpdatedDate = DateTime.Now,
                        OrderIndex      = i
                    };
                    _semanticsRepository.Add(semantic);
                }
            }
        }