Selaa lähdekoodia

样品过期申请、审核优化;

LLL 1 vuosi sitten
vanhempi
commit
89ee698d7e

+ 27 - 30
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/inventory/controller/ItdmInventoryBarcodeController.java

@@ -1,46 +1,30 @@
 package org.jeecg.modules.inventory.controller;
 
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-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 com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.inventory.entity.ItdmInventoryBarcode;
 import org.jeecg.modules.inventory.entity.ItdmSampleInventory;
 import org.jeecg.modules.inventory.service.IItdmInventoryBarcodeService;
-
-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.jeecg.modules.inventory.service.IItdmSampleInventoryService;
-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.jeecg.modules.inventory.vo.BarcodeXialaListVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
 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 javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
+import java.util.List;
 
 /**
  * @Description: 库存条码
@@ -58,6 +42,19 @@ public class ItdmInventoryBarcodeController extends JeecgController<ItdmInventor
     @Autowired
     private IItdmSampleInventoryService itdmSampleInventoryService;
 
+
+    /**
+     * 条码下拉列表
+     */
+    @ApiOperation(value = "条码下拉列表", notes = "条码下拉列表")
+    @GetMapping(value = "/xialaList")
+    public Result<List<BarcodeXialaListVO>> xialaList() {
+        List<BarcodeXialaListVO> xialaList = itdmInventoryBarcodeService.rukuBarcodeList();
+        return Result.OK(xialaList);
+    }
+
+
+
     /**
      * 分页列表查询
      *

+ 46 - 38
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/inventory/controller/ItdmSampleExpireController.java

@@ -1,47 +1,32 @@
 package org.jeecg.modules.inventory.controller;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-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 com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.jeecg.common.api.vo.Result;
-import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.modules.inventory.entity.ItdmSampleExpire;
 import org.jeecg.modules.inventory.entity.ItdmSampleExpireReal;
+import org.jeecg.modules.inventory.entity.ItdmSampleInventory;
 import org.jeecg.modules.inventory.service.IItdmSampleExpireRealService;
 import org.jeecg.modules.inventory.service.IItdmSampleExpireService;
-
-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.jeecg.modules.inventory.service.IItdmSampleInventoryService;
 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 javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+/**
  * @Description: 样品过期表
  * @Author: jeecg-boot
  * @Date:   2023-06-26
@@ -56,6 +41,8 @@ public class ItdmSampleExpireController extends JeecgController<ItdmSampleExpire
 	private IItdmSampleExpireService itdmSampleExpireService;
 	@Autowired
 	private IItdmSampleExpireRealService realService;
+	@Autowired
+	private IItdmSampleInventoryService inventoryService;
 
 	/**
 	 * 分页列表查询
@@ -73,8 +60,11 @@ public class ItdmSampleExpireController extends JeecgController<ItdmSampleExpire
 								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
 								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
 								   HttpServletRequest req) {
-		QueryWrapper<ItdmSampleExpire> queryWrapper = QueryGenerator.initQueryWrapper(itdmSampleExpire, req.getParameterMap());
+		QueryWrapper<ItdmSampleExpire> queryWrapper = new QueryWrapper<>();
+//		QueryGenerator.initQueryWrapper(itdmSampleExpire, req.getParameterMap());
+		queryWrapper.eq(StringUtils.isNotBlank(itdmSampleExpire.getAuditStatus()),"audit_status",itdmSampleExpire.getAuditStatus());
 		queryWrapper.like(StringUtils.isNotBlank(itdmSampleExpire.getBarCodes()), "bar_codes", itdmSampleExpire.getBarCodes());
+		queryWrapper.orderByDesc("create_time");
 		Page<ItdmSampleExpire> page = new Page<ItdmSampleExpire>(pageNo, pageSize);
 		IPage<ItdmSampleExpire> pageList = itdmSampleExpireService.page(page, queryWrapper);
 		return Result.OK(pageList);
@@ -86,11 +76,13 @@ public class ItdmSampleExpireController extends JeecgController<ItdmSampleExpire
 														  @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
 														  @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
 														  HttpServletRequest req) {
-		itdmSampleExpire.setAuditStatus("0");
-		QueryWrapper<ItdmSampleExpire> queryWrapper = QueryGenerator.initQueryWrapper(itdmSampleExpire, req.getParameterMap());
-		if(itdmSampleExpire.getBarCodes()!=null){
-			queryWrapper.like("bar_codes",itdmSampleExpire.getBarCodes());
-		}
+//		QueryWrapper<ItdmSampleExpire> queryWrapper = QueryGenerator.initQueryWrapper(itdmSampleExpire, req.getParameterMap());
+		QueryWrapper<ItdmSampleExpire> queryWrapper = new QueryWrapper<>();
+		queryWrapper.like(StringUtils.isNotBlank(itdmSampleExpire.getBarCodes()),"bar_codes",itdmSampleExpire.getBarCodes());
+		queryWrapper.eq("audit_status","0");
+		queryWrapper.like(StringUtils.isNotBlank(itdmSampleExpire.getHandlingMethod()), "handling_method", itdmSampleExpire.getHandlingMethod());
+		queryWrapper.orderByDesc("create_time");
+
 		Page<ItdmSampleExpire> page = new Page<ItdmSampleExpire>(pageNo, pageSize);
 		IPage<ItdmSampleExpire> pageList = itdmSampleExpireService.page(page, queryWrapper);
 		return Result.OK(pageList);
@@ -107,6 +99,14 @@ public class ItdmSampleExpireController extends JeecgController<ItdmSampleExpire
 	//@RequiresPermissions("org.jeecg.modules:itdm_sample_expire:add")
 	@PostMapping(value = "/add")
 	public Result<String> add(@RequestBody ItdmSampleExpire itdmSampleExpire) {
+		List<String> barcodeList = Arrays.asList(itdmSampleExpire.getBarCodes().split(","));
+		String samples = "";
+		for(String barcode:barcodeList){
+			ItdmSampleInventory inventory = inventoryService.getByBarCode(barcode);
+			if (samples.equals("")) samples = inventory.getSampleName();
+			else samples = samples+","+inventory.getSampleName();
+		}
+		itdmSampleExpire.setSamples(samples);
 		itdmSampleExpireService.save(itdmSampleExpire);
 		return Result.OK("添加成功!");
 	}
@@ -123,6 +123,14 @@ public class ItdmSampleExpireController extends JeecgController<ItdmSampleExpire
 	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
 	public Result<String> edit(@RequestBody ItdmSampleExpire itdmSampleExpire) {
 		if(itdmSampleExpire.getAuditStatus().equals("0")){ //0未审批1审批通过2审批拒绝
+			List<String> barcodeList = Arrays.asList(itdmSampleExpire.getBarCodes().split(","));
+			String samples = "";
+			for(String barcode:barcodeList){
+				ItdmSampleInventory inventory = inventoryService.getByBarCode(barcode);
+				if (samples.equals("")) samples = inventory.getSampleName();
+				else samples = samples+","+inventory.getSampleName();
+			}
+			itdmSampleExpire.setSamples(samples);
 			itdmSampleExpireService.updateById(itdmSampleExpire);
 			return Result.OK("编辑成功!");
 		}else return Result.error("已审批,不可修改!");

+ 9 - 9
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/inventory/entity/ItdmSampleExpire.java

@@ -1,22 +1,19 @@
 package org.jeecg.modules.inventory.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 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.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
+import org.jeecg.common.aspect.annotation.Dict;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
 
 /**
  * @Description: 样品过期表
@@ -73,4 +70,7 @@ public class ItdmSampleExpire implements Serializable {
 	/**所属部门*/
     @ApiModelProperty(value = "所属部门")
     private java.lang.String sysOrgCode;
