Esempio n. 1
0
        /// <summary>
        /// 新增或者修改
        /// </summary>
        /// <param name="input">输入的实体</param>
        public void AddOrUpdate(ImpTbInput input)
        {
            var dbServer = _dbServerRepository.Get(input.DbServerId);
            var impType  = _impTypeRepository.Get(input.ImpTypeId);
            var list     = _impTbRepository.GetAllList(a => a.Id != input.Id);

            foreach (var item in list)
            {
                if (item.Code == input.Code)
                {
                    "编码已存在,请重新输入新的编码!".ErrorMsg();
                }
                if (item.CnTableName.ToLower() == input.CnTableName.ToLower())
                {
                    "表名称已存在,请重新输入新的表名称!".ErrorMsg();
                }
            }
            var data = input.MapTo <ImpTb>();

            if (input.Id > 0)
            {
                var item = _impTbRepository.Get(input.Id);
                data = input.MapTo <ImpTbInput, ImpTb>(item);
            }
            if (data.DefaultField != null)
            {
                data.DefaultField.Clear();
                if (!string.IsNullOrEmpty(input.DefaultFields))
                {
                    foreach (var idStr in input.DefaultFields.Split(','))
                    {
                        if (idStr == "")
                        {
                            continue;
                        }
                        var id           = long.Parse(idStr);
                        var defaultField = _defaultFieldRepository.Get(id);
                        data.DefaultField.Add(defaultField);
                    }
                }
            }
            data.DbServer = dbServer;
            data.ImpType  = impType;
            _impTbRepository.InsertOrUpdate(data);
            if (input.Id > 0)
            {
                CreateSqlScript(input.Id);
            }
        }
Esempio n. 2
0
        public ActionResult EditImpTb(long?id)
        {
            ViewBag.ImpType  = _impTypeAppService.GetDropDownList();
            ViewBag.DbServer = _dbServerAppService.GetDropDownList();
            ViewBag.DbType   = _dbTypeAppService.GetDropDownList();
            ViewBag.Rule     = new List <SelectListItem>()
            {
                new SelectListItem()
                {
                    Text = "以日期后缀创建表", Value = "1"
                },
                new SelectListItem()
                {
                    Text = "以指定表名创建表", Value = "2"
                },
                new SelectListItem()
                {
                    Text = "以用户后缀创建表", Value = "3"
                },
                new SelectListItem()
                {
                    Text = "自定义后缀创建表", Value = "4"
                }
            };
            var sql  = "";
            var data = new ImpTbInput();

            if (id != null)
            {
                data = _impTbAppService.Get(id.Value);
                data.DefaultFields = _impTbAppService.GetIds(id.Value);
                try
                {
                    var dbServer = _dbServerAppService.GetDbServer(data.DbServerId);
                    var dbType   = _dbTypeAppService.Get(a => a.Name == dbServer.DbTypeName);
                    data.DbTypeId = dbType.Id;
                }
                catch { }
                sql = data.Sql;
            }
            ViewBag.Sql = sql;
            return(View("Easyman.FwWeb.Views.Import.EditImpTb", data));
        }