yxj
2024-08-13 d79f81d5f07f47be053cfcbae4a4ed47cd0ccce0
WebAPI/Controllers/ÌõÂë¹ÜÀí/WEBSController.cs
@@ -3778,31 +3778,55 @@
        [HttpGet]
        public object get_SourceBarCode_MateOut_Json(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Double HPTQty, Int64 HPlanMode, Int64 HFIFOWhID, Int64 HStockOrgID)
        {
            try
            //获取系统参数
            string sErrMsg = "";
            if (oSystemParameter.ShowBill(ref sErrMsg) == true)
            {
                WebSoBar = oWebs.get_SourceBarCode_MateOut(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HPTQty, HPlanMode, HFIFOWhID, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                if (WebSoBar == null)
                if (oSystemParameter.omodel.WMS_CloudMode.ToUpper() == "N") //系统参数是否为私有云模式,N为公有云模式,Y为私有云模式
                {
                    if(HSourceBillType == "1214")
                    {
                        //重新同步生产发料通知单
                        Kf_MateOutRequestBillController obill = new Kf_MateOutRequestBillController();
                        objJsonResult = obill.GetKf_MateOutRequestBill_Sync_Json(HSourceBillNo, HSourceBillType);
                    }
                }
                try
                {
                    WebSoBar = oWebs.get_SourceBarCode_MateOut(HInterID, HBillNo, HBillType, HSourceBillNo, HSourceBillType, HMaker, HPTQty, HPlanMode, HFIFOWhID, HStockOrgID, ref DBUtility.ClsPub.sErrInfo);
                    if (WebSoBar == null)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "成功";
                        objJsonResult.data = WebSoBar;
                        return objJsonResult;
                    }
                }
                catch (Exception e)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
                    objJsonResult.Message = "扫描源单条码失败!" + e.ToString();
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = WebSoBar;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            else
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "扫描源单条码失败!" + e.ToString();
                objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
                objJsonResult.data = null;
                return objJsonResult;
            }
@@ -6186,26 +6210,7 @@
                                HSupIDs = ds.Tables[0].Rows[0]["HItemID"].ToString();
                            }
                            string HSourceInterIDs = "0";
                            string HSourceEntryIDs = "0";
                            string HSourceBillNos = "0";
                            string HUnitIDs = "0";
                            //查询采购订单
                            ds = oCn.RunProcReturn(@"select  a.HInterID,b.HEntryID,a.HBillNo,b.HUnitID from Cg_POOrderBillMain a
inner join Cg_POOrderBillSub b on a.HInterID = b.HInterID where HBillNo='" + str[3] + "' and b.HMaterID=" + HMaterIDs, "Cg_POOrderBillMain");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                //sErrMsg = "条码解析失败,请确认条码采购订单是否正确!";
                                //return null;
                            }
                            else
                            {
                                HSourceInterIDs = ds.Tables[0].Rows[0]["HInterID"].ToString();
                                HSourceEntryIDs = ds.Tables[0].Rows[0]["HEntryID"].ToString();
                                HSourceBillNos = ds.Tables[0].Rows[0]["HBillNo"].ToString();
                                HUnitIDs = ds.Tables[0].Rows[0]["HUnitID"].ToString();
                            }
                            string HInnerBillNos = "";
                            //查询内部采购订单号
                            ds = oCn.RunProcReturn(@" select * from h_v_IF_POInStockList where é‡‡è´­è®¢å•号= '" + str[3] + "' ", "h_v_IF_POInStockList");
