1
wtt
6 天以前 797e02f68d79c931233f25af1d39bc136ce6185d
WebAPI/Controllers/CJGL/Sc_KeyElementBindingController.cs
@@ -14,9 +14,70 @@
    public class Sc_KeyElementBindingController : ApiController
    {
        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
        public DAL.ClsSc_AssemblyBill BillOld = new DAL.ClsSc_AssemblyBill();
        private json objJsonResult = new json();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        DataSet ds;
        #region 关键件绑定列表 查询
        /// <summary>
        /// 返回关键件绑定列表
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("Sc_KeyElementBinding/list")]
        [HttpGet]
        public object list(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("Sc_AssemblyBill_Query", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Sc_AssemblyBillList order by 单据号 desc", "h_v_Sc_AssemblyBillList");
                }
                else
                {
                    string sql1 = "select * from h_v_Sc_AssemblyBillList where 1 = 1 ";
                    string sql = sql1 + sWhere + " order by 单据号 desc";
                    ds = oCN.RunProcReturn(sql, "h_v_Sc_AssemblyBillList");
                }
                //添加列名
                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.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region 工序流转卡维护-查询
        /// <summary>
@@ -373,5 +434,187 @@
            }
        }
        #endregion
        #region 关键件绑定 删除
        [Route("Sc_KeyElementBinding/Del")]
        [HttpGet]
        public object Del(string HInterID, string user)
        {
            try
            {
                string s = "";
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("Sc_AssemblyBill_Delete", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无删除权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (HInterID == null || HInterID.Equals(""))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HInterID不能为空!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (BillOld.ShowBill(long.Parse(HInterID), ref s) == false)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "此单据有误!";
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                //判断是否可编辑
                if (BillOld.omodel.HChecker != "" && BillOld.omodel.HChecker != null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "此单据已经被审核,不允许删除!";
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                //删除前控制=========================================
                //string sql1 = "exec h_p_Sc_QualityReportBill_BeforeDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
                //ds = oCN.RunProcReturn(sql1, "h_p_Sc_QualityReportBill_BeforeDelCtrl");
                //if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 1;
                //    objJsonResult.Message = "删除失败!原因:删除前判断失败,请与网络管理人员联系";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                //if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 1;
                //    objJsonResult.Message = "删除失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                //==================================================================================
                oCN.BeginTran();
                oCN.RunProc("delete from Sc_AssemblyBillMain where HInterID = " + HInterID);
                oCN.RunProc("delete from Sc_AssemblyBillSub where HInterID='" + HInterID + "'");
                //删除后控制==================================================================================
                //string sql2 = "exec h_p_Sc_QualityReportBill_AfterDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
                //ds = oCN.RunProcReturn(sql2, "h_p_Sc_QualityReportBill_AfterDelCtrl");
                //if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                //{
                //    s = "删除后判断失败,请与网络管理人员联系";
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 1;
                //    objJsonResult.Message = "删除失败!原因:" + s;
                //    objJsonResult.data = null;
                //    oCN.RollBack();
                //    return objJsonResult;
                //}
                //if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                //{
                //    s = ds.Tables[0].Rows[0]["HRemark"].ToString();
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 1;
                //    objJsonResult.Message = "删除失败!原因:" + s;
                //    objJsonResult.data = null;
                //    oCN.RollBack();
                //    return objJsonResult;
                //}
                //==============================================================================================
                oCN.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "您已删除单据号为" + BillOld.omodel.HBillNo + "的关键件绑定信息!";
                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
        [Route("Sc_KeyElementBinding/UpdatePartsCode")]
        [HttpGet]
        /// <summary>
        /// 替换配件码绑定
        /// </summary>
        /// <param name=""></param>
        /// <returns></returns>
        public object UpdatePartsCode(string HInterID, string HEntryID, string HPartsCode,string HPartsOld,string HOrgID,string user)
        {
            try
            {
                if (HInterID == null || HInterID == "" || HInterID == "undefined" || HEntryID == null || HEntryID == "" || HEntryID == "undefined")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "操作失败!主内码或子内码为空";
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                string sql = "exec h_p_Sc_KeyElementBinding_Change '" + HInterID + "','" + HEntryID + "','" + HPartsCode + "','" + HPartsOld + "','" + HOrgID + "','" + user + "'";
                ds = oCN.RunProcReturn(sql, "h_p_Sc_KeyElementBinding_Replace");
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    if (ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) != 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = "";
                        return objJsonResult;
                    }
                    else
                    {
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
                        objJsonResult.Message = ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = ds.Tables[0];
                        return objJsonResult;
                    }
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "";
                    objJsonResult.data = "没有返回数据:" + sql;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
    }
}