+    /**样品列表*/
+    @ApiModelProperty(value = "样品列表")
+    private java.lang.String samples;
 }

+ 12 - 4
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/inventory/mapper/ItdmInventoryBarcodeMapper.java

@@ -1,10 +1,11 @@
 package org.jeecg.modules.inventory.mapper;
 
-import java.util.List;
-
-import org.apache.ibatis.annotations.Param;
-import org.jeecg.modules.inventory.entity.ItdmInventoryBarcode;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Select;
+import org.jeecg.modules.inventory.entity.ItdmInventoryBarcode;
+import org.jeecg.modules.inventory.vo.BarcodeXialaListVO;
+
+import java.util.List;
 
 /**
  * @Description: 库存条码
@@ -14,4 +15,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface ItdmInventoryBarcodeMapper extends BaseMapper<ItdmInventoryBarcode> {
 
+
+    /**入库的样品条码列表(下拉列表)*/
+    @Select("select b.bar_code, b.inventory_id, isi.sample_name from itdm_inventory_barcode b " +
+            "left join itdm_sample_inventory isi on b.inventory_id = isi.id " +
+            "where b.use_status = 1 and b.disable_status =0")
+    public List<BarcodeXialaListVO> rukuBarcodeList();
+
 }

+ 6 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/inventory/service/IItdmInventoryBarcodeService.java

