WorkcenterController.cs 4.77 KB
using Autofac.Core;
using Hh.Mes.Common.Redis;
using Hh.Mes.Common.Request;
using Hh.Mes.POJO.WebEntity;
using Hh.Mes.Service.Configure;
using Hh.Mes.Service.SystemAuth;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using System;
using WebMvc.Aop;

namespace WebMvc.Areas.Configure.Controllers
{
    [Area("Configure")]
    public class WorkcenterController : BaseController
    {
        private readonly WorkcenterService _service;

        public WorkcenterController(IAuth authUtil, WorkcenterService service) : base(authUtil)
        {
            _service = service;
            _service.sysWebUser = authUtil.GetCurrentUser().User;
        }
 
        #region 视图功能
        /// <summary>
        /// 默认视图Action
        /// </summary>
        /// <returns></returns>
        [Authenticate]
        [ServiceFilter(typeof(OperLogFilter))]
        public ActionResult Index()
        {
            return View();
        }
        #endregion
 
        #region 数据操作
 
        /// <summary>
        /// 加载及分页查询
        /// </summary>
        /// <param name="pageRequest">表单请求信息</param>
        /// <param name="entity">请求条件实例</param>
        /// <returns></returns>
        [HttpPost]
        public string Load(PageReq pageRequest, base_work_center entity)
        {
            return Serialize(_service.Load(pageRequest, entity));
        }
 
        /// <summary>
        /// 新增数据
        /// </summary>
        /// <param name="entity">新增实例</param>
        /// <returns></returns>
        [HttpPost]
        [ServiceFilter(typeof(OperLogFilter))]
        public string Ins(base_work_center entity)
        {
            var user = _service.sysWebUser?.Account;
            return Serialize(_service.Ins(entity,user));
        }
 
        /// <summary>
        /// 修改数据
        /// </summary>
        /// <param name="entity">修改实例</param>
        /// <returns></returns>
        [HttpPost]
        [ServiceFilter(typeof(OperLogFilter))]
        public string Upd(base_work_center entity)
        {
            var user = _service.sysWebUser?.Account;
            return Serialize(_service.Upd(entity, user));
        }
 
        /// <summary>
        /// 删除数据
        /// </summary>
        /// <param name="ids"></param>
        /// <returns></returns>
        [HttpPost]
        [ServiceFilter(typeof(OperLogFilter))]
        public string DelByIds(int[] ids)
        {
            return Serialize(_service.DelByIds(ids));
        }
        #endregion
 
        #region 导出数据
        /// <summary>
        /// 导出数据
        /// </summary>
        /// <param name="entity">请求条件实例</param>
        /// <returns></returns>
        [HttpPost]
        public string Export(base_work_center entity)
        {
            return Serialize(_service.ExportData(entity));
        }
        #endregion

        #region 自定义方法
        /// <summary>
        /// 事实获取已经绑定的工位
        /// </summary>
        /// <param name="workCenterCode"></param>
        /// <returns></returns>
        public string GetWorkCenterCode (string workCenterCode)
        {
            return Serialize(_service.GetWorkCenterCode(workCenterCode));
        }
        
        /// <summary>
        /// 操作工作中心与工位的关系表
        /// </summary>
        /// <param name="stationCode"></param>
        /// <param name="workCenterCode"></param>
        /// <param name="checkeds"></param>
        /// <param name="WorkKey"></param>
        /// <returns></returns>
        [HttpPost]
        [XSSFilter]
        public string OperateWorkCenterStation(string stationCode, string workCenterCode, bool checkeds, Guid WorkKey)
        {
            return Serialize(_service.OperateWorkCenterStation(stationCode, workCenterCode, checkeds, WorkKey));
        }

        /// <summary>
        /// 事实获取已经绑定的班组
        /// </summary>
        /// <param name="workCenterCode"></param>
        /// <returns></returns>
        public string GetWorkCenterTeamCode(string workCenterCode)
        {
            return Serialize(_service.GetWorkCenterTeamCode(workCenterCode));
        }

        /// <summary>
        /// 操作工作中心与班组的关系表
        /// </summary>
        /// <param name="teamCode"></param>
        /// <param name="workCenterCode"></param>
        /// <param name="checkeds"></param>
        /// <param name="WorkKey"></param>
        /// <returns></returns>
        [HttpPost]
        [XSSFilter]
        public string OperateWorkCenterTeam(string teamCode, string workCenterCode, bool checkeds, Guid WorkKey)
        {
            return Serialize(_service.OperateWorkCenterTeam(teamCode, workCenterCode, checkeds, WorkKey));
        }
        #endregion
    }
}