zrg
2025-03-25 f47d0d2d6c2896ec7aae74a428cd084ffefc1dca
WebAPI/Controllers/MJGL/Sc_MouldProdMoveBillListController.cs
@@ -200,7 +200,7 @@
                return new ApiResult<DataSet> { code = -1, msg = "ID不能为空" };
            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
            var dataSet = oCN.RunProcReturn("select top 1 * from h_v_Sc_MouldProdMoveBillList  where hmainid= " + HID + " ", "h_v_Sc_MouldProdMoveBillList");
            var dataSet = oCN.RunProcReturn("select top 1 * from h_v_Sc_MouldProdMoveBill_Edit  where hmainid= " + HID + " ", "h_v_Sc_MouldProdMoveBill_Edit");
            if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
                return new ApiResult<DataSet> { code = -1, msg = "不存在退库单号" };
@@ -225,7 +225,7 @@
                                                设计寿命 HDesignLife, 剩余寿命 HLeaveLife, 累积使用寿命 HUseLife, 应发数量 HQtyMust, 实发数量 HQty, 
                                                单价 HPrice, 金额 HMoney,HStockOrgID,调入组织代码 HStockOrgCode,调入组织 HStockOrgName, HOtherOrgID ,调出组织代码 HOtherOrgCode,调出组织 HOtherOrgName, HWHID, 调入仓库代码 HWHCode, 调入仓库 HWHName,HSPID, 
                                                调入仓位代码 HSPCode, 调入仓位 HSPName,HSCWHID, 调出仓库代码 HSCWHCode, 调出仓库 HSCWHName,HSCSPID, 
                                                调出仓位代码 HSCSPCode, 调出仓位 HSCSPName,表体备注 HRemark,HStockOrgID,HUnitID,计量单位代码 HUnitCode,计量单位 HUnitName FROM h_v_Sc_MouldProdMoveBillList"), "h_v_Sc_MouldProdMoveBillList");
                                                调出仓位代码 HSCSPCode, 调出仓位 HSCSPName,表体备注 HRemark,HStockOrgID,HUnitID,计量单位代码 HUnitCode,计量单位 HUnitName FROM h_v_Sc_MouldProdMoveBill_Edit"), "h_v_Sc_MouldProdMoveBill_Edit");
                }
                else