@@ -6218,7 +6223,27 @@
                            else
                            {
                                HInnerBillNos = ds.Tables[0].Rows[0]["内部采购订单号"].ToString();
                                HSourceBillNos = ds.Tables[0].Rows[0]["采购订单号"].ToString();
                            }
                            string HSourceInterIDs = "0";
                            string HSourceEntryIDs = "0";
                            string HUnitIDs = "0";
                            //查询采购订单
                            ds = oCn.RunProcReturn(@"select  a.HInterID,b.HEntryID,a.HBillNo,b.HUnitID from Cg_POOrderBillMain a
inner join Cg_POOrderBillSub b on a.HInterID = b.HInterID where HBillNo='" + HSourceBillNos + "' and b.HMaterID=" + HMaterIDs, "Cg_POOrderBillMain");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                //sErrMsg = "条码解析失败,请确认条码采购订单是否正确!";
                                //return null;
                            }
                            else
                            {
                                HSourceInterIDs = ds.Tables[0].Rows[0]["HInterID"].ToString();
                                HSourceEntryIDs = ds.Tables[0].Rows[0]["HEntryID"].ToString();
                                HUnitIDs = ds.Tables[0].Rows[0]["HUnitID"].ToString();
                            }
                            double HQty = double.Parse(str[6]);
                            //日期获取方式
