using Cksoft.Data; using Cksoft.Data.Repository; using DllEapDal; using DllEapEntity.Dtos; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace DllEapBll.Controllers { /// /// 字典 /// [Route("eap/api/[controller]/[action]")] [Authorize] [ApiController] public class ConstItemController : ControllerBase { private readonly string eapslave = "eapslave"; /// /// 获取对应字典的数据源 /// /// /// [HttpGet] public IEnumerable> GetConstItemsByDicId(int dicId) { using (IDatabase db = DbFactory.Base(eapslave)) { var dal = new ConstItemDal(db); return dal.Get(dicId); } } /// /// 获取制程 /// /// /// [HttpGet] public IEnumerable> GetProcess(int? includeAll = 1) { using (IDatabase db = DbFactory.Base(eapslave)) { var dal = new ConstItemDal(db); var selects = dal.GetProcess().ToList(); if (includeAll != null && includeAll == 1) { var defaultSec = new SelectDto(); defaultSec.Label = "全部"; defaultSec.Value = null; selects.Insert(0, defaultSec); } return selects; } } /// /// 获取按机型分组的机台 /// /// /// [HttpGet] public IEnumerable GetGroupedMachines(int? factoryId) { using (IDatabase db = DbFactory.Base(eapslave)) { var dal = new MachineDal(db); return dal.GetGroupedMachines(factoryId); } } /// /// 获取带厂家的机型 /// /// [HttpGet] public IEnumerable GetMacModelsWithSupplier() { using (IDatabase db = DbFactory.Base(eapslave)) { string errorinfo = string.Empty; var dal = new MacModelDal(db); var macmodels = dal.Get(1, 1000, "asc", "a.FCode", "", errorinfo).Select(c => new { Label = c.FCode, Value = c.ID, Parent = c.SupplierID }); return macmodels; } } /// /// 获取机台 /// /// /// [HttpGet] public IEnumerable> GetEapMachines(string filter) { using (IDatabase db = DbFactory.Base(eapslave)) { var macDal = new MachineDal(db); return macDal.Get(filter).OrderBy(c => c.FCode).Select(c => new SelectDto { Label = c.FCode, Value = c.ID }); } } /// /// 获取标准状态 /// /// /// [HttpGet] public IEnumerable> GetStatndardStatuses(string filter) { using (IDatabase db = DbFactory.Base(eapslave)) { var dal = new StandardStatusDal(db); var defaultSec = new SelectDto(); defaultSec.Label = "全部"; defaultSec.Value = null; var selects = dal.GetAll(filter).ToList(); selects.Insert(0, defaultSec); return selects; } } } }