duhe
2024-03-13 86cb67be84a3edb328154c491d02b58e899f36ae
WebAPI/Controllers/CJGL/Cj_StationInBillController.cs
@@ -39,17 +39,33 @@
                //委外工序发出反序列化
                string msg2 = "[" + sArray[0].ToString() + "]";
                string user = sArray[1].ToString();
                string OperationType = sArray[2].ToString();
                string HComputerName = SystemInformation.ComputerName; //设备名称
                //判断是否有编辑权限
                if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Edit", 1, false, user))
                if (OperationType == "5")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无编辑权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    //判断是否有编辑权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Sub_Edit", 1, false, user))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "开工单无编辑权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else {
                    //判断是否有编辑权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Edit", 1, false, user))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "进站单无编辑权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg2);
                long HMainInterID = 0;
@@ -188,7 +204,28 @@
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //保存前控制=========================================
                string HBillNote = "";
                ds = oCN.RunProcReturn("Exec h_p_Sc_StationInBill_BeforeSaveCtrl  " + HInterID.ToString() + ", '" + HBillNo + "','" + HBillNote + "',1 ", "h_p_Sc_StationInBill_BeforeSaveCtrl ");
                if (ds == null)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存前判断失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=========================================================
                //若MAINDI重复则重新获取
                oCN.BeginTran();
@@ -214,7 +251,7 @@
                    ",HProcNo,HOrderProcNO,HMainInterID,HPRDOrgID" +
                    ",HmaterOutqty" +
                    ") " +
                    " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" +
                    " values('" + BillType + "','" + (OperationType=="5"?"SUB":BillType) + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" +
                    "," + HYear + "," + HPeriod + ",'" + HRemark + "'" +
                    "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID +
                    ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID +
