|
|
|
@ -0,0 +1,216 @@
|
|
|
|
|
package com.glxp.api.controller.basic;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
|
|
import com.glxp.api.annotation.Log;
|
|
|
|
|
import com.glxp.api.common.enums.ResultEnum;
|
|
|
|
|
import com.glxp.api.common.res.BaseResponse;
|
|
|
|
|
import com.glxp.api.common.util.ResultVOUtils;
|
|
|
|
|
import com.glxp.api.constant.BusinessType;
|
|
|
|
|
import com.glxp.api.entity.basic.BasicHospTypeEntity;
|
|
|
|
|
import com.glxp.api.entity.basic.BasicProductCategory;
|
|
|
|
|
import com.glxp.api.entity.basic.UdiEntity;
|
|
|
|
|
import com.glxp.api.req.basic.BasicHospTypeFilterRequest;
|
|
|
|
|
import com.glxp.api.req.basic.BasicHospTypeRequest;
|
|
|
|
|
import com.glxp.api.req.basic.FilterUdiRelRequest;
|
|
|
|
|
import com.glxp.api.res.PageSimpleResponse;
|
|
|
|
|
import com.glxp.api.res.basic.BasicHospTypeResponse;
|
|
|
|
|
import com.glxp.api.res.basic.UdiRelevanceResponse;
|
|
|
|
|
import com.glxp.api.service.basic.BasicHospTypeService;
|
|
|
|
|
import com.glxp.api.service.basic.BasicProductCategoryService;
|
|
|
|
|
import com.glxp.api.service.basic.UdiRelevanceService;
|
|
|
|
|
import com.glxp.api.util.StringUtils;
|
|
|
|
|
import com.glxp.api.util.udi.FilterUdiUtils;
|
|
|
|
|
import org.springframework.validation.BindingResult;
|
|
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
|
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
@RestController
|
|
|
|
|
public class BasicProductCategoryController {
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
BasicHospTypeService basicHospTypeService;
|
|
|
|
|
@Resource
|
|
|
|
|
BasicProductCategoryService basicProductCategoryService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@GetMapping("/udiwms/basic/product/category/filter")
|
|
|
|
|
public BaseResponse filterBasicUnitMaintain(BasicHospTypeFilterRequest basicHospTypeFilterRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
}
|
|
|
|
|
List<BasicHospTypeEntity> basicHospTypeEntities = basicHospTypeService.filterHospTypeList(basicHospTypeFilterRequest);
|
|
|
|
|
PageInfo<BasicHospTypeEntity> pageInfo = new PageInfo<>(basicHospTypeEntities);
|
|
|
|
|
PageSimpleResponse<BasicHospTypeEntity> pageSimpleResponse = new PageSimpleResponse<>();
|
|
|
|
|
pageSimpleResponse.setTotal(pageInfo.getTotal());
|
|
|
|
|
pageSimpleResponse.setList(basicHospTypeEntities);
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.success(pageSimpleResponse);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@PostMapping("/udiwms/basic/product/category/selectList")
|
|
|
|
|
public BaseResponse menuList(@RequestBody BasicHospTypeFilterRequest basicHospTypeFilterRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
}
|
|
|
|
|
List<BasicHospTypeEntity> basicHospTypeEntities = basicHospTypeService.getMenuList(basicHospTypeFilterRequest);
|
|
|
|
|
return ResultVOUtils.success(basicHospTypeEntities);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@PostMapping("/udiwms/basic/product/category/menuAllList")
|
|
|
|
|
public BaseResponse menuAllList(@RequestBody BasicHospTypeFilterRequest basicHospTypeFilterRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
}
|
|
|
|
|
List<BasicHospTypeEntity> basicHospTypeEntities = basicHospTypeService.getAllMenuList(basicHospTypeFilterRequest);
|
|
|
|
|
return ResultVOUtils.success(basicHospTypeEntities);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@GetMapping("/udiwms/basic/product/category/getOneName")
|
|
|
|
|
public BaseResponse getOneName() {
|
|
|
|
|
|
|
|
|
|
BasicHospTypeEntity basicHospTypeEntities = basicHospTypeService.selectBasicHospTypeEntity();
|
|
|
|
|
return ResultVOUtils.success(basicHospTypeEntities);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@PostMapping("/udiwms/basic/product/category/save")
|
|
|
|
|
public BaseResponse save(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(StrUtil.isEmpty(basicHospTypeRequest.getName())){
|
|
|
|
|
return ResultVOUtils.error(999, "名字不能为空!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Boolean falg=basicHospTypeService.checkName(basicHospTypeRequest,1);
|
|
|
|
|
if(falg==false){
|
|
|
|
|
return ResultVOUtils.error(999, "院内分类名字已存在!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
falg = basicHospTypeService.saveBasicHospType(basicHospTypeRequest);
|
|
|
|
|
if (!falg) {
|
|
|
|
|
return ResultVOUtils.error(999, "插入失败!");
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@PostMapping("/udiwms/basic/product/category/update")
|
|
|
|
|
@Log(title = "单据管理", businessType = BusinessType.UPDATE)
|
|
|
|
|
public BaseResponse update(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
}
|
|
|
|
|
if(StrUtil.isEmpty(basicHospTypeRequest.getName())){
|
|
|
|
|
return ResultVOUtils.error(999, "名字不能为空!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(basicHospTypeRequest.getCode().equals(basicHospTypeRequest.getParentCode())){
|
|
|
|
|
return ResultVOUtils.error(999, "上级菜单不能选择自己!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Boolean falg=basicHospTypeService.checkName(basicHospTypeRequest,2);
|
|
|
|
|
if(falg==false){
|
|
|
|
|
return ResultVOUtils.error(999, "院内分类名字已存在!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
falg = basicHospTypeService.updateBasicHospType(basicHospTypeRequest);
|
|
|
|
|
if (!falg) {
|
|
|
|
|
return ResultVOUtils.error(999, "更新失败!");
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@GetMapping("/udiwms/basic/product/category/delect")
|
|
|
|
|
@Log(title = "单据管理", businessType = BusinessType.DELETE)
|
|
|
|
|
public BaseResponse delect(BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
}
|
|
|
|
|
String msg = basicHospTypeService.delectBasicHospType(basicHospTypeRequest);
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotBlank(msg)) {
|
|
|
|
|
return ResultVOUtils.error(999, msg);
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@GetMapping("/udiwms/basic/product/category/getTree")
|
|
|
|
|
public BaseResponse getTree() {
|
|
|
|
|
List<BasicHospTypeResponse> basicHospTypeEntities = basicHospTypeService.getTreeList();
|
|
|
|
|
return ResultVOUtils.success(basicHospTypeEntities);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@PostMapping("/udiwms/basic/product/category/bindRel")
|
|
|
|
|
public BaseResponse saveRel(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Boolean falg = basicHospTypeService.bindHospProduct(basicHospTypeRequest);
|
|
|
|
|
return ResultVOUtils.success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
UdiRelevanceService udiRelevanceService;
|
|
|
|
|
|
|
|
|
|
@GetMapping("/udiwms/basic/product/category/bindList")
|
|
|
|
|
public BaseResponse bindList(FilterUdiRelRequest filterUdiRelRequest) {
|
|
|
|
|
|
|
|
|
|
if (StrUtil.isNotEmpty(filterUdiRelRequest.getUdiCode())) {
|
|
|
|
|
UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode());
|
|
|
|
|
if (udiEntity != null) {
|
|
|
|
|
filterUdiRelRequest.setNameCode(udiEntity.getUdi());
|
|
|
|
|
filterUdiRelRequest.setUnionCode(udiEntity.getUdi());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//如果输入DI标识,精确找到不同层级对应的产品信息
|
|
|
|
|
if (StrUtil.isNotEmpty(filterUdiRelRequest.getUnionCode())) {
|
|
|
|
|
FilterUdiRelRequest filterUdiInfoRequest = new FilterUdiRelRequest();
|
|
|
|
|
filterUdiInfoRequest.setNameCode(filterUdiRelRequest.getUnionCode());
|
|
|
|
|
List<UdiRelevanceResponse> temps = udiRelevanceService.filterUdiGp(filterUdiInfoRequest);
|
|
|
|
|
if (temps != null && temps.size() > 0) {
|
|
|
|
|
filterUdiRelRequest.setOriginUuid(temps.get(0).getOriginUuid());
|
|
|
|
|
filterUdiRelRequest.setNameCode(filterUdiInfoRequest.getNameCode());
|
|
|
|
|
filterUdiRelRequest.setUnionCode(null);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
//只查找主标识产品信息
|
|
|
|
|
filterUdiRelRequest.setDiType(1);
|
|
|
|
|
}
|
|
|
|
|
List<UdiRelevanceResponse> udiRelevanceResponses = basicHospTypeService.filterUdiGp(filterUdiRelRequest);
|
|
|
|
|
PageInfo<UdiRelevanceResponse> pageInfo = new PageInfo<>(udiRelevanceResponses);
|
|
|
|
|
PageSimpleResponse<UdiRelevanceResponse> pageSimpleResponse = new PageSimpleResponse<>();
|
|
|
|
|
pageSimpleResponse.setTotal(pageInfo.getTotal());
|
|
|
|
|
pageSimpleResponse.setList(udiRelevanceResponses);
|
|
|
|
|
return ResultVOUtils.success(pageSimpleResponse);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@PostMapping("/udiwms/basic/product/category/unbindRel")
|
|
|
|
|
@Log(title = "单据管理", businessType = BusinessType.UPDATE)
|
|
|
|
|
public BaseResponse unbindRel(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Boolean falg = basicHospTypeService.unbindHospProduct(basicHospTypeRequest);
|
|
|
|
|
return ResultVOUtils.success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|