using SlnMesnac.Model.domain;
using SlnMesnac.Repository.service.@base;
using System;
using System.Collections.Generic;
using System.Text;

#region << 版 本 注 释 >>
/*--------------------------------------------------------------------
* 版权所有 (c) 2024 WenJY 保留所有权利。
* CLR版本：4.0.30319.42000
* 机器名称：LAPTOP-E0N2L34V
* 命名空间：SlnMesnac.Repository.service.Impl
* 唯一标识：e0cb06b9-aafd-4400-8e6a-f33ec2ae54b0
*
* 创建者：WenJY
* 电子邮箱：wenjy@mesnac.com
* 创建时间：2024-04-08 10:08:20
* 版本：V1.0.0
* 描述：
*
*--------------------------------------------------------------------
* 修改人：
* 时间：
* 修改说明：
*
* 版本：V1.0.0
*--------------------------------------------------------------------*/
#endregion << 版 本 注 释 >>
namespace SlnMesnac.Repository.service.Impl
{
    public class MesProductOrderServiceImpl : BaseServiceImpl<MesProductOrder>, IMesProductOrderService
    {
        public MesProductOrderServiceImpl(Repository<MesProductOrder> rep) : base(rep)
        {
        }

        /// <summary>
        /// 根据工单编号获取工单信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        /// <exception cref="InvalidOperationException"></exception>
        public MesProductOrder GetMesOrderInfoById(int id)
        {
            try
            {
                return base._rep.GetById(id);
            }catch (Exception ex)
            {
                throw new InvalidOperationException($"根据工单编号获取工单信息异常:{ex.Message}");
            }
        }

        /// <summary>
        /// 更新MES工单信息
        /// </summary>
        /// <param name="orderInfo"></param>
        /// <returns></returns>
        /// <exception cref="NotImplementedException"></exception>
        public bool UpdateOrderInfo(MesProductOrder orderInfo)
        {
            try
            {
                return base._rep.Update(orderInfo);
            }
            catch (Exception ex)
            {
                throw new InvalidOperationException($"更新MES工单信息异常:{ex.Message}");
            }
        }
    }
}
