1
tjx
2025-10-11 c01d18bc7e003a025e06fc1a2d1ac62fbd036269
1
已修改1个文件
253 ■■■■ 文件已修改
WebApi/Gs.Sys/Services/FmController.cs 253 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Gs.Sys/Services/FmController.cs
@@ -14,7 +14,6 @@
namespace Gs.Sys.Services
{
    [ApiGroup(ApiGroupNames.FM)]
    public class FmController : IRomteService
    {
@@ -29,6 +28,7 @@
        }
        #region 布局配置
        /// <summary>
        ///     保存或清空表单布局
        /// </summary>
@@ -58,50 +58,79 @@
                    if (isAdmin <= 0)
                    {
                        m.outMsg = "你不是管理员,操作失败!";
                        return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "操作成功!");
                        return ReturnDto<dynamic>.QuickReturn(m,
                            ReturnCode.Default, "操作成功!");
                    }
                }
                catch (Exception ex)
                {
                    Gs.Toolbox.LogHelper.Debug(this.ToString(), "EditModel isAdmin error:" + ex.Message);
                    Gs.Toolbox.LogHelper.Debug(this.ToString(),
                        "EditModel isAdmin error:" + ex.Message);
                }
            }
            //保存标准版
            if (intType == 1)
            {
                // Persist a new standard layout definition shared by all users.
                applyUserGuid = null;
                Gs.Toolbox.DbHelperSQL.ExecuteSql("delete from [FM_LAYOUT] where groupGuid<>'" + _groupGuid + "' and [formPath]=@formPath and applyUserGuid is null", new SqlParameter[] { new SqlParameter("@formPath", formPath) });
                Gs.Toolbox.DbHelperSQL.ExecuteSql(
                    "delete from [FM_LAYOUT] where groupGuid<>'" + _groupGuid +
                    "' and [formPath]=@formPath and applyUserGuid is null",
                    new SqlParameter[]
                        { new SqlParameter("@formPath", formPath) });
                // SQLStringList.Add("delete from [FM_LAYOUT] where groupGuid<>'" + _groupGuid + "' and [formPath]=@formPath and applyUserGuid is null", new SqlParameter[] { new SqlParameter("@formPath", formPath) });
            }
            //保存个人版本
            if (intType == 2)
            {
                // Persist the caller's personal layout copy scoped to their user GUID.
                applyUserGuid = _userGuid;
                Gs.Toolbox.DbHelperSQL.ExecuteSql("delete from [FM_LAYOUT] where  groupGuid<>'" + _groupGuid + "' and [formPath]=@formPath and applyUserGuid =@applyUserGuid", new SqlParameter[] { new SqlParameter("@formPath", formPath), new SqlParameter("@applyUserGuid", applyUserGuid) });
                Gs.Toolbox.DbHelperSQL.ExecuteSql(
                    "delete from [FM_LAYOUT] where  groupGuid<>'" + _groupGuid +
                    "' and [formPath]=@formPath and applyUserGuid =@applyUserGuid",
                    new SqlParameter[]
                    {
                        new SqlParameter("@formPath", formPath),
                        new SqlParameter("@applyUserGuid", applyUserGuid)
                    });
                //SQLStringList.Add("delete from [FM_LAYOUT] where  groupGuid<>'" + _groupGuid + "' and [formPath]=@formPath and applyUserGuid =@applyUserGuid", new SqlParameter[] { new SqlParameter("@formPath", formPath), new SqlParameter("@applyUserGuid", applyUserGuid) });
            }
            //清空标准版本
            if (intType == 3)
            {
                // Administrators can wipe the shared standard layout entirely.
                applyUserGuid = null;
                SQLStringList.Add("delete from [FM_LAYOUT] where [formPath]=@formPath and applyUserGuid is null", new SqlParameter[] { new SqlParameter("@formPath", formPath) });
                SQLStringList.Add(
                    "delete from [FM_LAYOUT] where [formPath]=@formPath and applyUserGuid is null",
                    new SqlParameter[]
                        { new SqlParameter("@formPath", formPath) });
                Gs.Toolbox.DbHelperSQL.ExecuteSqlTranRtn(SQLStringList);
                m.outMsg = "清空标准版配置成功!";
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "操作成功!");
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success,
                    "操作成功!");
            }
            //清空个人版本
            if (intType == 4)
            {
                // Remove the caller's personal layout while keeping the shared standard version intact.
                applyUserGuid = _userGuid;
                SQLStringList.Add("delete from [FM_LAYOUT] where [formPath]=@formPath and applyUserGuid =@applyUserGuid", new SqlParameter[] { new SqlParameter("@formPath", formPath), new SqlParameter("@applyUserGuid", applyUserGuid) });
                SQLStringList.Add(
                    "delete from [FM_LAYOUT] where [formPath]=@formPath and applyUserGuid =@applyUserGuid",
                    new SqlParameter[]
                    {
                        new SqlParameter("@formPath", formPath),
                        new SqlParameter("@applyUserGuid", applyUserGuid)
                    });
                Gs.Toolbox.DbHelperSQL.ExecuteSqlTranRtn(SQLStringList);
                m.outMsg = "清空个人版配置成功!";
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "操作成功!");
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success,
                    "操作成功!");
            }
            //这是所有的gridview,lay xml
            JArray jArray = model.xmlList;
            try
