Преглед изворни кода

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

пре 5 година
родитељ
комит
ffc009ecc6

+ 14 - 2
pcbms/pom.xml

@@ -35,10 +35,22 @@
             <optional>true</optional>
         </dependency>
 
+        <!-- pagehelper整合mybatis-plus-->
+        <!--Pagehelper 依赖 5.1.10 版本,需要去掉 mybatis 依赖,否则会和 mybatis plus 冲突-->
         <dependency>
             <groupId>com.github.pagehelper</groupId>
-            <artifactId>pagehelper</artifactId>
-            <version>4.1.0</version>  <!--我这里用的是4.1.0版本-->
+            <artifactId>pagehelper-spring-boot-starter</artifactId>
+            <version>1.2.12</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.mybatis</groupId>
+                    <artifactId>mybatis</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.mybatis</groupId>
+                    <artifactId>mybatis-spring</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
 
         <!-- mybatis-plus依赖 -->

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

@@ -15,16 +15,4 @@ public class PcbmsApplication {
     public static void main(String[] args) {
         SpringApplication.run(PcbmsApplication.class, args);
     }
-
-    @Bean
-    public PageHelper pageHelper(){
-        PageHelper pageHelper = new PageHelper();
-        Properties properties = new Properties();
-        properties.setProperty("offsetAsPageNum","true");
-        properties.setProperty("rowBoundsWithCount","true");
-        properties.setProperty("reasonable","true");
-        properties.setProperty("dialect","mysql");    //配置mysql数据库的方言
-        pageHelper.setProperties(properties);
-        return pageHelper;
-    }
 }

+ 31 - 1
pcbms/src/main/java/com/hssx/pcbms/controller/GoodsController.java

@@ -122,7 +122,7 @@ public class GoodsController {
     /**
      * 处置资产
      * 参数:
-     * id:对应编号的id,state:资产状态0-空闲 1-在用 2-维护 3-报废
+     * id:对应编号的id,state:资产状态0-空闲 1-在用 3-报废
      * userId :对应人员的id(不选传0)
      * @return
      */
@@ -134,5 +134,35 @@ public class GoodsController {
         return msg;
     }
 
+    /**
+     * 资产编号详细
+     * 参数:
+     * id:对应编号的id
+     * @return
+     */
+    @ApiOperation(value = "资产编号详细", notes = "资产编号详细方法")
+    @RequestMapping("/goodsNoDetail")
+    @ResponseBody
+    public HttpRespMsg goodsNoDetail(GoodsNo goodsNo) {
+        HttpRespMsg msg = goodsService.goodsNoDetailById(goodsNo);
+        return msg;
+    }
+
+
+
+    /**
+     * 处置资产操作记录
+     * 参数:
+     * id:资产id,
+     * @return
+     */
+    @ApiOperation(value = "处置资产操作记录", notes = "处置资产操作记录方法")
+    @RequestMapping("/operateList")
+    @ResponseBody
+    public HttpRespMsg operateList(Goods goods) {
+        HttpRespMsg msg = goodsService.operateList(goods);
+        return msg;
+    }
+
 }
 

+ 8 - 8
pcbms/src/main/java/com/hssx/pcbms/entity/OperateRecord.java

