yangle
2024-05-15 95f65190334bd1baaebe0e6a7312a06b660cd4d1
WebAPI/Controllers/XSGL/Xs_SeOutStockBillController.cs
@@ -128,7 +128,7 @@
        /// <returns></returns>
        [Route("Xs_SeOutStockBill/DeltetSeOutStockBill")]
        [HttpGet]
        public object DeltetSeOutStockBill(string HInterID,string user)
        public object DeltetSeOutStockBill(string HInterID, string HsupId, string HQty, string HSourceInterID, string HSourceEntryID, string user)
        {
            try
            {
@@ -144,6 +144,8 @@
                oCN.BeginTran();
                var ds = oCN.RunProcReturn("select * from Xs_SeOutStockBillMain where HInterID=" + HInterID, "Xs_SeOutStockBillMain");
                //删除撤销  发货通知单 反写 销售订单
                oCN.RunProcReturn("exec h_p_Xs_SeOutStockBillMain_Delete " + HInterID, "h_p_Xs_SeOutStockBillMain_Delete");
                //删除前控制
                DataSet BeforeDs = oCN.RunProcReturn("Exec h_p_Xs_SeOutStockBill_BeforeDelCtrl  " + HInterID.ToString() + ",'" + user + "'", "h_p_Xs_SeOutStockBill_BeforeDelCtrl");
                if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0)
@@ -285,7 +287,7 @@
                long HConveyCompID = mainList[0].HConveyCompID;//运输公司
                long HConveyMoney = (long)mainList[0].HConveyMoney;//运费
                long HDFflag = Convert.ToInt32(mainList[0].HDFflag); //是否垫付
                long HProjectID = mainList[0].HProjectID;//工程项目
                string HBillType = mainList[0].HBillType;
                string HBillSubType = mainList[0].HBillSubType;
@@ -346,36 +348,63 @@
                       ,HAddress,HSSID,HCurID,HWHID,HExRate,HEmpID,HExplanation,HInnerBillNo,HSeOrderBillNo_M
                       ,HConveyTypeID,HConveyCompID,HConveyMoney,HLinkMan,HLinkPhone 
                        ,HSALEORGID,HDELIVERYORGID,HOWNERID,HOWNERTYPEID
                       ,HChecker,HCheckDate,HCloseMan,HCloseDate,HERPInterID,HERPBillType,HDFflag)
                       ,HChecker,HCheckDate,HCloseMan,HCloseDate,HERPInterID,HERPBillType,HDFflag,HProjectID)
                        values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + 1402 + "','" +
                    1402 + "','" + HDate + "','" + HBillNo + "'," + HBillStatus + "," + HCusID +
                    "," + HManagerID + "," + HDeptID + ",'" + HRemark + "','" + HMaker + "','" + HMakeDate +
                    "','" + HAddress + "'," + HSSID + "," + HCurID + "," + HWHID + "," + HExRate + "," + HEmpID + ",'" +
                    HExplanation + "','" + HInnerBillNo + "','" + HSeOrderBillNo_M + "','" + HConveyTypeID + "','" + HConveyCompID + "','" + HConveyMoney + "','" + HLinkMan + "','" + HLinkPhone + "'," + HSALEORGID + "," + HDELIVERYORGID + "," + HOWNERID + ",'"
                    + HOWNERTYPEID + "','" + HChecker + "','" + HCheckDate + "','" + HCloseMan + "','" + HCloseDate + "'," + HERPInterID +
                    ",'" + HERPBillType + "'," + HDFflag + ")";
                    ",'" + HERPBillType + "'," + HDFflag + ",'"+ HProjectID + "')";
                    oCN.RunProc(sql);
                }
                else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)
                { //修改
                    DataSet dss;
                    dss = oCN.RunProcReturn("select * from h_v_IF_SeOutStockBillList where hmainid=" + HInterID + " and 单据号='" + HBillNo + "'", "h_v_IF_SeOutStockBillList");
                    //判断是否可编辑
                    if (dss.Tables[0].Rows[0]["审核人"].ToString() != "" && dss.Tables[0].Rows[0]["审核人"] != null)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "此单据已经被审核,不允许修改!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    if (dss.Tables[0].Rows[0]["状态"].ToString() != "创建")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "此单据处于不可编辑状态,不允许修改!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    string sql = $@"update Xs_SeOutStockBillMain  set " +
                                "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" +
                                 ",HCusID='" + HCusID + "', HCurID='" + HCurID + "', HWHID = '" + HWHID
                                 + "',HExRate='" + HExRate + "',HEmpID='" + HEmpID + "',HSeOrderBillNo_M='" + HSeOrderBillNo_M + "',HManagerID='" + HManagerID + "',HDeptID='" + HDeptID + "',HOWNERID='" + HOWNERID
                                 + "',HAddress='" + HAddress + "' where HInterID=" + HInterID;
                                 + "',HAddress='" + HAddress + "',HProjectID='"+ HProjectID + "' where HInterID=" + HInterID;
                    oCN.RunProc(sql);
                    //删除 撤销发货通知单 反写 销售订单
                    oCN.RunProcReturn("exec h_p_Xs_SeOutStockBillMain_Delete " + HInterID, "h_p_Xs_SeOutStockBillMain_Delete");
                    //删除子表
                    oCN.RunProc("delete from Xs_SeOutStockBillSub where HInterID='" + HInterID + "'");
                }
                //保存子表
                objJsonResult = AddBillSub(msg3, HInterID, OperationType);
                objJsonResult = AddBillSub(msg3, HInterID, OperationType,user);
               //发货通知的 反写 数量到 销售订单 关联数量
                oCN.RunProcReturn("exec h_p_Xs_SeOutStockBillMain " + HInterID, "h_p_Xs_SeOutStockBillMain");
                //保存后控制=========================================
                 ds = oCN.RunProcReturn("Exec h_p_Xs_SeOutStockBill_AfterSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "',1 ", "h_p_Xs_SeOutStockBill_AfterSaveCtrl");
                ds = oCN.RunProcReturn("Exec h_p_Xs_SeOutStockBill_AfterSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "',1 ", "h_p_Xs_SeOutStockBill_AfterSaveCtrl");
                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -420,7 +449,7 @@
            }
        }
        public json AddBillSub(string msg3, long HInterID, int OperationType)
        public json AddBillSub(string msg3, long HInterID, int OperationType,string user)
        {
            List<ClsXs_SeOutStockBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsXs_SeOutStockBillSub>>(msg3);
@@ -484,6 +513,7 @@
                ,{oSub.HAuxPropID},'{oSub.HBatchNO}','{oSub.HMTONo}',{oSub.HERPInterID},{oSub.HERPEntryID})";
                oCN.RunProc(sql);
            }
            objJsonResult.code = "1";