1
wtt
8 天以前 aa51348d3501aa3a9bbda287929f3c8a05825063
WebAPI/Controllers/POStockInBillController.cs
@@ -3369,8 +3369,76 @@
        }
        #region  [通过 源单单号 进行 来料检验]
        /// <summary>
        /// 通过 源单单号 进行 来料检验
        /// </summary>
        /// <param name="HBarCode">源单单号</param>
        /// <param name="HOrgID">组织ID</param>
        /// <returns></returns>
        [Route("Kf_QCStockInCheckBill_Fast/BarCode_Json_SourceBillNo")]
        [HttpGet]
        public object BarCode_Json_SourceBillNo(string HBarCode, Int64 HOrgID)
        {
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                DataSet Dss;
                // 获取金蝶云中对应的组织
                Dss = oCN.RunProcReturn(" select HNumber from h_v_CLD_ORGANIZATIONSList where HItemID= " + HOrgID, "h_v_CLD_ORGANIZATIONSList");
                string HOrgNumber = Pub_Class.ClsPub.isStrNull(Dss.Tables[0].Rows[0]["HNumber"]);
                // 根据采购订单号获取 收料通知单 和 物料信息
                DataSet Dss2;
                Dss2 = oCn.RunProcReturn(" select fid,FMATERIALID,FENTRYID,FBILLNO from h_v_RECEIVEQuery where FSRCBILLNO= '" + HBarCode + "'", "h_v_RECEIVEQuery");
                if(Dss2 == null || Dss2.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何记录!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                string HPOStockInBillNo = Dss2.Tables[0].Rows[0]["FBILLNO"].ToString();
                DataSet ds;
                ds = oCN.RunProcReturn("select * from h_v_QCStockInCheckBill_Json_SourceBill where  HSourceBillNo ='" + HPOStockInBillNo.ToString() + "'", "h_v_QCStockInCheckBill_Json");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何记录!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning);
                }
                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
        [Route("Kf_QCStockInCheckBill_Fast/BarCode_Json")]
@@ -5013,7 +5081,16 @@
        {
            try
            {
                string _msg = msg["msg"].ToString();
                string HMaker ="";           //制单人
                var _value = msg["msg"].ToString();
                string msg1 = _value.ToString();
                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                string _msg = sArray[0].ToString();
                if(sArray.Length>1)
                {
                    HMaker = sArray[1].ToString();
                }
                _msg = _msg.Replace("\\", "");
                _msg = _msg.Replace("\n", "");
                List<Models.ReciveBill_FastModel> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.ReciveBill_FastModel>>(_msg);
@@ -5174,7 +5251,8 @@
                                ["IsVerifyBaseDataField"] = "false",
                                ["Model"] = model
                            };
                            var loginRet = InvokeHelper.Login();
                            //登录
                            var loginRet = InvokeHelper.LoginUser(HMaker);
                            var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                            if (isSuccess == 0)
                            {
@@ -5220,7 +5298,54 @@
                        LogService.Write("收料通知单审核无数据:" + sql);
                    }
                }
                else //夏宝 ,更新erp信息
                else if(FCusName.Contains("夏宝"))
                {
                    JObject jsonRoot = new JObject();
                    jsonRoot.Add("Creator", "");
                    jsonRoot.Add("NeedUpDateFields", new JArray());
                    jsonRoot.Add("NeedReturnFields", new JArray());
                    jsonRoot.Add("IsDeleteEntry", "false"); //注意IsDeleteEntry参数,如为True,则原分录行的FEntryId未在分录json出现的行,将会被删除 (如无需删除分录行,可改为fasle)
                    jsonRoot.Add("SubSystemId", "");
                    jsonRoot.Add("IsVerifyBaseDataField", "");
                    JObject jsonModel = new JObject();
                    jsonModel.Add("FID", FID);
                    JArray Entry = new JArray();
                    foreach (var item in list)
                    {
                        if (item.HSQty == 0)
                            continue;
                        JObject jsonFPOOrderEntry = new JObject();
                        jsonFPOOrderEntry.Add("FEntryID", item.FEntryID);
                        jsonFPOOrderEntry.Add("FActReceiveQty ", item.HSQty); ;
                        Entry.Add(jsonFPOOrderEntry);
                    }
                    jsonModel.Add("FDetailEntity", Entry);
                    jsonRoot.Add("Model", jsonModel);
                    //登录
                    var loginRet = InvokeHelper.LoginUser(HMaker);
                    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.Save("PUR_ReceiveBill", jsonRoot.ToString());
                    //LogService.Write(result);
                    if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
                    {
                        LogService.Write("收料通知单修改失败jsonRoot:" + jsonRoot.ToString());
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "金蝶收料通知单更新失败" + result;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else //更新erp信息
                {
                    JObject jsonRoot = new JObject();
                    jsonRoot.Add("Creator", "");
@@ -5244,7 +5369,8 @@
                    }
                    jsonModel.Add("FDetailEntity", Entry);
                    jsonRoot.Add("Model", jsonModel);
                    var loginRet = InvokeHelper.Login();
                    //登录
                    var loginRet = InvokeHelper.LoginUser(HMaker);
                    var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                    if (isSuccess <= 0)
                    {