工艺路线管理后端
This commit is contained in:
parent
2a37604076
commit
be2b3e40aa
67
RIZO.Admin.WebApi/Controllers/Business/MaterialController.cs
Normal file
67
RIZO.Admin.WebApi/Controllers/Business/MaterialController.cs
Normal file
@ -0,0 +1,67 @@
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using RIZO.Service.Business;
|
||||
using RIZO.Model.Business;
|
||||
|
||||
namespace RIZO.Admin.WebApi.Controllers.Business
|
||||
{
|
||||
[ApiController]
|
||||
[Route("api/[controller]/[action]")]
|
||||
public class MaterialController : ControllerBase
|
||||
{
|
||||
private readonly MaterialService _service;
|
||||
|
||||
public MaterialController(MaterialService service)
|
||||
{
|
||||
_service = service;
|
||||
}
|
||||
|
||||
//获取所有的物料清单
|
||||
[HttpGet]
|
||||
public ActionResult<List<MaterialInfo>> GetMaterials([FromQuery] bool includeDeleted = false)//默认false,一般不用用户传。
|
||||
{
|
||||
return _service.GetAllMaterials(includeDeleted);
|
||||
}
|
||||
|
||||
//根据物料编码查询物料清单
|
||||
[HttpGet]
|
||||
public ActionResult<MaterialInfo> GetMaterial(string material_code)
|
||||
{
|
||||
var material = _service.GetMaterialByMaterialCode(material_code);
|
||||
if (material == null) return NotFound();//如果查询结果为空,则返回not found
|
||||
return material;
|
||||
}
|
||||
|
||||
//新增物料清单数据
|
||||
[HttpPost]
|
||||
public IActionResult AddMaterial([FromBody] MaterialInfo material)
|
||||
{
|
||||
_service.AddMaterial(material); // 假设创建人为admin
|
||||
return Ok();
|
||||
}
|
||||
|
||||
//批量新增物料清单数据
|
||||
[HttpPost]
|
||||
public IActionResult AddMaterials([FromBody] List<MaterialInfo> materials)
|
||||
{
|
||||
_service.AddMaterials(materials);
|
||||
return Ok();
|
||||
}
|
||||
|
||||
//修改物料清单数据
|
||||
[HttpPut]
|
||||
public IActionResult UpdateMaterial([FromBody] MaterialInfo material)
|
||||
{
|
||||
_service.UpdateMaterial(material);
|
||||
return Ok();
|
||||
}
|
||||
|
||||
//逻辑删除
|
||||
[HttpDelete]
|
||||
public IActionResult DeleteMaterial(int id, MaterialInfo material)
|
||||
{
|
||||
_service.DeleteMaterial(id, material);
|
||||
return Ok();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,100 @@
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using RIZO.Model.Business.Dto;
|
||||
using RIZO.Model.Business;
|
||||
using RIZO.Service.Business.IBusinessService;
|
||||
|
||||
//创建时间:2025-11-04
|
||||
namespace RIZO.Admin.WebApi.Controllers.Business
|
||||
{
|
||||
/// <summary>
|
||||
/// 工序表
|
||||
/// </summary>
|
||||
[Route("business/OperationInfo")]
|
||||
public class OperationInfoController : BaseController
|
||||
{
|
||||
/// <summary>
|
||||
/// 工序表接口
|
||||
/// </summary>
|
||||
private readonly IOperationInfoService _OperationInfoService;
|
||||
|
||||
public OperationInfoController(IOperationInfoService OperationInfoService)
|
||||
{
|
||||
_OperationInfoService = OperationInfoService;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询工序表列表
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("list")]
|
||||
[ActionPermissionFilter(Permission = "operationinfo:list")]
|
||||
public IActionResult QueryOperationInfo([FromQuery] OperationInfoQueryDto parm)
|
||||
{
|
||||
var response = _OperationInfoService.GetList(parm);
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 查询工序表详情
|
||||
/// </summary>
|
||||
/// <param name="Id"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("{Id}")]
|
||||
[ActionPermissionFilter(Permission = "operationinfo:query")]
|
||||
public IActionResult GetOperationInfo(long Id)
|
||||
{
|
||||
var response = _OperationInfoService.GetInfo(Id);
|
||||
|
||||
var info = response.Adapt<OperationInfoDto>();
|
||||
return SUCCESS(info);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 添加工序表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
[ActionPermissionFilter(Permission = "operationinfo:add")]
|
||||
[Log(Title = "工序表", BusinessType = BusinessType.INSERT)]
|
||||
public IActionResult AddOperationInfo([FromBody] OperationInfoDto parm)
|
||||
{
|
||||
var modal = parm.Adapt<OperationInfo>().ToCreate(HttpContext);
|
||||
|
||||
var response = _OperationInfoService.AddOperationInfo(modal);
|
||||
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 更新工序表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPut]
|
||||
[ActionPermissionFilter(Permission = "operationinfo:edit")]
|
||||
[Log(Title = "工序表", BusinessType = BusinessType.UPDATE)]
|
||||
public IActionResult UpdateOperationInfo([FromBody] OperationInfoDto parm)
|
||||
{
|
||||
var modal = parm.Adapt<OperationInfo>().ToUpdate(HttpContext);
|
||||
var response = _OperationInfoService.UpdateOperationInfo(modal);
|
||||
|
||||
return ToResponse(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 删除工序表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("delete/{ids}")]
|
||||
[ActionPermissionFilter(Permission = "operationinfo:delete")]
|
||||
[Log(Title = "工序表", BusinessType = BusinessType.DELETE)]
|
||||
public IActionResult DeleteOperationInfo([FromRoute]string ids)
|
||||
{
|
||||
var idArr = Tools.SplitAndConvert<long>(ids);
|
||||
|
||||
return ToResponse(_OperationInfoService.Delete(idArr));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
100
RIZO.Admin.WebApi/Controllers/Business/ProcessInfoController.cs
Normal file
100
RIZO.Admin.WebApi/Controllers/Business/ProcessInfoController.cs
Normal file
@ -0,0 +1,100 @@
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using RIZO.Model.Business.Dto;
|
||||
using RIZO.Model.Business;
|
||||
using RIZO.Service.Business.IBusinessService;
|
||||
|
||||
//创建时间:2025-11-04
|
||||
namespace RIZO.Admin.WebApi.Controllers.Business
|
||||
{
|
||||
/// <summary>
|
||||
/// 工艺表
|
||||
/// </summary>
|
||||
[Route("business/ProcessInfo")]
|
||||
public class ProcessInfoController : BaseController
|
||||
{
|
||||
/// <summary>
|
||||
/// 工艺表接口
|
||||
/// </summary>
|
||||
private readonly IProcessInfoService _ProcessInfoService;
|
||||
|
||||
public ProcessInfoController(IProcessInfoService ProcessInfoService)
|
||||
{
|
||||
_ProcessInfoService = ProcessInfoService;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询工艺表列表
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("list")]
|
||||
[ActionPermissionFilter(Permission = "processinfo:list")]
|
||||
public IActionResult QueryProcessInfo([FromQuery] ProcessInfoQueryDto parm)
|
||||
{
|
||||
var response = _ProcessInfoService.GetList(parm);
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 查询工艺表详情
|
||||
/// </summary>
|
||||
/// <param name="Id"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("{Id}")]
|
||||
[ActionPermissionFilter(Permission = "processinfo:query")]
|
||||
public IActionResult GetProcessInfo(long Id)
|
||||
{
|
||||
var response = _ProcessInfoService.GetInfo(Id);
|
||||
|
||||
var info = response.Adapt<ProcessInfoDto>();
|
||||
return SUCCESS(info);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 添加工艺表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
[ActionPermissionFilter(Permission = "processinfo:add")]
|
||||
[Log(Title = "工艺表", BusinessType = BusinessType.INSERT)]
|
||||
public IActionResult AddProcessInfo([FromBody] ProcessInfoDto parm)
|
||||
{
|
||||
var modal = parm.Adapt<ProcessInfo>().ToCreate(HttpContext);
|
||||
|
||||
var response = _ProcessInfoService.AddProcessInfo(modal);
|
||||
|
||||
return SUCCESS(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 更新工艺表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPut]
|
||||
[ActionPermissionFilter(Permission = "processinfo:edit")]
|
||||
[Log(Title = "工艺表", BusinessType = BusinessType.UPDATE)]
|
||||
public IActionResult UpdateProcessInfo([FromBody] ProcessInfoDto parm)
|
||||
{
|
||||
var modal = parm.Adapt<ProcessInfo>().ToUpdate(HttpContext);
|
||||
var response = _ProcessInfoService.UpdateProcessInfo(modal);
|
||||
|
||||
return ToResponse(response);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 删除工艺表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("delete/{ids}")]
|
||||
[ActionPermissionFilter(Permission = "processinfo:delete")]
|
||||
[Log(Title = "工艺表", BusinessType = BusinessType.DELETE)]
|
||||
public IActionResult DeleteProcessInfo([FromRoute]string ids)
|
||||
{
|
||||
var idArr = Tools.SplitAndConvert<long>(ids);
|
||||
|
||||
return ToResponse(_ProcessInfoService.Delete(idArr));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@ -13,6 +13,9 @@ using RIZO.Infrastructure.WebExtensions;
|
||||
using RIZO.ServiceCore.Signalr;
|
||||
using RIZO.ServiceCore.SqlSugar;
|
||||
using RIZO.Mall;
|
||||
|
||||
using RIZO.Repository.Business;
|
||||
using RIZO.Service.Business;
|
||||
//using SQLitePCL;
|
||||
|
||||
var builder = WebApplication.CreateBuilder(args);
|
||||
@ -24,6 +27,15 @@ builder.Services.AddDynamicApi();
|
||||
// Add services to the container.
|
||||
builder.Services.AddControllers();
|
||||
|
||||
// --- 这里开始注入 MaterialDao 和 MaterialService ---
|
||||
var dbConfigSection = builder.Configuration.GetSection("dbConfigs").GetChildren().First();
|
||||
var mySqlConn = dbConfigSection.GetValue<string>("Conn");
|
||||
builder.Services.AddSingleton(new RIZO.Repository.Business.MaterialDao(mySqlConn));
|
||||
builder.Services.AddSingleton<RIZO.Service.Business.MaterialService>();
|
||||
// --- 注入完成 ---
|
||||
|
||||
|
||||
|
||||
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
|
||||
builder.Services.AddEndpointsApiExplorer();
|
||||
builder.Services.AddSwaggerGen();
|
||||
|
||||
@ -27,7 +27,6 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Controllers\Business\" />
|
||||
<Folder Include="Properties\PublishProfiles\" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
//代码生成数据库配置
|
||||
"CodeGenDbConfig": {
|
||||
//代码生成连接字符串,注意{dbName}为固定格式,不要填写数据库名
|
||||
"Conn": "Data Source=139.224.232.211;User ID=root;Password=doantech123;Initial Catalog={dbName};",
|
||||
"DbType": 1,
|
||||
"Conn": "Data Source=139.224.232.211;User ID=root;Password=doantech123;Initial Catalog={dbName};Port=3308;",
|
||||
"DbType": 0,
|
||||
"IsAutoCloseConnection": true,
|
||||
"DbName": "ay2509055-guiyang-fluoresence-lmes" //代码生成默认连接数据库,Oracle库是实例的名称
|
||||
"DbName": "ay2509055-guiyang-fluorescence-lmes" //代码生成默认连接数据库,Oracle库是实例的名称
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
38
RIZO.Model/Business/Dto/OperationInfoDto.cs
Normal file
38
RIZO.Model/Business/Dto/OperationInfoDto.cs
Normal file
@ -0,0 +1,38 @@
|
||||
|
||||
namespace RIZO.Model.Business.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// 工序表查询对象
|
||||
/// </summary>
|
||||
public class OperationInfoQueryDto : PagerInfo
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 工序表输入输出对象
|
||||
/// </summary>
|
||||
public class OperationInfoDto
|
||||
{
|
||||
[Required(ErrorMessage = "Id不能为空")]
|
||||
public long Id { get; set; }
|
||||
|
||||
public string OperationCode { get; set; }
|
||||
|
||||
public string OperationName { get; set; }
|
||||
|
||||
public string ProcessCode { get; set; }
|
||||
|
||||
public int? Delflag { get; set; }
|
||||
|
||||
public string CreateBy { get; set; }
|
||||
|
||||
public DateTime? CreateTime { get; set; }
|
||||
|
||||
public string UpdateBy { get; set; }
|
||||
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
38
RIZO.Model/Business/Dto/ProcessInfoDto.cs
Normal file
38
RIZO.Model/Business/Dto/ProcessInfoDto.cs
Normal file
@ -0,0 +1,38 @@
|
||||
|
||||
namespace RIZO.Model.Business.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// 工艺表查询对象
|
||||
/// </summary>
|
||||
public class ProcessInfoQueryDto : PagerInfo
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 工艺表输入输出对象
|
||||
/// </summary>
|
||||
public class ProcessInfoDto
|
||||
{
|
||||
[Required(ErrorMessage = "主键ID不能为空")]
|
||||
public long Id { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "工艺编码不能为空")]
|
||||
public string ProcessCode { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "工艺名称不能为空")]
|
||||
public string ProcessName { get; set; }
|
||||
|
||||
public string CreateBy { get; set; }
|
||||
|
||||
public DateTime? CreateTime { get; set; }
|
||||
|
||||
public string UpdateBy { get; set; }
|
||||
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
|
||||
public int? Delflag { get; set; }
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
23
RIZO.Model/Business/MaterialInfo.cs
Normal file
23
RIZO.Model/Business/MaterialInfo.cs
Normal file
@ -0,0 +1,23 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace RIZO.Model.Business
|
||||
{
|
||||
public class MaterialInfo
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string MaterialCode { get; set; }
|
||||
public string MaterialName { get; set; }
|
||||
public string MaterialModel { get; set; }
|
||||
public string MaterialType { get; set; }
|
||||
public string ProcessCode { get; set; }
|
||||
public int DelFlag { get; set; } = 0;
|
||||
public string CreateBy { get; set; }
|
||||
public DateTime CreateTime { get; set; }
|
||||
public string UpdateBy { get; set; }
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
15
RIZO.Model/Business/MaterialTypeDict.cs
Normal file
15
RIZO.Model/Business/MaterialTypeDict.cs
Normal file
@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace RIZO.Model.Business
|
||||
{
|
||||
public class MaterialTypeDict
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string MaterialType { get; set; }
|
||||
public string MaterialTypeName { get; set; }
|
||||
}
|
||||
}
|
||||
64
RIZO.Model/Business/OperationInfo.cs
Normal file
64
RIZO.Model/Business/OperationInfo.cs
Normal file
@ -0,0 +1,64 @@
|
||||
|
||||
namespace RIZO.Model.Business
|
||||
{
|
||||
/// <summary>
|
||||
/// 工序表
|
||||
/// </summary>
|
||||
[SugarTable("operation_info")]
|
||||
public class OperationInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// Id
|
||||
/// </summary>
|
||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 工序编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "operation_code")]
|
||||
public string OperationCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 工序名称
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "operation_name")]
|
||||
public string OperationName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 工艺路线编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "process_code")]
|
||||
public string ProcessCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 删除标志(0未删除,1已删除)
|
||||
/// </summary>
|
||||
public int? Delflag { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建人
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "create_by")]
|
||||
public string CreateBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "create_time")]
|
||||
public DateTime? CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新人
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "update_by")]
|
||||
public string UpdateBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "update_time")]
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
19
RIZO.Model/Business/ProcessInfo.cs
Normal file
19
RIZO.Model/Business/ProcessInfo.cs
Normal file
@ -0,0 +1,19 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace RIZO.Model.Business
|
||||
{
|
||||
public class ProcessInfo
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string ProcessCode { get; set; }
|
||||
public string ProcessName { get; set; }
|
||||
public string CreateBy { get; set; }
|
||||
public DateTime CreateTime { get; set; }
|
||||
public string UpdateBy { get; set; }
|
||||
public DateTime? UpdateTime { get; set; }
|
||||
}
|
||||
}
|
||||
@ -12,4 +12,8 @@
|
||||
<PackageReference Include="SqlSugarCoreNoDrive" Version="5.1.4.198" />
|
||||
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Business\Dto\" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
||||
161
RIZO.Repository/Business/MaterialDao.cs
Normal file
161
RIZO.Repository/Business/MaterialDao.cs
Normal file
@ -0,0 +1,161 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using RIZO.Model.Business;
|
||||
using MySql.Data.MySqlClient;
|
||||
|
||||
namespace RIZO.Repository.Business
|
||||
{
|
||||
public class MaterialDao
|
||||
{
|
||||
private readonly string _connectionString;
|
||||
|
||||
public MaterialDao(string connectionString)
|
||||
{
|
||||
_connectionString = connectionString;
|
||||
}
|
||||
|
||||
// 查询列表
|
||||
public List<MaterialInfo> GetMaterials(bool includeDeleted = false)
|
||||
{
|
||||
var list = new List<MaterialInfo>();
|
||||
using var conn = new MySqlConnection(_connectionString);
|
||||
conn.Open();
|
||||
|
||||
//等价于SELECT * FROM material_info,它本身没有任何过滤作用,只是为了后续方便动态拼接条件。
|
||||
string sql = "SELECT * FROM material_info WHERE 1=1";
|
||||
if (!includeDeleted)//includeDeleted默认false,if条件默认为真,需要拼接条件AND del_flag=0,只查询未删除的数据。
|
||||
{
|
||||
sql += " AND del_flag=0";
|
||||
}
|
||||
|
||||
using var cmd = new MySqlCommand(sql, conn);
|
||||
using var reader = cmd.ExecuteReader();
|
||||
while (reader.Read())
|
||||
{
|
||||
list.Add(new MaterialInfo
|
||||
{
|
||||
Id = Convert.ToInt32(reader["id"]),
|
||||
MaterialCode = reader["material_code"].ToString(),
|
||||
MaterialName = reader["material_name"].ToString(),
|
||||
MaterialModel = reader["material_model"].ToString(),
|
||||
MaterialType = reader["material_type"].ToString(),
|
||||
ProcessCode = reader["process_code"].ToString(),
|
||||
DelFlag = Convert.ToInt32(reader["del_flag"]),
|
||||
CreateBy = reader["create_by"].ToString(),
|
||||
CreateTime = Convert.ToDateTime(reader["create_time"]),
|
||||
UpdateBy = reader["update_by"].ToString(),
|
||||
UpdateTime = reader["update_time"] == DBNull.Value ? null : (DateTime?)Convert.ToDateTime(reader["update_time"])
|
||||
});
|
||||
}
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
// 根据物料编码查询物料清单
|
||||
public MaterialInfo GetMaterialByMaterialCode(string material_code)
|
||||
{
|
||||
using var conn = new MySqlConnection(_connectionString);
|
||||
conn.Open();
|
||||
|
||||
string sql = "SELECT * FROM material_info WHERE material_code=@material_code AND del_flag=0";
|
||||
using var cmd = new MySqlCommand(sql, conn);
|
||||
cmd.Parameters.AddWithValue("@material_code", material_code);
|
||||
|
||||
using var reader = cmd.ExecuteReader();
|
||||
if (reader.Read())
|
||||
{
|
||||
return new MaterialInfo
|
||||
{
|
||||
Id = Convert.ToInt32(reader["id"]),
|
||||
MaterialCode = reader["material_code"].ToString(),
|
||||
MaterialName = reader["material_name"].ToString(),
|
||||
MaterialModel = reader["material_model"].ToString(),
|
||||
MaterialType = reader["material_type"].ToString(),
|
||||
ProcessCode = reader["process_code"].ToString(),
|
||||
DelFlag = Convert.ToInt32(reader["del_flag"]),
|
||||
CreateBy = reader["create_by"].ToString(),
|
||||
CreateTime = Convert.ToDateTime(reader["create_time"]),
|
||||
UpdateBy = reader["update_by"].ToString(),
|
||||
UpdateTime = reader["update_time"] == DBNull.Value ? null : (DateTime?)Convert.ToDateTime(reader["update_time"])
|
||||
};
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
//新增物料清单数据
|
||||
public void AddMaterial(MaterialInfo material)
|
||||
{
|
||||
using var conn = new MySqlConnection(_connectionString);
|
||||
conn.Open();
|
||||
|
||||
string sql = @"INSERT INTO material_info
|
||||
(material_code, material_name, material_model, material_type, process_code, create_by, create_time,update_by,update_time)
|
||||
VALUES (@code, @name, @model, @type, @process, @createBy, @createTime,@updateBy,@updateTime)";
|
||||
|
||||
using var cmd = new MySqlCommand(sql, conn);
|
||||
cmd.Parameters.AddWithValue("@code", material.MaterialCode);
|
||||
cmd.Parameters.AddWithValue("@name", material.MaterialName);
|
||||
cmd.Parameters.AddWithValue("@model", material.MaterialModel);
|
||||
cmd.Parameters.AddWithValue("@type", material.MaterialType);
|
||||
cmd.Parameters.AddWithValue("@process", material.ProcessCode);
|
||||
cmd.Parameters.AddWithValue("@createBy", material.CreateBy);
|
||||
cmd.Parameters.AddWithValue("@createTime", material.CreateTime);
|
||||
cmd.Parameters.AddWithValue("@updateBy", material.UpdateBy);
|
||||
cmd.Parameters.AddWithValue("@updateTime", material.UpdateTime);
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
}
|
||||
|
||||
//批量新增物料清单数据
|
||||
public void AddMaterials(List<MaterialInfo> materials)
|
||||
{
|
||||
foreach (var m in materials)
|
||||
{
|
||||
AddMaterial(m);
|
||||
}
|
||||
}
|
||||
|
||||
//修改物料清单数据
|
||||
public void UpdateMaterial(MaterialInfo material)
|
||||
{
|
||||
using var conn = new MySqlConnection(_connectionString);
|
||||
conn.Open();
|
||||
|
||||
string sql = @"UPDATE material_info SET
|
||||
material_code=@code, material_name=@name, material_model=@model,
|
||||
material_type=@type, process_code=@process, update_by=@updateBy,
|
||||
update_time=@updateTime
|
||||
WHERE id=@id";
|
||||
|
||||
using var cmd = new MySqlCommand(sql, conn);
|
||||
cmd.Parameters.AddWithValue("@code", material.MaterialCode);
|
||||
cmd.Parameters.AddWithValue("@name", material.MaterialName);
|
||||
cmd.Parameters.AddWithValue("@model", material.MaterialModel);
|
||||
cmd.Parameters.AddWithValue("@type", material.MaterialType);
|
||||
cmd.Parameters.AddWithValue("@process", material.ProcessCode);
|
||||
cmd.Parameters.AddWithValue("@updateBy", material.UpdateBy);
|
||||
cmd.Parameters.AddWithValue("@updateTime", material.UpdateTime);
|
||||
cmd.Parameters.AddWithValue("@id", material.Id);
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
}
|
||||
|
||||
// 逻辑删除
|
||||
public void DeleteMaterial(int id, MaterialInfo material)
|
||||
{
|
||||
using var conn = new MySqlConnection(_connectionString);
|
||||
conn.Open();
|
||||
|
||||
string sql = "UPDATE material_info SET del_flag=1, update_by=@updateBy, update_time=@updateTime WHERE id=@id";
|
||||
using var cmd = new MySqlCommand(sql, conn);
|
||||
cmd.Parameters.AddWithValue("@id", id);
|
||||
cmd.Parameters.AddWithValue("@updateBy", material.UpdateBy);
|
||||
cmd.Parameters.AddWithValue("@updateTime", DateTime.Now);
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -11,6 +11,7 @@
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Mapster" Version="7.4.0" />
|
||||
<PackageReference Include="MySql.Data" Version="9.5.0" />
|
||||
<PackageReference Include="MySqlConnector" Version="2.4.0" />
|
||||
<PackageReference Include="SqlSugar.IOC" Version="2.0.1" />
|
||||
<PackageReference Include="SqlSugarCoreNoDrive" Version="5.1.4.198" />
|
||||
|
||||
@ -0,0 +1,21 @@
|
||||
using RIZO.Model.Business.Dto;
|
||||
using RIZO.Model.Business;
|
||||
|
||||
namespace RIZO.Service.Business.IBusinessService
|
||||
{
|
||||
/// <summary>
|
||||
/// 工序表service接口
|
||||
/// </summary>
|
||||
public interface IOperationInfoService : IBaseService<OperationInfo>
|
||||
{
|
||||
PagedInfo<OperationInfoDto> GetList(OperationInfoQueryDto parm);
|
||||
|
||||
OperationInfo GetInfo(long Id);
|
||||
|
||||
|
||||
OperationInfo AddOperationInfo(OperationInfo parm);
|
||||
int UpdateOperationInfo(OperationInfo parm);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,21 @@
|
||||
using RIZO.Model.Business.Dto;
|
||||
using RIZO.Model.Business;
|
||||
|
||||
namespace RIZO.Service.Business.IBusinessService
|
||||
{
|
||||
/// <summary>
|
||||
/// 工艺表service接口
|
||||
/// </summary>
|
||||
public interface IProcessInfoService : IBaseService<ProcessInfo>
|
||||
{
|
||||
PagedInfo<ProcessInfoDto> GetList(ProcessInfoQueryDto parm);
|
||||
|
||||
ProcessInfo GetInfo(long Id);
|
||||
|
||||
|
||||
ProcessInfo AddProcessInfo(ProcessInfo parm);
|
||||
int UpdateProcessInfo(ProcessInfo parm);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
67
RIZO.Service/Business/MaterialService.cs
Normal file
67
RIZO.Service/Business/MaterialService.cs
Normal file
@ -0,0 +1,67 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using RIZO.Repository.Business;
|
||||
using RIZO.Model.Business;
|
||||
|
||||
namespace RIZO.Service.Business
|
||||
{
|
||||
public class MaterialService
|
||||
{
|
||||
private readonly MaterialDao _dao;
|
||||
|
||||
public MaterialService(MaterialDao dao)
|
||||
{
|
||||
_dao = dao;
|
||||
}
|
||||
|
||||
//获取所有的物料清单
|
||||
public List<MaterialInfo> GetAllMaterials(bool includeDeleted = false)
|
||||
{
|
||||
return _dao.GetMaterials(includeDeleted);
|
||||
}
|
||||
|
||||
//根据物料编码查询物料清单
|
||||
public MaterialInfo GetMaterialByMaterialCode(string material_code)
|
||||
{
|
||||
return _dao.GetMaterialByMaterialCode(material_code);
|
||||
}
|
||||
|
||||
//新增物料清单数据
|
||||
public void AddMaterial(MaterialInfo material)
|
||||
{
|
||||
|
||||
material.CreateTime = DateTime.Now;
|
||||
material.UpdateTime = DateTime.Now;
|
||||
_dao.AddMaterial(material);
|
||||
}
|
||||
|
||||
////批量新增物料清单数据
|
||||
public void AddMaterials(List<MaterialInfo> materials)
|
||||
{
|
||||
foreach (var m in materials)
|
||||
{
|
||||
|
||||
m.CreateTime = DateTime.Now;
|
||||
m.UpdateTime = DateTime.Now;
|
||||
}
|
||||
_dao.AddMaterials(materials);
|
||||
}
|
||||
|
||||
//修改物料清单数据
|
||||
public void UpdateMaterial(MaterialInfo material)
|
||||
{
|
||||
|
||||
material.UpdateTime = DateTime.Now;
|
||||
_dao.UpdateMaterial(material);
|
||||
}
|
||||
|
||||
//逻辑删除
|
||||
public void DeleteMaterial(int id, MaterialInfo material)
|
||||
{
|
||||
_dao.DeleteMaterial(id, material);
|
||||
}
|
||||
}
|
||||
}
|
||||
79
RIZO.Service/Business/OperationInfoService.cs
Normal file
79
RIZO.Service/Business/OperationInfoService.cs
Normal file
@ -0,0 +1,79 @@
|
||||
using Infrastructure.Attribute;
|
||||
using Infrastructure.Extensions;
|
||||
using RIZO.Model.Business.Dto;
|
||||
using RIZO.Model.Business;
|
||||
using RIZO.Repository;
|
||||
using RIZO.Service.Business.IBusinessService;
|
||||
|
||||
namespace RIZO.Service.Business
|
||||
{
|
||||
/// <summary>
|
||||
/// 工序表Service业务层处理
|
||||
/// </summary>
|
||||
[AppService(ServiceType = typeof(IOperationInfoService), ServiceLifetime = LifeTime.Transient)]
|
||||
public class OperationInfoService : BaseService<OperationInfo>, IOperationInfoService
|
||||
{
|
||||
/// <summary>
|
||||
/// 查询工序表列表
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
public PagedInfo<OperationInfoDto> GetList(OperationInfoQueryDto parm)
|
||||
{
|
||||
var predicate = QueryExp(parm);
|
||||
|
||||
var response = Queryable()
|
||||
.Where(predicate.ToExpression())
|
||||
.ToPage<OperationInfo, OperationInfoDto>(parm);
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取详情
|
||||
/// </summary>
|
||||
/// <param name="Id"></param>
|
||||
/// <returns></returns>
|
||||
public OperationInfo GetInfo(long Id)
|
||||
{
|
||||
var response = Queryable()
|
||||
.Where(x => x.Id == Id)
|
||||
.First();
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 添加工序表
|
||||
/// </summary>
|
||||
/// <param name="model"></param>
|
||||
/// <returns></returns>
|
||||
public OperationInfo AddOperationInfo(OperationInfo model)
|
||||
{
|
||||
return Insertable(model).ExecuteReturnEntity();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改工序表
|
||||
/// </summary>
|
||||
/// <param name="model"></param>
|
||||
/// <returns></returns>
|
||||
public int UpdateOperationInfo(OperationInfo model)
|
||||
{
|
||||
return Update(model, true);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询导出表达式
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
private static Expressionable<OperationInfo> QueryExp(OperationInfoQueryDto parm)
|
||||
{
|
||||
var predicate = Expressionable.Create<OperationInfo>();
|
||||
|
||||
return predicate;
|
||||
}
|
||||
}
|
||||
}
|
||||
79
RIZO.Service/Business/ProcessInfoService.cs
Normal file
79
RIZO.Service/Business/ProcessInfoService.cs
Normal file
@ -0,0 +1,79 @@
|
||||
using Infrastructure.Attribute;
|
||||
using Infrastructure.Extensions;
|
||||
using RIZO.Model.Business.Dto;
|
||||
using RIZO.Model.Business;
|
||||
using RIZO.Repository;
|
||||
using RIZO.Service.Business.IBusinessService;
|
||||
|
||||
namespace RIZO.Service.Business
|
||||
{
|
||||
/// <summary>
|
||||
/// 工艺表Service业务层处理
|
||||
/// </summary>
|
||||
[AppService(ServiceType = typeof(IProcessInfoService), ServiceLifetime = LifeTime.Transient)]
|
||||
public class ProcessInfoService : BaseService<ProcessInfo>, IProcessInfoService
|
||||
{
|
||||
/// <summary>
|
||||
/// 查询工艺表列表
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
public PagedInfo<ProcessInfoDto> GetList(ProcessInfoQueryDto parm)
|
||||
{
|
||||
var predicate = QueryExp(parm);
|
||||
|
||||
var response = Queryable()
|
||||
.Where(predicate.ToExpression())
|
||||
.ToPage<ProcessInfo, ProcessInfoDto>(parm);
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取详情
|
||||
/// </summary>
|
||||
/// <param name="Id"></param>
|
||||
/// <returns></returns>
|
||||
public ProcessInfo GetInfo(long Id)
|
||||
{
|
||||
var response = Queryable()
|
||||
.Where(x => x.Id == Id)
|
||||
.First();
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 添加工艺表
|
||||
/// </summary>
|
||||
/// <param name="model"></param>
|
||||
/// <returns></returns>
|
||||
public ProcessInfo AddProcessInfo(ProcessInfo model)
|
||||
{
|
||||
return Insertable(model).ExecuteReturnEntity();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改工艺表
|
||||
/// </summary>
|
||||
/// <param name="model"></param>
|
||||
/// <returns></returns>
|
||||
public int UpdateProcessInfo(ProcessInfo model)
|
||||
{
|
||||
return Update(model, true);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查询导出表达式
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
private static Expressionable<ProcessInfo> QueryExp(ProcessInfoQueryDto parm)
|
||||
{
|
||||
var predicate = Expressionable.Create<ProcessInfo>();
|
||||
|
||||
return predicate;
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user