package cn.besteam.modules.medical.controller; import cn.besteam.common.api.vo.Result; import cn.besteam.common.aspect.annotation.AutoLog; import cn.besteam.common.dto.IdDTO; import cn.besteam.modules.medical.dto.MwTransitConfigListDTO; import cn.besteam.modules.medical.dto.MwTransitConfigDTO; import cn.besteam.modules.medical.vo.MwTransitConfigVO; import cn.besteam.modules.medical.entity.MwTransitConfig; import cn.besteam.modules.medical.service.IMwTransitConfigService; import cn.besteam.modules.system.service.ISysDepartmentService; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.Arrays; /** * @Title: Controller * @Description: 出库-运输配置 * @author: besteam * @date: 2020-04-25 * @version: V1.0 */ @RestController @RequestMapping("/medical/mwTransitConfig") @Slf4j @Api(description = "出库-运输配置") public class MwTransitConfigController { @Autowired private IMwTransitConfigService mwTransitConfigService; @Autowired private ISysDepartmentService sysDepartmentService; /** * 分页列表查询 * * @param dto * @return */ @PostMapping(value = "/list") @ApiOperation(value = "获取出库-运输配置数据列表", notes = "获取所有出库-运输配置数据列表", produces = "application/json") public Result> queryPageList(@Validated @RequestBody MwTransitConfigListDTO dto) { return Result.ok(mwTransitConfigService.queryPageList(dto)); } /** * 添加 * * @param dto * @return */ @PostMapping(value = "/add") @AutoLog(value = "添加出库-运输配置") @ApiOperation(value = "添加出库-运输配置", notes = "添加出库-运输配置", produces = "application/json") public Result add(@Validated @RequestBody MwTransitConfigDTO dto) { mwTransitConfigService.saveOrUpdate(dto); return Result.ok("新增成功"); } /** * 编辑 * * @param dto * @return */ @PostMapping(value = "/edit") @AutoLog(value = "编辑出库-运输配置") @ApiOperation(value = "编辑出库-运输配置", notes = "编辑出库-运输配置", produces = "application/json") public Result edit(@Validated @RequestBody MwTransitConfigDTO dto) { mwTransitConfigService.saveOrUpdate(dto); return Result.ok("编辑成功"); } /** * @param dto * @return */ @PostMapping(value = "/delete") @AutoLog(value = "删除出库-运输配置") @ApiOperation(value = "删除出库-运输配置", notes = "删除出库-运输配置", produces = "application/json") public Result delete(@Validated @RequestBody IdDTO dto) { Result result = new Result(); MwTransitConfig mwTransitConfig = mwTransitConfigService.getById(dto.getId()); if (mwTransitConfig == null) { result.error500("未找到对应实体"); } else { boolean ok = mwTransitConfigService.removeById(dto.getId()); if (ok) { result.success("删除成功!"); } } return result; } /** * 批量删除 * * @return */ @PostMapping(value = "/deleteBatch") @AutoLog(value = "批量删除出库-运输配置") @ApiOperation(value = "批量删除出库-运输配置", notes = "批量删除出库-运输配置", produces = "application/json") public Result deleteBatch(@Validated @RequestBody IdDTO dto) { Result result = new Result(); if (dto.getId() == null || dto.getId() <= 0) { result.error500("参数不识别!"); } else { this.mwTransitConfigService.removeByIds(Arrays.asList(String.valueOf(dto.getId()).split(","))); result.success("删除成功!"); } return result; } @GetMapping(value = "/listSelect") @ApiOperation(value = "出库配置下拉列表", notes = "出库配置下拉列表", produces = "application/json") @ApiImplicitParams({ @ApiImplicitParam(paramType="query", name = "parentId", value = "parentId", required = true, dataType = "Integer"), @ApiImplicitParam(paramType="query", name = "wasteType", value = "wasteType", dataType = "Integer"), @ApiImplicitParam(paramType="query", name = "searchType", value = "搜索类型(1:转移联单(需要过滤重复),2:医废补录(不需要去重))", dataType = "String"), }) public Result listSelect(Integer parentId, Integer wasteType,Integer searchType) { if(searchType==null){ searchType=1; } if(searchType==1){ //需要去重 return Result.ok(mwTransitConfigService.listSelectX(parentId, wasteType)); }else { //不需要去重 return Result.ok(mwTransitConfigService.listSelect(parentId, wasteType)); } } }