@@ -322,6 +359,30 @@
                {
                }
                //=========================保存后控制
                DataSet ds2 = oCN.RunProcReturn("Exec h_p_Sc_StationInBill_AfterSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "',1 ", "h_p_Sc_StationInBill_AfterSaveCtrl");
                if (ds2 == null)
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存后控制判断失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败2!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //============================
                oCN.Commit();
               
                if (oSystemParameter.ShowBill(ref sReturn) == true)
@@ -469,7 +530,7 @@
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "未查询到出站单明细信息!";
                    objJsonResult.Message = "未查询到职员信息!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
@@ -533,20 +594,36 @@
        #region 返回工序进站接收单列表
        [Route("Cj_StationInBill/get_Display")]
        [HttpGet]
        public object get_Display(string sWhere,string user)
        public object get_Display(string sWhere,string user,string HBillSubType)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Query", 1, false, user))
                if (HBillSubType == "SUB")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查询权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    //判断是否有查询权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Sub_Query", 1, false, user))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "开工单无查询权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else {
                    //判断是否有查询权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Query", 1, false, user))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "进站单无查询权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                if (sWhere == null || sWhere.Equals(""))
                {
@@ -679,20 +756,36 @@
        #region 审核
        [Route("Cj_StationInBill/set_CheckBill")]
        [HttpGet]
        public object set_CheckBill(int HInterID,string CurUserName)
        public object set_CheckBill(int HInterID,string CurUserName,string HBillSubType)
        {
            try
            {
                string ModRightNameCheck = "Cj_StationInBill_Check";
                //审核权限
                if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false,CurUserName))
                string ModRightNameCheck = "";
                if (HBillSubType == "SUB")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "审核失败!无权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    //审核权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Sub_Check", 1, false, CurUserName))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "开工单审核失败!无权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else {
                    //审核权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Check", 1, false, CurUserName))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "进站单审核失败!无权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                if (HInterID == 0)
                {
                    objJsonResult.code = "0";
@@ -722,8 +815,31 @@
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //审核前控制
                string HBillNo = oBill.omodel.HBillNo;
                string sql = "exec h_p_Sc_StationInBill_BeforeCheckCtrl " + HInterID + ",'" + HBillNo + "','" + CurUserName + "'";
                ds = oCN.RunProcReturn(sql, "h_p_Sc_StationInBill_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;
                    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;
                }
                //审核
                if (Cj_StationInBillCheckBill(HInterID,CurUserName, ref DBUtility.ClsPub.sExeReturnInfo))
                if (Cj_StationInBillCheckBill(HInterID, HBillNo, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo))
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
@@ -752,7 +868,7 @@
        }
        //审核
        public bool Cj_StationInBillCheckBill(Int64 lngBillKey, string CurUserName, ref string sReturn)
        public bool Cj_StationInBillCheckBill(Int64 lngBillKey,string HBillNo, string CurUserName, ref string sReturn)
        {
            try
            {
@@ -780,6 +896,23 @@
                else if (Pub_Class.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HFstProc"]) == "是")
                {
                }
                //审核后控制
                string sql = "exec h_p_Sc_StationInBill_AfterCheckCtrl " + lngBillKey + ",'" + HBillNo + "','" + CurUserName + "'";
                ds = oCN.RunProcReturn(sql, "h_p_Sc_StationInBill_AfterCheckCtrl");
                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                {
                    sReturn = "审核过程中出错,请与网络管理人员联系";
                    oCN.RollBack();
                    return false;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    sReturn = ds.Tables[0].Rows[0]["HRemark"].ToString();
                    oCN.RollBack();
                    return false;
                }
                sReturn = sReturn + " 审核功能!";
                oCN.Commit();
                return true;
@@ -796,20 +929,36 @@
        #region 反审核
        [Route("Cj_StationInBill/set_AbandonCheck")]
        [HttpGet]
        public object set_AbandonCheck(int HInterID, string CurUserName)
        public object set_AbandonCheck(int HInterID, string CurUserName, string HBillSubType)
        {
            try
            {
                string ModRightNameCheck = "Cj_StationInBill_Check";
                //审核权限
                if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName))
                if (HBillSubType == "SUB")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "反审核失败!无权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    //审核权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Sub_Check", 1, false, CurUserName))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "开工单反审核失败!无权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else
                {
                    //审核权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Check", 1, false, CurUserName))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "进站单反审核失败!无权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                if (HInterID == 0)
                {
@@ -840,8 +989,31 @@
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //反审核前控制
                string HBillNo = oBill.omodel.HBillNo;
                string sql = "exec h_p_Sc_StationInBill_BeforeUnCheckCtrl " + HInterID + ",'" + HBillNo + "','" + CurUserName + "'";
                ds = oCN.RunProcReturn(sql, "h_p_Sc_StationInBill_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;
                    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;
                }
                //反审核
                if (Cj_StationInBillAbandonCheckBill(HInterID, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo))
                if (Cj_StationInBillAbandonCheckBill(HInterID, HBillNo, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo))
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
@@ -869,7 +1041,7 @@
        }
        //反审核
        public bool Cj_StationInBillAbandonCheckBill(Int64 lngBillKey, string CurUserName, ref string sReturn)
        public bool Cj_StationInBillAbandonCheckBill(Int64 lngBillKey,string HBillNo, string CurUserName, ref string sReturn)
        {
            if (Cj_StationInBillisUse(lngBillKey, ref sReturn))
            {
@@ -902,6 +1074,23 @@
                else if (Pub_Class.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HFstProc"]) == "是")
                {
                }
                //反审核后控制
                string sql = "exec h_p_Sc_StationInBill_AfterUnCheckCtrl " + lngBillKey + ",'" + HBillNo + "','" + CurUserName + "'";
                ds = oCN.RunProcReturn(sql, "h_p_Sc_StationInBill_AfterUnCheckCtrl");
                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                {
                    sReturn = "反审核过程中出错,请与网络管理人员联系";
                    oCN.RollBack();
                    return false;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    sReturn = ds.Tables[0].Rows[0]["HRemark"].ToString();
                    oCN.RollBack();
                    return false;
                }
                sReturn = sReturn + "反审核功能!";
                oCN.Commit();
                return true;
@@ -941,19 +1130,34 @@
        #region 工序进站关闭/反关闭功能
        [Route("Cj_StationInBill/CloseCj_StationInBill")]
        [HttpGet]
        public object CloseSc_StationInBill(string HInterID, int Type, string user)
        public object CloseSc_StationInBill(string HInterID, int Type, string user,string HBillSubType)
        {
            try
            {
                //判断是否有删除权限
                if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Close", 1, false, user))
                if (HBillSubType == "SUB")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限关闭!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    //判断是否有删除权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Sub_Close", 1, false, user))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "开工单无权限关闭!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else {
                    //判断是否有删除权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Close", 1, false, user))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "进站单无权限关闭!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                if (string.IsNullOrWhiteSpace(HInterID))
                {
@@ -1093,20 +1297,35 @@
        #region 根据id删除进站单
        [Route("Cj_StationInBill/del_StationInBill")]
        [HttpGet]
        public object del_StationInBill(long HInterID,string HDeleteMan)
        public object del_StationInBill(long HInterID,string HDeleteMan,string HBillSubType)
        {
            try
            {
                string HComputerName = SystemInformation.ComputerName; //设备名称
                //编辑权限
                if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Drop", 1, false, HDeleteMan))
                if (HBillSubType == "SUB")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    //编辑权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Sub_Drop", 1, false, HDeleteMan))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "开工单无权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else {
                    //编辑权限
                    if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Drop", 1, false, HDeleteMan))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "进站接收单无权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                DAL.ClsSc_StationInBill oBill = new DAL.ClsSc_StationInBill();
                if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
                {
@@ -1167,8 +1386,31 @@
                        return objJsonResult;
                    }
                    if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, ref DBUtility.ClsPub.sExeReturnInfo))
                    //删除前控制=========================================
                    string HBillNo = oBill.omodel.HBillNo;
                    string sql1 = "exec h_p_Sc_StationInBill_BeforeDelCtrl " + HInterID + ",'" + HBillNo + "','" + HDeleteMan + "'";
                    ds = oCN.RunProcReturn(sql1, "h_p_Sc_StationInBill_BeforeDelCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "删除失败!原因:删除前判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "删除失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //==================================================================================
                    if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, HBillNo, "h_p_Sc_StationInBill_AfterDelCtrl", HDeleteMan, ref DBUtility.ClsPub.sExeReturnInfo))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;