@@ -56,10 +56,10 @@ public class OperateRecord extends Model<OperateRecord> {
     private Integer goodId;
 
     /**
-     * 商品编号
+     * 商品编号外键
      */
-    @TableField("good_no")
-    private String goodNo;
+    @TableField("good_no_id")
+    private Integer goodNoId;
 
     /**
      * 资产状态0-空闲 1-在用 2-维护 3-报废
@@ -116,12 +116,12 @@ public class OperateRecord extends Model<OperateRecord> {
         this.goodId = goodId;
     }
 
-    public String getGoodNo() {
-        return goodNo;
+    public Integer getGoodNoId() {
+        return goodNoId;
     }
 
-    public void setGoodNo(String goodNo) {
-        this.goodNo = goodNo;
+    public void setGoodNoId(Integer goodNoId) {
+        this.goodNoId = goodNoId;
     }
 
     public Integer getGoodState() {
@@ -146,7 +146,7 @@ public class OperateRecord extends Model<OperateRecord> {
         ", indate=" + indate +
         ", content=" + content +
         ", goodId=" + goodId +
-        ", goodNo=" + goodNo +
+        ", goodNoId=" + goodNoId +
         ", goodState=" + goodState +
         "}";
     }

+ 19 - 0
pcbms/src/main/java/com/hssx/pcbms/entity/vo/GoodsNoVO.java

@@ -0,0 +1,19 @@
+package com.hssx.pcbms.entity.vo;
+
+import com.hssx.pcbms.entity.GoodsNo;
+import com.hssx.pcbms.entity.OperateRecord;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * Author: 吴涛涛 cuiyi@itany.com
+ * Date : 2019 - 10 - 30 18:10
+ * Description:<描述>
+ * Version: 1.0
+ */
+@Data
+public class GoodsNoVO extends GoodsNo {
+    private List<OperateRecord> operateRecords;
+    private String username;
+}

+ 6 - 0
pcbms/src/main/java/com/hssx/pcbms/mapper/OperateRecordMapper.java

@@ -1,7 +1,12 @@
 package com.hssx.pcbms.mapper;
 
+import com.hssx.pcbms.entity.Goods;
 import com.hssx.pcbms.entity.OperateRecord;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.hssx.pcbms.entity.vo.GoodsNoVO;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,4 +18,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface OperateRecordMapper extends BaseMapper<OperateRecord> {
 
+    List<GoodsNoVO> selectCondition(@Param("goods") Goods goods);
 }

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

@@ -31,4 +31,8 @@ public interface GoodsService extends IService<Goods> {
     HttpRespMsg getDetail(Integer id);
 
     HttpRespMsg handle(GoodsNo goodsNo,Integer currentUserId);
+
+    HttpRespMsg operateList(Goods goods);
+
+    HttpRespMsg goodsNoDetailById(GoodsNo goodsNo);
 }

+ 49 - 10
pcbms/src/main/java/com/hssx/pcbms/service/impl/GoodsServiceImpl.java

@@ -3,10 +3,12 @@ package com.hssx.pcbms.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
+import com.hssx.pcbms.constant.Constant;
 import com.hssx.pcbms.entity.Goods;
 import com.hssx.pcbms.entity.GoodsNo;
 import com.hssx.pcbms.entity.OperateRecord;
 import com.hssx.pcbms.entity.User;
+import com.hssx.pcbms.entity.vo.GoodsNoVO;
 import com.hssx.pcbms.entity.vo.GoodsVO;
 import com.hssx.pcbms.mapper.GoodsMapper;
 import com.hssx.pcbms.mapper.GoodsNoMapper;
@@ -95,8 +97,9 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
 
     @Override
     public HttpRespMsg getList(PageUtil page, String keyName, Integer tagId) {
+        System.out.println("页数:"+page.getPageNum());
         HttpRespMsg msg = new HttpRespMsg();
-        PageHelper.startPage(page.getPageNum(), page.getPageSize());
+        PageHelper.startPage(page.getPageNum(),page.getPageSize());
         List<GoodsVO> list = goodsMapper.getListBycondition(keyName, tagId);
         PageInfo<GoodsVO> info = new PageInfo<>(list);
         msg.data = info;
@@ -139,19 +142,55 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
         goodsNoMapper.updateById(goodsNo);
         //添加处置记录
         OperateRecord operateRecord = new OperateRecord();
-//        if(1==goodsNo.getState()){
-//
-//        }else if(){
-//
-//        }
-//        String content = Constant.HANDLE_CONTENT.replace("oldState",)
-//        operaterRecord.setContent();
+        String oldState = "";
+        String nowState = "";
+        if(no.getState()==0){
+             oldState="未用";
+        }else if(no.getState()==1){
+            oldState="在用";
+            User usering = userMapper.selectById(no.getUserId());
+            oldState = oldState+(usering.getName()+"/"+usering.getPhone());
+        }
+        if(goodsNo.getState()==0){
+            nowState="未用";
+        }else if(goodsNo.getState()==1){
+            nowState="在用";
+            User usering = userMapper.selectById(goodsNo.getUserId());
+            nowState = nowState+(usering.getName()+"/"+usering.getPhone());
+        }else if(goodsNo.getState()==3){
+            nowState="报废";
+        }
+        String content = Constant.HANDLE_CONTENT.replace("oldState",oldState).replace("newState",nowState);
+        operateRecord.setContent(content);
         operateRecord.setGoodId(no.getGoodsId());
-        operateRecord.setGoodNo(no.getModelNo());
+        operateRecord.setGoodNoId(no.getId());
         operateRecord.setGoodState(goodsNo.getState());
         operateRecord.setUserId(currentUserId);
         operateRecord.setUserName(user.getName());
-        return null;
+        operateRecordMapper.insert(operateRecord);
+        return msg;
+    }
+
+    @Override
+    public HttpRespMsg operateList(Goods goods) {
+        HttpRespMsg msg= new HttpRespMsg();
+        List<GoodsNoVO> list = operateRecordMapper.selectCondition(goods);
+        msg.data = list;
+        return msg;
+    }
+
+    @Override
+    public HttpRespMsg goodsNoDetailById(GoodsNo goodsNo) {
+        HttpRespMsg msg = new HttpRespMsg();
+        GoodsNo oldGoodsNo = goodsNoMapper.selectById(goodsNo.getId());
+        GoodsNoVO vo = new GoodsNoVO();
+        BeanUtils.copyProperties(oldGoodsNo,vo);
+        User user = userMapper.selectById(oldGoodsNo.getUserId());
+        if(user != null){
+            vo.setUsername(user.getName());
+        }
+        msg.data = vo;
+        return msg;
     }
 
     public static void main(String[] args) {

+ 3 - 0
pcbms/src/main/java/com/hssx/pcbms/util/PageUtil.java

@@ -1,5 +1,7 @@
 package com.hssx.pcbms.util;
 
+import lombok.Data;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -9,6 +11,7 @@ import java.util.List;
  * Description:<描述> 模仿pagehelper参数的分页封装类
  * Version: 1.0
  */
+@Data
 public class PageUtil<T> {
     private Integer pageNum = 1;
     private Integer total;

+ 21 - 17
pcbms/src/main/resources/mapper/GoodsMapper.xml

@@ -35,29 +35,25 @@
         <result column="pic" property="pic" />
         <result column="service_life" property="serviceLife" />
         <result column="next_indate" property="nextIndate" />
-        <!--<collection property="goodsNos" select="selectGoodsNoByGoodsId" column="{goodId = id}" ofType="com.hssx.pcbms.entity.GoodsNo">-->
-        <!--</collection>-->
-        <collection property="goodsNos" ofType="com.hssx.pcbms.entity.GoodsNo">
-            <id column="nid" property="id" />
-            <result column="model_no" property="modelNo" />
-            <result column="division_code" property="divisionCode" />
-            <result column="suffix_code" property="suffixCode" />
-            <result column="state" property="state" />
-            <result column="indate" property="indate" />
-            <result column="goods_id" property="goodsId" />
-            <result column="user_id" property="userId" />
+        <collection property="goodsNos" select="selectGoodsNoByGoodsId" javaType="java.util.List" column="{goodId = id}" ofType="com.hssx.pcbms.entity.GoodsNo">
         </collection>
+        <!--<collection property="goodsNos" ofType="com.hssx.pcbms.entity.GoodsNo">-->
+            <!--<id column="nid" property="id" />-->
+            <!--<result column="model_no" property="modelNo" />-->
+            <!--<result column="division_code" property="divisionCode" />-->
+            <!--<result column="suffix_code" property="suffixCode" />-->
+            <!--<result column="state" property="state" />-->
+            <!--<result column="indate" property="indate" />-->
+            <!--<result column="goods_id" property="goodsId" />-->
+            <!--<result column="user_id" property="userId" />-->
+        <!--</collection>-->
     </resultMap>
 
     <select id="getListBycondition" resultMap="BaseResultMapVO">
         select
-        g.id, g.name, g.tag_id, g.model_number, g.unit,gn.id nid,
-        gn.model_no, gn.division_code, gn.suffix_code, gn.state, gn.indate, gn.goods_id, gn.user_id
+        id, name, tag_id, model_number, unit, address, factory, pic, service_life, next_indate
         from
-        goods g
-        left join
-        goods_no gn
-        on g.id = gn.goods_id
+        goods
         <where>
             is_delete = 0
             <if test="keyName != null and keyName != ''">
@@ -68,6 +64,14 @@
             </if>
         </where>
     </select>
+    <select id="selectGoodsNoByGoodsId" resultType="com.hssx.pcbms.entity.GoodsNo">
+        select
+            id, model_no, state, indate, goods_id
+        from
+            goods_no
+        where
+              goods_id = #{goodId}
+    </select>
     <select id="getDetail" resultMap="BaseResultMapVO">
         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,

+ 37 - 3
pcbms/src/main/resources/mapper/OperateRecordMapper.xml

@@ -10,13 +10,47 @@
         <result column="indate" property="indate" />
         <result column="content" property="content" />
         <result column="good_id" property="goodId" />
-        <result column="good_no" property="goodNo" />
+        <result column="good_no_id" property="goodNoId" />
         <result column="good_state" property="goodState" />
     </resultMap>
+    <resultMap id="BaseResultMapVO" type="com.hssx.pcbms.entity.vo.GoodsNoVO">
+        <id column="id" property="id" />
+        <result column="model_no" property="modelNo" />
+        <result column="division_code" property="divisionCode" />
+        <result column="suffix_code" property="suffixCode" />
+        <result column="state" property="state" />
+        <result column="indate" property="indate" />
+        <result column="goods_id" property="goodsId" />
+        <result column="user_id" property="userId" />
+        <result column="update_indate" property="updateIndate" />
+        <collection property="operateRecords" ofType="com.hssx.pcbms.entity.OperateRecord">
+            <result column="oid" property="id" />
+            <result column="uid" property="userId" />
+            <result column="user_name" property="userName" />
+            <result column="oindate" property="indate" />
+            <result column="content" property="content" />
+            <result column="good_id" property="goodId" />
+            <result column="good_no_id" property="goodNoId" />
+            <result column="good_state" property="goodState" />
+        </collection>
+    </resultMap>
+
+
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, user_id, user_name, indate, content, good_id, good_no, good_state
+        id, user_id, user_name, indate, content, good_id, good_no_id, good_state
     </sql>
-
+    <select id="selectCondition" resultMap="BaseResultMapVO">
+        select
+            go.id, go.model_no, go.state, go.indate, go.goods_id, go.user_id, go.update_indate,
+            ore.id oid, ore.user_id uid, ore.user_name, ore.indate oindate, ore.content, ore.good_id, ore.good_no_id, ore.good_state
+        from
+            goods_no go
+        left join
+            operate_record ore
+        on ore.good_no_id = go.id
+        where
+            go.goods_id = #{goods.id}
+    </select>
 </mapper>

+ 1 - 1
pcbms/src/test/java/com/hssx/pcbms/PcbmsApplicationTests.java

@@ -1,6 +1,6 @@
 package com.hssx.pcbms;
 
-import org.junit.jupiter.api.Test;
+import org.junit.Test;
 import org.springframework.boot.test.context.SpringBootTest;
 
 @SpringBootTest

+ 1 - 1
pom.xml

@@ -5,7 +5,7 @@
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
-        <version>2.2.0.RELEASE</version>
+        <version>2.1.6.RELEASE</version>
         <relativePath/> <!-- lookup parent from repository -->
     </parent>
     <groupId>com.hssx</groupId>