修改供应商流程

This commit is contained in:
yangjun 2026-03-30 17:32:08 +08:00
parent f6ef60dcec
commit 460008e13a
11 changed files with 408 additions and 7 deletions

View File

@ -76,4 +76,5 @@ public class SuppliersMaterialInfoDto implements Serializable {
@Excel(name = "销售单位", width = 15)
@ApiModelProperty(value = "销售单位")
private String salesUnit;
private String orgCode;
}

View File

@ -131,11 +131,12 @@ public class ConfigMaterialCategoryServiceImpl extends ServiceImpl<ConfigMateria
List<ConfigMaterialType> list2 = configMaterialTypeMapper.selectList(typeQueryWrapper);
//查询用药类型信息
QueryWrapper<ConfigMaterialMedication> medicationQueryWrapper = new QueryWrapper<>();
medicationQueryWrapper.eq(StringUtils.isNotEmpty(configMaterialCategory.getIzEnabled()),"iz_enabled",configMaterialCategory.getIzEnabled());
medicationQueryWrapper.eq("del_flag","0");
List<ConfigMaterialMedication> list3 = configMaterialMedicationMapper.selectList(medicationQueryWrapper);
// QueryWrapper<ConfigMaterialMedication> medicationQueryWrapper = new QueryWrapper<>();
// medicationQueryWrapper.eq(StringUtils.isNotEmpty(configMaterialCategory.getIzEnabled()),"iz_enabled",configMaterialCategory.getIzEnabled());
// medicationQueryWrapper.eq("del_flag","0");
// List<ConfigMaterialMedication> list3 = configMaterialMedicationMapper.selectList(medicationQueryWrapper);
//20260330去掉第三层类型新需求
List<ConfigMaterialMedication> list3 = new ArrayList<>();
//查询物料类别下是否有物料数据

View File

