zrg
2024-04-19 52c55f711937ba38c8bf2d45dc8333bb45ed796b
WebAPI/Controllers/BaseSet/Xt_grdAlignment_WMESController.cs
@@ -1,5 +1,6 @@
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Pub_Control;
using System;
using System.Collections.Generic;
using System.Data;
@@ -70,6 +71,7 @@
            public string HSortFlag;
            public string HSelTotal;
            public string HColumnWidth;
            public string HPageSize;
        }
        public class grdAlignmentSub
@@ -132,12 +134,15 @@
                HGridString = HGridString.Substring(0, HGridString.Length - 1);
                oCN.RunProc("Delete from Xt_grdAlignment_WMES where HUserName='" + user + "' and HModName='" + HModName + "' ");
                oCN.RunProc("insert into Xt_grdAlignment_WMES (HUserName,HModName,HGridString,HFixCols" +
                    ",HFontSize,HHeadTextHeight,HTextHeight,HSortFlag,HSelTotal,HColumnWidth" +
                string sql = "insert into Xt_grdAlignment_WMES (HUserName,HModName,HGridString,HFixCols" +
                    ",HFontSize,HHeadTextHeight,HTextHeight,HSortFlag,HSelTotal,HColumnWidth,HPageSize" +
                    ")  values('" + user + "','" + HModName + "','" + HGridString + "'," + (omdelMian.HFixCols == "" ? "0" : omdelMian.HFixCols) +
                    "," + (omdelMian.HFontSize == "" ? "0" : omdelMian.HFontSize) + ",0" +
                    ",0,'" + omdelMian.HSortFlag + "','" + omdelMian.HSelTotal + "'" +
                    "," + (omdelMian.HColumnWidth == "" ? "0" : omdelMian.HColumnWidth) + ")");
                    "," + (omdelMian.HColumnWidth == "" ? "0" : omdelMian.HColumnWidth) + "," + ((omdelMian.HPageSize == null || omdelMian.HPageSize == "") ? "0" : omdelMian.HPageSize) + ")";
                oCN.RunProc(sql);
                objJsonResult.code = "1";
@@ -199,7 +204,6 @@
            }
        }
        #endregion
        #region 按钮设置 列表
        [Route("Xt_ModuleButtonSet_WMES/moduleButtonSetWMESList")]