@@ -115,33 +144,48 @@
                        string idName = job["idName"].ToString();
                        string idXml = job["idXml"].ToString();
                        string idType = job["idType"].ToString();
                        string _splitterPosition = job["splitterPosition"].ToString();
                        string splitterPosition = string.IsNullOrEmpty(_splitterPosition) ? "0" : _splitterPosition;
                        System.Text.StringBuilder _sql = new System.Text.StringBuilder();
                        _sql.Append(" INSERT INTO [dbo].[FM_LAYOUT] ([guid] ,[applyUserGuid] ,[formPath] ,[controlId],[controlHeight],[lastUpdateBy],[lastUpdateDate],controlXml,controlType,groupGuid,splitterPosition)");
                        _sql.Append("values(newid(),@applyUserGuid,@formPath,@controlId,@controlHeight,@lastUpdateBy,getdate(),@controlXml,'" + idType + "','" + _groupGuid + "'," + splitterPosition + ")");
                        SQLStringList.Add(_sql, new SqlParameter[] {
                            new SqlParameter("@formPath", formPath)
                            , new SqlParameter("@controlId", idName)
                             , new SqlParameter("@controlHeight", "0")
                             , new SqlParameter("@lastUpdateBy", _userCode)
                             , new SqlParameter("@applyUserGuid", applyUserGuid)
                             , new SqlParameter("@controlXml", idXml)
                        string _splitterPosition =
                            job["splitterPosition"].ToString();
                        string splitterPosition =
                            string.IsNullOrEmpty(_splitterPosition)
                                ? "0"
                                : _splitterPosition;
                        System.Text.StringBuilder _sql =
                            new System.Text.StringBuilder();
                        _sql.Append(
                            " INSERT INTO [dbo].[FM_LAYOUT] ([guid] ,[applyUserGuid] ,[formPath] ,[controlId],[controlHeight],[lastUpdateBy],[lastUpdateDate],controlXml,controlType,groupGuid,splitterPosition)");
                        _sql.Append(
                            "values(newid(),@applyUserGuid,@formPath,@controlId,@controlHeight,@lastUpdateBy,getdate(),@controlXml,'" +
                            idType + "','" + _groupGuid + "'," +
                            splitterPosition + ")");
                        SQLStringList.Add(_sql, new SqlParameter[]
                        {
                            new SqlParameter("@formPath", formPath),
                            new SqlParameter("@controlId", idName),
                            new SqlParameter("@controlHeight", "0"),
                            new SqlParameter("@lastUpdateBy", _userCode),
                            new SqlParameter("@applyUserGuid", applyUserGuid),
                            new SqlParameter("@controlXml", idXml)
                        });
                    }
                }
                Gs.Toolbox.DbHelperSQL.ExecuteSqlTranRtn(SQLStringList);
                m.outMsg = "保存" + (intType == 1 ? "标准版" : "个人版") + "配置成功!";
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "操作成功!");
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success,
                    "操作成功!");
            }
            catch (Exception ex)
            {
                // 捕获保存查询配置时的异常,并将信息返回给前端。
                m.outMsg = "操作失败:" + ex.Message;
                Gs.Toolbox.LogHelper.Debug(this.ToString(), "EditModel error:" + ex.Message);
                Gs.Toolbox.LogHelper.Debug(this.ToString(),
                    "EditModel error:" + ex.Message);
            }
            //这是所有的
            return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "操作成功!");
            return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default,
                "操作成功!");
        }
