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

namespace SlnMesnac.Repository.service
{
    public interface ProdPlanInfoService : IBaseService<ProdPLanInfo>
    {
        /// <summary>
        /// 获取所有工单信息
        /// </summary>
        /// <returns></returns>
        List<ProdPLanInfo> GetRecordStaffAttendances();

        /// <summary>
        /// 根据订单编号、工单编号、物料名称获取工单信息
        /// </summary>
        /// <returns></returns>
        List<ProdPLanInfo> GetRecordStaffAttendancesByConditions(string orderCode,string planCode,string materialCode, string stationCode, string planStatus);

        /// <summary>
        /// 根据订单编号、工单编号、物料名称获取工单信息
        /// </summary>
        /// <returns></returns>
        List<ProdPLanInfo> GetPlanInfoByConditions(string orderCode, string planCode, string materialCode, string stationCode, string planStatus);

        /// <summary>
        /// 根据工单编号获取此工单
        /// </summary>
        /// <param name="planCode"></param>
        /// <returns></returns>
        ProdPLanInfo GetProdPLanInfoByOrderCode(string stationCode,string planCode);

        /// <summary>
        /// 更新工单状态
        /// </summary>
        /// <param name="orderCode"></param>
        /// <param name="stationCode"></param>
        /// <param name="deviceCode"></param>
        /// <param name="processCode"></param>
        /// <param name="status"></param>
        public bool UpdatePlanStatus(string orderCode, string stationCode, string deviceCode, string processCode, string status);
    }
}