@ -99,7 +99,7 @@ public class NuBizSuppliersInfoController extends JeecgController<NuBizSuppliers
List<ConfigSuppliersInfo> list = configSuppliersInfoService.list();
//查询管理平台供应商
QueryWrapper<NuBizSuppliersInfo> queryWrapper = QueryGenerator.initQueryWrapper(nuBizSuppliersInfo, req.getParameterMap());
queryWrapper.eq("iz_wlxx","Y");
// queryWrapper.eq("iz_wlxx","Y");
Page<NuBizSuppliersInfo> page = new Page<NuBizSuppliersInfo>(pageNo, pageSize);
IPage<NuBizSuppliersInfo> pageList = nuBizSuppliersInfoService.page(page, queryWrapper);
pageList.getRecords().forEach(item->{

View File

@ -0,0 +1,192 @@
package com.nu.modules.bizSuppliers.controller;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.query.QueryRuleEnum;
import org.jeecg.common.util.oConvertUtils;
import com.nu.modules.bizSuppliers.entity.NuBizSuppliersMaterialType;
import com.nu.modules.bizSuppliers.service.INuBizSuppliersMaterialTypeService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: 供应商对应物料类别
* @Author: jeecg-boot
* @Date: 2026-03-30
* @Version: V1.0
*/
@Api(tags="供应商对应物料类别")
@RestController
@RequestMapping("/bizSuppliers/nuBizSuppliersMaterialType")
@Slf4j
public class NuBizSuppliersMaterialTypeController extends JeecgController<NuBizSuppliersMaterialType, INuBizSuppliersMaterialTypeService> {
@Autowired
private INuBizSuppliersMaterialTypeService nuBizSuppliersMaterialTypeService;
/**
* 分页列表查询
*
* @param nuBizSuppliersMaterialType
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "供应商对应物料类别-分页列表查询")
@ApiOperation(value="供应商对应物料类别-分页列表查询", notes="供应商对应物料类别-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<NuBizSuppliersMaterialType>> queryPageList(NuBizSuppliersMaterialType nuBizSuppliersMaterialType,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<NuBizSuppliersMaterialType> queryWrapper = QueryGenerator.initQueryWrapper(nuBizSuppliersMaterialType, req.getParameterMap());
Page<NuBizSuppliersMaterialType> page = new Page<NuBizSuppliersMaterialType>(pageNo, pageSize);
IPage<NuBizSuppliersMaterialType> pageList = nuBizSuppliersMaterialTypeService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param nuBizSuppliersMaterialType
* @return
*/
@AutoLog(value = "供应商对应物料类别-添加")
@ApiOperation(value="供应商对应物料类别-添加", notes="供应商对应物料类别-添加")
@RequiresPermissions("bizSuppliers:nu_biz_suppliers_material_type:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody NuBizSuppliersMaterialType nuBizSuppliersMaterialType) {
nuBizSuppliersMaterialTypeService.save(nuBizSuppliersMaterialType);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param nuBizSuppliersMaterialType
* @return
*/
@AutoLog(value = "供应商对应物料类别-编辑")
@ApiOperation(value="供应商对应物料类别-编辑", notes="供应商对应物料类别-编辑")
@RequiresPermissions("bizSuppliers:nu_biz_suppliers_material_type:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody NuBizSuppliersMaterialType nuBizSuppliersMaterialType) {
nuBizSuppliersMaterialTypeService.updateById(nuBizSuppliersMaterialType);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "供应商对应物料类别-通过id删除")
@ApiOperation(value="供应商对应物料类别-通过id删除", notes="供应商对应物料类别-通过id删除")
@RequiresPermissions("bizSuppliers:nu_biz_suppliers_material_type:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
nuBizSuppliersMaterialTypeService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "供应商对应物料类别-批量删除")
@ApiOperation(value="供应商对应物料类别-批量删除", notes="供应商对应物料类别-批量删除")
@RequiresPermissions("bizSuppliers:nu_biz_suppliers_material_type:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.nuBizSuppliersMaterialTypeService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "供应商对应物料类别-通过id查询")
@ApiOperation(value="供应商对应物料类别-通过id查询", notes="供应商对应物料类别-通过id查询")
@GetMapping(value = "/queryById")
public Result<NuBizSuppliersMaterialType> queryById(@RequestParam(name="id",required=true) String id) {
NuBizSuppliersMaterialType nuBizSuppliersMaterialType = nuBizSuppliersMaterialTypeService.getById(id);
if(nuBizSuppliersMaterialType==null) {
return Result.error("未找到对应数据");
}
return Result.OK(nuBizSuppliersMaterialType);
}
/**
* 导出excel
*
* @param request
* @param nuBizSuppliersMaterialType
*/
@RequiresPermissions("bizSuppliers:nu_biz_suppliers_material_type:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, NuBizSuppliersMaterialType nuBizSuppliersMaterialType) {
return super.exportXls(request, nuBizSuppliersMaterialType, NuBizSuppliersMaterialType.class, "供应商对应物料类别");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
@RequiresPermissions("bizSuppliers:nu_biz_suppliers_material_type:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, NuBizSuppliersMaterialType.class);
}
/**
* 批量保存供应商对应物料类型
* @param nuBizSuppliersMaterialType
* @return
*/
@PostMapping(value = "/saveBacthType")
public Result<String> saveBacthType(@RequestBody Map<String,Object> nuBizSuppliersMaterialType) {
nuBizSuppliersMaterialTypeService.saveBacthType(nuBizSuppliersMaterialType);
return Result.OK("添加成功!");
}
}

View File

@ -82,4 +82,5 @@ public class NuBizSuppliersMaterialInfo implements Serializable {
@Excel(name = "销售单位", width = 15)
@ApiModelProperty(value = "销售单位")
private java.lang.String salesUnit;
private java.lang.String orgCode;
}

View File

@ -0,0 +1,77 @@
package com.nu.modules.bizSuppliers.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import org.jeecg.common.constant.ProvinceCityArea;
import org.jeecg.common.util.SpringContextUtils;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: 供应商对应物料类别
* @Author: jeecg-boot
* @Date: 2026-03-30
* @Version: V1.0
*/
@Data
@TableName("nu_biz_suppliers_material_type")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="nu_biz_suppliers_material_type对象", description="供应商对应物料类别")
public class NuBizSuppliersMaterialType implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private java.lang.String id;
/**createBy*/
@ApiModelProperty(value = "createBy")
private java.lang.String createBy;
/**createTime*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "createTime")
private java.util.Date createTime;
/**updateBy*/
@ApiModelProperty(value = "updateBy")
private java.lang.String updateBy;
/**updateTime*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "updateTime")
private java.util.Date updateTime;
/**供应商id*/
@Excel(name = "供应商id", width = 15)
@ApiModelProperty(value = "供应商id")
private java.lang.String suppliersId;
/**供应商名称*/
@Excel(name = "供应商名称", width = 15)
@ApiModelProperty(value = "供应商名称")
private java.lang.String suppliersName;
/**物料类别*/
@Excel(name = "物料类别", width = 15)
@ApiModelProperty(value = "物料类别")
private java.lang.String materialTypeId;
/**等级*/
@Excel(name = "等级", width = 15)
@ApiModelProperty(value = "等级")
private java.lang.String level;
/**上级*/
@Excel(name = "上级", width = 15)
@ApiModelProperty(value = "上级")
private java.lang.String parentId;
}

View File

@ -0,0 +1,17 @@
package com.nu.modules.bizSuppliers.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.nu.modules.bizSuppliers.entity.NuBizSuppliersMaterialType;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 供应商对应物料类别
* @Author: jeecg-boot
* @Date: 2026-03-30
* @Version: V1.0
*/
public interface NuBizSuppliersMaterialTypeMapper extends BaseMapper<NuBizSuppliersMaterialType> {
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.nu.modules.bizSuppliers.mapper.NuBizSuppliersMaterialTypeMapper">
</mapper>

View File

@ -0,0 +1,17 @@
package com.nu.modules.bizSuppliers.service;
import com.nu.modules.bizSuppliers.entity.NuBizSuppliersMaterialType;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.Map;
/**
* @Description: 供应商对应物料类别
* @Author: jeecg-boot
* @Date: 2026-03-30
* @Version: V1.0
*/
public interface INuBizSuppliersMaterialTypeService extends IService<NuBizSuppliersMaterialType> {
void saveBacthType(Map<String, Object> nuBizSuppliersMaterialType);
}

View File

@ -0,0 +1,85 @@
package com.nu.modules.bizSuppliers.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.nu.dto.SuppliersInfoMQDto;
import com.nu.modules.bizSuppliers.entity.NuBizSuppliersMaterialType;
import com.nu.modules.bizSuppliers.mapper.NuBizSuppliersMaterialTypeMapper;
import com.nu.modules.bizSuppliers.service.INuBizSuppliersMaterialTypeService;
import com.nu.utils.RabbitMQUtil;
import org.apache.commons.lang.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.vo.LoginUser;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* @Description: 供应商对应物料类别
* @Author: jeecg-boot
* @Date: 2026-03-30
* @Version: V1.0
*/
@Service
public class NuBizSuppliersMaterialTypeServiceImpl extends ServiceImpl<NuBizSuppliersMaterialTypeMapper, NuBizSuppliersMaterialType> implements INuBizSuppliersMaterialTypeService {
@Autowired
private RabbitMQUtil rabbitMQUtil;
@Override
public void saveBacthType(Map<String, Object> nuBizSuppliersMaterialType) {
String suppliersId = nuBizSuppliersMaterialType.get("suppliersId").toString();
String suppliersName = nuBizSuppliersMaterialType.get("suppliersName").toString();
QueryWrapper<NuBizSuppliersMaterialType> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("suppliers_id", suppliersId);
//先把原来的供应商数据删除然后在保存进去
baseMapper.delete(queryWrapper);
List<NuBizSuppliersMaterialType> addList = new ArrayList<>();
List<Object> list = (List) nuBizSuppliersMaterialType.get("list");
for (int i = 0; i < list.size(); i++) {
Map<String,String> map = (Map)list.get(i);
NuBizSuppliersMaterialType nuBizSuppliersMaterialType1 = new NuBizSuppliersMaterialType();
nuBizSuppliersMaterialType1.setSuppliersId(suppliersId);
nuBizSuppliersMaterialType1.setSuppliersName(suppliersName);
nuBizSuppliersMaterialType1.setMaterialTypeId(map.get("key"));
nuBizSuppliersMaterialType1.setLevel(map.get("levle"));
if(StringUtils.equals("1",map.get("levle")) || StringUtils.equals("3",map.get("levle"))){
//只保存第二层其他数据不保存
continue;
}else if(StringUtils.equals("2",map.get("levle"))){
nuBizSuppliersMaterialType1.setParentId(map.get("parentId"));
}
addList.add(nuBizSuppliersMaterialType1);
}
if (addList.size() > 0){
//批量保存
saveBatch(addList);
//推送管理平台合作的基础数据
SuppliersInfoMQDto suppliersInfoMQDto = new SuppliersInfoMQDto();
suppliersInfoMQDto.setId(suppliersId);
suppliersInfoMQDto.setSuppliersId(nuBizSuppliersMaterialType.get("suppliersId").toString());
suppliersInfoMQDto.setSuppliersName(nuBizSuppliersMaterialType.get("suppliersName").toString());
suppliersInfoMQDto.setSuppliersNature(nuBizSuppliersMaterialType.get("suppliersNature").toString());
suppliersInfoMQDto.setSuppliersAddress(nuBizSuppliersMaterialType.get("suppliersAddress").toString());
suppliersInfoMQDto.setPersonInCharge(nuBizSuppliersMaterialType.get("personInCharge").toString());
suppliersInfoMQDto.setContactNumber(nuBizSuppliersMaterialType.get("contactNumber").toString());
suppliersInfoMQDto.setOpeningBank(nuBizSuppliersMaterialType.get("openingBank").toString());
suppliersInfoMQDto.setOpeningBankNo(nuBizSuppliersMaterialType.get("openingBankNo").toString());
suppliersInfoMQDto.setImgPath(nuBizSuppliersMaterialType.get("imgPath").toString());
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
suppliersInfoMQDto.setSysOrgCode(loginUser.getOrgCode());
rabbitMQUtil.sendToExchange("nu.suppliers.suppliersApplyAdd", "nu.suppliers.suppliersApplyAdd", suppliersInfoMQDto);
}
}
}

View File

@ -185,7 +185,12 @@ public class SuppliersMQListener {
try {
NuBizSuppliersMaterialInfo bizSuppliersMaterialInfo = new NuBizSuppliersMaterialInfo();
BeanUtils.copyProperties(suppliersMaterialInfoDto, bizSuppliersMaterialInfo);
bizSuppliersMaterialInfoService.updateById(bizSuppliersMaterialInfo);
NuBizSuppliersMaterialInfo bizSuppliersMaterialInfo1 =bizSuppliersMaterialInfoService.getById(bizSuppliersMaterialInfo.getId());
if (bizSuppliersMaterialInfo1 == null){
bizSuppliersMaterialInfoService.save(bizSuppliersMaterialInfo);
}else{
bizSuppliersMaterialInfoService.updateById(bizSuppliersMaterialInfo);
}
System.out.println("保存成功");
} catch (Exception e) {