@@ -354,5 +358,244 @@
        }
        #endregion
        #region 高级过滤  方案查询
        public class TreeModel
        {
            public string id { get; set; }
            public string title { get; set; }
            public List<TreeModel> children = new List<TreeModel>();
        }
        [Route("Xt_grdAlignment_WMES/Gy_QueryConditionList_F_A")]
        [HttpGet]
        public object Gy_QueryConditionList_F_A(string HModName, string user)
        {
            try
            {
                ds = oCN.RunProcReturn("Select HInterID,HName from xt_ICSchemeMain Where HName='默认方案' and HBillName='" + HModName + "'and HUserCode='" + user + "'", "xt_ICSchemeMain");
                List<TreeModel> treeModels = new List<TreeModel>();
                if (ds.Tables[0].Rows.Count > 0)
                {
                    TreeModel Second = new TreeModel();
                    Second.id = ds.Tables[0].Rows[0]["HInterID"].ToString();
                    Second.title = ds.Tables[0].Rows[0]["HName"].ToString();
                    treeModels.Add(Second);
                    ds = oCN.RunProcReturn("Select HInterID,HName from xt_ICSchemeMain Where HName!='默认方案' and  HBillName='" + HModName + "'and HUserCode='" + user + "' order by HInterID", "xt_ICSchemeMain");
                    foreach (DataRow row in ds.Tables[0].Rows)
                    {
                        TreeModel Three = new TreeModel();
                        Three.id = row["HInterID"].ToString();
                        Three.title = row["HName"].ToString();
                        treeModels.Add(Three);
                    }
                }
                else
                {
                    TreeModel first = new TreeModel();
                    first.id = "0";
                    first.title = "默认方案";
                    treeModels.Add(first);
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = Newtonsoft.Json.JsonConvert.SerializeObject(treeModels);
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region 高级过滤 字段过滤条件查询
        [Route("Xt_grdAlignment_WMES/Gy_QueryCondition_Z_D_select")]
        [HttpGet]
        public object Gy_QueryCondition_Z_D_select(string sWhere, string user, string Organization)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                ////编辑权限
                //if (!DBUtility.ClsPub.Security_Log_second("Gy_Material", 1, false, user))
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "无查看权限!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                string sql1 = string.Format(@"select * from Xt_grdCondition  where 1=1 ");
                string sql = sql1 + sWhere;
                ds = oCN.RunProcReturn(sql, "Xt_grdCondition");
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.list = columnNameList;
                objJsonResult.data = ds.Tables[0];
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region 高级过滤 方案 过滤条件 删除
        [Route("Xt_grdAlignment_WMES/Del_Gy_QueryConditionList_F_A")]
        [HttpGet]
        public object Del_Gy_QueryConditionList_F_A(string HModName, string ID, string user)
        {
            try
            {
                oCN.BeginTran();
                //删除方案主表
                oCN.RunProc("Delete From xt_ICSchemeMain where HInterID=" + ID.ToString());
                //删除 过滤条件
                oCN.RunProc("Delete From Xt_grdCondition where HInterID=" + ID.ToString());
                oCN.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "删除成功!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region 高级过滤 方案 过滤条件 保存
        public class xt_ICScheme
        {
            public string HFieldNameCol;
            public string HControlCol;
            public string HConditionCol;
            public string HRelationCol;
        }
        public class data
        {
            public string id;
            public string title;
        }
        [Route("Xt_grdAlignment_WMES/Add_Gy_QueryConditionList_F_A")]
        [HttpPost]
        public object Add_Gy_QueryConditionList_F_A([FromBody] JObject sMainSub)
        {
            try
            {
                var _value = sMainSub["sMainSub"].ToString();
                string msg1 = _value.ToString();
                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                string TableData = sArray[0].ToString();//字段过滤条件
                string F_A = sArray[1].ToString();//方案
                string HModName = sArray[2].ToString();//模块
                string HUserName = sArray[3].ToString();//用户
                List<xt_ICScheme> ListTableData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<xt_ICScheme>>(TableData);
                data listF_A = Newtonsoft.Json.JsonConvert.DeserializeObject<data>(F_A);
                oCN.BeginTran();
                if (listF_A.id != "0")
                {
                    //删除主表
                    oCN.RunProc("Delete From xt_ICSchemeMain where HInterID=" + listF_A.id.ToString());
                }
                else {
                    listF_A.id = Pub_Class.ClsPub.CreateBillID("0001", ref Pub_Class.ClsPub.sExeReturnInfo).ToString(); ;
                }
                //添加方案主表
                oCN.RunProc("Insert Into xt_ICSchemeMain   " +
                "(HBillType,HInterID,HName,HUserCode" +
                ",HBillName,HStopflag" +
                ") " +
                " values('0001'," + listF_A.id.ToString() + ",'" + listF_A.title + "','" + HUserName + "'" +
                ",'" + HModName.ToString() + "',0" +
                ") ");
                //删除字段表数据
                oCN.RunProc("delete Xt_grdCondition where   HInterID=" + listF_A.id.ToString());
                ds = oCN.RunProcReturn("select column_name,data_type from information_schema.columns where table_name ='" + HModName + "' order by  ORDINAL_POSITION", "information");
                //添加过滤字段表
                for (int i = 0; i < ListTableData.Count; i++)
                {
                    for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
                    {
                        if (ListTableData[i].HFieldNameCol == ds.Tables[0].Rows[j]["column_name"].ToString()) {
                            oCN.RunProc("Insert Into Xt_grdCondition   " +
                            "(HInterID,HUserID,HBillName,HRow,HIDCol,HBracketLCol,HFieldNameCol,HControlCol" +
                            ",HConditionCol,HBracketRCol,HRelationCol" +
                            ") " +
                            " values(" + listF_A.id.ToString() + ",'" + HUserName + "','" + HModName.Trim() + "'," + i +
                            ",'" + Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[j]["column_name"].ToString()) + "'" +
                            ",''" +
                            ",'" + Pub_Class.ClsPub.isStrNull(ListTableData[i].HFieldNameCol) + "'" +
                            ",'" + Pub_Class.ClsPub.isStrNull(ListTableData[i].HControlCol) + "'" +
                            ",'" + Pub_Class.ClsPub.isStrNull(ListTableData[i].HConditionCol).Replace("'", "''") + "'" +
                            ",''" +
                            ",'" + Pub_Class.ClsPub.isStrNull(ListTableData[i].HRelationCol) + "')");
                            break;
                        }
                    }
                }
                oCN.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "保存成功!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
    }
}