using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using VueWebCoreApi.DLL.BLL; using VueWebCoreApi.Models; using VueWebCoreApi.Models.UnitMaterial; using VueWebCoreApi.Tools; namespace VueWebCoreApi.Controllers { [ApiExplorerSettings(GroupName = "物料管理")] [ApiController] [Route("api/[controller]")] [ChannelActionFilter] public class ProductModelController : Controller { //定义全局信息返回变量 ToMessage mes = new ToMessage(); RedisHelper redis = new RedisHelper(); #region[计量单位组信息] /// /// 计量单位组信息 /// /// [Route(template: "TUnitGroup")] [HttpGet] public JsonResult TUnitGroup() { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); mes = ProductModelBLL.TUnitGroup(); return Json(mes); } #endregion #region[计量单位信息列表] /// /// 计量单位信息列表 /// /// 单计量(S) 多计量(M) /// 计量单位组编码 /// 页码 /// 每页显示条数 /// 排序字段 /// 排序规则 /// [Route(template: "TUnitData")] [HttpGet] public JsonResult TUnitData(string tunittype,string tunitgroupcode, int page = 0, int rows = 0, string prop = null, string order = null) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); int startNum = rows * (page - 1) + 1; //起始记录rowNum int endNum = rows * page; //结束记录 rowNum mes = ProductModelBLL.TUnitData(tunittype,tunitgroupcode, startNum, endNum, prop, order); return Json(mes); } #endregion #region[计量单位编辑获取组明细] /// /// 计量单位编辑获取组明细 /// /// 计量单位编码 /// 是否计量组:0(否)1(是) /// [Route(template: "TUnitGroupProject")] [HttpGet] public JsonResult TUnitGroupProject(string unitcode,string isgroup) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); mes = ProductModelBLL.TUnitGroupProject(unitcode,isgroup,us); return Json(mes); } #endregion #region[计量单位新增、编辑保存] /// /// 计量单位新增、编辑保存 /// /// 数据来源:ERP/MES /// 单计量(S) 多计量(M) /// 计量单位组编码 /// 操作类型:Add/Update /// 提交数据 /// [Route(template: "AddUpdateTUnit")] [HttpPost] public JsonResult AddUpdateTUnit(string data_sources, string tunittype,string tunitgroupcode,string OperType, List listjson) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); var menucode = HttpContext.Request.Headers["Menucode"].ToString(); //菜单编码 mes = ProductModelBLL.AddUpdateTUnit(menucode, data_sources,tunittype, tunitgroupcode, OperType, listjson, us); return Json(mes); } #endregion #region[计量单位删除] /// /// 计量单位删除 /// /// 数据来源:ERP/MES /// 单计量(S) 多计量(M) /// 计量单位组编码 /// 计量单位编码 /// [Route(template: "DeleteTUnit")] [HttpPost] public JsonResult DeleteTUnit(string data_sources, string tunittype, string tunitgroupcode, string tunitcode) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); mes = ProductModelBLL.DeleteTUnit(data_sources, tunittype, tunitgroupcode, tunitcode, us); return Json(mes); } #endregion #region[存货分类信息] /// /// 存货分类信息 /// /// [Route(template: "TMaterielClassTree")] [HttpGet] public JsonResult TMaterielClassTree() { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); mes = ProductModelBLL.TMaterielClassTree(); return Json(mes); } #endregion #region[存货分类新增/编辑提交] /// /// 存货分类新增/编辑提交 /// /// 数据来源:ERP/MES /// 存货分类编码 /// 存货分类名称 /// 上级分类编码 /// 操作类型:Add/Update /// [Route(template: "TMaterielClassTreeAddUpdate")] [HttpPost] public JsonResult TMaterielClassTreeAddUpdate(string data_sources, string inventoryclasscode, string inventoryclassname,string parentcode,string OperType) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); mes = ProductModelBLL.TMaterielClassTreeAddUpdate(data_sources,inventoryclasscode, inventoryclassname, parentcode, OperType, us); return Json(mes); } #endregion #region[存货分类删除] /// /// 存货分类删除 /// /// 存货分类编码字串集 /// [Route(template: "TMaterielClassTreeDelete")] [HttpPost] public JsonResult TMaterielClassTreeDelete(string inventoryclasscode) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); mes = ProductModelBLL.TMaterielClassTreeDelete(inventoryclasscode,us); return Json(mes); } #endregion #region[存货信息列表] /// /// 存货信息列表 /// /// 存货分类编码字符串集 /// 存货编码 /// 存货名称 /// 存货规格 /// 页码 /// 每页显示条数 /// 排序字段 /// 排序规则 /// [Route(template: "TMaterielData")] [HttpGet] public JsonResult TMaterielData(string inventoryclasscode,string partcode,string partname,string partspec, int page = 0, int rows = 0, string prop = null, string order = null) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); int startNum = rows * (page - 1) + 1; //起始记录rowNum int endNum = rows * page; //结束记录 rowNum mes = ProductModelBLL.TMaterielData(inventoryclasscode, partcode,partname,partspec, startNum, endNum, prop, order); return Json(mes); } #endregion #region[存货信息新增/编辑保存] /// /// 存货信息新增/编辑保存 /// /// 提交数据 /// [Route(template: "TMaterielAddUpdate")] [HttpPost] public JsonResult TMaterielAddUpdate([FromBody] JObject obj) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); string data_sources = obj["data_sources"].ToString(); //数据来源:ERP/MES string partcode = obj["partcode"].ToString(); //存货编码 string partname = obj["partname"].ToString(); //存货名称 string partspec = obj["partspec"].ToString(); //规格型号 string inventoryclasscode = obj["inventoryclasscode"].ToString(); //存货类型编码 string unittypcode = obj["unittypcode"].ToString(); //计量方式(0:多计量1:单计量) string unitcode = obj["unitcode"].ToString(); //计量单位编码/计量单位组编码 string unitsubcode = obj["unitsubcode"].ToString(); //计量单位组子项编码 string idSubUnitByReport= obj["idSubUnitByReport"].ToString(); //报表辅单位编码 string idUnitByStock = obj["idUnitByStock"].ToString(); //库存常用单位编码 string idUnitByPurchase = obj["idUnitByPurchase"].ToString(); //采购常用单位编码 string idUnitBySale = obj["idUnitBySale"].ToString(); //销售常用单位编码 string idunitbymanufacture= obj["idunitbymanufacture"].ToString(); //生产常用单位 string isPurchase= obj["isPurchase"].ToString(); //是否外购:0(否)1(是) string isSale = obj["isSale"].ToString(); //是否销售:0(否)1(是) string isMadeSelf = obj["isMadeSelf"].ToString(); //是否自制:0(否)1(是) string isMaterial = obj["isMaterial"].ToString(); //是否生产耗用:0(否)1(是) string isMadeRequest = obj["isMadeRequest"].ToString(); //是否委外:0(否)1(是) string idwarehouse= obj["idwarehouse"].ToString(); //仓库编码 string status=obj["status"].ToString(); //使用状态:正常(0)停用(1) string OperType = obj["OperType"].ToString(); //操作类型 mes = ProductModelBLL.TMaterielAddUpdate(data_sources,partcode,partname,partspec, inventoryclasscode, unittypcode, unitcode, unitsubcode, idSubUnitByReport, idUnitByStock, idUnitByPurchase,idUnitBySale, idunitbymanufacture, isPurchase, isSale, isMadeSelf, isMaterial, isMadeRequest, idwarehouse, status, OperType,us); return Json(mes); } #endregion #region[存货信息删除] /// /// 存货信息删除 /// /// 数据来源:ERP/MES /// 物料编码 /// [Route(template: "TMaterielDelete")] [HttpPost] public JsonResult TMaterielDelete(string data_sources,string partcode) { var token = HttpContext.Request.Headers["Token"].ToString(); User us = JwtTools.Denocode(token.ToString()); mes = ProductModelBLL.TMaterielDelete(data_sources, partcode, us); return Json(mes); } #endregion } }