pan
2 天以前 9dddf81e2da484d3b413059a6e834e6c2641e18f
提交
已修改5个文件
389 ■■■■ 文件已修改
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_Model/Models/Outbound/Dt_OutboundLockInfo.cs 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_Model/Models/Outbound/Dt_PickingRecord.cs 349 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoDetailService.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_WMSServer/Properties/PublishProfiles/FolderProfile.pubxml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_Model/Models/Outbound/Dt_OutboundLockInfo.cs
@@ -111,7 +111,7 @@
        public string SupplyCode { get; set; }
        [SugarColumn(ColumnName = "lineNo", ColumnDescription = "行号")]
        public string? lineNo { get; set; }
        public string lineNo { get; set; }
        public string WarehouseCode { get; set; }
        /// <summary>
@@ -120,33 +120,43 @@
        [SugarColumn(IsNullable = false, ColumnDescription = "状态")]
        public int Status { get; set; }
        [SugarColumn(Length = 100)]
        [SugarColumn(Length = 100, ColumnDescription = "当前条码")]
        public string CurrentBarcode { get; set; } // å½“前条码(拆包后可能变化)
        [SugarColumn(IsNullable = false, ColumnDescription = "原始锁定数量")]
        public decimal OriginalLockQuantity { get; set; } // åŽŸå§‹é”å®šæ•°é‡
        public int IsSplitted { get; set; } // æ˜¯å¦å·²æ‹†åŒ… 0-否 1-是
        [SugarColumn(  ColumnDescription = "拆包父锁定Id")]
        public int? ParentLockId { get; set; }
        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "操作者")]
        public string Operator { get; set; }
        [SugarColumn(  ColumnDescription = "物料条码数量")]
        public decimal BarcodeQty { get; set; }
        [SugarColumn(ColumnDescription = "物料单位")]
        public string BarcodeUnit { get; set; }
        [SugarColumn(ColumnDescription = "分批出库批次号")]
        public string OutboundBatchNo { get; set; }
        [Navigate(NavigateType.OneToOne, nameof(StockInfo))]//一对一 SchoolId是StudentA类里面的
        public Dt_StockInfo StockInfo { get; set; } //不能赋值只能是null
        [SugarColumn(ColumnDescription = "是否分配")]
        public int IsUnallocated { get; set; } = 0;
        [SugarColumn(ColumnDescription = "厂区")]
        public string FactoryArea { get; set; }
        /// <summary>
        /// å‰©ä½™æ•°é‡
        /// </summary>
        [SqlSugar.SugarColumn(IsIgnore = true)]
        public decimal RemainQuantity => AssignQuantity - PickedQty;
        public int ReturnToMESStatus { get; set; }
    }
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_Model/Models/Outbound/Dt_PickingRecord.cs
@@ -12,91 +12,166 @@
    /// <summary>
    /// æ‹£é€‰è®°å½•表
    /// </summary>
    [SugarTable(nameof(Dt_PickingRecord), "拣选记录表")]
    public class Dt_PickingRecord : BaseEntity
    [SugarTable("Dt_PickingRecord")]
    public class Dt_PickingRecord : BaseEntity
    {
        [SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
        /// <summary>
        /// ä¸»é”®ID
        /// </summary>
        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "")]
        public int Id { get; set; }
        /// <summary>
        /// ä»»åŠ¡å·
        /// </summary>
        [SugarColumn(ColumnDescription = "")]
        public int TaskNo { get; set; }
        public string OrderNo { get; set; }
        /// <summary>
        /// ç‰©æ–™æ¡ç 
        /// </summary>
        [SugarColumn(ColumnDescription = "物料条码")]
        public string Barcode { get; set; }
        /// <summary>
        /// å‡ºåº“详情ID
        /// </summary>
        [SugarColumn(ColumnDescription = "出库详情ID")]
        public int OrderDetailId { get; set; }
        public string PalletCode { get; set; }
        public int OutStockLockId { get; set; }
        public string MaterielCode { get; set; }
        [SugarColumn(Length = 100)]
        public string Barcode { get; set; }
        /// <summary>
        /// æœ¬æ¬¡æ‹£é€‰æ•°é‡
        /// </summary>
        [SugarColumn(ColumnDescription = "本次拣选数量")]
        public decimal PickQuantity { get; set; }
        public DateTime PickTime { get; set; } = DateTime.Now;
        /// <summary>
        /// æ‹£é€‰æ—¶é—´
        /// </summary>
        [SugarColumn(ColumnDescription = "拣选时间")]
        public DateTime PickTime { get; set; }
        [SugarColumn(Length = 50)]
        public string Operator { get; set; }
        [SugarColumn(Length = 50)]
        /// <summary>
        /// æ‹£é€‰åº“位
        /// </summary>
        [SugarColumn(ColumnDescription = "拣选库位")]
        public string LocationCode { get; set; }
        /// <summary>
        /// æ‰˜ç›˜ç¼–号
        /// </summary>
        [SugarColumn(ColumnDescription = "托盘编号")]
        public int StockId { get; set; }
        public string BatchNo { get; set; }
        /// <summary>
        /// æ“ä½œç±»åž‹ï¼š0-拣选 1-回库
        /// </summary>
        [SugarColumn(ColumnDescription = "操作类型:0-拣选 1-回库")]
        public string Operator { get; set; }
        public bool IsCancelled { get; set; }
        /// <summary>
        /// è®¢å•号
        /// </summary>
        [SugarColumn(ColumnDescription = "订单号")]
        public string OrderNo { get; set; }
        public DateTime? CancelTime { get; set; }
        /// <summary>
        /// æ–™ç®±å·
        /// </summary>
        [SugarColumn(ColumnDescription = "料箱号")]
        public string PalletCode { get; set; }
        public string CancelOperator { get; set; }
        /// <summary>
        /// å‡ºåº“锁定ID
        /// </summary>
        [SugarColumn(ColumnDescription = "出库锁定ID")]
        public int? OutStockLockId { get; set; }
        /// <summary>
        /// ç‰©æ–™ç¼–号
        /// </summary>
        [SugarColumn(ColumnDescription = "物料编号")]
        public string MaterielCode { get; set; }
        /// <summary>
        /// åŽ‚åŒº
        /// </summary>
        [SugarColumn(ColumnDescription = "厂区")]
        public string FactoryArea { get; set; }
        /// <summary>
        /// ä»“库
        /// é»˜è®¤å€¼:
        ///</summary>
        [SugarColumn(ColumnName = "warehouseCode", ColumnDescription = "仓库")]
        public string? WarehouseCode { get; set; }
        /// <summary>
        /// è¡Œå·
        /// é»˜è®¤å€¼:
        ///</summary>
        [SugarColumn(ColumnName = "lineNo", ColumnDescription = "行号")]
        public string? lineNo { get; set; }
        /// <summary>
        /// ä¾›åº”商编号
        /// é»˜è®¤å€¼:
        ///</summary>
        [SugarColumn(ColumnName = "supplyCode", ColumnDescription = "供应商编号")]
        public string? SupplyCode { get; set; }
        /// æ‰¹æ¬¡å·
        /// </summary>
        [SugarColumn(ColumnDescription = "批次号")]
        public string BatchNo { get; set; }
        /// <summary>
        /// æ•°é‡
        /// é»˜è®¤å€¼:
        ///</summary>
        [SugarColumn(ColumnName = "barcodeQty", ColumnDescription = "数量")]
        /// æ˜¯å¦å–消拣选
        /// </summary>
        [SugarColumn(ColumnDescription = "是否取消拣选")]
        public bool IsCancelled { get; set; }
        /// <summary>
        /// å–消时间
        /// </summary>
        [SugarColumn(ColumnDescription = "取消时间")]
        public DateTime? CancelTime { get; set; }
        /// <summary>
        /// å–消人
        /// </summary>
        [SugarColumn(ColumnDescription = "取消人")]
        public string CancelOperator { get; set; }
        /// <summary>
        /// ä»“库编号
        /// </summary>
        [SugarColumn(ColumnDescription = "仓库编号")]
        public string WarehouseCode { get; set; }
        /// <summary>
        /// è¡Œå·
        /// </summary>
        [SugarColumn(ColumnDescription = "行号")]
        public string lineNo { get; set; }
        /// <summary>
        /// ä¾›åº”商编号
        /// </summary>
        [SugarColumn(ColumnDescription = "供应商编号")]
        public string SupplyCode { get; set; }
        /// <summary>
        /// ç‰©æ–™æ•°é‡
        /// </summary>
        [SugarColumn(ColumnDescription = "物料数量")]
        public decimal BarcodeQty { get; set; }
        /// <summary>
        /// å•位
        /// é»˜è®¤å€¼:
        ///</summary>
        [SugarColumn(ColumnName = "barcodeUnit", ColumnDescription = "单位")]
        public string BarcodeUnit { get; set; } = null!;
        /// ç‰©æ–™å•位
        /// </summary>
        [SugarColumn(ColumnDescription = "物料单位")]
        public string BarcodeUnit { get; set; }
        /// <summary>
        ///
        /// é»˜è®¤å€¼:
        ///</summary>
        [SugarColumn(ColumnName = "barcodemoveQty", ColumnDescription = "数量")]
        /// ç‰©æ–™æŒªæ–™æ•°é‡
        /// </summary>
        [SugarColumn(ColumnDescription = "物料挪料数量")]
        public decimal BarcodeMoveQty { get; set; }
        /// <summary>
        /// å›žä¼ MES
        /// </summary>
        [SugarColumn(ColumnDescription = "回传MES")]
        public int ReturnToMESStatus { get; set; }
        /// <summary>
        /// å›žä¼ MES唯一号
        /// </summary>
        [SugarColumn(ColumnDescription = "回传MES唯一号")]
        public string FeedBackMesDocumentNo { get; set; }
    }
    }
    /// <summary>
    /// å›žåº“记录表