@@ -236,15 +236,15 @@
                                                设计寿命 HDesignLife, 剩余寿命 HLeaveLife, 累积使用寿命 HUseLife, 应发数量 HQtyMust, 实发数量 HQty, 
                                                单价 HPrice, 金额 HMoney,HStockOrgID,调入组织代码 HStockOrgCode,调入组织 HStockOrgName, HOtherOrgID ,调出组织代码 HOtherOrgCode,调出组织 HOtherOrgName, HWHID, 调入仓库代码 HWHCode, 调入仓库 HWHName,HSPID, 
                                                调入仓位代码 HSPCode, 调入仓位 HSPName,HSCWHID, 调出仓库代码 HSCWHCode, 调出仓库 HSCWHName,HSCSPID, 
                                                调出仓位代码 HSCSPCode, 调出仓位 HSCSPName,表体备注 HRemark,HStockOrgID,HUnitID,计量单位代码 HUnitCode,计量单位 HUnitName FROM h_v_Sc_MouldProdMoveBillList where 1 = 1 ");
                                                调出仓位代码 HSCSPCode, 调出仓位 HSCSPName,表体备注 HRemark,HStockOrgID,HUnitID,计量单位代码 HUnitCode,计量单位 HUnitName FROM h_v_Sc_MouldProdMoveBill_Edit where 1 = 1 ");
                    string sql = sql1 + sqlWhere;
                    ds = oCN.RunProcReturn(sql, "h_v_Sc_MouldProdMoveBillList");
                    ds = oCN.RunProcReturn(sql, "h_v_Sc_MouldProdMoveBill_Edit");
                }
                //查汇总
                ds1 = oCN.RunProcReturn(string.Format(@"select  物料代码,max(物料名称)物料名称,规格型号,max(单据号)单据号,批次,sum(实发数量)实发数量,
                                            HSCWHID,max(调出仓库代码)调出仓库代码,max(调出仓库)调出仓库,表体备注 from h_v_Sc_MouldProdMoveBillList
                                            where 1=1 " + sqlWhere + " group by 物料代码,规格型号,HSCWHID,批次,表体备注"), "h_v_Sc_MouldProdMoveBillList");
                                            HSCWHID,max(调出仓库代码)调出仓库代码,max(调出仓库)调出仓库,表体备注 from h_v_Sc_MouldProdMoveBill_Edit
                                            where 1=1 " + sqlWhere + " group by 物料代码,规格型号,HSCWHID,批次,表体备注"), "h_v_Sc_MouldProdMoveBill_Edit");
                list.Add(ds.Tables[0]);
                list.Add(ds1.Tables[0]);
@@ -623,7 +623,30 @@
                //    swhere = swhere + ds.Tables[0].Rows[i]["HMaterID"].ToString() + ",";
                //}
                //swhere = swhere.Substring(0, swhere.Length - 1);
                bool IsDete = oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
                //删除前控制=========================================
                string sql1 = "exec h_p_Sc_MouldProdMoveBill_BeforeDelCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + user + "'";
                ds = oCn.RunProcReturn(sql1, "h_p_Sc_MouldProdMoveBill_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;
                }
                //==================================================================================
                bool IsDete = oBill.DeleteBill(lngBillKey, oBill.omodel.HBillNo, "h_p_Sc_MouldProdMoveBill_AfterDelCtrl", user, ref DBUtility.ClsPub.sExeReturnInfo);
                if (IsDete)
                {
                    //删除成功修改器具档案位置
@@ -714,8 +737,41 @@
                    }
                    else
                    {
                        string HCheckDate = DateTime.Now.Date.ToString();
                        oCn.RunProc(" Update Sc_MouldStockBillMain set HChecker='" + user + "',HCheckDate='" + HCheckDate + "',HBillStatus=2 Where HBillType='3814' and HInterID=" + HInterID);
                        //审核前控制=========================================
                        string sql1 = "exec h_p_Sc_MouldProdMoveBill_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + user + "'";
                        ds = oCn.RunProcReturn(sql1, "h_p_Sc_MouldProdMoveBill_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;
                        }
                        //==================================================================================
                        if (!oBill.CheckBill(int.Parse(HInterID), oBill.omodel.HBillNo, "h_p_Sc_MouldProdMoveBill_AfterCheckCtrl", user, ref ClsPub.sExeReturnInfo))
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "审核失败!原因:" + ClsPub.sExeReturnInfo;
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        //string HCheckDate = DateTime.Now.Date.ToString();
                        //oCn.RunProc(" Update Sc_MouldStockBillMain set HChecker='" + user + "',HCheckDate='" + HCheckDate + "',HBillStatus=2 Where HBillType='3814' and HInterID=" + HInterID);
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核成功!";
@@ -735,8 +791,39 @@
                    }
                    else
                    {
                        string HCheckDate = DateTime.Now.Date.ToString();
                        oCn.RunProc(" Update Sc_MouldStockBillMain set HChecker=' ',HCheckDate=' ',HBillStatus=1 Where HBillType='3814' and HInterID=" + HInterID);
                        //反审核前控制=========================================
                        string sql1 = "exec h_p_Sc_MouldProdMoveBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + user + "'";
                        ds = oCn.RunProcReturn(sql1, "h_p_Sc_MouldProdMoveBill_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 (!oBill.AbandonCheck(int.Parse(HInterID), oBill.omodel.HBillNo, "h_p_Sc_MouldProdMoveBill_AfterUnCheckCtrl", user, ref ClsPub.sExeReturnInfo))
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "审核失败!原因:" + ClsPub.sExeReturnInfo;
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        //string HCheckDate = DateTime.Now.Date.ToString();
                        //oCn.RunProc(" Update Sc_MouldStockBillMain set HChecker=' ',HCheckDate=' ',HBillStatus=1 Where HBillType='3814' and HInterID=" + HInterID);
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "反审核成功!";
@@ -851,8 +938,31 @@
                //进行需要进行的关闭/反关闭操作
                if (IsAudit == 0) //关闭提交
                {
                    string sql = "";
                    //关闭前控制===============================================Begin===================================================================
                    sql = "exec h_p_Sc_MouldProdMoveBill_BeforeCloseCtrl " + HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
                    ds = oCn.RunProcReturn(sql, "h_p_Sc_MouldProdMoveBill_BeforeCloseCtrl");
                    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;
                    }
                    //关闭前控制===============================================End===================================================================
                    //关闭提交
                    if (oBill.CloseBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                    if (oBill.CloseBill(lngBillKey, oBill.omodel.HBillNo, "h_p_Sc_MouldProdMoveBill_AfterCloseCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                    {
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
@@ -871,8 +981,31 @@
                }
                if (IsAudit == 1) //反关闭提交
                {
                    string sql = "";
                    //反关闭前控制===============================================Begin===================================================================
                    sql = "exec h_p_Sc_MouldProdMoveBill_BeforeUnCloseCtrl " + HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
                    ds = oCn.RunProcReturn(sql, "h_p_Sc_MouldProdMoveBill_BeforeUnCloseCtrl");
                    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;
                    }
                    //反关闭前控制===============================================End===================================================================
                    //反关闭提交
                    if (oBill.CancelClose(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                    if (oBill.CancelClose(lngBillKey, oBill.omodel.HBillNo, "h_p_Sc_MouldProdMoveBill_AfterUnCloseCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                    {
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
@@ -887,7 +1020,7 @@
                        objJsonResult.Message = "反关闭失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    }
                }
                return objJsonResult;
            }