@@ -167,9 +211,10 @@
            try
            {
                // Stored procedure returns both standard layout data and any personal override for the current user.
                dset = DbHelperSQL.RunProcedure("[fm_get_layout]", parameters, "0");
                dset = DbHelperSQL.RunProcedure("[fm_get_layout]", parameters,
                    "0");
                if (dset != null && dset.Tables.Count > 0
                 )
                   )
                {
                    // Table[0] represents the standard definition; table[1] holds the user's personal layout snapshot.
                    var _tb = dset.Tables[0].TableToDynamicList();
@@ -183,6 +228,7 @@
                // Log retrieval failure but continue returning default result to caller.
                LogHelper.Debug(ToString(), ex.Message);
            }
            if (m != null)
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success,
                    "读取成功!");
@@ -211,9 +257,10 @@
            try
            {
                // Stored procedure exposes the latest serialized layout snapshot based on formPath and user scope.
                dset = DbHelperSQL.RunProcedure("[fm_get_layout_ver]", parameters, "0");
                dset = DbHelperSQL.RunProcedure("[fm_get_layout_ver]",
                    parameters, "0");
                if (dset != null && dset.Tables.Count > 0
                 )
                   )
                {
                    strMsg = dset.Tables[0].Rows[0][0].ToString();
                }
@@ -221,12 +268,14 @@
            catch (Exception ex)
            {
                // Capture context when reading layout versions fails to help diagnose environment-specific issues.
                LogHelper.Debug(ToString(), ex.Message+ ",formPath:"+ formPath+ ",_userGuid:"+ _userGuid);
                LogHelper.Debug(ToString(),
                    ex.Message + ",formPath:" + formPath + ",_userGuid:" +
                    _userGuid);
            }
            return ReturnDto<string>.QuickReturn(strMsg, ReturnCode.Success, "读取成功!");
        }
            return ReturnDto<string>.QuickReturn(strMsg, ReturnCode.Success,
                "读取成功!");
        }
        #endregion
@@ -235,7 +284,8 @@
            int? isAdmin = 0;
            System.Text.StringBuilder _sb = new System.Text.StringBuilder();
            // Uses SYS_USER.IS_SYS flag to decide if the caller has elevated privileges.
            _sb.Append("select count(1) from [dbo].[SYS_USER] where GUID='" + _userGuid + "' and  IS_SYS=1");
            _sb.Append("select count(1) from [dbo].[SYS_USER] where GUID='" +
                       _userGuid + "' and  IS_SYS=1");
            object _obj = Gs.Toolbox.DbHelperSQL.GetSingle(_sb.ToString());
            if (_obj == null)
            {
@@ -243,6 +293,7 @@
            }
            else
                isAdmin = Gs.Toolbox.UtilityHelper.ToInt(_obj.ToString());
            return isAdmin;
        }
