From de4e5b2eafe108d20bc0fc4f215fdda135ed04c9 Mon Sep 17 00:00:00 2001 From: zongzhibin <zongzhibin@weben-smart.com> Date: 周六, 23 11月 2024 09:49:29 +0800 Subject: [PATCH] add --- LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs | 308 ++++++++++++++++++++++++++++---------------------- 1 files changed, 171 insertions(+), 137 deletions(-) diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs index 328032f..e4801fc 100644 --- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs +++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOrder/MesPushPackageCode/MesPushPackageCodeService.cs @@ -4,6 +4,11 @@ using System.Data; using System.Web; using System.Text; +using Furion.DatabaseAccessor; +using Admin.NET.Core.Enum; +using Furion.RemoteRequest.Extensions; +using StackExchange.Profiling.Internal; + namespace Admin.NET.Application; /// <summary> /// 鎺ㄩ�乵es鍖呰鍙锋湇鍔� @@ -92,7 +97,7 @@ var entity = input.Adapt<MesPushPackageCode>(); //閲嶅鎬ч獙璇� - await CheckExist(entity,true); + await CheckExist(entity, true); await _rep.AsUpdateable(entity).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync(); } @@ -111,11 +116,40 @@ } - + [HttpPost] + [ApiDescriptionSettings(Name = "PushPackageCode")] + [UnitOfWork] + [AllowAnonymous] + public async Task PushPackageCode(PushPackageCodeInput input) + { + var value = await _rep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync(); + if (value == null) throw Oops.Oh("鍖呰鍙蜂笉瀛樺湪"); + if (value.PushStatus != (int)PushStatusEnum.NotPush || value.PushStatus != (int)PushStatusEnum.Pushing) throw Oops.Oh("閲嶅鎺ㄩ��"); + string url = "http://localhost:8088/api/getwmstask/getwmstask"; + var respon = await url.SetHttpMethod(HttpMethod.Post).SetBody(input).PostAsStringAsync(); + var data = respon.FromJson<Respone>(); + if (data.iState == 1) + { + value.PushStatus = (int)PushStatusEnum.PushSuccess; + value.ApiMessage = data.message; + value.PushNum++; + } + else + { + value.PushStatus = (int)PushStatusEnum.Pushing; + value.ApiMessage = data.message; + value.PushNum++; + if (value.PushNum == 3) + { + value.PushStatus = (int)PushStatusEnum.PushFail; + } + } + await _rep.UpdateAsync(value); + } #region 瀵煎叆 - + /// <summary> /// Excel妯℃澘瀵煎叆鎺ㄩ�乵es鍖呰鍙峰姛鑳� /// </summary> @@ -125,15 +159,15 @@ [ApiDescriptionSettings(Name = "ImportExcel")] [Description("MesPushPackageCode/ImportExcel")] public async Task<int> ImportExcelAsync(IFormFile file) - { + { int _HeadStartLine = 2;//绗�1琛屾槸璇存槑,绗�2琛屾槸鍒楀悕 int _DataStartLine = 3;//绗�3琛屽紑濮嬫槸鏁版嵁 DataTable importDataTable = ExcelUtil.ImportExcelToDataTable(file, _HeadStartLine, _DataStartLine); - var addList =await CommonImport(importDataTable, _DataStartLine); + var addList = await CommonImport(importDataTable, _DataStartLine); await _rep.InsertRangeAsync(addList); return addList.Count; } - + /// <summary> /// DataTable杞崲瀹炰綋瀵硅薄鍒楄〃 /// </summary> @@ -148,91 +182,91 @@ { index++; //瀵煎叆妯$増瀹氬埗鍖栦唬鐮侊紙鏇挎崲妯$増浣跨敤锛� - - var addItem = new MesPushPackageCode(); - #region 瀹氫箟鍙橀噺 - var _PackageCode = "";//鍖呰鍙� - var _PushStatus = "";//鎺ㄩ�佺姸鎬� - var _PushNum = "";//鎺ㄩ�佹鏁� - var _ApiMessage = "";//鎺ュ彛杩斿洖鍙傛暟 - var _CreateOrgName = "";//鍒涘缓鑰呴儴闂ㄥ悕绉� - #endregion - - - #region 鍙栧�� - _PackageCode = row["鍖呰鍙�"]?.ToString() ; - _PushStatus = row["鎺ㄩ�佺姸鎬�"]?.ToString() ; - _PushNum = row["鎺ㄩ�佹鏁�"]?.ToString() ; - _ApiMessage = row["鎺ュ彛杩斿洖鍙傛暟"]?.ToString() ; - _CreateOrgName = row["鍒涘缓鑰呴儴闂ㄥ悕绉�"]?.ToString() ; - #endregion - - - #region 楠岃瘉 - - if (string.IsNullOrEmpty(_PackageCode)) - { - throw Oops.Oh($"绗瑊index}琛孾鍖呰鍙穄{_PackageCode}涓嶈兘涓虹┖锛�"); - } - - if(!string.IsNullOrEmpty(_PackageCode)) - { - addItem.PackageCode = (string)(_PackageCode.Trim()); - } - - if (string.IsNullOrEmpty(_PushStatus)) - { - throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}涓嶈兘涓虹┖锛�"); - } - - if(!string.IsNullOrEmpty(_PushStatus)) - { - if (!int.TryParse(_PushStatus, out int outPushStatus)&&!string.IsNullOrEmpty(_PushStatus)) - { - throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}鍊间笉姝g‘锛�"); - } - if (outPushStatus <= 0&&!string.IsNullOrEmpty(_PushStatus)) - { - throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}鍊间笉鑳藉皬浜庣瓑浜�0锛�"); - } - else - { - addItem.PushStatus = outPushStatus; - } - - } - - if (string.IsNullOrEmpty(_PushNum)) - { - throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}涓嶈兘涓虹┖锛�"); - } - - if(!string.IsNullOrEmpty(_PushNum)) - { - if (!int.TryParse(_PushNum, out int outPushNum)&&!string.IsNullOrEmpty(_PushNum)) - { - throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}鍊间笉姝g‘锛�"); - } - if (outPushNum <= 0&&!string.IsNullOrEmpty(_PushNum)) - { - throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}鍊间笉鑳藉皬浜庣瓑浜�0锛�"); - } - else - { - addItem.PushNum = outPushNum; - } - - } - if(!string.IsNullOrEmpty(_ApiMessage)) - { - addItem.ApiMessage = (string)(_ApiMessage.Trim()); - } - if(!string.IsNullOrEmpty(_CreateOrgName)) - { - addItem.CreateOrgName = (string)(_CreateOrgName.Trim()); - } - #endregion - + + var addItem = new MesPushPackageCode(); + #region 瀹氫箟鍙橀噺 + var _PackageCode = "";//鍖呰鍙� + var _PushStatus = "";//鎺ㄩ�佺姸鎬� + var _PushNum = "";//鎺ㄩ�佹鏁� + var _ApiMessage = "";//鎺ュ彛杩斿洖鍙傛暟 + var _CreateOrgName = "";//鍒涘缓鑰呴儴闂ㄥ悕绉� + #endregion + + + #region 鍙栧�� + _PackageCode = row["鍖呰鍙�"]?.ToString(); + _PushStatus = row["鎺ㄩ�佺姸鎬�"]?.ToString(); + _PushNum = row["鎺ㄩ�佹鏁�"]?.ToString(); + _ApiMessage = row["鎺ュ彛杩斿洖鍙傛暟"]?.ToString(); + _CreateOrgName = row["鍒涘缓鑰呴儴闂ㄥ悕绉�"]?.ToString(); + #endregion + + + #region 楠岃瘉 + + if (string.IsNullOrEmpty(_PackageCode)) + { + throw Oops.Oh($"绗瑊index}琛孾鍖呰鍙穄{_PackageCode}涓嶈兘涓虹┖锛�"); + } + + if (!string.IsNullOrEmpty(_PackageCode)) + { + addItem.PackageCode = (string)(_PackageCode.Trim()); + } + + if (string.IsNullOrEmpty(_PushStatus)) + { + throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}涓嶈兘涓虹┖锛�"); + } + + if (!string.IsNullOrEmpty(_PushStatus)) + { + if (!int.TryParse(_PushStatus, out int outPushStatus) && !string.IsNullOrEmpty(_PushStatus)) + { + throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}鍊间笉姝g‘锛�"); + } + if (outPushStatus <= 0 && !string.IsNullOrEmpty(_PushStatus)) + { + throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佺姸鎬乚{_PushStatus}鍊间笉鑳藉皬浜庣瓑浜�0锛�"); + } + else + { + addItem.PushStatus = outPushStatus; + } + + } + + if (string.IsNullOrEmpty(_PushNum)) + { + throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}涓嶈兘涓虹┖锛�"); + } + + if (!string.IsNullOrEmpty(_PushNum)) + { + if (!int.TryParse(_PushNum, out int outPushNum) && !string.IsNullOrEmpty(_PushNum)) + { + throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}鍊间笉姝g‘锛�"); + } + if (outPushNum <= 0 && !string.IsNullOrEmpty(_PushNum)) + { + throw Oops.Oh($"绗瑊index}琛孾鎺ㄩ�佹鏁癩{_PushNum}鍊间笉鑳藉皬浜庣瓑浜�0锛�"); + } + else + { + addItem.PushNum = outPushNum; + } + + } + if (!string.IsNullOrEmpty(_ApiMessage)) + { + addItem.ApiMessage = (string)(_ApiMessage.Trim()); + } + if (!string.IsNullOrEmpty(_CreateOrgName)) + { + addItem.CreateOrgName = (string)(_CreateOrgName.Trim()); + } + #endregion + details.Add(addItem); } @@ -240,7 +274,7 @@ await CheckExisitForImport(details); return details; } - + /// <summary> /// 鏍规嵁鐗堟湰涓嬭浇鎺ㄩ�乵es鍖呰鍙风殑Excel瀵煎叆妯℃澘 /// </summary> @@ -254,7 +288,7 @@ var fileName = HttpUtility.UrlEncode($"瀵煎叆妯℃澘(鎺ㄩ�乵es鍖呰鍙�).xlsx", Encoding.GetEncoding("UTF-8")); return new FileStreamResult(new FileStream(_path, FileMode.Open), "application/octet-stream") { FileDownloadName = fileName }; } - + #endregion #region 绉佹湁鏂规硶 @@ -275,57 +309,57 @@ || u.CreateOrgName.Contains(input.SearchKey.Trim()) ) .WhereIF(!string.IsNullOrWhiteSpace(input.PackageCode), u => u.PackageCode.Contains(input.PackageCode.Trim())) - .WhereIF(input.PushStatus>0, u => u.PushStatus == input.PushStatus) - .WhereIF(input.PushNum>0, u => u.PushNum == input.PushNum) + .WhereIF(input.PushStatus > 0, u => u.PushStatus == input.PushStatus) + .WhereIF(input.PushNum > 0, u => u.PushNum == input.PushNum) .WhereIF(!string.IsNullOrWhiteSpace(input.ApiMessage), u => u.ApiMessage.Contains(input.ApiMessage.Trim())) .WhereIF(!string.IsNullOrWhiteSpace(input.CreateOrgName), u => u.CreateOrgName.Contains(input.CreateOrgName.Trim())) .Select<MesPushPackageCodeOutput>(); return query; - } + } - /// <summary> - /// 閲嶅鎬ч獙璇� - /// </summary> - /// <param name="input">楠岃瘉瀵硅薄</param> - /// <param name="isEdit">鏄惁鏄紪杈�</param> - /// <returns></returns> - private async Task CheckExist( MesPushPackageCode input,bool isEdit=false) + /// <summary> + /// 閲嶅鎬ч獙璇� + /// </summary> + /// <param name="input">楠岃瘉瀵硅薄</param> + /// <param name="isEdit">鏄惁鏄紪杈�</param> + /// <returns></returns> + private async Task CheckExist(MesPushPackageCode input, bool isEdit = false) + { + + + + //娌℃湁閰嶇疆缁勫悎鏍¢獙锛屼笉闇�瑕侀獙閲� + + + //娌℃湁閰嶇疆鍗曠嫭鏍¢獙锛屼笉闇�瑕侀獙閲� + } + + /// <summary> + /// 鏍规嵁缁勫悎鏍¢獙鍜屽崟鐙牎楠岄獙璇佹暟鎹槸鍚﹀凡瀛樺湪-瀵煎叆鏃堕獙璇� + /// </summary> + /// <param name="inputs"></param> + /// <returns></returns> + private async Task CheckExisitForImport(List<MesPushPackageCode> inputs) + { + if (inputs?.Count <= 0) { - - - - //娌℃湁閰嶇疆缁勫悎鏍¢獙锛屼笉闇�瑕侀獙閲� - - - //娌℃湁閰嶇疆鍗曠嫭鏍¢獙锛屼笉闇�瑕侀獙閲� - } - - /// <summary> - /// 鏍规嵁缁勫悎鏍¢獙鍜屽崟鐙牎楠岄獙璇佹暟鎹槸鍚﹀凡瀛樺湪-瀵煎叆鏃堕獙璇� - /// </summary> - /// <param name="inputs"></param> - /// <returns></returns> - private async Task CheckExisitForImport(List<MesPushPackageCode> inputs) - { - if (inputs?.Count <= 0) - { - throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖"); - } - //鏍规嵁缁勫悎鏍¢獙楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹� - - - - - - - - - //鏍规嵁鍗曠嫭鏍¢獙楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹� - - - + throw Oops.Oh($"瀵煎叆鏁版嵁涓嶈兘涓虹┖"); } - #endregion + //鏍规嵁缁勫悎鏍¢獙楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹� + + + + + + + + + //鏍规嵁鍗曠嫭鏍¢獙楠岃瘉琛ㄦ牸涓腑鏄惁宸插瓨鍦ㄧ浉鍚屾暟鎹� + + + + } + #endregion } -- Gitblit v1.9.3