| | |
| | | public ApiInfoRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage) |
| | | { |
| | | } |
| | | |
| | | } |
| | | } |
| | |
| | | DeptNo = model.DeptNo, |
| | | InvOrgId = model.InvOrgId, |
| | | Name = model.Name, |
| | | State = model.State, |
| | | Type = model.Type, |
| | | State = model.State |
| | | }; |
| | | |
| | | BaseDal.AddData(userInfo); |
| | |
| | | return WebResponseContent.Instance.Error($"æªæ¾å°è¯¥åå·¥å·ã{model.Code}ãä¿¡æ¯"); |
| | | } |
| | | userInfo.State = model.State; |
| | | userInfo.Type = model.Type; |
| | | userInfo.DeptName = model.DeptName; |
| | | userInfo.DeptNo = model.DeptNo; |
| | | userInfo.InvOrgId = model.InvOrgId; |
| | |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_Common.OrderEnum; |
| | | using WIDESEA_Core; |
| | | using WIDESEA_Core.BaseRepository; |
| | | using WIDESEA_Core.BaseServices; |
| | | using WIDESEA_Core.Helper; |
| | | using WIDESEA_IApprovalRepository; |
| | | using WIDESEA_ICheckRepository; |
| | | using WIDESEA_ICheckService; |
| | | using WIDESEA_IInboundRepository; |
| | | using WIDESEA_Model.Models; |
| | | |
| | | namespace WIDESEA_CheckService |
| | |
| | | public class CheckOrderResultService : ServiceBase<Dt_CheckOrderResult, ICheckOrderResultRepository>, ICheckOrderResultService |
| | | { |
| | | private readonly ICheckOrderRepository _checkOrderRepository; |
| | | |
| | | public CheckOrderResultService(ICheckOrderResultRepository BaseDal, ICheckOrderRepository checkOrderRepository) : base(BaseDal) |
| | | private readonly IUnitOfWorkManage _unitOfWorkManage; |
| | | private readonly IReceiveOrderRepository _receiveOrderRepository; |
| | | public CheckOrderResultService(ICheckOrderResultRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, ICheckOrderRepository checkOrderRepository, IReceiveOrderRepository receiveOrderRepository) : base(BaseDal) |
| | | { |
| | | _checkOrderRepository = checkOrderRepository; |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | _receiveOrderRepository = receiveOrderRepository; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <param name="checkOrderId">è´¨æ£å主é®</param> |
| | | /// <param name="checkResult">è´¨æ£ç»æå¯¹è±¡</param> |
| | | /// <returns></returns> |
| | | public WebResponseContent CommitCheckResult(int checkOrderId, Dt_CheckOrderResult checkResult) |
| | | public WebResponseContent CommitCheckResult(int checkOrderId,Dt_CheckOrderResult checkResult) |
| | | { |
| | | try |
| | | { |
| | | Dt_CheckOrder checkOrder = _checkOrderRepository.QueryFirst(x => x.CheckOrderId == checkOrderId); |
| | | //è·åè´¨æ£å对åºçæ¶è´§å |
| | | Dt_ReceiveOrder receiveOrder = _receiveOrderRepository.QueryFirst(x=>x.ReceiveOrderNo==checkOrder.ReceiveOrderNo); |
| | | if (receiveOrder.ReceiveOrderStatus!=ReceiveOrderStatusEnum.Completed.ObjToInt()) |
| | | { |
| | | return WebResponseContent.Instance.Error($"{receiveOrder.ReceiveOrderNo}æ¶è´§åæªå®ææ æ³è´¨æ£"); |
| | | } |
| | | if (checkOrder == null) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æªæ¾å°è¯¥è´¨æ£å"); |
| | |
| | | Result = checkResult.Result, |
| | | Note = checkResult.Note |
| | | }; |
| | | _unitOfWorkManage.BeginTran(); |
| | | _checkOrderRepository.UpdateData(checkOrder); |
| | | BaseDal.AddData(checkOrderResult); |
| | | _unitOfWorkManage.CommitTran(); |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | catch (Exception ex) |
| | |
| | | return WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è´¨æ£å®ä¸æ¥è³ERP |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent FeedbackCheckResult(int id) |
| | | { |
| | | try |
| | | { |
| | | //å¢å 个ä¸ä¼ ç¶æ è´¨æ£åç»æ |
| | | Dt_CheckOrder checkOrder = Db.Queryable<Dt_CheckOrder>().Where(x => x.CheckOrderId == id).Includes(x => x.Details).First(); |
| | | if (checkOrder == null) |
| | | { |
| | |
| | | ERPCheckModel model = new ERPCheckModel() |
| | | { |
| | | Code = checkOrder.CheckOrderNo, |
| | | CompanyId = "", |
| | | CompanyId = "HATC", |
| | | Result = checkOrder.Result, |
| | | CreatorCode = checkOrder.Creater, |
| | | CreatorCode = "TC20082",//æµè¯ |
| | | DefectedNote = checkOrder.DefectedNote, |
| | | MaterialsCode = checkOrder.MaterielCode, |
| | | PlantsId = "", |
| | | PlantsId = "HA02", |
| | | QtyDefected = checkOrder.DefectedQuantity.GetValueOrDefault().ToString(), |
| | | QtyInspected = checkOrder.ReceivedQuantity.ToString(), |
| | | QtyQualified = checkOrder.QualifiedQuantity.GetValueOrDefault().ToString(), |
| | | QtyReturn = checkOrder.ReturnQuantity.GetValueOrDefault().ToString(), |
| | | QtyScrapped = checkOrder.ScrappedQuantity.GetValueOrDefault().ToString(), |
| | | ReceiptCode = checkOrder.ReceiveOrderNo, |
| | | ReceiveDate = "", |
| | | ReceiveDate = checkOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | SerNo = checkOrder.ReceiveDetailRowNo.ToString(), |
| | | TestDate = "", |
| | | TestDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | UniqueTag = checkOrder.CheckOrderId.ToString(), |
| | | Way = 1, |
| | | Details = checkResults |
| | |
| | | <ProjectReference Include="..\WIDESEA_External\WIDESEA_External.csproj" /> |
| | | <ProjectReference Include="..\WIDESEA_IApprovalRepository\WIDESEA_IApprovalRepository.csproj" /> |
| | | <ProjectReference Include="..\WIDESEA_ICheckService\WIDESEA_ICheckService.csproj" /> |
| | | <ProjectReference Include="..\WIDESEA_IInboundRepository\WIDESEA_IInboundRepository.csproj" /> |
| | | <ProjectReference Include="..\WIDESEA_ISystemRepository\WIDESEA_ISystemRepository.csproj" /> |
| | | </ItemGroup> |
| | | |
| | |
| | | [Description("AGVå®å
¨ä¿¡å·åå¤")] |
| | | AgvSecureReply, |
| | | /// <summary> |
| | | /// ERPæ¶è´§æ¥å£è°ç¨ |
| | | /// ERPæ¥å£è°ç¨ |
| | | /// </summary> |
| | | [Description("ERPæ¶è´§æ¥å£è°ç¨")] |
| | | InvokeMatReceiveApi, |
| | | /// <summary> |
| | | /// ERPç©æIQCæ£éªæ¥å£è°ç¨ |
| | | /// </summary> |
| | | [Description("ERPç©æIQCæ£éªæ¥å£è°ç¨")] |
| | | InvokeCheckOrderApi, |
| | | /// <summary> |
| | | /// ERPç©æå
¥åºæ¥å£è°ç¨ |
| | | /// </summary> |
| | | [Description("ERPç©æå
¥åºæ¥å£è°ç¨")] |
| | | InvokeInboundOrderApi, |
| | | /// <summary> |
| | | /// ERPç©æåºåºæ¥å£è°ç¨ |
| | | /// </summary> |
| | | [Description("ERPç©æåºåºæ¥å£è°ç¨")] |
| | | InvokeOutboundOrderApi, |
| | | [Description("ERPæ¥å£è°ç¨")] |
| | | InvokeErpApi, |
| | | /// <summary> |
| | | /// MES忥æµè¯æ¶å°è´¦ä¿¡æ¯ |
| | | /// </summary> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace WIDESEA_Common.CommonEnum |
| | | { |
| | | /// <summary> |
| | | /// åæ¶ç±»å |
| | | /// </summary> |
| | | public enum RecyclingEnum |
| | | { |
| | | /// <summary> |
| | | /// å®¢ä¾ |
| | | /// </summary> |
| | | Return, |
| | | /// <summary> |
| | | /// åæ¶ |
| | | /// </summary> |
| | | RepairStock, |
| | | /// <summary> |
| | | /// åé |
| | | /// </summary> |
| | | CMStock, |
| | | /// <summary> |
| | | /// ç»´ä¿®ç©æåæ¶ |
| | | /// </summary> |
| | | RMStock |
| | | } |
| | | } |
| | |
| | | [Description("æ¥åº")] |
| | | Scrapped |
| | | } |
| | | /// <summary> |
| | | /// æ£éªä¸ä¼ ç¶æ |
| | | /// </summary> |
| | | public enum CheckUploadEnum |
| | | { |
| | | /// <summary> |
| | | /// æªä¸ä¼ |
| | | /// </summary> |
| | | [Description("æªä¸ä¼ ")] |
| | | UploadNo, |
| | | /// <summary> |
| | | /// å·²ä¸ä¼ |
| | | /// </summary> |
| | | [Description("å·²ä¸ä¼ ")] |
| | | UploadOk |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using SqlSugar; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_Core.Attributes; |
| | | |
| | | namespace WIDESEA_DTO.ERP |
| | | { |
| | | /// <summary> |
| | | /// å
¶ä»å
¥åºè®¢å |
| | | /// </summary> |
| | | [ModelValidate] |
| | | public class ErpInOrderDTO |
| | | { |
| | | /// <summary> |
| | | /// æä½ç±»å<br/> |
| | | /// 1ï¼æ°å¢<br/> |
| | | /// 2ï¼ä¿®æ¹<br/> |
| | | /// 3ï¼å é¤(å é¤åªè¦æç»è¡å·å颿åå·) |
| | | /// </summary> |
| | | [PropertyValidate("æä½ç±»å", NotNullAndEmpty = true, Check = new object[] { 1, 2, 3 })] |
| | | public int Way { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç»è¡å· |
| | | /// </summary> |
| | | [PropertyValidate("æç»è¡å·", NotNullAndEmpty = true)] |
| | | public string RowNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å
¥åºè®¢åå· |
| | | /// </summary> |
| | | [PropertyValidate("å
¥åºè®¢åå·", NotNullAndEmpty = true)] |
| | | public string OrderNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä»åºç¼å· |
| | | /// </summary> |
| | | [PropertyValidate("ä»åºç¼å·", NotNullAndEmpty = true)] |
| | | public string WaId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 订åç±»å<br/> |
| | | /// 1ï¼è°æ¨å
¥åº<br/> |
| | | /// 3ï¼å®¢ä¾åæ¶<br/> |
| | | /// 6ï¼ç©æéå®éè´§<br/> |
| | | /// </summary> |
| | | [PropertyValidate("订åç±»å", NotNullAndEmpty = true, Check = new object[] { 1, 3, 6 })] |
| | | public int OType { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æç¼ç |
| | | /// </summary> |
| | | [PropertyValidate("ç©æç¼ç ", NotNullAndEmpty = true)] |
| | | public string MCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ°é |
| | | /// </summary> |
| | | [PropertyValidate("æ°é", NotNullAndEmpty = true, MinValue = 0, IsContainMinValue = false)] |
| | | public float Qty { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½ |
| | | /// </summary> |
| | | [PropertyValidate("åä½", NotNullAndEmpty = true)] |
| | | public string Unit { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¸åæ¥æ |
| | | /// </summary> |
| | | [PropertyValidate("ä¸åæ¥æ", NotNullAndEmpty = true)] |
| | | public string OrderData { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | [PropertyValidate("夿³¨")] |
| | | public string Node { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åæ¶ç±»å |
| | | /// </summary> |
| | | [PropertyValidate("åæ¶ç±»å")] |
| | | public string Type { get; set; } |
| | | } |
| | | } |
| | |
| | | using System; |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Serialization; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | |
| | | { |
| | | _apiInfoRepository= apiInfoRepository; |
| | | } |
| | | // å建ä¸ä¸ªä½¿ç¨å°é©¼å³°å½åæ³çåºåå设置 |
| | | JsonSerializerSettings settings = new JsonSerializerSettings |
| | | { |
| | | ContractResolver = new CamelCasePropertyNamesContractResolver() |
| | | }; |
| | | /// <summary> |
| | | /// ERPæ¶è´§åæ¥å£è°ç¨ |
| | | /// </summary> |
| | |
| | | /// <returns></returns> |
| | | public string InvokeMatReceiveApi(ERPReceiveModel receiveModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x=>x.ApiCode==APIEnum.InvokeMatReceiveApi.ToString()); |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x=>x.ApiCode==APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPReceiveModel> model = new ERPBaseModel<ERPReceiveModel>() |
| | | { |
| | | Data = receiveModel, |
| | | Desc = "æ¶è´§å", |
| | | Type = "toTCWMSReceive", |
| | | SecurityCode = "" |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, model.Serialize()); |
| | | |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | |
| | |
| | | /// <returns></returns> |
| | | public string InvokeCheckOrderApi(ERPCheckModel checkModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeCheckOrderApi.ToString()); |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPCheckModel> model = new ERPBaseModel<ERPCheckModel>() |
| | | { |
| | | Data = checkModel, |
| | | Desc = "æ¶è´§å", |
| | | Desc = "ç©æIQCæ£éªå", |
| | | Type = "toTCWMSIQCTest", |
| | | SecurityCode = "" |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, model.Serialize()); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | |
| | |
| | | /// <returns></returns> |
| | | public string InvokeInboundOrderApi(ERPInboundModel inboundModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeInboundOrderApi.ToString()); |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPInboundModel> model = new ERPBaseModel<ERPInboundModel>() |
| | | { |
| | | Data = inboundModel, |
| | | Desc = "æ¶è´§å", |
| | | Desc = "ç©æå
¥åºå", |
| | | Type = "toTCWMSMaterialWarehousing", |
| | | SecurityCode = "" |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, model.Serialize()); |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// ERP颿éç¥ååºåº |
| | | /// </summary> |
| | | public string InvokeOutStandardsApi(ERPIssueModel issueModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPIssueModel> model = new ERPBaseModel<ERPIssueModel>() |
| | | { |
| | | Data = issueModel, |
| | | Desc = "颿åºåºéç¥å", |
| | | Type = "toStandardPickList", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings).Replace("issitem", "Issitem"); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | |
| | | /// <returns></returns> |
| | | public string InvokeOutboundOrderApi(ERPOutboundModel outboundModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeOutboundOrderApi.ToString()); |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPOutboundModel> model = new ERPBaseModel<ERPOutboundModel>() |
| | | { |
| | | Data = outboundModel, |
| | | Desc = "ææåºåº", |
| | | Type = "toBomMaterialOutTC", |
| | | SecurityCode = "LxkgPgN3$U" |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, model.Serialize()); |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | } |
| | |
| | | /// <param name="outboundModel"></param> |
| | | /// <returns></returns> |
| | | string InvokeOutboundOrderApi(ERPOutboundModel outboundModel); |
| | | string InvokeOutStandardsApi(ERPIssueModel issueModel); |
| | | } |
| | | } |
| | |
| | | /// <summary> |
| | | /// åå»ºæ¥æ |
| | | /// </summary> |
| | | public string EndDate { get; set; } |
| | | public string EntDate { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | |
| | | /// <summary> |
| | | /// é¨é¨ä»£ç |
| | | /// </summary> |
| | | public string DetNo { get; set; } |
| | | public string Deptno { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¨é¨åç§° |
| | | /// </summary> |
| | | public string DetName { get; set; } |
| | | public string Deptname { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public string DecRemark { get; set; } |
| | | public string Docremark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¥æ |
| | | /// </summary> |
| | | public string CreateTime { get; set; } |
| | | public string Createtime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 人å |
| | | /// </summary> |
| | | public string CreateUser { get; set; } |
| | | public string Createuser { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç å |
| | | /// </summary> |
| | | public int IsDev { get; set; } |
| | | public int IsDev { get; set; } = 0; |
| | | |
| | | /// <summary> |
| | | /// 详æ
|
| | | /// </summary> |
| | | public List<ERPIssueItemModel> IssItem { get; set; } |
| | | public List<ERPIssueItemModel> Issitem { get; set; } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <summary> |
| | | /// 颿åå· |
| | | /// </summary> |
| | | public string PickCode { get; set; } |
| | | public string Pickcode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åæ¾è¯¦æ
|
| | | /// </summary> |
| | | public List<ERPPickModel> PickItem { get; set; } |
| | | public List<ERPPickModel> PickList { get; set; } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <summary> |
| | | /// åææç»è¡å· |
| | | /// </summary> |
| | | public int RowIndex { get; set; } |
| | | public int Rowindex { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æç¼ç |
| | |
| | | /// <summary> |
| | | /// åºå详æ
|
| | | /// </summary> |
| | | public List<ERPPickItemModel> DataItem { get; set; } |
| | | public List<ERPPickItemModel> Dataitem { get; set; } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <summary> |
| | | /// æ¹æ¬¡å· |
| | | /// </summary> |
| | | public string LotNo { get; set; } |
| | | public string Lotno { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ°é |
| | |
| | | namespace WIDESEA_External.Model |
| | | { |
| | | /// <summary> |
| | | /// åºåºååä¼ ERP |
| | | /// ç©æåä»åºåºåä¼ ERP |
| | | /// </summary> |
| | | public class ERPOutboundModel |
| | | { |
| | |
| | | /// </summary> |
| | | public string UniqueTag { get; set; } |
| | | /// <summary> |
| | | /// åºåºåå· |
| | | /// åæåå· |
| | | /// </summary> |
| | | public string Code { get; set; } |
| | | /// <summary> |
| | |
| | | /// <summary> |
| | | /// åææ¶é´ |
| | | /// </summary |
| | | public DateTime? Createtime { get; set; } |
| | | public string Createtime { get; set; } |
| | | /// <summary> |
| | | /// åæäººå |
| | | /// </summary |
| | |
| | | /// <summary> |
| | | /// æ»æ°é |
| | | /// </summary> |
| | | public float Qty { get; set; } |
| | | public int Qty { get; set; } |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | |
| | | /// <summary> |
| | | /// æ°é |
| | | /// </summary> |
| | | public float Qty { get; set; } |
| | | public int Qty { get; set; } |
| | | } |
| | | } |
| | |
| | | /// <summary> |
| | | /// æ¶è´§æ¥æ |
| | | /// </summary> |
| | | public DateTime ReceiveDate { get; set; } |
| | | public string ReceiveDate { get; set; } |
| | | |
| | | /// <summary> |
| | | /// éè´§åå· |
| | |
| | | /// <summary> |
| | | /// å建æ¶é´ |
| | | /// </summary> |
| | | public DateTime EndDate { get; set; } |
| | | public string EntDate { get; set; } |
| | | |
| | | public List<RecevieOrderDetailModel> Details { get; set; } |
| | | } |
| | |
| | | /// <summary> |
| | | /// æ¶è´§æ°é |
| | | /// </summary> |
| | | public float QtyReceived { get; set; } |
| | | public int QtyRecieved { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¶è´§æ¹æ¬¡ |
| | |
| | | /// <summary> |
| | | /// å«ç¨ä»·æ ¼ |
| | | /// </summary> |
| | | public double PriceInTax { get; set; } = 0; |
| | | public int PriceInTax { get; set; } = 0; |
| | | |
| | | /// <summary> |
| | | /// ç¨ç |
| | |
| | | /// </summary> |
| | | public interface IApiInfoRepository : IRepository<Dt_ApiInfo> |
| | | { |
| | | |
| | | } |
| | | } |
| | |
| | | IOutboundOrderRepository Repository { get; } |
| | | |
| | | WebResponseContent ReceiveOutOrder(ErpOutOrderDTO model); |
| | | WebResponseContent TestOutUpload(int id); |
| | | } |
| | | } |
| | |
| | | using WIDESEA_Core.Utilities; |
| | | using WIDESEA_DTO; |
| | | using WIDESEA_DTO.Basic; |
| | | using WIDESEA_DTO.ERP; |
| | | using WIDESEA_DTO.Inbound; |
| | | using WIDESEA_External.ERPService; |
| | | using WIDESEA_External.Model; |
| | |
| | | _invokeERPService = invokeERPService; |
| | | _warehouseService = warehouseService; |
| | | } |
| | | /// <summary> |
| | | /// å
¶ä»å
¥åºåå建 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public WebResponseContent ReceiveWarehousingOrder(ErpInOrderDTO erpInOrder) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | //è·åä»åºä¿¡æ¯ |
| | | Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x=>x.WarehouseCode==erpInOrder.WaId); |
| | | if (warehouse==null) |
| | | { |
| | | return content.Error("æªæ¾å°ä»åºä¿¡æ¯"); |
| | | } |
| | | //è·åæ¯å¦åå¨è®¢å |
| | | Dt_InboundOrder inboundOrder = BaseDal.QueryFirst(x=>x.InboundOrderNo== erpInOrder.OrderNo); |
| | | if (erpInOrder.Way==1) |
| | | { |
| | | if (inboundOrder!=null) |
| | | { |
| | | |
| | | } |
| | | } |
| | | else if(erpInOrder.Way==2) |
| | | { |
| | | |
| | | } |
| | | else |
| | | { |
| | | |
| | | } |
| | | return content.OK(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | content.Error(ex.Message); |
| | | } |
| | | return content; |
| | | } |
| | | public WebResponseContent GetInboundOrders(SaveModel saveModel) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | |
| | | } |
| | | return content; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åä¸ªç©æç ç»ç |
| | | /// </summary> |
| | | /// <param name="inboundOrderId"></param> |
| | | /// <param name="palletCode"></param> |
| | | /// <param name="serNum"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, string serNum) |
| | | { |
| | | try |
| | |
| | | |
| | | List<string> purchaseOrderNos = receiveOrder.Details.Select(x => x.PurchaseOrderNo).ToList(); |
| | | |
| | | MatSerNumAnalysisModel model = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNum); |
| | | MatSerNumAnalysisModel model = new MatSerNumAnalysisModel() |
| | | { |
| | | MaterielCode= "307000309", |
| | | LotNo= "20241216001", |
| | | ProductionDate= "2024-12-16", |
| | | EffectiveDate= "2025-12-16", |
| | | PurchaseOrderNo= "POHA02241216275", |
| | | Quantity=1, |
| | | SerialNumber= "M:307000309,BS:20241216001,DM:2024-12-16,DE:2025-12-16,Q:4,PO:POHA02241216275" |
| | | };//æµè¯ |
| | | |
| | | //CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNum); |
| | | |
| | | |
| | | Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == model.MaterielCode); |
| | | if (materielInfo == null) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æªæ¾å°è¯¥ç©æçä¿¡æ¯"); |
| | | } |
| | | |
| | | List<Dt_InboundOrderDetail> inboundOrderDetails = inboundOrder.Details.Where(x => x.MaterielCode == model.MaterielCode).ToList(); |
| | | |
| | |
| | | return WebResponseContent.Instance.Error($"è¯¥ç©æå¨è¯¥å
¥åºåä¸å·²å
¨é¨ç»ç宿"); |
| | | } |
| | | |
| | | Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == model.MaterielCode); |
| | | if (materielInfo == null) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æªæ¾å°è¯¥ç©æçä¿¡æ¯"); |
| | | } |
| | | |
| | | Dt_StockInfo stockInfo = new Dt_StockInfo() |
| | | { |
| | | PalletCode = palletCode, |
| | | StockStatus = StockStatusEmun.ç»çæå.ObjToInt(), |
| | | WarehouseId = inboundOrder.WarehouseId |
| | | }; |
| | | |
| | | Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail() |
| | | { |
| | | BatchNo = model.LotNo, |
| | |
| | | ProductionDate = model.ProductionDate, |
| | | EffectiveDate = model.EffectiveDate, |
| | | InboundOrderRowNo = notGroupDetail.RowNo, |
| | | }; |
| | | |
| | | Dt_StockInfo stockInfo = new Dt_StockInfo() |
| | | { |
| | | PalletCode = palletCode, |
| | | StockStatus = StockStatusEmun.ç»çæå.ObjToInt(), |
| | | WarehouseId = inboundOrder.WarehouseId, |
| | | Details=new List<Dt_StockInfoDetail> { stockInfoDetail } |
| | | }; |
| | | |
| | | _stockRepository.StockInfoRepository.Db.InsertNav(stockInfo).Include(x => x.Details).ExecuteCommand(); |
| | |
| | | return WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
¥åºå®æåä¼ å°ERP |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent FeedbackInboundOrder(int id) |
| | | { |
| | | try |
| | |
| | | ERPInboundModel model = new ERPInboundModel() |
| | | { |
| | | Code = inboundOrder.InboundOrderNo, |
| | | CreatorCode = inboundOrder.Creater, |
| | | EndDate = inboundOrder.CreateDate.ToString(), |
| | | StockDate = inboundOrder.CreateDate.ToString(), |
| | | CreatorCode = "TC20082",//æµè¯ |
| | | EntDate = inboundOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | StockDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | SuppliersId = inboundOrder.SupplierId, |
| | | Type = "S", |
| | | UniqueTag = inboundOrder.Id.ToString(), |
| | |
| | | { |
| | | MaterielCode = item.MCode, |
| | | PurchaseDetailQuantity = item.Qty, |
| | | PurchaseDetailReceiveQty=0, |
| | | PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.NotReceived.ObjToInt(), |
| | | Unit = item.Unit, |
| | | WarehouseId = warehouse.WarehouseId, |
| | |
| | | { |
| | | MaterielCode = item.MCode, |
| | | PurchaseDetailQuantity = item.Qty, |
| | | PurchaseDetailReceiveQty = 0, |
| | | PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.NotReceived.ObjToInt(), |
| | | Unit = item.Unit, |
| | | WarehouseId = warehouse.WarehouseId, |
| | |
| | | using WIDESEA_Core.BaseRepository; |
| | | using WIDESEA_Core.BaseServices; |
| | | using WIDESEA_Core.Helper; |
| | | using WIDESEA_DTO; |
| | | using WIDESEA_DTO.Basic; |
| | | using WIDESEA_DTO.ERP; |
| | | using WIDESEA_External.ERPService; |
| | | using WIDESEA_External.Model; |
| | | using WIDESEA_IBasicRepository; |
| | |
| | | |
| | | return base.AddData(saveModel); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¶è´§å®æå¹¶åä¼ ERP |
| | | /// </summary> |
| | | /// <param name="orderId"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent FeedbackReceiveOrder(int orderId) |
| | | { |
| | | try |
| | |
| | | if (receiveOrder == null) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æªæ¾å°æ¶è´§å"); |
| | | } |
| | | if (receiveOrder.ReceiveOrderStatus==ReceiveOrderStatusEnum.Completed.ObjToInt()) |
| | | { |
| | | return WebResponseContent.Instance.Error($"æ¶è´§å已宿"); |
| | | } |
| | | if (receiveOrder.Details == null || receiveOrder.Details.Count == 0) |
| | | { |
| | |
| | | PriceInTax = 0, |
| | | PurchaseOrderCode = item.PurchaseOrderNo, |
| | | PurchaseOrderSerno = item.PurchaseOrderDetailRowNo, |
| | | QtyReceived = item.ReceivedQuantity, |
| | | QtyRecieved = item.ReceivedQuantity.ObjToInt(), |
| | | Serno = item.RowNo, |
| | | Supplotno = "", |
| | | Taxrate = "" |
| | | Taxrate = "", |
| | | |
| | | }; |
| | | recevieOrderDetails.Add(recevieOrderDetail); |
| | | } |
| | |
| | | ERPReceiveModel receiveModel = new ERPReceiveModel() |
| | | { |
| | | Code = receiveOrder.ReceiveOrderNo, |
| | | CompanyId = "", |
| | | CompanyId = "HATC", |
| | | DeliveryCode = receiveOrder.DeliveryCode, |
| | | CustomerId = receiveOrder.CustomerId, |
| | | CreatorId = receiveOrder.Creater, |
| | | EndDate = receiveOrder.CreateDate, |
| | | ReceiveDate = receiveOrder.CreateDate, |
| | | PlantsId = "", |
| | | CreatorId = "TC20082",//æµè¯ receiveOrder.Creater |
| | | EntDate = receiveOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | ReceiveDate = receiveOrder.ReceiveDate.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | PlantsId = "HA02", |
| | | SuppliersId = receiveOrder.SuppliersId, |
| | | Type = "PO", |
| | | Type = Enum.GetName(typeof(ReceiveOrderTypeEnum),receiveOrder.ReceiveOrderType), |
| | | UniqueTag = receiveOrder.ReceiveOrderId.ToString(), |
| | | WarehouseCode = warehouse.WarehouseCode, |
| | | Way = 1, |
| | | Details = recevieOrderDetails |
| | | }; |
| | | |
| | | string response = _invokeERPService.InvokeMatReceiveApi(receiveModel); |
| | | |
| | | //æ¶è´§æ¨éè³ERP |
| | | string Content = _invokeERPService.InvokeMatReceiveApi(receiveModel); |
| | | ErpRequestContent erpRequest=Content.DeserializeObject<ErpRequestContent>(); |
| | | if (erpRequest.res==0) |
| | | { |
| | | return WebResponseContent.Instance.Error(erpRequest.Data); |
| | | } |
| | | receiveOrder.ReceiveOrderStatus = ReceiveOrderStatusEnum.Completed.ObjToInt(); |
| | | receiveOrder.UploadStatus = WhetherEnum.True.ObjToInt(); |
| | | //æ´æ°æ¶è´§åä¿¡æ¯ |
| | | _unitOfWorkManage.BeginTran(); |
| | | BaseDal.UpdateData(receiveOrder); |
| | | _unitOfWorkManage.CommitTran(); |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | catch (Exception ex) |
| | |
| | | } |
| | | return content; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å建å
¥åºå |
| | | /// </summary> |
| | | /// <param name="receiveOrderId">æ¶è´§åç¼å·</param> |
| | | /// <returns></returns> |
| | | public WebResponseContent CreateInboundOrder(int receiveOrderId) |
| | | { |
| | | try |
| | |
| | | |
| | | Dt_InboundOrder inboundOrder = new Dt_InboundOrder() |
| | | { |
| | | InboundOrderNo="TestInboundNo1",//æµè¯ |
| | | UpperOrderNo = receiveOrder.ReceiveOrderNo, |
| | | CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(), |
| | | OrderStatus = InOrderStatusEnum.æªå¼å§.ObjToInt(), |
| | |
| | | if (materielInfo.IsCheck == WhetherEnum.True) |
| | | { |
| | | Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail); |
| | | checkOrder.CheckOrderNo = "TestCheckNo11";//æµè¯ |
| | | checkOrder.ReceiveOrderNo = ""; |
| | | checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity; |
| | | checkOrder.ScrappedQuantity = 0; |
| | | checkOrder.ReturnQuantity = 0; |
| | | checkOrder.DefectedQuantity = 0; |
| | | checkOrder.ReceiveDetailRowNo = rowNo; |
| | | checkOrder.UploadStatus = CheckUploadEnum.UploadNo.ObjToInt(); |
| | | checkOrders.Add(checkOrder); |
| | | } |
| | | } |
| | | receiveOrder = new Dt_ReceiveOrder() |
| | | { |
| | | ReceiveOrderNo= "TestReceiveOrderNo11",//æµè¯ |
| | | ReceiveOrderStatus = ReceiveOrderStatusEnum.Receiving.ObjToInt(), |
| | | CustomerId = "", |
| | | DeliveryCode = "", |
| | | DeliveryCode = "/", |
| | | ReceiveDate = DateTime.Now, |
| | | ReceiveOrderType = ReceiveOrderTypeEnum.PO.ObjToInt(), |
| | | SuppliersId = purchaseOrder.SupplierCode, |
| | |
| | | if (materielInfo.IsCheck == WhetherEnum.True) |
| | | { |
| | | Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail); |
| | | checkOrder.CheckOrderNo = "Test-CheckNo1";//æµè¯ |
| | | checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity; |
| | | checkOrder.ScrappedQuantity = 0; |
| | | checkOrder.ReceiveOrderNo = receiveOrder.ReceiveOrderNo; |
| | | checkOrder.ReturnQuantity = 0; |
| | | checkOrder.DefectedQuantity = 0; |
| | | checkOrder.ReceiveDetailRowNo = rowNo; |
| | | checkOrder.UploadStatus = CheckUploadEnum.UploadNo.ObjToInt(); |
| | | checkOrders.Add(checkOrder); |
| | | } |
| | | } |
| | |
| | | Db.InsertNav(receiveOrder).Include(x => x.Details).ExecuteCommand(); |
| | | checkOrders.ForEach(x => x.ReceiveOrderNo = receiveOrder.ReceiveOrderNo); |
| | | } |
| | | _checkOrderRepository.AddData(checkOrders); |
| | | if (checkOrders.Count > 0) |
| | | { |
| | | _checkOrderRepository.AddData(checkOrders); |
| | | } |
| | | _inboundRepository.PurchaseOrderRepository.UpdateData(purchaseOrder); |
| | | _inboundRepository.PurchaseOrderDetailRepository.UpdateData(purchaseOrder.Details); |
| | | _unitOfWorkManage.CommitTran(); |
| | | |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | catch (Exception ex) |
| | |
| | | /// <summary> |
| | | /// ç±»å 1=ä»ç®¡åï¼2=è´¨æ£å |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = false, ColumnDescription = "ç±»å")] |
| | | public int Type { get; set; } |
| | | //[SugarColumn(IsNullable = false, ColumnDescription = "ç±»å")] |
| | | //public int Type { get; set; } |
| | | } |
| | | } |
| | |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "æ£éªäºº")] |
| | | public string CheckUserName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªä¸ä¼ ç¶æ |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = true, ColumnDescription = "æ£éªä¸ä¼ ç¶æ")] |
| | | public int UploadStatus { get; set; } |
| | | /// <summary> |
| | | /// è´¨æ£ç»æ |
| | | /// </summary> |
| | |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = false, ColumnDescription = "æ°é")] |
| | | public float PurchaseDetailQuantity { get; set; } |
| | | /// <summary> |
| | | /// å·²æ¶è´§æ°é |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = false, ColumnDescription = "å·²æ¶è´§æ°é")] |
| | | public float PurchaseDetailReceiveQty { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½ |
| | |
| | | /// <summary> |
| | | /// æ¹æ¬¡å· |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "æ¹æ¬¡å·")] |
| | | [SugarColumn(IsNullable = true, Length = 20, ColumnDescription = "æ¹æ¬¡å·")] |
| | | public string BatchNo { get; set; } |
| | | |
| | | /// <summary> |
| | |
| | | /// <summary> |
| | | /// æ¹æ¬¡å· |
| | | /// </summary> |
| | | [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "æ¹æ¬¡å·")] |
| | | [SugarColumn(IsNullable = true, Length = 20, ColumnDescription = "æ¹æ¬¡å·")] |
| | | public string BatchNo { get; set; } |
| | | |
| | | /// <summary> |
| | |
| | | using AutoMapper; |
| | | using MailKit.Search; |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Serialization; |
| | | using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime; |
| | |
| | | |
| | | Dt_OutboundOrder outboundOrder = new Dt_OutboundOrder() |
| | | { |
| | | OrderNo=model.OrderNo, |
| | | UpperOrderNo = model.OrderNo, |
| | | OrderStatus = OutOrderStatusEnum.æªå¼å§.ObjToInt(), |
| | | OrderType = OutOrderTypeEnum.Issue.ObjToInt(), |
| | |
| | | return WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | } |
| | | //䏿¥åºåºå®æ |
| | | public WebResponseContent TestOutUpload(int id) |
| | | { |
| | | try |
| | | { |
| | | Dt_OutboundOrder outboundOrder = Db.Queryable<Dt_OutboundOrder>().Where(x=>x.Id==id).Includes(x=>x.Details).First(); |
| | | Dt_Warehouse warehouse = _basicService.WarehouseService.Repository.QueryFirst(x => x.WarehouseId == outboundOrder.WarehouseId); |
| | | //æµè¯æ¶åºç»ERP䏿¥åºåºå®æ |
| | | ERPPickItemModel eRPOutPick = new ERPPickItemModel() |
| | | { |
| | | Lotno = "20241226001", |
| | | Qty = "5", |
| | | Location = warehouse.WarehouseCode |
| | | }; |
| | | ERPPickModel pickModel = new ERPPickModel() |
| | | { |
| | | Rowindex = outboundOrder.Details[0].RowNo, |
| | | Material = outboundOrder.Details[0].MaterielCode, |
| | | Qty = (outboundOrder.Details[0].OrderQuantity.ObjToInt()).ToString(), |
| | | Dataitem=new List<ERPPickItemModel> { eRPOutPick } |
| | | }; |
| | | |
| | | ERPIssueItemModel issueItemModel = new ERPIssueItemModel() |
| | | { |
| | | Pickcode = outboundOrder.UpperOrderNo, |
| | | PickList = new List<ERPPickModel>() { pickModel } |
| | | }; |
| | | ERPIssueModel issueModel = new ERPIssueModel() |
| | | { |
| | | UniqueTag = id.ToString(), |
| | | Code = "FL20241226001", |
| | | WarehouseCode = warehouse.WarehouseCode, |
| | | Docremark = "", |
| | | Deptno = "F2HAECZSQZ", |
| | | Deptname = "æ·®å®äºåå¶ä¸åºé»ç", |
| | | Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | Createuser = "TC20082", |
| | | Issitem = new List<ERPIssueItemModel>() { issueItemModel }, |
| | | }; |
| | | string response = _invokeERPService.InvokeOutStandardsApi(issueModel); |
| | | ErpRequestContent requestContent = response.DeserializeObject<ErpRequestContent>(); |
| | | if (requestContent.res == 1) |
| | | { |
| | | |
| | | return WebResponseContent.Instance.OK(requestContent.Data); |
| | | } |
| | | else |
| | | { |
| | | return WebResponseContent.Instance.Error(requestContent.Data); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | /// <summary> |
| | | /// æ´æ¹åºåºååºåç¶æ |
| | | /// </summary> |
| | |
| | | List<ERPOutPickDetail> pickDetails = stockInfos.Select(x => new ERPOutPickDetail() |
| | | { |
| | | Lotno = x.Details[0].BatchNo, |
| | | Qty = x.Details[0].StockQuantity |
| | | Qty = x.Details[0].StockQuantity.ObjToInt() |
| | | }).ToList(); |
| | | ERPOutPick outPick = new ERPOutPick() |
| | | { |
| | | Rowindex = model.RowNo, |
| | | Material = model.MCode, |
| | | Qty = model.Qty, |
| | | Qty = model.Qty.ObjToInt(), |
| | | Dataitem = pickDetails |
| | | }; |
| | | ERPOutboundModel inboundModel = new ERPOutboundModel() |
| | |
| | | Docremark = "", |
| | | Deptno = model.DepartmentCode, |
| | | DeptName = model.DepartmentName, |
| | | Createtime = DateTime.Now, |
| | | Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), |
| | | Createuser = "WMS", |
| | | Picklist = new List<ERPOutPick>() { outPick }, |
| | | }; |
| | |
| | | //å å
¥è´§ä½åå¨è®°å½ |
| | | _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, locationStatus, LocationChangeType.OutboundAssignLocation, stockInfo.Details.FirstOrDefault()?.OrderNo ?? "", taskOut.TaskNum); |
| | | //å å
¥åºååå¨è®°å½ |
| | | //_recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.MaterielGroup); |
| | | //_recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.StockLock); |
| | | _unitOfWorkManage.CommitTran(); |
| | | //å°ä»»å¡æ¨éå°WCS |
| | | PushTasksToWCS(new List<Dt_Task>() { taskOut },"AGV"); |
| | |
| | | SourceAddress = backModel.SourceAddressCode, |
| | | TargetAddress = "", |
| | | TaskStatus = (int)TaskStatusEnum.New, |
| | | TaskType = (int)TaskTypeEnum.Outbound, |
| | | TaskType = (int)TaskTypeEnum.ProductionReturn, |
| | | TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), |
| | | PalletType = stockInfo.PalletType, |
| | | WarehouseId = stockInfo.WarehouseId, |
| | |
| | | |
| | | _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, (LocationStatusEnum)beforeStatus, LocationChangeType.OutboundCompleted, stockInfo.Details.FirstOrDefault()?.OrderNo ?? "", task.TaskNum); |
| | | _unitOfWorkManage.CommitTran(); |
| | | |
| | | //æ¨éåºåºå®æ |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | catch (Exception ex) |
| | |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Authorization; |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using WIDESEA_Core; |
| | | using WIDESEA_Core.BaseController; |
| | |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | [HttpGet, HttpPost, Route("FeedbackCheckResult")] |
| | | [HttpGet, HttpPost, Route("FeedbackCheckResult"),AllowAnonymous] |
| | | public WebResponseContent FeedbackCheckResult(int id) |
| | | { |
| | | return Service.FeedbackCheckResult(id); |
| | |
| | | /// <param name="checkResult"></param> |
| | | /// <returns></returns> |
| | | [HttpPost, Route("CommitCheckResult")] |
| | | public WebResponseContent CommitCheckResult(int checkOrderId, Dt_CheckOrderResult checkResult) |
| | | public WebResponseContent CommitCheckResult(int checkOrderId,[FromBody] Dt_CheckOrderResult checkResult) |
| | | { |
| | | return Service.CommitCheckResult(checkOrderId, checkResult); |
| | | } |
| | |
| | | /// </summary> |
| | | /// <param name="model"></param> |
| | | /// <returns></returns> |
| | | [HttpPost, Route("ReceivePurchaseOrderSingle"), AllowAnonymous, MethodParamsValidate] |
| | | [HttpPost, Route("ReceivePurchaseOrder"), AllowAnonymous, MethodParamsValidate] |
| | | public ErpResponseContent ReceivePurchaseOrder([FromBody] Root<PurchaseOrderModel> model) |
| | | { |
| | | WebResponseContent content = _purchaseOrderService.ReceivePurchaseOrder(model.Content); |
| | |
| | | /// <param name="palletCode"></param> |
| | | /// <param name="serNum"></param> |
| | | /// <returns></returns> |
| | | [HttpPost, HttpGet, Route("MaterielGroupSingle")] |
| | | [HttpPost, HttpGet, Route("MaterielGroupSingle"),AllowAnonymous] |
| | | public WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, string serNum) |
| | | { |
| | | return Service.MaterielGroup(inboundOrderId, palletCode, serNum); |
| | |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | [HttpPost, HttpGet, Route("FeedbackInboundOrder")] |
| | | [HttpPost, HttpGet, Route("FeedbackInboundOrder"),AllowAnonymous] |
| | | public WebResponseContent FeedbackInboundOrder(int id) |
| | | { |
| | | return Service.FeedbackInboundOrder(id); |
| | |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Authorization; |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using WIDESEA_Core; |
| | | using WIDESEA_Core.BaseController; |
| | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¶è´§åå建å
¥åºå |
| | | /// </summary> |
| | | /// <param name="receiveOrderId"></param> |
| | | /// <param name="receiveOrderId">æ¶è´§åç¼å·</param> |
| | | /// <returns></returns> |
| | | [HttpPost, HttpGet, Route("CreateInboundOrder")] |
| | | [HttpPost, HttpGet, Route("CreateInboundOrder"),AllowAnonymous] |
| | | public WebResponseContent CreateInboundOrder(int receiveOrderId) |
| | | { |
| | | return Service.CreateInboundOrder(receiveOrderId); |
| | |
| | | /// </summary> |
| | | /// <param name="orderId"></param> |
| | | /// <returns></returns> |
| | | [HttpPost, HttpGet, Route("FeedbackReceiveOrder")] |
| | | [HttpPost, HttpGet, Route("FeedbackReceiveOrder"),AllowAnonymous] |
| | | public WebResponseContent FeedbackReceiveOrder(int orderId) |
| | | { |
| | | return Service.FeedbackReceiveOrder(orderId); |
| | |
| | | /// <param name="purchaseOrderId"></param> |
| | | /// <param name="lotNo"></param> |
| | | /// <returns></returns> |
| | | [HttpPost, HttpGet, Route("ReceiveAllOrder")] |
| | | [HttpPost, HttpGet, Route("ReceiveAllOrder"),AllowAnonymous] |
| | | public WebResponseContent ReceiveAllOrder(int purchaseOrderId, string lotNo) |
| | | { |
| | | return Service.ReceiveAllOrder(purchaseOrderId, lotNo); |
| | |
| | | { |
| | | |
| | | } |
| | | [HttpPost,Route("TestOutUpload"),AllowAnonymous] |
| | | public WebResponseContent TestOutUpload(int id) |
| | | { |
| | | return Service.TestOutUpload(id); |
| | | } |
| | | |
| | | } |
| | | } |