@@ -275,29 +326,34 @@
                string keyUserGuid = model.keyUserGuid;
                string keyGuid = model.keyGuid;
                string keyNo = model.keyNo;
                string idtype = model.idtype;//这个仅仅是更新工单状态的时候有
                string idtype = model.idtype; //这个仅仅是更新工单状态的时候有
                string keyUrl = model.keyUrl;
                if (string.IsNullOrEmpty(idtype))
                {
                    // 常规接口:按操作类型推送单条业务数据。
                    (_rtnInt, _rtnStr) = InterfaceUtil.HttpPostErp(_erpJson, keyUserGuid, keyGuid, keyNo,0,keyUrl);
                    (_rtnInt, _rtnStr) = InterfaceUtil.HttpPostErp(_erpJson,
                        keyUserGuid, keyGuid, keyNo, 0, keyUrl);
                }
                else
                {
                    // 带 idtype 的请求用于特殊流程(如关闭、反关闭),ERP 需要额外的状态标记。
                    (_rtnInt, _rtnStr) = InterfaceUtil.HttpPostErp(_erpJson, keyUserGuid, keyGuid, keyNo, 2,keyUrl);
                    (_rtnInt, _rtnStr) = InterfaceUtil.HttpPostErp(_erpJson,
                        keyUserGuid, keyGuid, keyNo, 2, keyUrl);
                }
            }
            catch (Exception ex)
            {
                // 记录 ERP 数据转换异常,便于定位存储过程或序列化问题。
                Gs.Toolbox.LogHelper.Debug(this.ToString(), "Fm SendErp:" + ex.Message);
                Gs.Toolbox.LogHelper.Debug(this.ToString(),
                    "Fm SendErp:" + ex.Message);
                return "发送erp失败:" + ex.Message;
            }
            if (_rtnInt <= 0)
            {
                return "发送erp失败:" + _rtnStr;
            }
            return _rtnStr;
        }
@@ -315,7 +371,7 @@
            string keyChild = model.keyChild;
            string keyMeth = model.keyMeth;
            string keyNo = model.keyNo;
            string idtype = model.idtype;//这个仅仅是更新工单状态的时候有
            string idtype = model.idtype; //这个仅仅是更新工单状态的时候有
            if (keyMeth.ToUpper() == "delete".ToUpper())
                // 删除操作无需向 ERP 推送数据,只需返回空串。
                return "";
@@ -323,11 +379,11 @@
            {
                System.Data.DataSet dset = new System.Data.DataSet();
                SqlParameter[] parameters =
                      {
                       new("@inOrderGuid", keyGuid),
                       new("@inEdtUserGuid", keyUserGuid),
                       new("@keyMeth", keyMeth.ToLower()),
                   };
                {
                    new("@inOrderGuid", keyGuid),
                    new("@inEdtUserGuid", keyUserGuid),
                    new("@keyMeth", keyMeth.ToLower()),
                };
                // 调用业务定义的存储过程,将 MES 数据打包给 ERP。
                dset = DbHelperSQL.RunProcedure(keyProduce, parameters, "0");
                if (dset == null)
@@ -346,17 +402,22 @@
                    {
                        // 多表返回时,需要把子表集合挂到 datajson 中。
                        //这是这是普通的接口里的结案,结构和其它不一样
                        if (keyMeth.ToLower() == "toclose".ToLower() || keyMeth.ToLower() == "closure".ToLower() || keyMeth.ToLower() == "unfinish")
                        if (keyMeth.ToLower() == "toclose".ToLower() ||
                            keyMeth.ToLower() == "closure".ToLower() ||
                            keyMeth.ToLower() == "unfinish")
                        {
                            _datajson = dset.Tables[1].Rows[0].RowToDynamic();
                        }
                        else
                        {
                            _datajson = dset.Tables[0].Rows[0].RowToDynamic();
                            List<dynamic> _lst = dset.Tables[1].TableToDynamicList();
                            ((IDictionary<string, object>)_datajson)[keyChild] = _lst;
                            List<dynamic> _lst =
                                dset.Tables[1].TableToDynamicList();
                            ((IDictionary<string, object>)_datajson)[keyChild] =
                                _lst;
                        }
                    }
                    // var _obj = new
                    // {
                    //     mesid = _mesGuid,
@@ -367,6 +428,7 @@
                    // return JsonConvert.SerializeObject(_obj);
                    return JsonConvert.SerializeObject(_datajson);
                }
                //这是订单回传标识
                List<dynamic> _datajson22 = new List<dynamic>();
                dynamic _ob = new ExpandoObject();
