cnf
7 天以前 eb86c89d85599da5b3f237a0e1214e45f6a90225
WebApi/Gs.Sys/Services/FmController.cs
@@ -253,17 +253,20 @@
            string keyMeth = model.keyMeth;
            string keyNo = model.keyNo;
            string idtype = model.idtype;//这个仅仅是更新工单状态的时候有
            if (keyMeth.ToUpper() == "delete".ToUpper())
                return "";
            string? keyList = model.keyList;//从存储过程来 zb/只取主表数据 mx1/取明细1的数据
            if (string.IsNullOrEmpty(keyList))
                keyList = "";
            try
            {
                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()),
            };
                dset = DbHelperSQL.RunProcedure(keyProduce, parameters, "0");
                if (dset == null)
                    return "";
@@ -271,24 +274,34 @@
                    return "";
                if (dset.Tables[0].Rows.Count <= 0)
                    return "";
                //这是普通的接口
              // 原有逻辑(非特殊情况)
                if (string.IsNullOrEmpty(idtype))
                {
                    string _mesGuid = dset.Tables[0].Rows[0][0].ToString();
                    dynamic _datajson = new ExpandoObject();
                    if (dset.Tables.Count > 1)
                    {
                        //这是结案,结构和其它不一样
                        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;
                        }
                            // 1.仅取主表数据,不处理子表
                            if ( keyList.ToLower() == "zb".ToLower() )
                            {
                                _datajson = dset.Tables[0].Rows[0].RowToDynamic();
                            }
                            // 2.取子表第一行数据
                            else if (keyMeth.ToLower() == "toclose"
                                     || keyMeth.ToLower() == "closure"
                                     || keyMeth.ToLower() == "unfinish")
                            {
                                _datajson = dset.Tables[1].Rows[0].RowToDynamic();
                            }
                            // 3.其他操作:主表+子表挂载到keyChild
                            else
                            {
                                _datajson = dset.Tables[0].Rows[0].RowToDynamic();
                                List<dynamic> _lst = dset.Tables[1].TableToDynamicList();
                                ((IDictionary<string, object>)_datajson)[keyChild] = _lst;
                            }
                    }
                    var _obj = new
                    {
@@ -299,11 +312,12 @@
                    };
                    return JsonConvert.SerializeObject(_obj);
                }
                //这是订单回传标识
                List<dynamic> _datajson22 = new List<dynamic>();
                dynamic _ob= new ExpandoObject();
                dynamic _ob = new ExpandoObject();
                _ob.ENTRY = dset.Tables[0].TableToDynamicList();
                _datajson22.Add(_ob);
                var _obj22 = new
                {
                    taskname = keyTaskName,
@@ -318,6 +332,7 @@
                throw ex;
            }
        }
        #endregion