物资类别功能

dev
wangwei 2 years ago
parent 07b6009203
commit 5e3901e040

@ -11,15 +11,13 @@ 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.req.basic.*;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.BasicHospTypeResponse;
import com.glxp.api.res.basic.BasicProductCategoryTypeResponse;
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.service.basic.impl.BasicProductCategoryService;
import com.glxp.api.util.StringUtils;
import com.glxp.api.util.udi.FilterUdiUtils;
import org.springframework.validation.BindingResult;
@ -29,6 +27,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@RestController
@ -56,13 +55,14 @@ public class BasicProductCategoryController {
}
@PostMapping("/udiwms/basic/product/category/selectList")
public BaseResponse menuList(@RequestBody BasicHospTypeFilterRequest basicHospTypeFilterRequest, BindingResult bindingResult) {
public BaseResponse menuList(@RequestBody BasicProductTypeFilterRequest basicProductTypeFilterRequest, 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);
List<BasicProductCategory> menuList = basicProductCategoryService.getMenuList(basicProductTypeFilterRequest);
return ResultVOUtils.success(menuList);
}
@PostMapping("/udiwms/basic/product/category/menuAllList")
@ -78,27 +78,25 @@ public class BasicProductCategoryController {
@GetMapping("/udiwms/basic/product/category/getOneName")
public BaseResponse getOneName() {
BasicHospTypeEntity basicHospTypeEntities = basicHospTypeService.selectBasicHospTypeEntity();
return ResultVOUtils.success(basicHospTypeEntities);
BasicProductCategory basicProductCategory = basicProductCategoryService.selectBasicHospTypeEntity();
return ResultVOUtils.success(basicProductCategory);
}
@PostMapping("/udiwms/basic/product/category/save")
public BaseResponse save(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
public BaseResponse save(@RequestBody BasicProductTypeRequest basicProductTypeRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
if(StrUtil.isEmpty(basicHospTypeRequest.getName())){
if(StrUtil.isEmpty(basicProductTypeRequest.getName())){
return ResultVOUtils.error(999, "名字不能为空!");
}
Boolean falg=basicHospTypeService.checkName(basicHospTypeRequest,1);
Boolean falg = basicProductCategoryService.checkName(basicProductTypeRequest, 1);
if(falg==false){
return ResultVOUtils.error(999, "院内分类名字已存在!");
}
falg = basicHospTypeService.saveBasicHospType(basicHospTypeRequest);
falg = basicProductCategoryService.saveBasicHospType(basicProductTypeRequest);
if (!falg) {
return ResultVOUtils.error(999, "插入失败!");
}
@ -108,25 +106,25 @@ public class BasicProductCategoryController {
@PostMapping("/udiwms/basic/product/category/update")
@Log(title = "单据管理", businessType = BusinessType.UPDATE)
public BaseResponse update(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
public BaseResponse update(@RequestBody BasicProductTypeRequest basicProductTypeRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
if(StrUtil.isEmpty(basicHospTypeRequest.getName())){
if(StrUtil.isEmpty(basicProductTypeRequest.getName())){
return ResultVOUtils.error(999, "名字不能为空!");
}
if(basicHospTypeRequest.getCode().equals(basicHospTypeRequest.getParentCode())){
if(basicProductTypeRequest.getCode().equals(basicProductTypeRequest.getParentCode())){
return ResultVOUtils.error(999, "上级菜单不能选择自己!");
}
Boolean falg=basicHospTypeService.checkName(basicHospTypeRequest,2);
Boolean falg = basicProductCategoryService.checkName(basicProductTypeRequest, 2);
if(falg==false){
return ResultVOUtils.error(999, "院内分类名字已存在!");
}
falg = basicProductCategoryService.updateBasicHospType(basicProductTypeRequest);
falg = basicHospTypeService.updateBasicHospType(basicHospTypeRequest);
if (!falg) {
return ResultVOUtils.error(999, "更新失败!");
}
@ -135,12 +133,13 @@ public class BasicProductCategoryController {
@GetMapping("/udiwms/basic/product/category/delect")
@Log(title = "单据管理", businessType = BusinessType.DELETE)
public BaseResponse delect(BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
public BaseResponse delect(BasicProductTypeRequest basicProductTypeRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
String msg = basicHospTypeService.delectBasicHospType(basicHospTypeRequest);
String msg = basicProductCategoryService.delectBasicHospType(basicProductTypeRequest);
if (StringUtils.isNotBlank(msg)) {
return ResultVOUtils.error(999, msg);
@ -150,18 +149,18 @@ public class BasicProductCategoryController {
@GetMapping("/udiwms/basic/product/category/getTree")
public BaseResponse getTree() {
List<BasicHospTypeResponse> basicHospTypeEntities = basicHospTypeService.getTreeList();
return ResultVOUtils.success(basicHospTypeEntities);
List<BasicProductCategoryTypeResponse> treeList = basicProductCategoryService.getTreeList();
return ResultVOUtils.success(treeList);
}
@PostMapping("/udiwms/basic/product/category/bindRel")
public BaseResponse saveRel(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {
public BaseResponse saveRel(@RequestBody BasicProductTypeRequest basicProductTypeRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
Boolean falg = basicHospTypeService.bindHospProduct(basicHospTypeRequest);
basicProductCategoryService.insertCateRel(basicProductTypeRequest);
return ResultVOUtils.success();
}
@ -169,30 +168,77 @@ public class BasicProductCategoryController {
UdiRelevanceService udiRelevanceService;
@GetMapping("/udiwms/basic/product/category/bindList")
public BaseResponse bindList(FilterUdiRelRequest filterUdiRelRequest) {
public BaseResponse bindList(FilterUdiProductRequest filterUdiProductRequest) {
if (StrUtil.isNotEmpty(filterUdiRelRequest.getUdiCode())) {
UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode());
if (udiEntity != null) {
filterUdiRelRequest.setNameCode(udiEntity.getUdi());
filterUdiRelRequest.setUnionCode(udiEntity.getUdi());
if (StrUtil.isNotEmpty(filterUdiProductRequest.getUdiCode()) && StrUtil.isEmpty(filterUdiProductRequest.getUnionCode())) {
if (StrUtil.isNotEmpty(filterUdiProductRequest.getUdiCode())) {
UdiEntity udi = FilterUdiUtils.getUdi(filterUdiProductRequest.getUdiCode());
filterUdiProductRequest.setNameCode(udi.getUdi());
}
List<UdiRelevanceResponse> udiRelevanceResponses = basicProductCategoryService.selectAll(filterUdiProductRequest);
if(udiRelevanceResponses != null && udiRelevanceResponses.size()>0){
filterUdiProductRequest.setOriginUuid(udiRelevanceResponses.get(0).getOriginUuid());
filterUdiProductRequest.setNameCode(null);
}
}else{
filterUdiProductRequest.setDiType(1);
}
//如果输入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);
List<UdiRelevanceResponse> list= basicProductCategoryService.selectAll(filterUdiProductRequest);
PageInfo<UdiRelevanceResponse> pageInfo = new PageInfo<>(list);
PageSimpleResponse<UdiRelevanceResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(list);
return ResultVOUtils.success(pageSimpleResponse);
}
@GetMapping("/udiwms/basic/product/category/productList")
public BaseResponse productList(FilterUdiRelRequest filterUdiRelRequest) {
//是否是一级分类
BasicProductCategory category = basicProductCategoryService.checkCode(filterUdiRelRequest.getParentCode());
List<UdiRelevanceResponse> udiRelevanceResponses=null;
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);
}
} else {
//只查找主标识产品信息
filterUdiRelRequest.setDiType(1);
if("10000".equals(category.getParentCode())) {
//查全部
udiRelevanceResponses= basicHospTypeService.filterUdiGp(filterUdiRelRequest);
}else{
// 查上级
FilterUdiProductRequest filterUdiProductRequest = new FilterUdiProductRequest();
filterUdiProductRequest.setCode(category.getParentCode());
filterUdiProductRequest.setCpmctymc(filterUdiRelRequest.getCpmctymc());
filterUdiProductRequest.setGgxh(filterUdiRelRequest.getGgxh());
filterUdiProductRequest.setYlqxzcrbarmc(filterUdiRelRequest.getYlqxzcrbarmc());
filterUdiProductRequest.setUnionCode(filterUdiRelRequest.getUnionCode());
filterUdiProductRequest.setThrPiId(filterUdiRelRequest.getThrPiId());
udiRelevanceResponses= basicProductCategoryService.selectAll(filterUdiProductRequest);
}
List<UdiRelevanceResponse> udiRelevanceResponses = basicHospTypeService.filterUdiGp(filterUdiRelRequest);
PageInfo<UdiRelevanceResponse> pageInfo = new PageInfo<>(udiRelevanceResponses);
PageSimpleResponse<UdiRelevanceResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
@ -201,6 +247,82 @@ public class BasicProductCategoryController {
}
@GetMapping("/udiwms/basic/product/category/SelcetproductList")
public BaseResponse SelectproductList(FilterUdiRelRequest filterUdiRelRequest) {
//是否是一级分类
BasicProductCategory category = basicProductCategoryService.checkCode(filterUdiRelRequest.getParentCode());
List<UdiRelevanceResponse> udiRelevanceResponses=null;
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);
}
if("10000".equals(category.getParentCode())) {
//查全部
udiRelevanceResponses= basicHospTypeService.filterUdiGp(filterUdiRelRequest);
}else{
// 查上级
FilterUdiProductRequest filterUdiProductRequest = new FilterUdiProductRequest();
filterUdiProductRequest.setCode(category.getParentCode());
filterUdiProductRequest.setCpmctymc(filterUdiRelRequest.getCpmctymc());
filterUdiProductRequest.setGgxh(filterUdiRelRequest.getGgxh());
filterUdiProductRequest.setYlqxzcrbarmc(filterUdiRelRequest.getYlqxzcrbarmc());
filterUdiProductRequest.setUnionCode(filterUdiRelRequest.getUnionCode());
filterUdiProductRequest.setThrPiId(filterUdiRelRequest.getThrPiId());
udiRelevanceResponses= basicProductCategoryService.selectAll(filterUdiProductRequest);
}
//循环插入
BasicProductTypeRequest basicProductTypeRequest = new BasicProductTypeRequest();
basicProductTypeRequest.setCode(filterUdiRelRequest.getParentCode());
List<String> list = new ArrayList<>();
for (UdiRelevanceResponse udiRelevanceRespons : udiRelevanceResponses) {
list.add(udiRelevanceRespons.getId()+"");
}
basicProductTypeRequest.setIds(list);
basicProductCategoryService.insertCateRel(basicProductTypeRequest);
return ResultVOUtils.success();
}
@GetMapping("/udiwms/basic/product/category/deleterel")
public BaseResponse deleterel(Integer id){
basicProductCategoryService.deleterelByid(id);
return ResultVOUtils.success();
}
@PostMapping("/udiwms/basic/product/category/unbindRel")
@Log(title = "单据管理", businessType = BusinessType.UPDATE)
public BaseResponse unbindRel(@RequestBody BasicHospTypeRequest basicHospTypeRequest, BindingResult bindingResult) {

@ -2,8 +2,16 @@ package com.glxp.api.dao.basic;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.basic.BasicProductCategory;
import com.glxp.api.res.basic.BasicProductCategoryTypeResponse;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface BasicProductCategoryMapper extends BaseMapper<BasicProductCategory> {
}
List<BasicProductCategoryTypeResponse> getTreeList();
List<BasicProductCategory> selectLowTypeAll(@Param("code") String code);
Long selectProductByRelCode(@Param("relCode") String relCode);
}

@ -2,8 +2,14 @@ package com.glxp.api.dao.basic;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.basic.BasicProductCategoryRel;
import com.glxp.api.req.basic.FilterUdiProductRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface BasicProductCategoryRelMapper extends BaseMapper<BasicProductCategoryRel> {
}
List<UdiRelevanceResponse> selectAll(FilterUdiProductRequest filterUdiProductRequest);
}

@ -0,0 +1,12 @@
package com.glxp.api.req.basic;
import com.glxp.api.util.page.ListPageRequest;
import lombok.Data;
@Data
public class BasicProductTypeFilterRequest extends ListPageRequest {
private String name;
private Integer type;
private String code;
}

@ -0,0 +1,16 @@
package com.glxp.api.req.basic;
import lombok.Data;
import java.util.List;
@Data
public class BasicProductTypeRequest {
private Long id;
private String code;
private String parentCode;
private String name;
private String remark;
List<String> ids;
}

@ -0,0 +1,25 @@
package com.glxp.api.req.basic;
import com.glxp.api.util.page.ListPageRequest;
import lombok.Data;
@Data
public class FilterUdiProductRequest extends ListPageRequest {
private String ylqxzcrbarmc;
private String cpmctymc;
private String ggxh;
private String udiCode;
private String unionCode;
private String zczbhhzbapzbh;
private String manufactory;
private String code;
private String parentCode;
private String nameCode;
private String thrPiId;
private String originUuid;
private Integer diType;
}

@ -76,5 +76,6 @@ public class FilterUdiRelRequest extends ListPageRequest {
private List<String> uuids;
private List<Long> ids;
private String flbm;
private String parentCode;
}

@ -0,0 +1,22 @@
package com.glxp.api.res.basic;
import lombok.Data;
import java.util.Date;
@Data
public class BasicProductCategoryTypeResponse {
private Long id;
private String code;
private String parentCode;
private String name;
private String remark;
private Date createTime;
private Date updateTime;
private String createUser;
private String updateUser;
private String label;
}

@ -114,6 +114,8 @@ public class UdiRelevanceResponse {
private String customerId;
private Integer bpcrid;
public int getBhzxxsbzsl() {
if (bhzxxsbzsl == null || bhzxxsbzsl == 0) {
return 1;

@ -1,12 +1,12 @@
package com.glxp.api.service.basic;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.dao.basic.BasicProductCategoryRelMapper;
import com.glxp.api.entity.basic.BasicProductCategoryRel;
import org.springframework.stereotype.Service;
@Service
public class BasicProductCategoryRelService extends ServiceImpl<BasicProductCategoryRelMapper, BasicProductCategoryRel> {
}

@ -1,9 +1,27 @@
package com.glxp.api.service.basic;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.basic.BasicProductCategoryMapper;
import com.glxp.api.dao.basic.BasicProductCategoryRelMapper;
import com.glxp.api.entity.basic.BasicProductCategory;
import com.glxp.api.entity.basic.BasicProductCategoryRel;
import com.glxp.api.req.basic.BasicProductTypeFilterRequest;
import com.glxp.api.req.basic.BasicProductTypeRequest;
import com.glxp.api.req.basic.FilterUdiProductRequest;
import com.glxp.api.res.basic.BasicProductCategoryTypeResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.basic.impl.BasicProductCategoryService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class BasicProductCategoryServiceImpl implements BasicProductCategoryService {
@ -11,5 +29,163 @@ public class BasicProductCategoryServiceImpl implements BasicProductCategoryServ
@Resource
private BasicProductCategoryMapper basicProductCategoryMapper;
@Resource
CustomerService customerService;
@Resource
BasicProductCategoryRelMapper basicProductCategoryRelMapper;
@Override
public List<BasicProductCategoryTypeResponse> getTreeList() {
return basicProductCategoryMapper.getTreeList();
}
@Override
public BasicProductCategory selectBasicHospTypeEntity() {
QueryWrapper<BasicProductCategory> Wrapper = new QueryWrapper<>();
Wrapper.eq("code",10000);
return basicProductCategoryMapper.selectOne(Wrapper);
}
@Override
public List<BasicProductCategory> getMenuList(BasicProductTypeFilterRequest basicProductTypeFilterRequest) {
QueryWrapper<BasicProductCategory> ew=new QueryWrapper<>();
ew.ne("code",10000);
if(basicProductTypeFilterRequest.getType()!=null && basicProductTypeFilterRequest.getType()==1 && StrUtil.isNotEmpty(basicProductTypeFilterRequest.getCode())){
List<BasicProductCategory> basicProductCategories = basicProductCategoryMapper.selectLowTypeAll(basicProductTypeFilterRequest.getCode());
List<Long> ids = basicProductCategories.stream().map(BasicProductCategory::getId).collect(Collectors.toList());
ew.notIn("id",ids);
}
List<BasicProductCategory> list = basicProductCategoryMapper.selectList(ew);
return list;
}
@Override
public Boolean checkName(BasicProductTypeRequest basicProductTypeRequest, Integer type) {
Long sum=null;
//1添加
if(type==1){
//查看名字是不是重复
QueryWrapper<BasicProductCategory> ew=new QueryWrapper<>();
ew.eq("name",basicProductTypeRequest.getName());
sum=basicProductCategoryMapper.selectCount(ew);
}else{
QueryWrapper<BasicProductCategory> ew=new QueryWrapper<>();
ew.eq("name",basicProductTypeRequest.getName());
ew.ne("id",basicProductTypeRequest.getId());
sum=basicProductCategoryMapper.selectCount(ew);
}
if(sum>0){
return false;
}else{
return true;
}
}
@Override
public boolean updateBasicHospType(BasicProductTypeRequest basicProductTypeRequest) {
boolean falg=true;
BasicProductCategory basicProductCategory = new BasicProductCategory();
basicProductCategory.setId(basicProductTypeRequest.getId());
basicProductCategory.setCreateTime(new Date());
basicProductCategory.setUpdateTime(new Date());
basicProductCategory.setName(basicProductTypeRequest.getName());
basicProductCategory.setParentCode(basicProductTypeRequest.getParentCode());
basicProductCategory.setRemark(basicProductTypeRequest.getRemark());
Long userId=customerService.getUserId();
basicProductCategory.setCreateUser(userId+"");
basicProductCategory.setUpdateUser(userId+"");
int i = basicProductCategoryMapper.updateById(basicProductCategory);
if(i == 0){
falg=false;
}
return falg;
}
@Override
public Boolean saveBasicHospType(BasicProductTypeRequest basicProductTypeRequest) {
boolean falg=true;
BasicProductCategory basicProductCategory = new BasicProductCategory();
basicProductCategory.setId(basicProductTypeRequest.getId());
basicProductCategory.setCreateTime(new Date());
basicProductCategory.setUpdateTime(new Date());
basicProductCategory.setName(basicProductTypeRequest.getName());
basicProductCategory.setParentCode(basicProductTypeRequest.getParentCode());
basicProductCategory.setRemark(basicProductTypeRequest.getRemark());
Long userId=customerService.getUserId();
basicProductCategory.setCreateUser(userId+"");
basicProductCategory.setUpdateUser(userId+"");
//获取数据库最大的code
QueryWrapper<BasicProductCategory> ew=new QueryWrapper<>();
ew.select("max(code) as code");
BasicProductCategory basicProductCategory1 = basicProductCategoryMapper.selectOne(ew);
basicProductCategory.setCode(Integer.valueOf(basicProductCategory1.getCode())+1+"");
basicProductCategory.setId(IdUtil.getSnowflakeNextId());
int insert = basicProductCategoryMapper.insert(basicProductCategory);
if(insert == 0){
falg=false;
}
return falg;
}
@Override
public String delectBasicHospType(BasicProductTypeRequest basicProductTypeRequest) {
//查询是否有自己的子集
QueryWrapper<BasicProductCategory> ew=new QueryWrapper<>();
ew.eq("parentCode",basicProductTypeRequest.getCode());
Long count=basicProductCategoryMapper.selectCount(ew);
if(count>0){
return "请先删除该节点底下的数据!";
}
//查询是否有绑定产品
count = basicProductCategoryMapper.selectProductByRelCode(basicProductTypeRequest.getCode());
if(count >0){
return "该节点还存在产品,请先删除!";
}
basicProductCategoryMapper.deleteById(basicProductTypeRequest.getId());
return "";
}
@Override
public List<UdiRelevanceResponse> selectAll(FilterUdiProductRequest filterUdiProductRequest) {
if (filterUdiProductRequest == null) {
return Collections.emptyList();
}
if (filterUdiProductRequest.getPage() != null) {
int offset = (filterUdiProductRequest.getPage() - 1) * filterUdiProductRequest.getLimit();
PageHelper.offsetPage(offset, filterUdiProductRequest.getLimit());
}
return basicProductCategoryRelMapper.selectAll(filterUdiProductRequest);
}
@Override
public boolean insertCateRel(BasicProductTypeRequest basicProductTypeRequest) {
BasicProductCategoryRel basicProductCategoryRel = new BasicProductCategoryRel();
int insert =0;
for (String id : basicProductTypeRequest.getIds()) {
basicProductCategoryRel.setRelId(id);
basicProductCategoryRel.setCode(basicProductTypeRequest.getCode());
insert = basicProductCategoryRelMapper.insert(basicProductCategoryRel);
}
return insert>0;
}
@Override
public BasicProductCategory checkCode(String parentCode) {
return basicProductCategoryMapper.selectOne(new QueryWrapper<BasicProductCategory>().eq("code",parentCode));
}
@Override
public boolean deleterelByid(Integer id) {
return basicProductCategoryRelMapper.deleteById(id)>0;
}
}

@ -1,7 +1,40 @@
package com.glxp.api.service.basic.impl;
import com.glxp.api.entity.basic.BasicProductCategory;
import com.glxp.api.req.basic.BasicProductTypeFilterRequest;
import com.glxp.api.req.basic.BasicProductTypeRequest;
import com.glxp.api.req.basic.FilterUdiProductRequest;
import com.glxp.api.res.basic.BasicProductCategoryTypeResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import java.util.List;
public interface BasicProductCategoryService {
List<BasicProductCategoryTypeResponse> getTreeList();
BasicProductCategory selectBasicHospTypeEntity();
List<BasicProductCategory> getMenuList(BasicProductTypeFilterRequest basicProductTypeFilterRequest);
Boolean checkName(BasicProductTypeRequest basicProductTypeRequest, Integer type);
boolean updateBasicHospType(BasicProductTypeRequest basicProductTypeRequest);
Boolean saveBasicHospType(BasicProductTypeRequest basicProductTypeRequest);
String delectBasicHospType(BasicProductTypeRequest basicProductTypeRequest);
List<UdiRelevanceResponse> selectAll(FilterUdiProductRequest filterUdiProductRequest);
boolean insertCateRel(BasicProductTypeRequest basicProductTypeRequest);
BasicProductCategory checkCode(String parentCode);
boolean deleterelByid(Integer id);
}

@ -18,4 +18,37 @@
<!--@mbg.generated-->
id, code, parentCode, `name`, remark, createTime, updateTime, `createUser`, updateUser
</sql>
</mapper>
<select id="getTreeList" resultType="com.glxp.api.res.basic.BasicProductCategoryTypeResponse">
SELECT id, code, name as label, parentCode
FROM basic_product_category
ORDER BY id DESC
</select>
<select id="selectLowTypeAll" parameterType="java.lang.String" resultType="com.glxp.api.entity.basic.BasicProductCategory">
WITH recursive table_a AS (
SELECT
*
FROM
basic_product_category ta
WHERE
code = #{code}
UNION ALL
SELECT
tb.*
FROM
basic_product_category tb
INNER JOIN table_a ON table_a.CODE = tb.parentCode
) SELECT
*
FROM
table_a
</select>
<select id="selectProductByRelCode" resultType="Long">
select count(*)
from basic_udirel
where basic_udirel.relCode = #{relCode}
</select>
</mapper>

@ -12,4 +12,67 @@
<!--@mbg.generated-->
id, code, relId
</sql>
</mapper>
<select id="selectAll" parameterType="com.glxp.api.req.basic.FilterUdiProductRequest"
resultType="com.glxp.api.res.basic.UdiRelevanceResponse">
SELECT
basic_products.nameCode,
basic_products.cpmctymc,
basic_products.ggxh,
basic_products.zczbhhzbapzbh,
basic_products.ylqxzcrbarmc,
basic_products.manufactory,
basic_products.qxlb,
basic_udirel.id,
basic_product_category_rel.id as bpcrid
FROM basic_product_category_rel
INNER JOIN basic_udirel ON basic_product_category_rel.relId=basic_udirel.id
INNER JOIN basic_products on basic_udirel.uuid=basic_products.uuid
<where>
<if test="thrPiId != '' and thrPiId != null">
and (basic_udirel.thirdId LIKE concat('%', #{thrPiId}, '%')
or basic_udirel.thirdId1 LIKE concat('%', #{thrPiId}, '%')
or basic_udirel.thirdId2 LIKE concat('%', #{thrPiId}, '%')
or basic_udirel.thirdId3 LIKE concat('%', #{thrPiId}, '%')
or basic_udirel.thirdId4 LIKE concat('%', #{thrPiId}, '%'))
</if>
<if test="code != '' and code != null">
AND basic_product_category_rel.code= #{code}
</if>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND basic_products.ylqxzcrbarmc LIKE concat('%', #{ylqxzcrbarmc}, '%')
</if>
<if test="unionCode != '' and unionCode != null">
and (
basic_products.nameCode LIKE concat('%', #{unionCode}, '%')
or basic_products.ybbm LIKE concat('%', #{unionCode}, '%')
or basic_products.sptm LIKE concat('%', #{unionCode}, '%'))
</if>
<if test="nameCode != '' and nameCode != null">
AND basic_products.nameCode LIKE concat(#{nameCode}, '%')
</if>
<if test="cpmctymc != '' and cpmctymc != null">
AND basic_products.cpmctymc LIKE concat('%', #{cpmctymc}, '%')
</if>
<if test="ggxh != '' and ggxh != null">
AND basic_products.ggxh LIKE concat('%', #{ggxh}, '%')
</if>
<if test="manufactory != null and manufactory != ''">
and basic_products.manufactory LIKE concat('%', #{manufactory}, '%')
</if>
<if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null">
AND basic_products.zczbhhzbapzbh LIKE concat(#{zczbhhzbapzbh}, '%')
</if>
<if test="originUuid != null and originUuid != ''">
and basic_products.originUuid = #{originUuid}
</if>
</where>
</select>
</mapper>

Loading…
Cancel
Save