后端 - 新增实体 ChejianBanci(表 ChejianBancis:车间 / 班次 / 日工作小时数) - 新增 ChejianBanciService 与 ChejianBanciController(api/prod/chejianbanci) 分页列表、编辑回显、新增、修改、删除、前缫车间下拉;含必填校验与同车间同班次重复校验 - 菜单种子:基础数据 → 车间班次(Timer 图标,权限 base:chejianbanci:list) - 修正历史数据:名称以「前缫」开头的部门职责类型改为「前缫」(25)。 迁移时 duty_type 被统一写成「其他」,导致按职责类型筛选车间取不到数据 前端 - 新增 web/src/views/base/chejianbanci/index.vue(列表 / 搜索 / 分页 / 新增 / 编辑 / 删除) - 注册组件映射 base/chejianbanci/index
76 lines
2.6 KiB
C#
76 lines
2.6 KiB
C#
using F9WebAiTest.Application.Common;
|
|
using F9WebAiTest.Application.Dtos.Prod;
|
|
using F9WebAiTest.Application.Services.Prod;
|
|
using F9WebAiTest.Domain.Common;
|
|
using F9WebAiTest.Domain.Entities;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
namespace F9WebAiTest.Api.Controllers.Prod;
|
|
|
|
/// <summary>车间班次(前缫车间排班配置)</summary>
|
|
[ApiController]
|
|
[Route("api/prod/chejianbanci")]
|
|
[Authorize]
|
|
public class ChejianBanciController : ControllerBase
|
|
{
|
|
private readonly IChejianBanciService _svc;
|
|
public ChejianBanciController(IChejianBanciService svc) => _svc = svc;
|
|
|
|
// 分页列表
|
|
[HttpGet]
|
|
public async Task<IActionResult> GetPaged([FromQuery] string like = "", [FromQuery] int pageIndex = 1,
|
|
[FromQuery] int pageSize = 20)
|
|
=> Ok(ApiResult<PageResult<ChejianbanciReadDto_View>>.Ok(
|
|
await _svc.GetPagedAsync(pageIndex, pageSize, like ?? string.Empty)));
|
|
|
|
// 车间下拉(前缫车间)
|
|
[HttpGet("qianxian-deps")]
|
|
public async Task<IActionResult> GetQianxianDeps()
|
|
=> Ok(ApiResult<List<ChejianbanciDepOptionDto>>.Ok(await _svc.GetQianxianDepsAsync()));
|
|
|
|
// 编辑回显
|
|
[HttpGet("{id}")]
|
|
public async Task<IActionResult> GetByIdForEdit(long id)
|
|
{
|
|
try { return Ok(ApiResult<ChejianbanciReadDto_Edit>.Ok(await _svc.GetByIdForEditAsync(id))); }
|
|
catch (ServiceException ex) { return StatusCode(ex.Code, ApiResult<object>.Fail(ex.Message, ex.Code)); }
|
|
}
|
|
|
|
// 新增
|
|
[HttpPost]
|
|
public async Task<IActionResult> Create([FromBody] ChejianbanciReadDto_Edit dto)
|
|
{
|
|
try
|
|
{
|
|
await _svc.CreateAsync(dto);
|
|
return Ok(ApiResult<object>.Ok(null, "新增成功"));
|
|
}
|
|
catch (ServiceException ex) { return StatusCode(ex.Code, ApiResult<object>.Fail(ex.Message, ex.Code)); }
|
|
}
|
|
|
|
// 修改
|
|
[HttpPut("{id}")]
|
|
public async Task<IActionResult> Update(long id, [FromBody] ChejianbanciReadDto_Edit dto)
|
|
{
|
|
try
|
|
{
|
|
await _svc.UpdateAsync(id, dto);
|
|
return Ok(ApiResult<object>.Ok(null, "修改成功"));
|
|
}
|
|
catch (ServiceException ex) { return StatusCode(ex.Code, ApiResult<object>.Fail(ex.Message, ex.Code)); }
|
|
}
|
|
|
|
// 删除
|
|
[HttpDelete("{id}")]
|
|
public async Task<IActionResult> Delete(long id)
|
|
{
|
|
try
|
|
{
|
|
await _svc.DeleteAsync(id);
|
|
return Ok(ApiResult<object>.Ok(null, "删除成功"));
|
|
}
|
|
catch (ServiceException ex) { return StatusCode(ex.Code, ApiResult<object>.Fail(ex.Message, ex.Code)); }
|
|
}
|
|
}
|