llj
3 天以前 1c90213ebd42e2d00324a71a67a60d07e4c8a7da
WebAPI/Controllers/BaseSet/Gy_SampleSchemeController.cs
@@ -33,7 +33,7 @@
            {
                List<object> columnNameList = new List<object>();
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("Gy_WorkCenter_Query", 1, false, user))
                if (!DBUtility.ClsPub.Security_Log("Gy_SampleScheme_Query", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
@@ -68,5 +68,718 @@
                return objJsonResult;
            }
        }
        /// <summary>
        /// 保存按钮
        /// </summary>
        [Route("Gy_SampleScheme/ModifyByID")]
        [HttpPost]
        public object ModifyByID([FromBody] JObject oMain)
        {
            try
            {
                var _value = oMain["oMain"].ToString();
                string msg1 = _value.ToString();
                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                string msg2 = sArray[0].ToString();
                string msg3 = sArray[1].ToString();
                string msg4 = sArray[2].ToString();
                //判断权限
                if (!ClsPub.Security_Log("Gy_SampleScheme_Edit", 1, false, msg4))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无保存权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //反序列化
                msg2 = "[" + msg2.ToString() + "]";
                List<ClsGy_SampleScheme_Model> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_SampleScheme_Model>>(msg2);
                List<ClsGy_SampleSchemeSub_Model> list1 = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_SampleSchemeSub_Model>>(msg3);
                long HItemID = list[0].HItemID;
                string HNumber = list[0].HNumber;
                string HName = list[0].HName;
                string HShortNumber = list[0].HShortNumber;
                long HParentID = list[0].HParentID;
                long HLevel = list[0].HLevel;
                bool HEndFlag = list[0].HEndFlag;
                bool HStopflag = list[0].HStopflag;
                string HRemark = list[0].HRemark;
                string HHelpCode = list[0].HHelpCode;
                string HUseFlag = list[0].HUseFlag;
                string HMakeTime = list[0].HMakeTime;
                string HMakeEmp = msg4;
                long HUSEORGID = list[0].HUSEORGID;
                long HCREATEORGID = list[0].HCREATEORGID;
                long HUnitID = list[0].HUnitID;
                if (!DBUtility.ClsPub.AllowNumber(HNumber))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "代码中不能出现连续‘.’并且首位末位不能为‘.’!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //保存完毕后处理
                if (HItemID == 0)
                {
                    oCN.BeginTran();
                    //保存前控制=========================================
                    string sql1 = "exec h_p_Gy_SampleScheme_BeforeSaveCtrl " + HMakeEmp + ",'" + 1 + "'";
                    ds = oCN.RunProcReturn(sql1, "h_p_Gy_SampleScheme_BeforeSaveCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "保存失败!原因:保存前判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        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;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    string _sql = "select HItemID from Gy_SampleScheme where HNumber = N'" + HNumber + "'";
                    DataSet _ds = oCN.RunProcReturn(_sql, "Gy_SampleScheme");
                    if (_ds.Tables[0].Rows.Count > 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败: 代码重复!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //==================================================================================
                    string sql = $@"INSERT INTO [Gy_SampleScheme] ([HName], [HShortNumber], [HParentID], [HLevel], [HEndFlag], [HStopflag], [HRemark], [HHelpCode], [HUseFlag], [HMakeTime], [HMakeEmp], [HCheckEmp], [HCheckTime], [HModifyEmp], [HModifyTime], [HStopEmp], [HStopTime], [HUSEORGID], [HCREATEORGID], [HInterID], [HSampleTimes], [HSampleType], [HSampleLevel], [HStrictLevel], [HAQL], [HEffectDate], [HExpireDate], [HIsSystemSet], [HERPItemID], [HNumber])
                VALUES (
                '{list[0].HName}', '{list[0].HShortNumber}',  '{list[0].HParentID}',  '{list[0].HLevel}',  '{list[0].HEndFlag}',  '{list[0].HStopflag}',  '{list[0].HRemark}',  '{list[0].HHelpCode}',  '{list[0].HUseFlag}',  '{list[0].HMakeTime}',  '{HMakeEmp}',  '{list[0].HCheckEmp}','{list[0].HCheckTime}','{list[0].HModifyEmp}',  '{list[0].HModifyTime}',  '{list[0].HStopEmp}','{list[0].HStopTime}','{list[0].HUSEORGID}','{list[0].HCREATEORGID}','{list[0].HInterID}','{list[0].HSampleTimes}','{list[0].HSampleType}','{list[0].HSampleLevel}','{list[0].HStrictLevel}','{list[0].HAQL}','{list[0].HEffectDate}','{list[0].HExpireDate}','{list[0].HIsSystemSet}','{0}','{list[0].HNumber}'
                ); ";
                    oCN.RunProc(sql);
                    //修改上级为非末级代码
                    oCN.RunProc("Update Gy_SampleScheme set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
                    // 执行查询获取HItemID
                    DataSet temp_ds = oCN.RunProcReturn("select top 1 HItemID from Gy_SampleScheme where HNumber = N'" + HNumber + "'", "Gy_SampleScheme");
                    if (temp_ds.Tables[0].Rows.Count < 1)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "保存失败!原因:插入主表数据失败";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    int itemID = int.Parse(temp_ds.Tables[0].Rows[0]["HItemID"].ToString());
                    string sql3 = "";
                    // 改为for循环,HEntryID从1开始递增
                    for (int i = 0; i < list1.Count; i++)
                    {
                        // 获取当前循环的实体对象
                        ClsGy_SampleSchemeSub_Model listOne = list1[i];
                        int entryID = i + 1;
                        sql3 = $@"INSERT INTO [Gy_SampleSchemeSub] ([HInterID], [HEntryID], [HBatch], [HSampleCode], [HSampleRate], [HExpression], [HRejectQty], [HAcceptQty], [HSampleQty], [HSampleLow], [HSampleUp]) VALUES(
                        '{itemID}', '{entryID}',  '{listOne.HBatch}',  '{listOne.HSampleCode}',  '{listOne.HSampleRate}',  '{listOne.HExpression}',  '{listOne.HRejectQty}',  '{listOne.HAcceptQty}',  '{listOne.HSampleQty}',  '{listOne.HSampleLow}',  '{listOne.HSampleUp}'
                        ); ";
                        oCN.RunProc(sql3);
                    }
                    //保存后控制=========================================
                    string sql2 = "exec h_p_Gy_SampleScheme_AfterSaveCtrl " + HMakeEmp + ",'" + 1 + "'";
                    ds = oCN.RunProcReturn(sql2, "h_p_Gy_SampleScheme_AfterSaveCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "保存失败!原因:保存后判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        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;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    //==================================================================================
                    oCN.Commit();
                }
                else
                {
                    //若MAINDI重复则重新获取
                    oCN.BeginTran();
                    //保存前控制=========================================
                    string sql1 = "exec h_p_Gy_SampleScheme_BeforeSaveCtrl " + HMakeEmp + ",'" + 2 + "'";
                    ds = oCN.RunProcReturn(sql1, "h_p_Gy_SampleScheme_BeforeSaveCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "保存失败!原因:保存前判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        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;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    //==================================================================================
                    //主表
                    oCN.RunProc("Update Gy_SampleScheme" + " set " +
                " HName='" + list[0].HName + "'" +
                ",HShortNumber='" + list[0].HShortNumber + "'" +
                ",HParentID=" + list[0].HParentID +
                ",HLevel=" + list[0].HLevel +
                ",HEndFlag=" + Convert.ToString(list[0].HEndFlag ? 1 : 0) +
                ",HStopflag=" + Convert.ToString(list[0].HStopflag ? 1 : 0) +
                ",HRemark='" + list[0].HRemark + "'" +
                ",HHelpCode='" + list[0].HHelpCode + "'" +
                ",HUseFlag='" + list[0].HUseFlag + "'" +
                ",HMakeTime='" + list[0].HMakeTime + "'" +
                ",HMakeEmp='" + HMakeEmp + "'" +
                ",HCheckEmp='" + list[0].HCheckEmp + "'" +
                ",HCheckTime='" + list[0].HCheckTime + "'" +
                ",HModifyEmp='" + list[0].HModifyEmp + "'" +
                ",HModifyTime='" + list[0].HModifyTime + "'" +
                ",HStopEmp='" + list[0].HStopEmp + "'" +
                ",HStopTime='" + list[0].HStopTime + "'" +
                ",HUSEORGID=" + list[0].HUSEORGID +
                ",HCREATEORGID=" + list[0].HCREATEORGID +
                ",HInterID=" + list[0].HInterID +
                ",HSampleTimes='" + list[0].HSampleTimes + "'" +
                ",HSampleType='" + list[0].HSampleType + "'" +
                ",HSampleLevel='" + list[0].HSampleLevel + "'" +
                ",HStrictLevel='" + list[0].HStrictLevel +"'"+
                ",HAQL=" + list[0].HAQL +
                ",HEffectDate='" + list[0].HEffectDate + "'" +
                ",HExpireDate='" + list[0].HExpireDate + "'" +
                ",HIsSystemSet=" + Convert.ToString(list[0].HIsSystemSet ? 1 : 0) +
                ",HERPItemID=" + 0 +
                ",HNumber='" + list[0].HNumber + "'" +
                " Where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo);
                    //修改子项目代码
                    //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_Warehouse,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
                    //将上级 为非末级
                    oCN.RunProc("Update Gy_SampleScheme set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
                    oCN.RunProcReturn("delete from Gy_SampleSchemeSub where HInterID = " + HItemID, "Gy_SampleSchemeSub");
                    string sql3 = "";
                    // 改为for循环,HEntryID从1开始递增
                    for (int i = 0; i < list1.Count; i++)
                    {
                        // 获取当前循环的实体对象
                        ClsGy_SampleSchemeSub_Model listOne = list1[i];
                        int entryID = i + 1;
                        sql3 = $@"INSERT INTO [Gy_SampleSchemeSub] ([HInterID], [HEntryID], [HBatch], [HSampleCode], [HSampleRate], [HExpression], [HRejectQty], [HAcceptQty], [HSampleQty], [HSampleLow], [HSampleUp]) VALUES(
                        '{HItemID}', '{entryID}',  '{listOne.HBatch}',  '{listOne.HSampleCode}',  '{listOne.HSampleRate}',  '{listOne.HExpression}',  '{listOne.HRejectQty}',  '{listOne.HAcceptQty}',  '{listOne.HSampleQty}',  '{listOne.HSampleLow}',  '{listOne.HSampleUp}'
                        ); ";
                        oCN.RunProc(sql3);
                    }
                    //保存后控制=========================================
                    string sql2 = "exec h_p_Gy_SampleScheme_AfterSaveCtrl " + HMakeEmp + ",'" + 2 + "'";
                    ds = oCN.RunProcReturn(sql2, "h_p_Gy_SampleScheme_AfterSaveCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "保存失败!原因:保存后判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        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;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    //==================================================================================
                    oCN.Commit();
                }
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "保存成功!";
                objJsonResult.data = 1;
                return objJsonResult;
            }
            catch (Exception e)
            {
                //oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.Message;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        /// <summary>
        /// 修改按钮方法
        /// </summary>
        [Route("Gy_SampleScheme/xg")]
        [HttpGet]
        public object xg(long HInterID)
        {
            try
            {
                ds = oCN.RunProcReturn("select * from Gy_SampleScheme where HItemID=" + HInterID, "Gy_SampleScheme");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "";
                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;
            }
        }
        /// <summary>
        /// 查询子表方法
        /// </summary>
        [Route("Gy_SampleScheme/listSub")]
        [HttpGet]
        public object listSub(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("Gy_SampleScheme_Edit", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("select * from Gy_SampleSchemeSub where 1 = 1 " + sWhere  , "Gy_SampleSchemeSub");
                //添加列名
                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;
            }
        }
        /// <summary>
        /// 删除功能
        /// </summary>
        /// <returns></returns>
        [Route("Gy_SampleScheme/deletesam")]
        [HttpGet]
        public object deletesam(string HItemID, string user)
        {
            DataSet ds;
            DataSet ds1;
            try
            {
                //删除权限
                if (!DBUtility.ClsPub.Security_Log("Gy_SampleScheme_Delete", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无删除权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                if (string.IsNullOrWhiteSpace(HItemID))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HItemID为空!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.BeginTran();//开始事务
                ds = oCN.RunProcReturn("select * from Gy_SampleScheme where HItemID=" + HItemID, "Gy_SampleScheme");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有数据,无法删除!";
                    objJsonResult.data = null;
                    return objJsonResult; ;
                }
                else if (ds.Tables[0].Rows[0]["HCheckEmp"] != null && ds.Tables[0].Rows[0]["HCheckEmp"].ToString() != "")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "已经审核不能删除!";
                    objJsonResult.data = null;
                    return objJsonResult; ;
                }
                ds1 = oCN.RunProcReturn("Select HItemID from  Gy_SampleScheme  Where HParentID='" + HItemID + "'", " Gy_SampleScheme");
                if (ds1.Tables[0].Rows.Count != 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "此项目存在子项目,不能删除!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                string HUseFlag = Convert.ToString(ds.Tables[0].Rows[0]["HUseFlag"]);
                if (HUseFlag == "已使用")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "此项目已使用,不能删除!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //删除前控制=========================================
                string sql1 = "exec h_p_Gy_SampleScheme_BeforeDelCtrl " + HItemID + ",'" + user + "'";
                ds = oCN.RunProcReturn(sql1, "h_p_Gy_SampleScheme_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;
                    oCN.RollBack();
                    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;
                    oCN.RollBack();
                    return objJsonResult;
                }
                //==================================================================================
                oCN.RunProc("delete from Gy_SampleScheme  where HItemID=" + HItemID);
                oCN.RunProc("delete from Gy_SampleSchemeSub  where HInterID=" + HItemID);
                //删除后控制=========================================
                string sql2 = "exec h_p_Gy_SampleScheme_AfterDelCtrl " + HItemID + ",'" + user + "'";
                ds = oCN.RunProcReturn(sql2, "h_p_Gy_SampleScheme_AfterDelCtrl");
                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "删除失败!原因:删除后判断失败,请与网络管理人员联系";
                    objJsonResult.data = null;
                    oCN.RollBack();
                    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;
                    oCN.RollBack();
                    return objJsonResult;
                }
                //==================================================================================
                oCN.Commit();//提交事务
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "* 数据删除成功!";
                objJsonResult.data = null;
                return objJsonResult; ;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "删除失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #region 审核、反审核
        /// <summary>
        ///
        /// </summary>
        /// <param name="HInterID">单据ID</param>
        /// <param name="IsAudit">审核(0),反审核(1)</param>
        /// <param name="CurUserName">审核人</param>
        /// <returns></returns>
        [Route("Gy_SampleScheme/AuditGy_SampleScheme")]
        [HttpGet]
        public object AuditGy_SampleScheme(int HInterID, int IsAudit, string CurUserName)
        {
            try
            {
                //审核权限
                if (!DBUtility.ClsPub.Security_Log_second("Gy_SampleScheme_Check", 1, false, CurUserName))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "审核失败!无权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                var ds = oCN.RunProcReturn("select * from Gy_SampleScheme where HItemID=" + HInterID, "Gy_SampleScheme");
                if (ds.Tables[0].Rows.Count > 0)
                {
                    if (IsAudit == 0)  //审核判断
                    {
                        if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已审核!不能再次审核!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                    if (IsAudit == 1) //反审核判断
                    {
                        if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() == "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据未审核!不需要反审核!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "单据不存在!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.BeginTran();
                if (IsAudit == 0)  //审核判断
                {
                    //审核前控制=========================================
                    string sql1 = "exec h_p_Gy_SampleScheme_BeforeCheckCtrl " + HInterID + ",'" + CurUserName + "'";
                    ds = oCN.RunProcReturn(sql1, "h_p_Gy_SampleScheme_BeforeCheckCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核失败!原因:审核前判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        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;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    //==================================================================================
                    oCN.RunProc("update Gy_SampleScheme set HCheckEmp='" + CurUserName + "',HCheckTime=getdate() where HItemID=" + HInterID);
                    //审核后控制=========================================
                    string sql2 = "exec h_p_Gy_SampleScheme_AfterCheckCtrl " + HInterID + ",'" + CurUserName + "'";
                    ds = oCN.RunProcReturn(sql2, "h_p_Gy_SampleScheme_AfterCheckCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核失败!原因:审核后判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        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;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    //==================================================================================
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "审核成功";
                    objJsonResult.data = null;
                }
                if (IsAudit == 1) //反审核判断
                {
                    //反审核前控制=========================================
                    string sql1 = "exec h_p_Gy_SampleScheme_BeforeUnCheckCtrl " + HInterID + ",'" + CurUserName + "'";
                    ds = oCN.RunProcReturn(sql1, "h_p_Gy_SampleScheme_BeforeUnCheckCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "反审核失败!原因:反审核前判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        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;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    //==================================================================================
                    oCN.RunProc("update Gy_SampleScheme set HCheckEmp='',HCheckTime=null where HItemID=" + HInterID);
                    //反审核后控制=========================================
                    string sql2 = "exec h_p_Gy_SampleScheme_AfterUnCheckCtrl " + HInterID + ",'" + CurUserName + "'";
                    ds = oCN.RunProcReturn(sql2, "h_p_Gy_SampleScheme_AfterUnCheckCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "反审核失败!原因:反审核后判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        oCN.RollBack();
                        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;
                        oCN.RollBack();
                        return objJsonResult;
                    }
                    //==================================================================================
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "反审核成功";
                    objJsonResult.data = null;
                }
                oCN.Commit();
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
    }
}