Преглед на файлове

资产编号的处理,详情与处理资产记录

преди 5 години
родител
ревизия
123d8d7e2a

+ 12 - 0
pcbms/src/main/java/com/hssx/pcbms/controller/GoodsController.java

@@ -92,6 +92,18 @@ public class GoodsController {
         HttpRespMsg msg = goodsService.getDetail(id);
         return msg;
     }
+    /**
+     * 分配资产
+     * 参数:goodsId:资产id ,divisionCode 部门编号,suffixCode 字母前缀
+     * @return
+     */
+    @ApiOperation(value = "分配资产", notes = "分配资产方法")
+    @RequestMapping("/distribute")
+    @ResponseBody
+    public HttpRespMsg distribute(GoodsNo goodsNo) {
+        HttpRespMsg msg = goodsService.distribute(goodsNo);
+        return msg;
+    }
 
     /**
      * 资产基本信息的删除

+ 2 - 1
pcbms/src/main/java/com/hssx/pcbms/entity/vo/GoodsVO.java

@@ -17,6 +17,7 @@ public class GoodsVO extends Goods {
     private Integer number = 0;//数量
     private String deptStr;//部门编号
     private String goodStr;//产品编号
-    private List<GoodsNo> goodsNos;
+    private List<GoodsNo> goodsNosVO;
+    private List<GoodsNoVO> goodsNos;
     private Integer userId;
 }

+ 2 - 0
pcbms/src/main/java/com/hssx/pcbms/service/GoodsService.java

@@ -39,4 +39,6 @@ public interface GoodsService extends IService<Goods> {
     HttpRespMsg goodsNodel(GoodsNo goodsNo);
 
     HttpRespMsg goodsNoAdd(GoodsNo goodsNo,Integer count);
+
+    HttpRespMsg distribute(GoodsNo goodsNo);
 }

+ 19 - 0
pcbms/src/main/java/com/hssx/pcbms/service/impl/GoodsServiceImpl.java

@@ -226,6 +226,25 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
         return msg;
     }
 
+    @Override
+    public HttpRespMsg distribute(GoodsNo goodsNo) {
+        HttpRespMsg msg = new HttpRespMsg();
+        Integer count = goodsNoMapper.selectCount(new QueryWrapper<GoodsNo>().eq("division_code", goodsNo.getDivisionCode()).eq("suffix_code", goodsNo.getSuffixCode()).last("limit 1"));
+        if (count > 0) {
+            msg.setError("当前编号组合已存在,请更换编号组合后重试。");
+            return msg;
+        }
+        List<GoodsNo> goodsNoList = goodsNoMapper.selectList(new QueryWrapper<GoodsNo>().eq("goods_id", goodsNo.getGoodsId()));
+        String suffixModelNo = goodsNo.getDivisionCode() + goodsNo.getSuffixCode();
+        for (GoodsNo no : goodsNoList) {
+            no.setModelNo(suffixModelNo+goodsNo.getDivisionCode()+no.getModelNo().substring(no.getModelNo().length()-4));
+        }
+        if(!CollectionUtils.isEmpty(goodsNoList)){
+            goodsNoService.updateBatchById(goodsNoList);
+        }
+        return msg;
+    }
+
     public static void main(String[] args) {
 //        String format = String.format("%04d", 0);
 //        System.out.println(format);

+ 5 - 2
pcbms/src/main/resources/mapper/GoodsMapper.xml

@@ -62,7 +62,7 @@
         <result column="pic" property="pic"/>
         <result column="service_life" property="serviceLife"/>
         <result column="next_indate" property="nextIndate"/>
-        <collection property="goodsNos" ofType="com.hssx.pcbms.entity.GoodsNo">
+        <collection property="goodsNosVO" ofType="com.hssx.pcbms.entity.vo.GoodsNoVO">
             <id column="nid" property="id"/>
             <result column="model_no" property="modelNo"/>
             <result column="division_code" property="divisionCode"/>
@@ -71,6 +71,7 @@
             <result column="indate" property="indate"/>
             <result column="goods_id" property="goodsId"/>
             <result column="user_id" property="userId"/>
+            <result column="username" property="username"/>
         </collection>
     </resultMap>
     <select id="getListBycondition" resultMap="BaseResultMapVO">
@@ -100,12 +101,14 @@
         select
         g.id, g.name, g.tag_id, g.model_number, g.unit,g.address, g.factory, g.pic, g.service_life, g.next_indate,
         g.is_delete,gn.id nid,
-        gn.model_no, gn.division_code, gn.suffix_code, gn.state, gn.indate, gn.goods_id, gn.user_id
+        gn.model_no, gn.division_code, gn.suffix_code, gn.state, gn.indate, gn.goods_id, gn.user_id,u.name username
         from
         goods g
         left join
         goods_no gn
         on g.id = gn.goods_id
+        left join user u
+        on u.id = gn.user_id
         <where>
             g.id = #{id}
         </where>