From 47e3d63241c40a952a996b3753a764938c7ab28d Mon Sep 17 00:00:00 2001 From: "qianhao.xu" Date: Tue, 10 Dec 2024 16:41:20 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E5=B7=A5=E5=BA=8F=E5=92=8C=E6=9C=AB?= =?UTF-8?q?=E5=B7=A5=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Mobile/ReportFlowController.cs | 25 ++- .../Mobile/IService/IReportFlowService.cs | 3 + DOAN.Service/Mobile/ReportFlowService.cs | 157 ++++++++++++++---- 3 files changed, 155 insertions(+), 30 deletions(-) diff --git a/DOAN.Admin.WebApi/Controllers/Mobile/ReportFlowController.cs b/DOAN.Admin.WebApi/Controllers/Mobile/ReportFlowController.cs index 1d7e683..054d90a 100644 --- a/DOAN.Admin.WebApi/Controllers/Mobile/ReportFlowController.cs +++ b/DOAN.Admin.WebApi/Controllers/Mobile/ReportFlowController.cs @@ -54,6 +54,17 @@ public class ReportFlowController : BaseController } return ToResponse(ResultCode.SUCCESS,_reportFlowService.GetProcessReportWorkDetail(workorder, processId)); } + //TODO 领料工序 + [HttpGet("feed_process_reportwork")] + public IActionResult FeedProcessReportwork(string workorder, int processId, int finish_num,string stove_code,string feed_order) + { + if (string.IsNullOrEmpty(workorder)) + { + throw new CustomException("workorder or process is null"); + } + + return SUCCESS(_reportFlowService.FeedProcessReportwork(workorder, processId, finish_num, stove_code, feed_order, HttpContext.GetNickName())); + } //TODO 工序报工 /// @@ -75,7 +86,19 @@ public class ReportFlowController : BaseController return SUCCESS(_reportFlowService.ProcessReportWork(workorder, processId, finish_num,bad_num,HttpContext.GetNickName())); } - + + //TODO 出货工序 + [HttpGet("shipment_process_reportwork")] + public IActionResult ShipmentProcessReportwork(string workorder, int processId, int finish_num, int bad_num, string customer_order) + { + if (string.IsNullOrEmpty(workorder)) + { + throw new CustomException("workorder or process is null"); + } + + return SUCCESS(_reportFlowService.ShipmentProcessReportwork(workorder, processId, finish_num, bad_num, customer_order, HttpContext.GetNickName())); + } + //TODO 获取工单下的报工列表 [HttpGet("get_workorder_reportwork_list")] public IActionResult GetWorkOrderReportWorkList(string workorder) diff --git a/DOAN.Service/Mobile/IService/IReportFlowService.cs b/DOAN.Service/Mobile/IService/IReportFlowService.cs index 38bdf7b..19f3c3a 100644 --- a/DOAN.Service/Mobile/IService/IReportFlowService.cs +++ b/DOAN.Service/Mobile/IService/IReportFlowService.cs @@ -10,8 +10,11 @@ public interface IReportFlowService: IBaseService ProReportwork01 GetProcessReportWorkDetail(string workorder, int process); + bool FeedProcessReportwork(string workorder, int processId, int finish_num, string stove_code, string feed_order, string Worker); + bool ProcessReportWork(string workorder, int process, int finish_num,int bad_num,string Worker); + bool ShipmentProcessReportwork(string workorder, int processId, int finish_num, int bad_num, string customer_order, string Worker); List GetWorkOrderReportWorkList(string workorder); } \ No newline at end of file diff --git a/DOAN.Service/Mobile/ReportFlowService.cs b/DOAN.Service/Mobile/ReportFlowService.cs index a84f768..5ee0409 100644 --- a/DOAN.Service/Mobile/ReportFlowService.cs +++ b/DOAN.Service/Mobile/ReportFlowService.cs @@ -6,6 +6,8 @@ using DOAN.Service.Mobile.IService; using DOAN.Service.Public.IPublicService; using Infrastructure.Attribute; using Microsoft.AspNetCore.Mvc; +using SqlSugar.DistributedSystem.Snowflake; +using System.Diagnostics; namespace DOAN.Service.Mobile; @@ -24,41 +26,138 @@ public class ReportFlowService : BaseService, IReportFlowServic { return Context.Queryable().Where(x => x.Workorder == workorder && x.ProcessId == process).First(); } - - public bool ProcessReportWork(string workorder, int process, int finish_num,int bad_num,string Worker) + /// + /// 首工序报工 + /// + /// + /// + /// + /// + /// + /// + /// + public bool FeedProcessReportwork(string workorder, int processId, int finish_num, string stove_code, string feed_order, string Worker) { int result = 0; - bool Exist= Context.Queryable().Where(it => it.Workorder == workorder&&it.ProcessId==process).Any(); - if (Exist) - { - result= Context.Updateable().Where(it => it.Workorder == workorder && it.ProcessId == process) - .SetColumns(it => it.FinishNum == finish_num) - .SetColumns(it => it.BadNum == bad_num) - .SetColumns(it => it.Worker == Worker) - .SetColumns(it => it.JobDate == DateTime.Now) - .SetColumns(it => it.UpdatedBy == Worker) - .SetColumns(it => it.UpdatedTime == DateTime.Now) + bool Exist = Context.Queryable().Where(it => it.Workorder == workorder && it.ProcessId == processId).Any(); + if (Exist) + { + result = Context.Updateable().Where(it => it.Workorder == workorder && it.ProcessId == processId) + .SetColumns(it => it.FinishNum == finish_num) + .SetColumns(it => it.Worker == Worker) + .SetColumns(it => it.JobDate == DateTime.Now) + .SetColumns(it => it.UpdatedBy == Worker) + .SetColumns(it => it.UpdatedTime == DateTime.Now) + .ExecuteCommand(); + Context.Updateable().Where(it => it.Workorder == workorder) + .UpdateColumns(it => it.StoveCode == stove_code) + .UpdateColumns(it => it.FeedOrder == feed_order) + .ExecuteCommand(); + + } + else + { + ProReportwork01 proReportwork01 = new ProReportwork01(); + proReportwork01.Id = XueHua; + proReportwork01.Workorder = workorder; + proReportwork01.ProcessId = processId; + proReportwork01.FinishNum = finish_num; + + proReportwork01.Worker = Worker; + proReportwork01.JobDate = DateTime.Now; + proReportwork01.CreatedBy = Worker; + proReportwork01.CreatedTime = DateTime.Now; + result = Context.Insertable(proReportwork01).ExecuteCommand(); + Context.Updateable().Where(it => it.Workorder == workorder) + .UpdateColumns(it => it.StoveCode == stove_code) + .UpdateColumns(it => it.FeedOrder == feed_order) .ExecuteCommand(); - } - else - { - ProReportwork01 proReportwork01=new ProReportwork01(); - proReportwork01.Id = XueHua; - proReportwork01.Workorder = workorder; - proReportwork01.ProcessId = process; - proReportwork01.FinishNum = finish_num; - proReportwork01.BadNum = bad_num; - proReportwork01.Worker = Worker; - proReportwork01.JobDate = DateTime.Now; - proReportwork01.CreatedBy = Worker; - proReportwork01.CreatedTime = DateTime.Now; - result= Context.Insertable(proReportwork01).ExecuteCommand(); - - } - return result>0; + } + return result > 0; } + public bool ProcessReportWork(string workorder, int process, int finish_num, int bad_num, string Worker) + { + int result = 0; + bool Exist = Context.Queryable().Where(it => it.Workorder == workorder && it.ProcessId == process).Any(); + if (Exist) + { + result = Context.Updateable().Where(it => it.Workorder == workorder && it.ProcessId == process) + .SetColumns(it => it.FinishNum == finish_num) + .SetColumns(it => it.BadNum == bad_num) + .SetColumns(it => it.Worker == Worker) + .SetColumns(it => it.JobDate == DateTime.Now) + .SetColumns(it => it.UpdatedBy == Worker) + .SetColumns(it => it.UpdatedTime == DateTime.Now) + .ExecuteCommand(); + + } + else + { + ProReportwork01 proReportwork01 = new ProReportwork01(); + proReportwork01.Id = XueHua; + proReportwork01.Workorder = workorder; + proReportwork01.ProcessId = process; + proReportwork01.FinishNum = finish_num; + proReportwork01.BadNum = bad_num; + proReportwork01.Worker = Worker; + proReportwork01.JobDate = DateTime.Now; + proReportwork01.CreatedBy = Worker; + proReportwork01.CreatedTime = DateTime.Now; + result = Context.Insertable(proReportwork01).ExecuteCommand(); + + } + return result > 0; + } + + /// + /// 出货工序报工 + /// + /// + /// + /// + /// + /// + /// + /// + public bool ShipmentProcessReportwork(string workorder, int processId, int finish_num, int bad_num, string customer_order, string Worker) + { + int result = 0; + bool Exist = Context.Queryable().Where(it => it.Workorder == workorder && it.ProcessId == processId).Any(); + if (Exist) + { + result = Context.Updateable().Where(it => it.Workorder == workorder && it.ProcessId == processId) + .SetColumns(it => it.FinishNum == finish_num) + .SetColumns(it => it.Worker == Worker) + .SetColumns(it => it.JobDate == DateTime.Now) + .SetColumns(it => it.UpdatedBy == Worker) + .SetColumns(it => it.UpdatedTime == DateTime.Now) + .ExecuteCommand(); + Context.Updateable().Where(it => it.Workorder == workorder) + .UpdateColumns(it => it.CustomerOrder == customer_order) + .ExecuteCommand(); + + } + else + { + ProReportwork01 proReportwork01 = new ProReportwork01(); + proReportwork01.Id = XueHua; + proReportwork01.Workorder = workorder; + proReportwork01.ProcessId = processId; + proReportwork01.FinishNum = finish_num; + proReportwork01.Worker = Worker; + proReportwork01.JobDate = DateTime.Now; + proReportwork01.CreatedBy = Worker; + proReportwork01.CreatedTime = DateTime.Now; + result = Context.Insertable(proReportwork01).ExecuteCommand(); + Context.Updateable().Where(it => it.Workorder == workorder) + .UpdateColumns(it => it.CustomerOrder == customer_order) + .ExecuteCommand(); + + } + return result > 0; + } public List GetWorkOrderReportWorkList(string workorder) {