|  |  |  | 
|---|
|  |  |  | using WIDESEA_DTO; | 
|---|
|  |  |  | using WIDESEA_Core; | 
|---|
|  |  |  | using WIDESEA_DTO; | 
|---|
|  |  |  | using WIDESEA_Model.Models; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | namespace WIDESEA_StorageBasicRepository | 
|---|
|  |  |  | { | 
|---|
|  |  |  | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | return AddData(dtLocationStatusChangeRecord) > 0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | /// <summary> | 
|---|
|  |  |  | /// 添加货位变动记录 | 
|---|
|  |  |  | /// </summary> | 
|---|
|  |  |  | /// <param name="locationInfo">更新实体</param> | 
|---|
|  |  |  | /// <param name="lastStatus">变动前状态</param> | 
|---|
|  |  |  | /// <param name="changeType">变动类型</param> | 
|---|
|  |  |  | /// <param name="taskNum">任务号</param> | 
|---|
|  |  |  | /// <exception cref="Exception"></exception> | 
|---|
|  |  |  | public void AddLocationStatusChangeRecord(DtLocationInfo locationInfo, int lastStatus, int changeType, int? taskNum) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | DtLocationStatusChangeRecord locationStatusChangeRecord = new DtLocationStatusChangeRecord() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | AfterStatus = locationInfo.LocationStatus, | 
|---|
|  |  |  | BeforeStatus = lastStatus, | 
|---|
|  |  |  | ChangeType = changeType, | 
|---|
|  |  |  | LocationCode = locationInfo.LocationCode, | 
|---|
|  |  |  | LocationId = locationInfo.Id, | 
|---|
|  |  |  | TaskNum = taskNum, | 
|---|
|  |  |  | Creater = "System", | 
|---|
|  |  |  | CreateDate = DateTime.Now, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | base.AddData(locationStatusChangeRecord); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | catch (Exception ex) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | throw new Exception($"{ex.Message}"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void AddLocationStatusChangeRecord(List<DtLocationInfo> locationInfos, int newStatus, int changeType, List<int>? taskNums) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | List<DtLocationStatusChangeRecord> records = new List<DtLocationStatusChangeRecord>(); | 
|---|
|  |  |  | for (int i = 0; i < locationInfos.Count; i++) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | DtLocationInfo locationInfo = locationInfos[i]; | 
|---|
|  |  |  | int? taskNum = (taskNums != null && taskNums.Count > 0 && taskNums.Count == locationInfos.Count) ? taskNums[i] : null; | 
|---|
|  |  |  | DtLocationStatusChangeRecord locationStatusChangeRecord = new DtLocationStatusChangeRecord() | 
|---|
|  |  |  | { | 
|---|
|  |  |  | AfterStatus = newStatus, | 
|---|
|  |  |  | BeforeStatus = locationInfo.LocationStatus, | 
|---|
|  |  |  | ChangeType = changeType, | 
|---|
|  |  |  | LocationCode = locationInfo.LocationCode, | 
|---|
|  |  |  | LocationId = locationInfo.Id, | 
|---|
|  |  |  | TaskNum = taskNum, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | records.Add(locationStatusChangeRecord); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | AddData(records); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | catch (Exception ex) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | throw new Exception($"{ex.Message}"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|