@@ -6538,6 +6563,269 @@
        }
        #endregion
        #endregion
        #endregion
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单模块调用方法     20240723
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单扫码模块  æ‰«æå®¢æˆ·æ¡ç è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// æ‰«æå®¢æˆ·æ¡ç 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_CusBarCode_CusBarCodeCheck_Json")]
        [HttpGet]
        public object Get_CusBarCode_CusBarCodeCheck_Json(string HCusBarCode_Y, string HCusBarCode_N)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_CheckCusBarCode_CusBarCodeCheck '" + HCusBarCode_Y + "','" + HCusBarCode_N + "'", "h_p_WMS_CheckCusBarCode_CusBarCodeCheck");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描客户条码判断错误!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功!";
                    objJsonResult.data = ds.Tables[0];
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "扫描客户条码失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单扫码模块  æ‰«æç‰©æ–™æ¡ç è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// æ‰«æç‰©æ–™æ¡ç 
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/Get_BarCode_CusBarCodeCheck_Json")]
        [HttpGet]
        public object Get_BarCode_CusBarCodeCheck_Json(string HBarCode, string HCusBarCode_Y, string HCusBarCode_N, Int64 HInterID, string HBillType, string HBillNo, string HMaker, Int64 HStockOrgID)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_CusBarCodeCheck " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "','" + HCusBarCode_Y + "','" + HCusBarCode_N + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_WMS_AddBarCode_CusBarCodeCheck");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "扫描物料条码,写入临时表失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功!";
                    objJsonResult.data = ds.Tables[0];
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "扫描物料条码失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单扫码模块  èŽ·å–æ‰«ç æ¨¡å—åˆ—è¡¨ä¿¡æ¯è°ƒç”¨æ–¹æ³•
        /// <summary>
        /// èŽ·å–æ‰«ç æ¨¡å—åˆ—è¡¨ä¿¡æ¯
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/GetCusBarCodeCheckBillTmpList_Json")]
        [HttpGet]
        public object GetCusBarCodeCheckBillTmpList_Json(Int64 HInterID, string HBillNo, string HBillType)
        {
            try
            {
                ds = oCn.RunProcReturn("exec h_p_WMS_CusBarCodeCheckBillTmpList " + HInterID.ToString() + ",'" + HBillType + "'", "h_p_WMS_CusBarCodeCheckBillTmpList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何记录!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    List<object> columnNameList = new List<object>();
                    //添加列名
                    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 = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "获取信息成功!";
                    objJsonResult.data = ds.Tables[0];
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取列表信息失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单扫码模块    åˆ é™¤åŠŸèƒ½æŒ‰é’®è°ƒç”¨  åˆ é™¤é€‰ä¸­è¡Œä¸´æ—¶è¡¨è®°å½•
        /// <summary>
        /// åˆ é™¤é€‰ä¸­è¡Œä¸´æ—¶è¡¨è®°å½•
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_DelCusBarCodeCheckBill_temp_Json")]
        [HttpGet]
        public object set_DelCusBarCodeCheckBill_temp_Json(Int64 HInterID, string HBillType, Int64 HItemID)
        {
            try
            {
                oCn.RunProc("Delete from WMS_CusBarCodeCheckBill_temp where HInterID=" + HInterID.ToString() + " and HBillType='" + HBillType + " and HItemID=" + HItemID.ToString(), ref DBUtility.ClsPub.sExeReturnInfo);
                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;
            }
        }
        #endregion
        #region ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单     ä¸Šä¼ ç”Ÿå•
        /// <summary>
        /// ä¸‰ç‚¹ç…§åˆæ‰«ç è®°å½•单新增上传
        /// </summary>
        /// <returns></returns>
        [Route("WEBSController/set_SaveCusBarCodeCheckBill_Json")]
        [HttpPost]
        public object set_SaveCusBarCodeCheckBill_Json([FromBody] JObject oMain)
        {
            var _value = oMain["oMain"].ToString();
            string msg1 = _value.ToString();
            try
            {
                string sMainStr = "[" + msg1.ToString() + "]";
                List<Model.ClsWMS_CusBarCodeCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsWMS_CusBarCodeCheckBillMain>>(sMainStr);
                Model.ClsWMS_CusBarCodeCheckBillMain omodel = new Model.ClsWMS_CusBarCodeCheckBillMain();
                omodel.HInterID = mainList[0].HInterID;
                omodel.HBillNo = mainList[0].HBillNo;
                omodel.HBillType = mainList[0].HBillType;
                omodel.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString());
                omodel.HRemark = mainList[0].HRemark;
                omodel.HMaker = mainList[0].HMaker;
                omodel.HSTOCKORGID = mainList[0].HSTOCKORGID;
                omodel.HDeptID = mainList[0].HDeptID;
                //判断会计期是否合理
                string s = "";
                int sYear = 0;
                int sPeriod = 0;
                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(DateTime.Today, ref sYear, ref sPeriod, ref s) == false)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = s;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    omodel.HYear = sYear;
                    omodel.HPeriod = sPeriod;
                }
                oCn.BeginTran();
                //生成三点照合扫码记录单
                //插入子表
                oCn.RunProc("EXEC h_p_WMS_CusBarCodeCheckBillSub_Insert " + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'");
                //插入主表
                oCn.RunProc("Insert Into WMS_CusBarCodeCheckBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                ",HDeptID,HStockOrgID" +
                ") " +
                " values('" + omodel.HBillType + "','" + omodel.HBillType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate.ToShortDateString() + "'" +
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + omodel.HMaker + "',getdate()" +
                ", " + omodel.HDeptID.ToString() + "," + omodel.HSTOCKORGID.ToString() +
                ") ");
                oCn.Commit();
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "生成三点照合扫码记录单成功!单据号为:" + omodel.HBillNo;
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCn.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "三点照合扫码记录单上传失败!" + e.Message;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
@@ -7476,20 +7764,20 @@
                DataSet ds1 = oCn.RunProcReturn(sql1, "Gy_getCusBarCodeBill_Temp");
                if (ds1 != null && ds1.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "修改失败!原因:修改后的单据号在未提交的缓存列表中不存在!";
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "成功";
                objJsonResult.data = ds1.Tables[0];
                return objJsonResult;
                else
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "成功";
                    objJsonResult.data = ds1.Tables[0];
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
@@ -8308,6 +8596,53 @@
        #endregion
        #region æ‰«ç éªŒè¯å• è¿”回补扫清单列表
        [Route("WEBSController/Gy_BarCodeConfirmBill_getSuppRushList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_getSuppRushList(long HInterID, string HBillNo, string HBillType, long HOrgID)
        {
            try
            {
                string sql = "exec h_p_Gy_BarCodeConfirmBill_getSuppRushList " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HOrgID;
                ds = oCn.RunProcReturn(sql, "h_p_Gy_BarCodeConfirmBill_getSuppRushList");
                if (ds == null || ds.Tables.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何记录!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    List<object> columnNameList = new List<object>();
                    //添加列名
                    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 = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "获取信息成功!";
                    objJsonResult.data = ds.Tables[0];
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取列表信息失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region æ‰«ç éªŒè¯å• åˆ é™¤æ‰«ç è®°å½•
        /// <summary>