From cd92e0b6d6aa8f77c9a0e266308fa6d484ba06f0 Mon Sep 17 00:00:00 2001 From: 18942506660 <18942506660@A18942506660> Date: Tue, 7 Nov 2023 15:11:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96=E9=87=91?= =?UTF-8?q?=E8=9D=B6=E5=AD=90=E4=BB=93=E5=BA=93=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 | Bin 228751 -> 228751 bytes .../Controllers/SysConfigController.cs | 38 +++++++++++++- src/WMS.Web.Api/Controllers/TestController.cs | 2 +- src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml | 18 +++++++ src/WMS.Web.Domain/Entitys/TakeStock.cs | 5 ++ .../IService/Public/IErpService.cs | 5 ++ .../Services/Public/ErpService.cs | 48 +++++++++++++++++- 7 files changed, 112 insertions(+), 4 deletions(-) diff --git a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 index 87fd87fceb64b12a945bc700dacbeaef91e58d3e..e2a492bd11e4ac9b628f6a5e67d6854433210b03 100644 GIT binary patch delta 5948 zcmeI0dw3Pa8OG0kd%heJPDlbF5FjL64EIYCMM#4NL_$MaE|r2(2$3Rk2^X;n4S0eS zE2M!0kl`l8dP7t$B5rL_D6}B8*3xQiX>BQ3p)Hj&SuTN?(0BG~r2gR_eV#r~IS;>? z_nYtCnI${3v%9P7<5$uXm zz3CR?SZ~^)Yp)8qQOgnsYqjOZwG^7r+*r_`iZtt<3JWI zBQfT*HreXc7J@^zffJSf)1Y!aK4G_>l5HLtpDbyj*48(#sp!#c$It=1L3y=U3V*-&t5=2YT z3M7NpAO)xa+JLqo6|@8GK?jiL43q|~2I~kuJ779uHK;on2Ks_=B25R%fUy(k47z~N z51il(+!Z-Bz)h&tAnN2lf9z*ZI1~A9K*RB>e^qx!tz&%aVD-OM2k3}k$UI-2|@sk&WC?lpBB~xC4|8h{)IjJiuWoND;Qy-L{I++GP(}>Kq zpbW6xoyOiV#HQ3)2AvH1nHXe3ESq_mq258UNX4;i?xnm;7@2sMEw0ZbAd@JHE>i_1 zvDkB-I;OVdeAxG?7n>THWCxH2I)ZdDThiW+8IYYoXV3+71#jTUH^EIT-rY`}lQPkE6md7y-9Znr z;VO-c>j~Kl^ky+;raoDWtf%f;ACYfTd#$fgRZkCV+zjQ2N(wK1j9iA z7y-`V_^)!l$ZVv%+(O2*8);usb%~=yngZW9S&m~f+ScwK5F(0XR&@K zl@{FXy6$0lx9@^fF1v!5=-R%;(B7Dk$~KXW!d=u-%b4WaCbOL6+aQ%~5*v$m(~Mwx zv1^;cve>slDqFG9DMnwXrI)y_ds&wFE=c7n5yoq@Yxq>x^lg??eG{ZI*%ibz*LEL6 zd*=_SY}1UF4BD`0&Rx-3_gH*N^ zM$%jKK`_0-b^U;4h3|q?t_rcSqyBMvrE6NnveGv}DpRGgHC?ZcFIerms#vb}U69IU zR}j^%Z4E3H6tgJXOyip2euSt5d)a2{nuyyBBHU|mYk`<1j($W( zdremw_YB++AaGZ}l83;$$C`$~!p5qFz|wtt3*Dy;pRXdUP%J+PtU)X=2&^)!AP6iY ztQrWc7db$K7@(PQpb`Ti%2cWh8)u20CKhd_KE0Nx7OV(as62)6L{tl=J?1n7CN}0V z#4;8K&d@Wd%T<6Gis=V|Ify9-v4Ta$z4~#HQA78HDpX4ai={O*FjT36N;VGGP=TJX zT1A*4xcm^+#%+W3bS?4(V;jU4H$tvwRHocd$nM9Jl~5Nbieio2z(qiAWR%f3xryaw zmRndp2|wDmvfRe9hNCUzQ#=H_=O~7dKU5{`PjfUZpJDkd+-OLMCPtHBZGkIaHLScm z+j)+h)8skwIj(D|2CtUSTU{10gxs!5boqknatF&7(dF|j-g}wKZtT3)+P<;#sy~BT zw@!6q=T(0WZ|60z^Pao04XVG1y$!AkiU&?oPK^C_AYMF4T_R0hG@HCJ4-!?m@d)?shVJ{LCxJ>}C0?lS$Uql(gPj_aXBdOT)?h$Uo+FWFkLi`4cDgA$bSw zN9qlhZ(g4{fXqRbKXo#P{O%4T^D~w|zdmyWnWHSh#rQh8<$oz`s zyH4iUe&#qbzhU`XC-a`4c^{eIiG(To7%}%0C5N2Xe6jKr4gUYy@VIWR52`I)^naG}B2VJ;NRy|#oz^p$GkHzY@*)2Kd{Q* zTjd`_`FTp$PKcWG)bD@j^NE%zrqt4?FZsCyUzgRV677#--bH*d`4hfg{HL!WAEN!w z;4k1L_$xRCPJ@rY-@wP<3^)t^4*miD3C@9kflt7B5Csy{0ux*S>Wj%m&X19w1oO+w QjmU64PB&uG^c7S74cekLwEzGB delta 9992 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 P@~)?+|Ic2lqc;8-_XX*x diff --git a/src/WMS.Web.Api/Controllers/SysConfigController.cs b/src/WMS.Web.Api/Controllers/SysConfigController.cs index d8e08f66..47b1e9d1 100644 --- a/src/WMS.Web.Api/Controllers/SysConfigController.cs +++ b/src/WMS.Web.Api/Controllers/SysConfigController.cs @@ -12,6 +12,7 @@ using WMS.Web.Core.Internal.Results; using WMS.Web.Domain.Infrastructure; using WMS.Web.Domain.IService.Public; using WMS.Web.Domain.Values; +using WMS.Web.Domain.Values.Single; namespace WMS.Web.Api.Controllers { @@ -25,12 +26,16 @@ namespace WMS.Web.Api.Controllers private readonly ILoginService _loginService; private readonly IBasicsRepositories _basicsRepositories; private readonly IBoxRepositories _boxRepositories; + private readonly IErpService _erpService; + private readonly ISingleDataService _singleDataService; public SysConfigController(ILoginService loginService, IBasicsRepositories basicsRepositories, - IBoxRepositories boxRepositories) + IBoxRepositories boxRepositories, IErpService erpService, ISingleDataService singleDataService) { _loginService = loginService; _basicsRepositories = basicsRepositories; _boxRepositories = boxRepositories; + _erpService = erpService; + _singleDataService = singleDataService; } /// @@ -111,6 +116,37 @@ namespace WMS.Web.Api.Controllers var r = await _basicsRepositories.GetSubUcStockAsync(id); return Result>.ReSuccess(r); } + /// + /// 根据仓库获取金蝶子仓库 + /// + /// 仓库id + /// + [HttpGet] + [Route("GetErp_SubUcStock/{id}")] + public async Task>> GetErp_SubUcStock([FromRoute] int id) + { + var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]); + if (loginInfo == null || loginInfo.UserInfo == null) + return Result>.ReFailure(ResultCodes.Token_Invalid_Error); + + List list = new List(); + var code = _singleDataService.GetSingleDataCode(SingleAction.Stocks, loginInfo.UserInfo.CompanyId, id); + if (code.Substring(0, 2).Equals("HD") || code.Substring(0, 2).Equals("GD")) + { + var subs = await _erpService.BillQueryForSubStock(code); + foreach (var s in subs.Data) + { + list.Add(new UcStockResponse() + { + Id = s.Id, + Code = s.Code, + Name = s.Name, + Disable = false + }); + } + } + return Result>.ReSuccess(list); + } /// /// 获取仓位:模糊名称 diff --git a/src/WMS.Web.Api/Controllers/TestController.cs b/src/WMS.Web.Api/Controllers/TestController.cs index 8088fdca..a85b78cd 100644 --- a/src/WMS.Web.Api/Controllers/TestController.cs +++ b/src/WMS.Web.Api/Controllers/TestController.cs @@ -35,7 +35,7 @@ namespace WMS.Web.Api.Controllers [Route("hj")] public async Task TestHJ() { - var res = await this._erpService.BillQueryForTransferDirectOutStock(); + var res = await this._erpService.BillQueryForSubStock(); //var result= await this._erpService.BillQueryForPurchaseInStock(); //var result = await this._erpService.BillQueryForOrg(); var result = await this._erpService.BillQueryForMaterial(); diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml index 5a6bad72..4c5cc7b1 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Domain.xml @@ -993,6 +993,11 @@ 仓位ID + + + 子仓库(跟金蝶交互字段) + + 盘点前数量(wms系统数量) @@ -1570,6 +1575,12 @@ + + + 获取仓位信息信息 根据仓库编码 + + + 登录服务接口 @@ -2316,6 +2327,13 @@ + + + 根据仓库编码获取仓位 + + + + 同步数据(保存提交审核) diff --git a/src/WMS.Web.Domain/Entitys/TakeStock.cs b/src/WMS.Web.Domain/Entitys/TakeStock.cs index e0808357..82a349ae 100644 --- a/src/WMS.Web.Domain/Entitys/TakeStock.cs +++ b/src/WMS.Web.Domain/Entitys/TakeStock.cs @@ -61,6 +61,11 @@ namespace WMS.Web.Domain.Entitys [Column("SubStockId")] public int SubStockId { get; set; } /// + /// 子仓库(跟金蝶交互字段) + /// + [Column("Erp_SubStockId")] + public int Erp_SubStockId { get; set; } = 0; + /// /// 盘点前数量(wms系统数量) /// [Column("BeforeQty")] diff --git a/src/WMS.Web.Domain/IService/Public/IErpService.cs b/src/WMS.Web.Domain/IService/Public/IErpService.cs index 52aefd13..399c0b4c 100644 --- a/src/WMS.Web.Domain/IService/Public/IErpService.cs +++ b/src/WMS.Web.Domain/IService/Public/IErpService.cs @@ -65,6 +65,11 @@ namespace WMS.Web.Domain.IService.Public /// /// Task> BillQueryForStock(); + /// + /// 获取仓位信息信息 根据仓库编码 + /// + /// + Task> BillQueryForSubStock(string code=null); //同步数据(保存提交审核) Task Sync(T dto, string formId); //下推 diff --git a/src/WMS.Web.Domain/Services/Public/ErpService.cs b/src/WMS.Web.Domain/Services/Public/ErpService.cs index 47bf4091..f134bf24 100644 --- a/src/WMS.Web.Domain/Services/Public/ErpService.cs +++ b/src/WMS.Web.Domain/Services/Public/ErpService.cs @@ -192,7 +192,7 @@ namespace WMS.Web.Domain.Services.Public param.FieldKeys = "FMATERIALID,FName,FNumber,FSpecification,FForbidStatus,FUseOrgId"; param.Limit = 10000; Console.Write("请输入第几行:"); - var row=Console.ReadLine(); + var row = Console.ReadLine(); param.StartRow = (Convert.ToInt32(row) * param.Limit); //查询条件:备注其中的条件值以金蝶的值为准!!! @@ -310,6 +310,49 @@ namespace WMS.Web.Domain.Services.Public } } /// + /// 根据仓库编码获取仓位 + /// + /// + /// + public async Task> BillQueryForSubStock(string code = null) + { + try + { + var token_result = await this.Init(); + if (!token_result.IsSuccess) + return ResultList.ReFailure(token_result); + var query = new ErpBillQueryDto(token_result.Data); + var param = new ErpBillQueryParamDto(FormIdParam.BD_STOCK.ToString()); + param.FieldKeys = "FStockFlexDetail_FDetailID,FFlexEntryName,FFlexEntryId,'0'"; + param.Limit = 100000; + if (!string.IsNullOrEmpty(code)) + param.FilterString = "FNumber='" + code + "'";//FNumber='C' + query.Data = JsonConvert.SerializeObject(param); + var json = JsonConvert.SerializeObject(query); + + var result_json = await _client.ExecuteBillQueryAsync(json); + var result = JsonConvert.DeserializeObject>>(result_json); + + var list = new List(); + foreach (var item in result) + { + var lis = new ErpStockDto(); + lis.Id = int.Parse(item[0]); + lis.Name = item[1]; + lis.Code = item[2]; + lis.OrgId = Convert.ToInt32(item[3]); + list.Add(lis); + + } + return ResultList.ReSuccess(list); + + } + catch (Exception) + { + return ResultList.ReFailure("错误", 10002); + } + } + /// /// 同步数据(保存提交审核) /// /// @@ -393,7 +436,7 @@ namespace WMS.Web.Domain.Services.Public param.FilterString = "FCreateDate>='" + beginTime + "' and FCreateDate<='" + endTime + "' and FDocumentStatus='C' and FRemainOutQty>=0"; //string srt = JsonConvert.SerializeObject(stocks_codes); //param.FilterString = param.FilterString + " and FStockID in (" + srt.Substring(1, srt.Length - 2) + ")"; - + //根据原订单号查询 if (sourceBillNos != null && sourceBillNos.Count() > 0) { @@ -812,6 +855,7 @@ namespace WMS.Web.Domain.Services.Public return ResultList.ReFailure(ResultCodes.Erp_BillQuery_Error); } } + #endregion } }