From 552599aa51eb8bc5f58a7c7d3627eba31f81b56f Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期一, 13 一月 2025 14:24:20 +0800
Subject: [PATCH] 更新发料单规则
---
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/2ad7410e-7b16-4692-8ca2-e7055946c8fa.vsidx | 0
/dev/null | 0
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IOutboundService/IOutboundOrderService.cs | 1
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/CodeConfigEnum/RuleCodeEnum.cs | 7 +++
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs | 66 ++++++++++++++++++++++++++++++++-
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderController.cs | 10 +++++
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock | 0
7 files changed, 81 insertions(+), 3 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/2ad7410e-7b16-4692-8ca2-e7055946c8fa.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/2ad7410e-7b16-4692-8ca2-e7055946c8fa.vsidx"
new file mode 100644
index 0000000..597a8a5
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/2ad7410e-7b16-4692-8ca2-e7055946c8fa.vsidx"
Binary files differ
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/7a1d86c3-20b2-4990-9550-dcdae2deefdc.vsidx" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/7a1d86c3-20b2-4990-9550-dcdae2deefdc.vsidx"
deleted file mode 100644
index a7c7465..0000000
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/7a1d86c3-20b2-4990-9550-dcdae2deefdc.vsidx"
+++ /dev/null
Binary files differ
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock"
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock"
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/CodeConfigEnum/RuleCodeEnum.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/CodeConfigEnum/RuleCodeEnum.cs"
index f90f331..4ce7903 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/CodeConfigEnum/RuleCodeEnum.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Core/CodeConfigEnum/RuleCodeEnum.cs"
@@ -34,6 +34,11 @@
/// 璐ㄦ鍗曞彿缂栫爜瑙勫垯
/// </summary>
[Description("璐ㄦ鍗曞彿缂栫爜瑙勫垯")]
- CheckOrderRule
+ CheckOrderRule,
+ /// <summary>
+ /// 鍙戞枡鍗曞彿缂栫爜瑙勫垯
+ /// </summary>
+ [Description("鍙戞枡鍗曞彿缂栫爜瑙勫垯")]
+ FLCodeRule
}
}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IOutboundService/IOutboundOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IOutboundService/IOutboundOrderService.cs"
index f3c54c3..5ca0c2d 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IOutboundService/IOutboundOrderService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IOutboundService/IOutboundOrderService.cs"
@@ -21,5 +21,6 @@
WebResponseContent outpinku(SaveModel saveModel);
WebResponseContent ReceiveOutOrder(ErpOutOrderDTO model);
WebResponseContent TestOutUpload(int id,List<Dt_OutStockLockInfo>? outStockLockInfos=null);
+ string CreateCodeByRule(string ruleCode);
}
}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
index ddaeff6..c08a1ca 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs"
@@ -3,6 +3,7 @@
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
+using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -16,8 +17,10 @@
using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.BaseServices;
using WIDESEA_Core.CodeConfigEnum;
+using WIDESEA_Core.DB;
using WIDESEA_Core.Enums;
using WIDESEA_Core.Helper;
+using WIDESEA_Core.Seed;
using WIDESEA_Core.Utilities;
using WIDESEA_DTO.Basic;
using WIDESEA_DTO.ERP;
@@ -223,7 +226,7 @@
ERPIssueModel issueModel = new ERPIssueModel()
{
UniqueTag = outboundOrderDetail.OrderId.ToString(),
- Code = outboundOrder.OrderNo,
+ Code = CreateCodeByRule(nameof(RuleCodeEnum.FLCodeRule)),
WarehouseCode = warehouse.WarehouseCode,
Docremark = "",
Deptno = outboundOrder.DepartmentCode,
@@ -466,7 +469,7 @@
issueModel = new ERPIssueModel()
{
UniqueTag = id.ToString(),
- Code = outboundOrder.OrderNo,
+ Code = CreateCodeByRule(nameof(RuleCodeEnum.FLCodeRule)),
WarehouseCode = warehouse.WarehouseCode,
Docremark = "",
Deptno = outboundOrder.DepartmentCode,
@@ -494,6 +497,65 @@
return WebResponseContent.Instance.Error(ex.Message);
}
}
+ static object lock_code = new object();
+ public string CreateCodeByRule(string ruleCode)
+ {
+ lock (lock_code)
+ {
+
+ string code = string.Empty;
+ DateTime dateTime = DateTime.Now;
+ DateTime now = DateTime.Now;
+ try
+ {
+ if (string.IsNullOrEmpty(ruleCode))
+ throw new ArgumentNullException(nameof(ruleCode));
+ SqlSugarClient sugarClient = new SqlSugarClient(new ConnectionConfig
+ {
+ IsAutoCloseConnection = false,
+ DbType = DbType.SqlServer,
+ ConnectionString = DBContext.ConnectionString
+ });
+ Dt_CodeRuleConfig codeRuleConfig = sugarClient.Queryable<Dt_CodeRuleConfig>().Where(x => x.RuleCode == ruleCode).First();
+ if (codeRuleConfig == null)
+ throw new ArgumentNullException(nameof(codeRuleConfig));
+ if (codeRuleConfig.ModifyDate != null)
+ {
+ dateTime = Convert.ToDateTime(codeRuleConfig.ModifyDate);
+ }
+ else
+ {
+ dateTime = Convert.ToDateTime(codeRuleConfig.CreateDate);
+ }
+
+ if (now.Year == dateTime.Year && now.Month == dateTime.Month && now.Day == dateTime.Day)
+ {
+ now = dateTime;
+ codeRuleConfig.CurrentVal = Convert.ToInt32(codeRuleConfig.CurrentVal) + 1;
+ }
+ else
+ {
+ codeRuleConfig.CurrentVal = 1;
+ }
+ codeRuleConfig.ModifyDate = DateTime.Now;
+ code = codeRuleConfig.Format;
+ code = code.Replace($"[{CodeFormatTypeEnum.YYYY}]", now.Year.ToString().PadLeft(4, '0'));
+ code = code.Replace($"[{CodeFormatTypeEnum.MM}]", now.Month.ToString().PadLeft(2, '0'));
+ code = code.Replace($"[{CodeFormatTypeEnum.DD}]", now.Day.ToString().PadLeft(2, '0'));
+ code = code.Replace($"[{CodeFormatTypeEnum.ST}]", codeRuleConfig.StartStr?.ToString() ?? "");
+ code = code.Replace($"[{CodeFormatTypeEnum.NUM}]", codeRuleConfig.CurrentVal.ToString().PadLeft(codeRuleConfig.Length, '0'));
+ Dictionary<string, object> keyValuePairs = new Dictionary<string, object>() { { nameof(codeRuleConfig.CurrentVal), codeRuleConfig.CurrentVal }, { nameof(codeRuleConfig.Id), codeRuleConfig.Id }, { nameof(codeRuleConfig.ModifyDate), DateTime.Now } };
+ sugarClient.Updateable(keyValuePairs).AS(MainDb.CodeRuleConfig).WhereColumns(nameof(codeRuleConfig.Id)).ExecuteCommand();
+ sugarClient.Updateable(codeRuleConfig);
+
+ }
+ catch (Exception ex)
+ {
+
+ }
+ return code;
+ }
+ }
/// <summary>
/// 鏇存敼鍑哄簱鍗曞簱瀛樼姸鎬�
/// </summary>
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderController.cs"
index 5dbaca8..c8c8cfe 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderController.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderController.cs"
@@ -4,6 +4,7 @@
using Microsoft.AspNetCore.Mvc;
using WIDESEA_Core;
using WIDESEA_Core.BaseController;
+using WIDESEA_Core.CodeConfigEnum;
using WIDESEA_DTO.Inbound;
using WIDESEA_DTO.Outbound;
using WIDESEA_IOutboundService;
@@ -47,5 +48,14 @@
{
return Service.outpinku(saveModel);
}
+ /// <summary>
+ /// 鍙戞枡鍗曞彿鐢熸垚
+ /// </summary>
+ /// <returns></returns>
+ [HttpPost, Route("CreateCodeByRule"), AllowAnonymous]
+ public string CreateCodeByRule(string ruleCode)
+ {
+ return Service.CreateCodeByRule(nameof(RuleCodeEnum.FLCodeRule));
+ }
}
}
--
Gitblit v1.9.3