@@ -2,6 +2,9 @@ package org.jeecg.modules.inventory.service;
 
 import org.jeecg.modules.inventory.entity.ItdmInventoryBarcode;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.inventory.vo.BarcodeXialaListVO;
+
+import java.util.List;
 
 /**
  * @Description: 库存条码
@@ -11,4 +14,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface IItdmInventoryBarcodeService extends IService<ItdmInventoryBarcode> {
 
+    /**入库的样品条码列表(下拉列表)*/
+    public List<BarcodeXialaListVO> rukuBarcodeList();
+
 }

+ 3 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/inventory/service/IItdmSampleInventoryService.java

@@ -11,4 +11,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface IItdmSampleInventoryService extends IService<ItdmSampleInventory> {
 
+    /**通过样品条码查询样品库存信息*/
+    public ItdmSampleInventory getByBarCode(String barCode);
+
 }

+ 15 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/inventory/service/impl/ItdmInventoryBarcodeServiceImpl.java

@@ -3,10 +3,14 @@ package org.jeecg.modules.inventory.service.impl;
 import org.jeecg.modules.inventory.entity.ItdmInventoryBarcode;
 import org.jeecg.modules.inventory.mapper.ItdmInventoryBarcodeMapper;
 import org.jeecg.modules.inventory.service.IItdmInventoryBarcodeService;
+import org.jeecg.modules.inventory.vo.BarcodeXialaListVO;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
+import java.util.List;
+
 /**
  * @Description: 库存条码
  * @Author: jeecg-boot
@@ -16,4 +20,15 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 @Service
 public class ItdmInventoryBarcodeServiceImpl extends ServiceImpl<ItdmInventoryBarcodeMapper, ItdmInventoryBarcode> implements IItdmInventoryBarcodeService {
 
+    @Autowired
+    @SuppressWarnings("all")
+    private ItdmInventoryBarcodeMapper barcodeMapper;
+
+    /**入库的样品条码列表(下拉列表)*/
+    public List<BarcodeXialaListVO> rukuBarcodeList(){
+        return barcodeMapper.rukuBarcodeList();
+    }
+
+
+
 }

+ 30 - 0
itdmServer/module-iTDM/src/main/java/org/jeecg/modules/inventory/vo/BarcodeXialaListVO.java

@@ -0,0 +1,30 @@
+package org.jeecg.modules.inventory.vo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+import java.io.Serializable;
+
+
+@Data
+@Accessors(chain = true)
+public class BarcodeXialaListVO implements Serializable {
+
+    /**库存id*/
+    @Excel(name = "库存id", width = 15)
+    @ApiModelProperty(value = "库存id")
+    private java.lang.String inventoryId;
+    /**条码*/
+    @Excel(name = "条码", width = 15)
+    @ApiModelProperty(value = "条码")
+    private java.lang.String barCode;
+    /**样品名称*/
+    @Excel(name = "样品名称", width = 15)
+    @ApiModelProperty(value = "样品名称")
+    private String sampleName;
+
+
+}