智慧农业后台管理
guoshilong
2022-08-15 cea9f0102b0855f33d62dd0de644d719352f16f3
修复不同农场的同种农产品加工后会替换掉另一个加工后产品的数据
5 files modified
25 ■■■■■ changed files
src/main/java/org/springblade/modules/process/controller/ProcessController.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/processInv/mapper/ProcessInvMapper.java 4 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/processInv/mapper/ProcessInvMapper.xml 11 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/processInv/service/IProcessInvService.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/processInv/service/impl/ProcessInvServiceImpl.java 6 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/process/controller/ProcessController.java
@@ -148,7 +148,7 @@
        //通过strainId和landId 确定是由哪一个品种库存加工而来
        FarmProductStock farmProductStock = farmProductStockService.selectBy2Id(process.getStrainId(),process.getLandId());
        //通过strainId和processId(processId为产品id)确定对应的加工库存
        ProcessInv processInv = processInvService.selectBy2Id(process.getStrainId(),process.getProcessId());
        ProcessInv processInv = processInvService.selectBySPId(process.getStrainId(),process.getProcessId());
        //农产品增加相应库存
        Double weight = Double.parseDouble(farmProductStock.getWeight())+process.getSaleNum();
        farmProductStock.setWeight(weight.toString());
src/main/java/org/springblade/modules/processInv/mapper/ProcessInvMapper.java
@@ -40,7 +40,9 @@
     */
    List<ProcessInvVO> selectProcessInvPage(IPage page, @Param("processInv") ProcessInvVO processInv);
    ProcessInv selectBy2Id(@Param("strainId") Long strainId, @Param("productId") Long productId);
    ProcessInv selectBySPId(@Param("strainId") Long strainId, @Param("productId") Long productId);
    ProcessInv selectBySFId(@Param("strainId")Long strainId, @Param("fpsId")String fpsId);
    Boolean add(@Param("processInv") ProcessInv processInv1);
src/main/java/org/springblade/modules/processInv/mapper/ProcessInvMapper.xml
@@ -35,9 +35,16 @@
        </if>
    </select>
    <select id="selectBy2Id" resultType="org.springblade.modules.processInv.entity.ProcessInv">
    <select id="selectBySPId" resultType="org.springblade.modules.processInv.entity.ProcessInv">
        SELECT id,strain_id,product_id,product_inventory_num,create_time,update_user,update_time,status,is_deleted
        FROM sys_process_inv WHERE strain_id = #{strainId} AND product_id = #{productId}
        FROM sys_process_inv
        WHERE is_deleted = 0 AND strain_id = #{strainId} AND product_id = #{productId}
    </select>
    <select id="selectBySFId" resultType="org.springblade.modules.processInv.entity.ProcessInv">
        SELECT id,strain_id,product_id,product_inventory_num,create_time,update_user,update_time,status,is_deleted
        FROM sys_process_inv
        WHERE is_deleted = 0 AND strain_id = #{strainId} AND product_id = #{fpsId}
    </select>
    <insert id="add">
src/main/java/org/springblade/modules/processInv/service/IProcessInvService.java
@@ -50,7 +50,7 @@
     * @param processId    产品id
     * @return
     */
    ProcessInv selectBy2Id(String strainId, String processId);
    ProcessInv selectBySPId(String strainId, String processId);
    /**
     * 彻底删除
src/main/java/org/springblade/modules/processInv/service/impl/ProcessInvServiceImpl.java
@@ -43,7 +43,7 @@
    @Override
    public Boolean insertOrUpdate(ProcessInv processInv) {
        //通过strainId和productId查询对应数据
        ProcessInv processInv1 = baseMapper.selectBy2Id(processInv.getStrainId(),processInv.getProductId());
        ProcessInv processInv1 = baseMapper.selectBySFId(processInv.getStrainId(),processInv.getFpsId());
        if (processInv1 != null){
            //当存在该数据时,修改
            processInv1.setProductInventoryNum(processInv1.getProductInventoryNum()+processInv.getProductInventoryNum());
@@ -68,8 +68,8 @@
    }
    @Override
    public ProcessInv selectBy2Id(String strainId, String processId) {
        return baseMapper.selectBy2Id(Long.parseLong(strainId),Long.parseLong(processId));
    public ProcessInv selectBySPId(String strainId, String processId) {
        return baseMapper.selectBySPId(Long.parseLong(strainId),Long.parseLong(processId));
    }
    @Override