| | |
| | | string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | string msg2 = sArray[0].ToString(); |
| | | string msg3 = sArray[1].ToString(); |
| | | |
| | | |
| | | |
| | | string UserName = ""; |
| | | ListModels oListModels = new ListModels(); |
| | | try |
| | | { |
| | | //获取客户名称 |
| | | string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | DAL.ClsCg_POInStockBill oBill = new DAL.ClsCg_POInStockBill(); |
| | | List<Model.ClsCg_POInStockBillMain> lsmain = new List<Model.ClsCg_POInStockBillMain>(); |
| | | msg2 = msg2.Replace("\\", ""); |
| | |
| | | oItem.HMainSourceInterID = oItem.HInterID; |
| | | oItem.HInterID = 0; |
| | | //oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "安瑞") //系统参数 客户定制化名称 空白为通用 |
| | | if (FCusName == "安瑞医疗") //系统参数 客户定制化名称 空白为通用 |
| | | { |
| | | if (DBUtility.ClsPub.isStrNull(oItem.HDHDate) == "") |
| | | { |
| | |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | |
| | | oBill.omodel = oItem; |
| | | } |
| | | //表体数据 |
| | |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "安瑞") //系统参数 客户定制化名称 空白为通用 |
| | | if (FCusName == "安瑞医疗") //系统参数 客户定制化名称 空白为通用 |
| | | { |
| | | if (DBUtility.ClsPub.isStrNull(oItemSub.HBatChNo) == "") |
| | | { |
| | |
| | | |
| | | [Route("AuditPOInStockBill")] |
| | | [HttpGet] |
| | | public object AuditPOInStockBill(string HInterID, string CurUserName) |
| | | public object AuditPOInStockBill(string HInterID, string CurUserName, string HBillNo) |
| | | { |
| | | json objjson = new json(); |
| | | try |
| | | { |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | //采购订单 生成送货单列表 |
| | | if (!String.IsNullOrEmpty(HBillNo)) |
| | | HInterID = GetHinterIDByBillNo(HBillNo).ToString(); |
| | | if (HInterID == "0") |
| | | { |
| | | objjson.code = "0"; |
| | | objjson.count = 0; |
| | | objjson.Message = "操作失败,请先保存订单"; |
| | | objjson.data = null; |
| | | return objjson; |
| | | } |
| | | |
| | | string kdTbaleName = "AIS20211209082932"; |
| | | //string kdTbaleName = "AIS20211209082932"; |
| | | string kdTbaleName = "AIS20211130140219";//夏宝正式 |
| | | |
| | | string sql = string.Format(@" |
| | | SELECT B.HINTERID,c.FID,c.FENTRYID, D.FBILLNO,B.HQTY,CD.FRECEIVEORGID,CDOO.FNUMBER AS FRECEIVENUMBER,D.FSUPPLIERID,DS.FNUMBER AS FSUPPLIERNUMBER,D.FPURCHASEORGID,DOO.FNUMBER AS FPURCHASEORGNUMBER,CROO.FNUMBER AS FSETTLEORGNUMBER,E.FPRICETIMEPOINT,E.FSETTLECURRID,EC.FNUMBER AS FSETTLECURRNUMBER,C.FMATERIALID,CM.FNUMBER AS FMATERIALNUMBER ,C.FUNITID ,CU.FNUMBER AS FUNITNUMBER FROM |
| | | CG_POINSTOCKBILLSUB B |
| | | SELECT M.HBillNo,B.HINTERID,B.HENTRYID,c.FID,c.FENTRYID, D.FBILLNO,B.HQTY,CD.FRECEIVEORGID,CDOO.FNUMBER AS FRECEIVENUMBER |
| | | ,D.FSUPPLIERID,DS.FNUMBER AS FSUPPLIERNUMBER,D.FPURCHASEORGID,DOO.FNUMBER AS FPURCHASEORGNUMBER,CROO.FNUMBER AS FSETTLEORGNUMBER, |
| | | E.FPRICETIMEPOINT,E.FSETTLECURRID,EC.FNUMBER AS FSETTLECURRNUMBER,C.FMATERIALID,CM.FNUMBER AS FMATERIALNUMBER ,C.FUNITID |
| | | ,CU.FNUMBER AS FUNITNUMBER,D.F_xbkf_Combo1,c.F_XBKF_DECIMAL3,c.F_XBKF_DECIMAL4,CR.FTAXRATE |
| | | FROM CG_POINSTOCKBILLSUB B |
| | | JOIN CG_POINSTOCKBILLMAIN M ON B.HINTERID = M.HINTERID |
| | | JOIN {0}..T_PUR_POORDERENTRY C ON B.HSOURCEINTERID = C.FID AND B.HSOURCEENTRYID = C.FENTRYID |
| | | LEFT JOIN {0}..T_BD_MATERIAL CM ON C.FMATERIALID =CM.FMATERIALID |
| | |
| | | |
| | | JObject model = new JObject(); |
| | | model.Add("FBILLTYPEID", new JObject() { ["Fnumber"] = "SLD01_SYS" }); //单据类型 |
| | | model.Add("FBILLNO", dr["HBillNo"].ToString()); //单据编号 |
| | | model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //通知日期 |
| | | model.Add("FStockOrgId", new JObject() { ["Fnumber"] = dr["FRECEIVENUMBER"].ToString() }); // 收料组织 |
| | | model.Add("FPurOrgId", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() }); //采购组织 |
| | | model.Add("FSupplierId", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() }); //供应商 |
| | | model.Add("FOwnerTypeIdHead", "BD_OwnerOrg");// 货主类型 |
| | | model.Add("FOwnerIdHead", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() });//货主 |
| | | model.Add("F_XBKF_COMBO", dr["F_xbkf_Combo1"].ToString());//是否有票 |
| | | JArray Fentity = new JArray(); |
| | | foreach (var item in drs) |
| | | { |
| | |
| | | FentityModel.Add("FSRCENTRYID", item["FENTRYID"].ToString());//源单分录内码 |
| | | FentityModel.Add("FORDERBILLNO", item["FBILLNO"].ToString());//源单单号 |
| | | FentityModel.Add("FPOORDERENTRYID", item["FENTRYID"].ToString());//源单分录内码 |
| | | |
| | | FentityModel.Add("FSRMENTRYID", item["HENTRYID"].ToString());//SRM hentryid |
| | | FentityModel.Add("FPrice", item["F_XBKF_DECIMAL3"].ToString());//单价 |
| | | FentityModel.Add("FTaxPrice", item["F_XBKF_DECIMAL4"].ToString());//含税单价 |
| | | FentityModel.Add("FEntryTaxRate", item["FTaxRate"].ToString());//税率 |
| | | |
| | | JArray Fentity2 = new JArray(); |
| | | JObject FentityModel2 = new JObject(); |
| | |
| | | ["IsVerifyBaseDataField"] = "false", |
| | | ["Model"] = model |
| | | }; |
| | | //LogService.Write(JsonConvert.SerializeObject(jsonRoot)); |
| | | LogService.Write(JsonConvert.SerializeObject(jsonRoot)); |
| | | var loginRet = InvokeHelper.Login(); |
| | | LogService.Write("loginRet:" + loginRet); |
| | | //LogService.Write("loginRet:" + loginRet); |
| | | var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); |
| | | if (isSuccess == 0) |
| | | { |
| | |
| | | objjson.data = null; |
| | | return objjson; |
| | | } |
| | | LogService.Write(jsonRoot.ToString()); |
| | | //LogService.Write(jsonRoot.ToString()); |
| | | var result = InvokeHelper.Save("PUR_ReceiveBill", jsonRoot.ToString()); |
| | | LogService.Write(result); |
| | | //LogService.Write(result); |
| | | if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() == "TRUE") |
| | | { |
| | | //更新送货单 主表 ERP单据号 以及 ERP主内玛 |
| | |
| | | return objjson; |
| | | } |
| | | |
| | | } |
| | | [Route("GetHinterID")] |
| | | [HttpGet] |
| | | public object GetHinterID(string HBillNo) |
| | | { |
| | | int HinterID = GetHinterIDByBillNo(HBillNo); |
| | | if (HinterID == 0) |
| | | { |
| | | objjson.code = "0"; |
| | | objjson.count = 0; |
| | | objjson.Message = "操作失败,请先保存订单"; |
| | | objjson.data = HinterID; |
| | | return objjson; |
| | | } |
| | | objjson.code = "1"; |
| | | objjson.count = 1; |
| | | objjson.Message = "操作成功"; |
| | | objjson.data = HinterID; |
| | | return objjson; |
| | | } |
| | | |
| | | public int GetHinterIDByBillNo(string HBillNo) |
| | | { |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | int HInterID = 0; |
| | | string sql = "select HInterID from CG_POINSTOCKBILLMAIN where HBILLNO = '" + HBillNo + "'"; |
| | | DataTable dt = oCn.RunProcReturn(sql, "HInterID").Tables[0]; |
| | | if (dt.Rows.Count > 0) |
| | | HInterID = Convert.ToInt32(dt.Rows[0]["HInterID"]); |
| | | return HInterID; |
| | | } |
| | | |
| | | |
| | | [Route("DeltetPOInStockBill")] |
| | | [HttpGet] |
| | | public object DeltetPOInStockBill(string HInterID, string HUserName, string HBillNo) |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | try |
| | | { |
| | | DAL.ClsCg_POInStockBill oBill = new DAL.ClsCg_POInStockBill(); |
| | | //先删除 金蝶数据 |
| | | objjson = DeleteKingDee(HInterID); |
| | | LogService.Write(objjson.ToString()); |
| | | if (objjson.code == "0") |
| | | return objjson; |
| | | |
| | | WebAPIController.Add_Log("送货单删除,单号:" + HBillNo, HUserName, "送货单删除"); |
| | | oCN.BeginTran(); |
| | | oBill.DeleteRelation(ref DBUtility.ClsPub.sExeReturnInfo, Convert.ToInt32(HInterID)); |
| | | oCN.RunProc("Delete From Cg_POInStockBillMain where HInterID = " + HInterID); |
| | | oCN.RunProc("Delete From Cg_POInStockBillSub 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) |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | 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) |
| | | { |
| | | objjson.code = "0"; |
| | | objjson.count = 0; |
| | | objjson.Message = "操作失败,金蝶账号登录异常。" + loginRet; |
| | | objjson.data = null; |
| | | return objjson; |
| | | } |
| | | //LogService.Write(""); |
| | | var result = InvokeHelper.Delete("PUR_ReceiveBill", JsonConvert.SerializeObject(sJson)); |
| | | LogService.Write("api结果删除:" + result); |
| | | if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") |
| | | { |
| | | objjson.code = "0"; |
| | | objjson.count = 0; |
| | | objjson.Message = "对应金蝶收料通知单删除失败 !" + result; |
| | | objjson.data = null; |
| | | return objjson; |
| | | } |
| | | |
| | | } |
| | | } |
| | | objjson.code = "1"; |
| | | objjson.count = 1; |
| | | objjson.Message = "Sucess!"; |
| | | objjson.data = null; |
| | | return objjson; |
| | | } |
| | | |
| | | //[Route("POInStockAccept")] |
| | |
| | | // } |
| | | |
| | | |
| | | [Route("TestSaverPOInStock")] |
| | | [HttpPost] |
| | | /// <summary> |
| | | /// 生成送货单前验证金蝶采购订单是否删除和关闭,然后更新关联数量 |
| | | /// </summary> |
| | | /// <param name="HInterID"></param> |
| | | /// <returns></returns> |
| | | public object TestSaverPOInStock([FromBody] string[] ids) |
| | | { |
| | | List<string> mylist = new List<string>(ids.Distinct()); |
| | | try |
| | | { |
| | | string HinterID = ""; |
| | | for (int i = 0; i < mylist.Count; i++) |
| | | { |
| | | SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); |
| | | //更新关联数量 |
| | | HinterID = mylist[i].ToString(); |
| | | oCn.RunProc("exec h_p_SRM_UpDatePPBomRelationQty '" + HinterID + "'"); |
| | | } |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "操作成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "失败!" + e.Message.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |