using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web.Http;
using WebAPI.Models;
using WebAPI.Service;
using WebAPI.WebS;
namespace WebAPI.Controllers
{
    public class NewApiController : ApiController
    {
        /// 
        /// 获取单据号
        /// 
        /// 
        [Route("api/newBill/getNewInterBillNo")]
        [HttpGet]
        public ApiResult GetNewInterBillNo(string billType)
        {
            var model = YqnQbService.GetInterBillNo(billType);
            return model;
        }
        /// 
        /// 流转卡获取信息
        /// 
        /// 
        [Route("api/newBill/getHbarCodeDetail")]
        [HttpGet]
        public ApiResult GetHbarCodeDetail(string sBillBarCode)
        {
            var model = YqnQbService.GetHbarCodeDetail(sBillBarCode);
            return model;
        }
        /// 
        /// 流水号获得信息
        /// 
        /// 
        [Route("api/newBill/getProcDetail")]
        [HttpGet]
        public ApiResult GetProcDetail(string sBillNo, string sProcNo)
        {
            var model = YqnQbService.GetProcDetail(sBillNo, sProcNo);
            return model;
        }
        /// 
        /// 获取生产资源列表
        /// 
        /// 
        /// 
        [Route("api/newBill/getSourceList")]
        [HttpGet]
        public ApiResult GetSourceList(string sWhere)
        {
            return YqnQbService.GetSourceList(sWhere);
        }
        /// 
        /// 获取工作中心
        /// 
        /// 
        /// 
        [Route("api/newBill/getWorkCenterList")]
        [HttpGet]
        public ApiResult GetWorkCenterList(string sWhere)
        {
            return YqnQbService.GetWorkCenterList(sWhere);
        }
        /// 
        /// 进站接收单
        /// 
        /// 
        /// 
        [Route("api/newBill/setStationInBill")]
        [HttpPost]
        public ApiResult SetStationInBill(ClsSc_StationInBillMain oMain)
        {
            return YqnQbService.SetStationInBill(oMain);
        }
        /// 
        /// 获取进站单列表
        /// 
        /// 
        /// 
        [Route("api/newBill/getStationInBillList")]
        [HttpGet]
        public ApiResult GetStationInBillList(string sWhere)
        {
            return YqnQbService.GetStationInBillList(sWhere);
        }
        /// 
        /// 获取出站单列表
        /// 
        /// 
        /// 
        [Route("api/newBill/getStationOutBillList")]
        [HttpGet]
        public ApiResult GetStationOutBillList(string sWhere)
        {
            return YqnQbService.GetStationOutBillList(sWhere);
        }
        /// 
        /// 出站站接收单
        /// 
        /// 
        /// 
        [Route("api/newBill/setStationOutBill")]
        [HttpPost]
        public ApiResult SetStationOutBill(StationOutBillView oMain)
        {
            return YqnQbService.SetStationOutBill(oMain);
        }
        /// 
        /// 获取流转卡列表
        /// 
        /// 
        /// 
        [Route("api/newBill/getStationMainList")]
        [HttpGet]
        public static ApiResult GetPorcessMainList(string sWhere)
        {
            return YqnQbService.GetPorcessMainList(sWhere);
        }
        /// 
        /// 获取流转卡子表列表
        /// 
        /// 
        /// 
        [Route("api/newBill/getPorcessSubList")]
        [HttpGet]
        public static ApiResult GetPorcessSubList(int hInterId)
        {
            return YqnQbService.GetPorcessSubList(hInterId);
        }
        /// 
        /// 获取工序列表
        /// 
        /// 
        /// 
        /// 
        /// 
        /// 
        [Route("api/newBill/getProcessList")]
        [HttpGet]
        public ApiResult> GetProcessList(string hName,string hNumber, string hBillSubType,int page,int limit,int hLevel=0)
        {
            return YqnQbService.GetProcessList(hName, hLevel, hNumber, hBillSubType , page,  limit);
        }
        /// 
        /// 获取单个工序详情
        /// 
        /// 
        /// 
        [Route("api/newBill/getProcessDetail")]
        [HttpGet]
        public ApiResult GetProcessDetail(int hItemId)
        {
            return YqnQbService.GetProcessDetail(hItemId);
        }
        /// 
        /// 删除某个工序
        /// 
        /// 
        /// 
        [Route("api/newBill/deleteProcess")]
        [HttpGet]
        public ApiResult DeleteProcess(int hItemId)
        {
            return YqnQbService.DeleteProcess(hItemId);
        }
        /// 
        /// 获取不良仓库
        /// 
        /// 
        /// 
        [Route("api/newBill/getBadWHList")]
        [HttpGet]
        public ApiResult GetBadWHList(string sWhere)
        {
            return YqnQbService.GetBadWHList(sWhere);
        }
        /// 
        /// 获取报废仓库
        /// 
        /// 
        /// 
        [Route("api/newBill/getWasterWHList")]
        [HttpGet]
        public ApiResult GetWasterWHList(string sWhere)
        {
            return YqnQbService.GetWasterWHList(sWhere);
        }
        /// 
        /// 获取研发不良品仓库
        /// 
        /// 
        /// 
        [Route("api/newBill/getBadCountDevelopWHList")]
        [HttpGet]
        public ApiResult GetBadCountDevelopWHList(string sWhere)
        {
            return YqnQbService.GetBadCountDevelopWHList(sWhere);
        }
        /// 
        /// 获取委外不良仓库
        /// 
        /// 
        /// 
        [Route("api/newBill/getWWBadWHList")]
        [HttpGet]
        public ApiResult GetWWBadWHList(string sWhere)
        {
            return YqnQbService.GetWWBadWHList(sWhere);
        }
        /// 
        /// 获取委外报废仓库
        /// 
        /// 
        /// 
        [Route("api/newBill/getWWWasterWHList")]
        [HttpGet]
        public ApiResult GetWWWasterWHList(string sWhere)
        {
            return YqnQbService.GetWWWasterWHList(sWhere);
        }
        /// 
        /// 获取良品仓库
        /// 
        /// 
        /// 
        [Route("api/newBill/getWHList")]
        [HttpGet]
        public ApiResult GetWHList(string sWhere)
        {
            return YqnQbService.GetWHList(sWhere);
        }
    }
}