@@ -388,6 +450,7 @@
                throw ex;
            }
        }
        #endregion
@@ -412,13 +475,14 @@
            foreach (var _obj in model.list)
            {
                var _line =
                     _obj.colName + _split
                    + _obj.colCap + _split
                   ;
                        _obj.colName + _split
                                     + _obj.colCap + _split
                    ;
                if (_sb.Length > 0)
                    _sb.Append("~");
                _sb.Append(_line);
            }
            ;
            var lst = new List<dynamic>();
            // 将列名和显示标题拼成 "~" 分隔的参数,传给存储过程生成查询配置。
@@ -431,7 +495,8 @@
            try
            {
                // fm_set_query 会返回查询条件、结果字段、排序等多张配置表。
                dset = DbHelperSQL.RunProcedure("[fm_set_query]", parameters, "0");
                dset = DbHelperSQL.RunProcedure("[fm_set_query]", parameters,
                    "0");
                if (dset != null && dset.Tables.Count > 0)
                {
                    m.list = dset.Tables[0].TableToDynamicList();
@@ -445,7 +510,9 @@
                // 记录 ERP 数据转换异常,便于定位存储过程或序列化问题。
                LogHelper.Debug(ToString(), ex.Message);
            }
            return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "读取成功!");
            return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success,
                "读取成功!");
        }
        /// <summary>
@@ -469,35 +536,49 @@
                {
                    // Query configuration is restricted to administrators to protect shared metadata.
                    m.outMsg = "你不是管理员,操作失败!";
                    return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "操作成功!");
                    return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default,
                        "操作成功!");
                }
            }
            catch (Exception ex)
            {
                // 记录 ERP 数据转换异常,便于定位存储过程或序列化问题。
                Gs.Toolbox.LogHelper.Debug(this.ToString(), "EditModel isAdmin error:" + ex.Message);
                Gs.Toolbox.LogHelper.Debug(this.ToString(),
                    "EditModel isAdmin error:" + ex.Message);
            }
            try
            {
                // 先清空原有查询来源表,再批量插入最新配置。
                Gs.Toolbox.DbHelperSQL.ExecuteSql("delete from [FM_QUERY_TABLE] where formPath=@formPath ", new SqlParameter[] { new SqlParameter("@formPath", formPath) });
                Gs.Toolbox.DbHelperSQL.ExecuteSql(
                    "delete from [FM_QUERY_TABLE] where formPath=@formPath ",
                    new SqlParameter[]
                        { new SqlParameter("@formPath", formPath) });
                foreach (var _obj in model.list)
                {
                    System.Text.StringBuilder _sb = new System.Text.StringBuilder();
                    _sb.Append("INSERT INTO [dbo].[FM_QUERY_TABLE]([guid],[formPath] ,[tableName] ,[lastUpdateBy] ,[lastUpdateDate],[tableOtherName])");
                    _sb.Append(" values(newid(),'" + formPath + "','" + _obj.tableName + "','',getdate(),'" + _obj.tableOtherName + "')");
                    System.Text.StringBuilder _sb =
                        new System.Text.StringBuilder();
                    _sb.Append(
                        "INSERT INTO [dbo].[FM_QUERY_TABLE]([guid],[formPath] ,[tableName] ,[lastUpdateBy] ,[lastUpdateDate],[tableOtherName])");
                    _sb.Append(" values(newid(),'" + formPath + "','" +
                               _obj.tableName + "','',getdate(),'" +
                               _obj.tableOtherName + "')");
                    arrayList.Add(_sb.ToString());
                }
                Gs.Toolbox.DbHelperSQL.ExecuteSqlTran(arrayList);
            }
            catch (Exception ex)
            {
                // 捕获保存查询配置时的异常,并将信息返回给前端。
                m.outMsg = ex.Message;
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, ex.Message);
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default,
                    ex.Message);
            }
            m.outMsg = "操作成功!";
            return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "操作成功!");
            return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default,
                "操作成功!");
        }
        /// <summary>
