Przeglądaj źródła

气瓶问题修改

liujh 3 lat temu
rodzic
commit
37e2ca311e

+ 7 - 0
zd-modules/zd-bottle-parent/zd-bottle/src/main/java/com/zd/bottle/mapper/UseRecordMapper.java

@@ -47,4 +47,11 @@ public interface UseRecordMapper extends BaseMapper<UseRecord> {
      * @return
      */
     List<UseRecordVo> getListUseRecord(Long storageId);
+
+    /***
+     * 查询气瓶是否归还
+     * @param storageId
+     * @return
+     */
+    List<UseRecord> getListNotReturn(Long storageId);
 }

+ 7 - 0
zd-modules/zd-bottle-parent/zd-bottle/src/main/java/com/zd/bottle/service/UseRecordService.java

@@ -109,4 +109,11 @@ public interface UseRecordService extends IService<UseRecord> {
      * @return 数据集合
      */
     List<AirAmount> calcApply(String airName);
+
+    /***
+     * 查询气瓶是否归还
+     * @param storageId
+     * @return
+     */
+    List<UseRecord> getListNotReturn(Long storageId);
 }

+ 12 - 0
zd-modules/zd-bottle-parent/zd-bottle/src/main/java/com/zd/bottle/service/impl/BottleStorageOutServiceImpl.java

@@ -2,11 +2,14 @@ package com.zd.bottle.service.impl;
 
 import com.zd.bottle.domain.BottleStorage;
 import com.zd.bottle.domain.BottleStorageOut;
+import com.zd.bottle.domain.UseRecord;
 import com.zd.bottle.mapper.BottleStorageOutMapper;
 import com.zd.bottle.service.BottleStorageOutService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zd.bottle.service.BottleStorageService;
+import com.zd.bottle.service.UseRecordService;
 import com.zd.bottle.vo.BottleStorageOutVo;
+import com.zd.bottle.vo.UseRecordVo;
 import com.zd.common.core.exception.ServiceException;
 import com.zd.common.core.utils.StringUtils;
 import com.zd.common.security.service.TokenService;
@@ -38,6 +41,8 @@ public class BottleStorageOutServiceImpl extends ServiceImpl<BottleStorageOutMap
     @Autowired
     private BottleStorageOutMapper outMapper;
 
+    @Autowired
+    private UseRecordService useRecordService;
 
     @Override
     public boolean add(BottleStorageOut bottleStorageOut) {
@@ -50,6 +55,13 @@ public class BottleStorageOutServiceImpl extends ServiceImpl<BottleStorageOutMap
         if(bottleStorage.getStorageStatus()==3){
             throw new ServiceException("该条记录已出库。");
         }
+
+        //查询是否存在未归还记录
+        List<UseRecord> useRecordVoList = useRecordService.getListNotReturn(bottleStorageOut.getStorageId());
+        if(useRecordVoList.size()>0){
+            throw new ServiceException("请先归还后在出库。");
+        }
+
         //出库状态
         bottleStorage.setStorageStatus(3);
         //刷新入库状态

+ 1 - 1
zd-modules/zd-bottle-parent/zd-bottle/src/main/java/com/zd/bottle/service/impl/BottleStorageServiceImpl.java

@@ -56,7 +56,7 @@ public class BottleStorageServiceImpl extends ServiceImpl<BottleStorageMapper, B
         bsVo.setElectronicTag(bottleStorage.getElectronicTag());
         List<BottleStorageVo> list =  bottleStorageMapper.getListVo(bsVo);
         if(list.size()>0){
-            throw  new ServiceException("该标签已存在!");
+            throw  new ServiceException("该标签已存在!");
         }
 
         SysUser sysUser = tokenService.getLoginUser().getSysUser();

+ 10 - 0
zd-modules/zd-bottle-parent/zd-bottle/src/main/java/com/zd/bottle/service/impl/UseRecordServiceImpl.java

@@ -151,6 +151,16 @@ public class UseRecordServiceImpl extends ServiceImpl<UseRecordMapper, UseRecord
         return usegasApplyService.calcApply(airName);
     }
 
+    /***
+     * 查询气瓶是否归还
+     * @param storageId
+     * @return
+     */
+    @Override
+    public List<UseRecord> getListNotReturn(Long storageId) {
+        return useRecordMapper.getListNotReturn(storageId);
+    }
+
     @Override
     public List<AirAmount> calcRepertory(String airName) {
         return baseMapper.calcRepertory(airName);

+ 5 - 2
zd-modules/zd-bottle-parent/zd-bottle/src/main/resources/mapper/BottleStorageMapper.xml

@@ -78,7 +78,7 @@
         (select count(1) from ab_use_record ur where ur.storage_id=bs.id) numberPersons,
         ( select max(ur.use_time) from ab_use_record ur where ur.storage_id=bs.id ORDER BY use_time desc ) lastTime
         from ab_bottle_storage bs
-        where 1=1
+        <where>
         <if test="electronicTag != null and electronicTag != ''">
           and bs.electronic_tag = #{electronicTag}
         </if>
@@ -96,11 +96,14 @@
                 #{id}
             </foreach>
         </if>
-        ) t  where 1=1
+        </where>
+        ) t
+        <where>
         <if test="startTime != null ">
                and date_format(t.lastTime,'%Y-%m-%d') &gt;= date_format(#{startTime},'%Y-%m-%d')</if>
         <if test="endTime != null ">
                and date_format(t.lastTime,'%Y-%m-%d') &lt;= date_format(#{endTime},'%Y-%m-%d')</if>
+        </where>
     </select>
 
     <select id="returnGas" parameterType="com.zd.bottle.vo.BottleStorageUseVo" resultType="com.zd.bottle.vo.BottleStorageUseVo">

+ 9 - 0
zd-modules/zd-bottle-parent/zd-bottle/src/main/resources/mapper/UseRecordMapper.xml

@@ -122,4 +122,13 @@
 
     </select>
 
+    <!--查看气瓶是否出库-->
+    <select id="getListNotReturn" resultType="com.zd.bottle.domain.UseRecord"
+            parameterType="java.lang.Long">
+        select
+        <include refid="Base_Column_List"/>
+        from ab_use_record
+        where  storage_id =#{storageId} and back_time is null
+    </select>
+
 </mapper>