@@ -127,48 +202,170 @@
    /// <summary>
    /// æ‹†åŒ…记录表
    /// </summary>
    [SugarTable("Dt_SplitPackageRecord")]
    [SugarTable("Dt_SplitPackageRecord")] // æ˜¾å¼æŒ‡å®šè¡¨åï¼Œä¸Žæ•°æ®åº“一致
    public class Dt_SplitPackageRecord : BaseEntity
    {
        [SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
        public int Id { get; set; }
        public string OrderNo { get; set; }
        public int? TaskNum { get; set; }
        public string PalletCode { get; set; }
        public int StockId { get; set; }
        public bool IsReverted { get; set; } = false;
        /// <summary>
        /// ä¸»é”®ID
        /// </summary>
        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "")]
        public long Id { get; set; }
        public bool IsAutoSplit { get; set; } = false;
        public int OutStockLockInfoId { get; set; } // å…³è”的出库锁定信息
        public string OriginalBarcode { get; set; } // åŽŸæ¡ç 
        public string NewBarcode { get; set; } // æ–°æ¡ç 
        /// <summary>
        /// åŽŸæ¡ç 
        /// </summary>
        [SugarColumn(ColumnDescription = "原条码")]
        public string OriginalBarcode { get; set; }
        public string FactoryArea { get; set; }
        /// <summary>
        /// æ–°æ¡ç 
        /// </summary>
        [SugarColumn(ColumnDescription = "新条码")]
        public string NewBarcode { get; set; }
        /// <summary>
        /// åŽŸæ•°é‡
        /// </summary>
        [SugarColumn(ColumnDescription = "原数量")]
        public decimal OriginalQty { get; set; }
        /// <summary>
        /// æ‹†åˆ†æ•°é‡ï¼ˆæ–°æ¡ç æ•°é‡ï¼‰
        /// </summary>
        [SugarColumn(ColumnDescription = "拆分数量(新条码数量)")]
        public decimal SplitQty { get; set; }
        /// <summary>
        /// æ‰¹æ¬¡å·
        /// </summary>
        [SugarColumn(ColumnDescription = "批次号")]
        public string BatchNo { get; set; }
        /// <summary>
        /// åº“位编号
        /// </summary>
        [SugarColumn(ColumnDescription = "库位编号")]
        public string LocationId { get; set; }
        /// <summary>
        /// æ‹†åŒ…æ—¶é—´
        /// </summary>
        [SugarColumn(ColumnDescription = "拆包时间")]
        public DateTime SplitTime { get; set; }
        /// <summary>
        /// çŠ¶æ€ï¼š0-已拆分 1-新条码已回传MES
        /// </summary>
        [SugarColumn(ColumnDescription = "状态:0-已拆分 1-新条码已回传MES")]
        public int Status { get; set; }
        /// <summary>
        /// ä»»åŠ¡å·
        /// </summary>
        [SugarColumn(ColumnDescription = "任务号")]
        public int? TaskNum { get; set; }
        /// <summary>
        /// å‰©ä½™æ•°é‡ï¼ˆåŽŸæ¡ç å‰©ä½™ï¼‰
        /// </summary>
        [SugarColumn(ColumnDescription = "剩余数量(原条码剩余)")]
        public decimal RemainQuantity { get; set; }
        public string MaterielCode { get; set; } // ç‰©æ–™ç¼–码
        public DateTime SplitTime { get; set; } = DateTime.Now;
        public string Operator { get; set; } // æ“ä½œäºº
        public int Status { get; set; } // çŠ¶æ€ï¼š1-已拆包 2-已拣选 3-已回库
        /// <summary>
        /// ç‰©æ–™ç¼–号
        /// </summary>
        [SugarColumn(ColumnDescription = "物料编号")]
        public string MaterielCode { get; set; }
        public DateTime RevertTime { get; set; }
        /// <summary>
        /// æ‰˜ç›˜ç¼–号
        /// </summary>
        [SugarColumn(ColumnDescription = "托盘编号")]
        public string PalletCode { get; set; }
        public string RevertOperator { get; set; }
        /// <summary>
        /// æ’¤é”€æ‹†åŒ…
        /// </summary>
        [SugarColumn(ColumnDescription = "撤销拆包")]
        public bool IsReverted { get; set; }
        /// <summary>
        /// é”å®šè®°å½•Id
        /// </summary>
        [SugarColumn(ColumnDescription = "锁定记录Id")]
        public int OutStockLockInfoId { get; set; }
        /// <summary>
        /// æ“ä½œäºº
        /// </summary>
        [SugarColumn(ColumnDescription = "操作人")]
        public string Operator { get; set; }
        /// <summary>
        /// å•号
        /// </summary>
        [SugarColumn(ColumnDescription = "单号")]
        public string OrderNo { get; set; }
        /// <summary>
        /// åº“å­˜id
        /// </summary>
        [SugarColumn(ColumnDescription = "库存id")]
        public int StockId { get; set; }
        /// <summary>
        /// åŽ‚åŒº
        /// </summary>
        [SugarColumn(ColumnDescription = "厂区")]
        public string FactoryArea { get; set; }
        /// <summary>
        /// æ’¤é”€æ—¶é—´
        /// </summary>
        [SugarColumn(ColumnDescription = "撤销时间")]
        public DateTime? RevertTime { get; set; }
        /// <summary>
        /// ä¸Šä¸€æ¡æ‹†åˆ†è®°å½•ID
        /// </summary>
        [SugarColumn(ColumnDescription = "")]
        public int PreviousSplitRecordId { get; set; }
        [SugarColumn(IsNullable = true)]
        public decimal? OriginalStockQuantity { get; set; }
        /// <summary>
        /// åº“存数
        /// </summary>
        [SugarColumn(ColumnDescription = "库存数")]
        public decimal OriginalStockQuantity { get; set; }
        /// <summary>
        /// æ‹†åŒ…前的库存数量
        /// </summary>
        [SugarColumn(ColumnDescription = "拆包前的库存数量")]
        public decimal StockBeforeSplit { get; set; }
        /// <summary>
        /// æ‹†åŒ…前分配数
        /// </summary>
        [SugarColumn(ColumnDescription = "拆包前分配数")]
        public decimal AssignBeforeSplit { get; set; }
        /// <summary>
        /// æ’¤é”€æ“ä½œäºº
        /// </summary>
        [SugarColumn(ColumnDescription = "")]
        public string RevertOperator { get; set; }
        /// <summary>
        /// æ˜¯å¦è‡ªåŠ¨æ‹†åŒ…
        /// </summary>
        [SugarColumn(ColumnDescription = "是否自动拆包")]
        public bool IsAutoSplit { get; set; }
    }
    /// <summary>
    /// ç©ºç®±å–走记录表
    /// </summary>
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoDetailService.cs
@@ -1,4 +1,5 @@
using SqlSugar;
using WIDESEA_Common.StockEnum;
using WIDESEA_Core;
using WIDESEA_Core.BaseRepository;
using WIDESEA_Core.BaseServices;
@@ -35,7 +36,8 @@
        {
            string wheres = ValidatePageOptions(options);
            var sugarQueryable = Db.Queryable<Dt_StockInfoDetail>().InnerJoin<Dt_StockInfo>((detail, item) => detail.StockId == item.Id);
            var sugarQueryable = Db.Queryable<Dt_StockInfoDetail>().InnerJoin<Dt_StockInfo>((detail, item) => detail.StockId == item.Id)
                .Where((detail, item) =>item.StockStatus==StockStatusEmun.入库完成.ObjToInt());
            Dictionary<string, SqlSugar.OrderByType> orderbyDic = GetPageDataSort(options, TProperties);
            List<OrderByModel> orderByModels = new List<OrderByModel>();
@@ -48,6 +50,7 @@
                        FieldName = "detail."+item.Key,
                        OrderByType = item.Value
                    };
                    orderByModels.Add(orderByModel);
                }
                else
                {
@@ -56,8 +59,9 @@
                        FieldName = item.Key,
                        OrderByType = item.Value
                    };
                    orderByModels.Add(orderByModel);
                }
                //orderByModels.Add(orderByModel);
            }
            int totalCount = 0;
            List<SearchParameters> searchParametersList = new List<SearchParameters>();
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs
@@ -66,7 +66,11 @@
        [HttpPost, Route("Test"), AllowAnonymous, MethodParamsValidate]
        public async Task<WebResponseContent> Test()
        {
        {
            //var seq = await _dailySequenceService.GetNextSequenceAsync();
            //var SDDD= "WSLOT" + DateTime.Now.ToString("yyyyMMdd") + seq.ToString()?.PadLeft(5, '0');
            //var originalTask = _taskRepository.Db.Queryable<Dt_Task>().First();
            //var result = _task_HtyService.DeleteAndMoveIntoHty(originalTask, OperateTypeEnum.人工删除);
@@ -90,7 +94,7 @@
            //var  ddddssss = "WSLOT" + DateTime.Now.ToString("yyyyMMddHHmmss") + ssss.ToString().PadLeft(5, '0');
            //erpApiService.GetSuppliersAsync();
           // erpApiService.GetMaterialUnitAsync();
            // erpApiService.GetMaterialUnitAsync();
            //var sss = await _invokeMESService.NewMaterielToMes(new WIDESEA_DTO.Basic.MaterielToMesDTO
            //{
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_WMSServer/Properties/PublishProfiles/FolderProfile.pubxml
@@ -4,13 +4,13 @@
-->
<Project>
  <PropertyGroup>
    <DeleteExistingFiles>false</DeleteExistingFiles>
    <DeleteExistingFiles>true</DeleteExistingFiles>
    <ExcludeApp_Data>false</ExcludeApp_Data>
    <LaunchSiteAfterPublish>true</LaunchSiteAfterPublish>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <PublishProvider>FileSystem</PublishProvider>
    <PublishUrl>E:\IISText\HuanAn\WMS</PublishUrl>
    <PublishUrl>D:\ALD</PublishUrl>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <_TargetId>Folder</_TargetId>
    <SiteUrlToLaunchAfterPublish />