@@ -516,22 +597,30 @@
                if (isAdmin <= 0)
                {
                    // 删除查询配置同样需要管理员权限。
                    return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Default, "你不是管理员,操作失败!");
                    return ReturnDto<int>.QuickReturn(rtnInt,
                        ReturnCode.Default, "你不是管理员,操作失败!");
                }
            }
            catch (Exception ex)
            {
                // 记录 ERP 数据转换异常,便于定位存储过程或序列化问题。
                Gs.Toolbox.LogHelper.Debug(this.ToString(), "EditModel isAdmin error:" + ex.Message);
                Gs.Toolbox.LogHelper.Debug(this.ToString(),
                    "EditModel isAdmin error:" + ex.Message);
            }
            Guid? guid = model.guid;
            System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder();
            System.Text.StringBuilder stringBuilder =
                new System.Text.StringBuilder();
            // 采用 GUID 精确删除指定的查询数据源记录。
            stringBuilder.Append("delete from FM_QUERY_TABLE where guid='" + guid + "'");
            rtnInt = Gs.Toolbox.DbHelperSQL.ExecuteSql(stringBuilder.ToString());
            stringBuilder.Append("delete from FM_QUERY_TABLE where guid='" +
                                 guid + "'");
            rtnInt =
                Gs.Toolbox.DbHelperSQL.ExecuteSql(stringBuilder.ToString());
            if (rtnInt <= 0)
                return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Exception, "操作失败!");
            return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Success, "操作成功!");
                return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Exception,
                    "操作失败!");
            return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Success,
                "操作成功!");
        }
        /// <summary>
@@ -550,28 +639,42 @@
                if (isAdmin <= 0)
                {
                    // 只有管理员才能调整查询列字段映射。
                    return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Default, "你不是管理员,操作失败!");
                    return ReturnDto<int>.QuickReturn(rtnInt,
                        ReturnCode.Default, "你不是管理员,操作失败!");
                }
            }
            catch (Exception ex)
            {
                // 记录 ERP 数据转换异常,便于定位存储过程或序列化问题。
                Gs.Toolbox.LogHelper.Debug(this.ToString(), "EditModel isAdmin error:" + ex.Message);
                Gs.Toolbox.LogHelper.Debug(this.ToString(),
                    "EditModel isAdmin error:" + ex.Message);
            }
            Guid? guid = model.guid;
            string sqlField = model.sqlField;
            string sqlFieldType = model.sqlFieldType;
            string fType = model.fType;
            System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder();
            System.Text.StringBuilder stringBuilder =
                new System.Text.StringBuilder();
            if (fType == "1")
                stringBuilder.Append("update  FM_QUERY set sqlFieldType='" + sqlFieldType + "', lastUpdateDate=getdate() where guid='" + guid + "'");
                stringBuilder.Append("update  FM_QUERY set sqlFieldType='" +
                                     sqlFieldType +
                                     "', lastUpdateDate=getdate() where guid='" +
                                     guid + "'");
            else
                stringBuilder.Append("update  FM_QUERY set sqlField='" + sqlField + "', lastUpdateDate=getdate() where guid='" + guid + "'");
            rtnInt = Gs.Toolbox.DbHelperSQL.ExecuteSql(stringBuilder.ToString());
                stringBuilder.Append("update  FM_QUERY set sqlField='" +
                                     sqlField +
                                     "', lastUpdateDate=getdate() where guid='" +
                                     guid + "'");
            rtnInt =
                Gs.Toolbox.DbHelperSQL.ExecuteSql(stringBuilder.ToString());
            if (rtnInt <= 0)
                return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Exception, "操作成功!");
            return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Success, "操作失败!");
                return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Exception,
                    "操作成功!");
            return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Success,
                "操作失败!");
        }
        #endregion
    }
}
}