王 垚
2021-12-17 3c0476574421400224948808c08279dae66ce30c
WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs
@@ -1,4 +1,5 @@
using Newtonsoft.Json.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Pub_Class;
using System;
using System.Collections;
@@ -31,7 +32,7 @@
            try
            {
                ds = oCN.RunProcReturn("select * from h_v_IF_POInStockBillList where HitemID=" + HInterID, "h_v_IF_POInStockBillList");
                ds = oCN.RunProcReturn("select * from h_v_IF_POInStockBillList where hmainid=" + HInterID, "h_v_IF_POInStockBillList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -244,6 +245,11 @@
        {
            try
            {
                //先删除 金蝶数据
                objJsonResult = DeleteKingDee(HInterID);
                if (objJsonResult.code == "0")
                    return objJsonResult;
                oCN.BeginTran();
                oCN.RunProc("Delete From Cg_POInStockBillMain where HInterID = " + HInterID);
                oCN.RunProc("Delete From Cg_POInStockBillSub where HInterID = " + HInterID);
@@ -265,6 +271,83 @@
            }
        }
        /// <summary>
        /// 反审核
        /// </summary>
        [Route("Cg_POInStockBill/DeAuditPOInStockBill")]
        [HttpGet]
        public object DeAuditPOInStockBill(string HInterID)
        {
            try
            {
                //先删除 金蝶数据
                objJsonResult = DeleteKingDee(HInterID);
                if (objJsonResult.code == "0")
                    return objJsonResult;
                oCN.BeginTran();
                oCN.RunProc("update  Cg_POInStockBillMain  set HERPBillNO='',HERPInterID = 0 ,HBillStatus =5 where HInterID = " + HInterID);
                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;
            }
        }
        //审核 删除 删除金蝶数据库对应 收料通知到数据
        public json DeleteKingDee(string hinterid)
        {
            string sql = string.Format("select HinterID,HERPBillNO,HERPInterID from Cg_POInStockBillMain where HERPInterID>0 and hinterid in (" + hinterid + ")");
            DataTable dt = oCN.RunProcReturn(sql, "deleteDt").Tables[0];
            if (dt.Rows.Count > 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    var sJson = new
                    {
                        Numbers = dr["HERPBillNO"].ToString(),
                        Ids = ""
                    };
                    var loginRet = InvokeHelper.Login();
                    var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                    if (isSuccess == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "操作失败,金蝶账号登录异常。" + loginRet;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    var result = InvokeHelper.Delete("PUR_ReceiveBill", JsonConvert.SerializeObject(sJson));
                    //LogService.Write(result);
                    if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "对应金蝶收料通知单删除失败 !" + result;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
            }
            objJsonResult.code = "1";
            objJsonResult.count = 1;
            objJsonResult.Message = "Sucess!";
            objJsonResult.data = null;
            return objJsonResult;
        }
        //
    }