Ejemplo n.º 1
0
        /// <summary>
        /// 修改字段的业务场景说明
        /// </summary>
        private void Sence()
        {
            #region check
            var argdata = GetActionParamData<MofifyArg>(true);
            if (argdata == null)
            {
                Outmsg("参数解析错误");
                return;
            }

            if (!IsNotEmptyString(argdata.table) ||
                !IsNotEmptyString(argdata.name) ||
                !IsNotEmptyString(argdata.biz))
            {
                Outmsg("参数无效");
                return;
            }

            var query = GetTableDetail(argdata.table);                                //表信息
            if (query == null || query.Count == 0)
            {
                Outmsg("数据表无效");
                return;
            }

            var field = query.FirstOrDefault(x => x.name == argdata.name);                      //字段信息
            if (field == null)
            {
                Outmsg("无效字段");
                return;
            }
            #endregion

            #region 字段的业务场景描述
            var tbBizInfo = BufHelp.ProtoBufDeserialize<List<TableInfoTiny>>(KeyCenter.TableBusinessFile)
                            ?? new List<TableInfoTiny>();
            //业务属性描述
            var currentbiz = tbBizInfo.FirstOrDefault(x => x.tablename == argdata.table);       //当前表的业务说明信息
            if (currentbiz == null || currentbiz.fieldinfo.Count == 0)                          //表不存在
            {
                var fieldbiz = new TableInfoTiny
                {
                    tablename = argdata.table,
                    fieldinfo = query.Select(x => new FieldInfo
                    {
                        name = x.name,
                        type = x.type,
                        des = x.des,
                        biz = x.name == argdata.name ? argdata.biz.Trim() : ""
                    }).ToList()
                };
                tbBizInfo.RemoveAll(x => x.tablename == argdata.table);
                tbBizInfo.Add(fieldbiz);
            }
            else                                                                                //表存在
            {
                var tempf = currentbiz.fieldinfo.FirstOrDefault(x => x.name == argdata.name);
                tempf.biz = argdata.biz;                                                        //修改业务描述内容
            }

            var result = BufHelp.ProtoBufSerialize<List<TableInfoTiny>>(tbBizInfo, KeyCenter.TableBusinessFile);
            Outmsg(result, outmsg: string.Format("修改字段{0}的业务属性出错", argdata.name));
            #endregion
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 修改字段的业务场景说明
        /// </summary>
        private void Sence()
        {
            #region check
            var argdata = GetActionParamData <MofifyArg>(true);
            if (argdata == null)
            {
                Outmsg("参数解析错误");
                return;
            }

            if (!IsNotEmptyString(argdata.table) ||
                !IsNotEmptyString(argdata.name) ||
                !IsNotEmptyString(argdata.biz))
            {
                Outmsg("参数无效");
                return;
            }

            var query = GetTableDetail(argdata.table);                                //表信息
            if (query == null || query.Count == 0)
            {
                Outmsg("数据表无效");
                return;
            }

            var field = query.FirstOrDefault(x => x.name == argdata.name);                      //字段信息
            if (field == null)
            {
                Outmsg("无效字段");
                return;
            }
            #endregion

            #region 字段的业务场景描述
            var tbBizInfo = BufHelp.ProtoBufDeserialize <List <TableInfoTiny> >(KeyCenter.TableBusinessFile)
                            ?? new List <TableInfoTiny>();
            //业务属性描述
            var currentbiz = tbBizInfo.FirstOrDefault(x => x.tablename == argdata.table);       //当前表的业务说明信息
            if (currentbiz == null || currentbiz.fieldinfo.Count == 0)                          //表不存在
            {
                var fieldbiz = new TableInfoTiny
                {
                    tablename = argdata.table,
                    fieldinfo = query.Select(x => new FieldInfo
                    {
                        name = x.name,
                        type = x.type,
                        des  = x.des,
                        biz  = x.name == argdata.name ? argdata.biz.Trim() : ""
                    }).ToList()
                };
                tbBizInfo.RemoveAll(x => x.tablename == argdata.table);
                tbBizInfo.Add(fieldbiz);
            }
            else                                                                                //表存在
            {
                var tempf = currentbiz.fieldinfo.FirstOrDefault(x => x.name == argdata.name);
                tempf.biz = argdata.biz;                                                        //修改业务描述内容
            }

            var result = BufHelp.ProtoBufSerialize <List <TableInfoTiny> >(tbBizInfo, KeyCenter.TableBusinessFile);
            Outmsg(result, outmsg: string.Format("修改字段{0}的业务属性出错", argdata.name));
            #endregion
        }