智慧农业后台管理
tangzy
2022-06-27 568b782afa3be4b55f617e7330aa1f2c0e54e693
地块管理
43 files modified
661 ■■■■ changed files
src/main/java/org/springblade/common/config/BladeConfiguration.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java 77 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farm/entity/FarmingRecord.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farm/vo/FarmingRecordVO.java 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java 58 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/controller/StrainController.java 12 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml 7 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/vo/FarmPlantVO.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java 34 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/recovery/entity/Recovery.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldr/controller/SoldrController.java 91 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldr/entity/Soldr.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.xml 48 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldr/service/ISoldrService.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldr/service/impl/SoldrServiceImpl.java 18 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldrecord/service/ISoldrecordService.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/soldrecord/service/impl/SoldrecordServiceImpl.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stock/controller/StockController.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stock/mapper/StockMapper.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml 73 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stock/service/IStockService.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stock/service/impl/StockServiceImpl.java 4 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockfactory/controller/StockfactoryController.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.java 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.xml 20 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockfactory/service/IStockfactoryService.java 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockfactory/service/impl/StockfactoryServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockrecord/controller/StockrecordController.java 46 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockrecord/entity/Stockrecord.java 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.xml 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/stockrecord/service/IStockrecordService.java 3 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/controller/TaskController.java 33 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/entity/Task.java 15 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/mapper/TaskMapper.java 4 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml 28 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/service/ITaskService.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/task/vo/TaskVO.java 4 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/common/config/BladeConfiguration.java
@@ -39,6 +39,7 @@
        SecureRegistry secureRegistry = new SecureRegistry();
        secureRegistry.setEnabled(true);
        secureRegistry.excludePathPatterns("/blade-auth/**");
        secureRegistry.excludePathPatterns("/blade-resource/oss/endpoint/**");
        secureRegistry.excludePathPatterns("/blade-system/menu/routes");
        secureRegistry.excludePathPatterns("/blade-system/menu/auth-routes");
        secureRegistry.excludePathPatterns("/blade-system/menu/top-menu");
@@ -54,7 +55,11 @@
        secureRegistry.excludePathPatterns("/farmPlant/**");
        secureRegistry.excludePathPatterns("/land/land/**");
        secureRegistry.excludePathPatterns("/farmPlant/**");
        secureRegistry.excludePathPatterns("/task/task/**");
        secureRegistry.excludePathPatterns("/recovery/**");
        secureRegistry.excludePathPatterns("/blade-user/**");
        secureRegistry.excludePathPatterns("/soldrecord/soldrecord/**");
        secureRegistry.excludePathPatterns("/stockfactory/stockfactory/**");
        secureRegistry.excludePathPatterns("/soldr/soldr/**");
        secureRegistry.excludePathPatterns("/stockrecord/stockrecord/**");
        secureRegistry.excludePathPatterns("/blade-resource/oss/endpoint/**");
src/main/java/org/springblade/modules/farm/controller/FarmingRecordController.java
@@ -29,6 +29,11 @@
import org.springblade.modules.farm.entity.FarmingRecord;
import org.springblade.modules.farm.service.FarmingRecordService;
import org.springblade.modules.farm.vo.FarmingRecordVO;
import org.springblade.modules.soldr.entity.Soldr;
import org.springblade.modules.soldr.service.ISoldrService;
import org.springblade.modules.soldrecord.service.ISoldrecordService;
import org.springblade.modules.stockfactory.entity.Stockfactory;
import org.springblade.modules.stockfactory.service.IStockfactoryService;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
@@ -36,8 +41,9 @@
/**
 * 农事记录控制器
 * @since 2022-05-13
 *
 * @author zhongrj
 * @since 2022-05-13
 */
@RestController
@AllArgsConstructor
@@ -45,6 +51,9 @@
public class FarmingRecordController extends BladeController {
    private final FarmingRecordService farmService;
    private final ISoldrService soldrService;
    private final ISoldrecordService soldrecordService;
    private final IStockfactoryService stockfactoryService;
    /**
     * 详情
@@ -85,8 +94,66 @@
    @PostMapping("/save")
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入farm")
    public R save(@Valid @RequestBody FarmingRecord farm) {
    public R save(@Valid @RequestBody FarmingRecordVO farm) {
        //通过已出资农资id查询已出农资详情
        Soldr soldr = new Soldr();
        farm.setCreateTime(new Date());
        if(farm.getStockId()!=""){
            Long id = Long.valueOf(farm.getStockId());
            soldr.setId(id);
            //返回已出农资详情
            Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
            //统计公斤
            Integer specsValue1 = detail.getSpecsVal1();
            String specs1 = detail.getSpecs1();
            int spe = Integer.parseInt(specs1);
            //已出农资数量
            Integer amount1 = detail.getAmount1();
            double v = 0;
            //克
            if (specsValue1 == 0) {
                v = farm.getSnum() * spe * 0.001;
            }
            //斤
            if (specsValue1 == 1) {
                v = farm.getSnum() * spe * 0.5;
            }
            //公斤
            if (specsValue1 == 2) {
                v = farm.getSnum() * spe;
            }
            //吨
            if (specsValue1 == 3) {
                v = farm.getSnum() * spe * 1000;
            }
            //毫升
            if (specsValue1 == 4) {
                //毫升换成升
                double s = farm.getSnum() * spe * 0.001;
                //升换成公斤
                v = s;
            }
            //升
            if (specsValue1 == 5) {
                v = farm.getSnum() * spe;
            }
            Long ids = Long.valueOf(detail.getStockId1());
            farm.setStockId(detail.getStockId1());
            farm.setCensus(v);
            farm.setCreateTime(new Date());
            Stockfactory stockfactory = new Stockfactory();
            stockfactory.setId(ids);
            Stockfactory detailstock = stockfactoryService.getOne(Condition.getQueryWrapper(stockfactory));
            String agriculturalName = detailstock.getAgriculturalName();
            String content=agriculturalName+"   "+v+"公斤";
            farm.setContent(content);
            //使用农资数量等于已出农资数量
            if (farm.getSnum() == detail.getAmount1()) {
                soldrService.dels(id);
            } else {
                soldrecordService.updateSold(amount1 - farm.getSnum(), id, detail.getCensus() - v);
            }
        }
        return R.status(farmService.save(farm));
    }
@@ -124,19 +191,21 @@
    /**
     * 查询统计本年农事记录操作总数
     *
     * @return
     */
    @GetMapping("/getFarmingCount")
    public R getFarmingCount(){
    public R getFarmingCount() {
        return R.data(farmService.getFarmingCount());
    }
    /**
     * 查询统计本年农事记录操作,按分类统计
     *
     * @return
     */
    @GetMapping("/getFarmingStatis")
    public R getFarmingStatis(){
    public R getFarmingStatis() {
        return R.data(farmService.getFarmingStatis());
    }
src/main/java/org/springblade/modules/farm/entity/FarmingRecord.java
@@ -94,5 +94,7 @@
     * 租户id
     */
    private String tenantId;
    private String content;
    private Double census;
}
src/main/java/org/springblade/modules/farm/mapper/FarmMapper.xml
@@ -28,10 +28,10 @@
    <!--详情信息(自定义查询)-->
    <select id="getFarmInfo" resultType="org.springblade.modules.farm.vo.FarmVO">
        select
        id,farm_name,farm_address,farm_area,slogan,introduce,picture,ST_ASTEXT(position) as position,user_id
        id,farm_name,farm_address,farm_area,slogan,introduce,picture,ST_ASTEXT(position) as position,dept_id
        from
        sys_farm
        where 1=1
        and user_id = #{farm.userId}
        and dept_id = #{farm.deptId}
    </select>
</mapper>
src/main/java/org/springblade/modules/farm/vo/FarmingRecordVO.java
@@ -22,4 +22,5 @@
     * 操作类型名称
     */
    private String typeName;
    private Integer snum;
}
src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
@@ -19,13 +19,19 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.annotation.PreAuth;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.constant.RoleConstant;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.farm.entity.FarmingRecord;
import org.springblade.modules.farm.service.FarmingRecordService;
@@ -35,8 +41,12 @@
import org.springblade.modules.farmplant.vo.StrainVO;
import org.springblade.modules.lang.entity.Land;
import org.springblade.modules.lang.service.ILandService;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.vo.UserVO;
import org.springblade.modules.system.wrapper.UserWrapper;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.validation.Valid;
import java.text.DecimalFormat;
@@ -110,6 +120,8 @@
            record.setCreateTime(new Date());
            record.setJobWay(farmPlant.getJobWay());
            record.setTime(farmPlant.getTransplanTime());
            record.setDeptId(farmPlant.getDeptId());
            record.setTenantId(farmPlant.getTenantId());
            if (farmPlant.getPlantingWay().equals("0")) {
                //移栽
                record.setType("10");
@@ -120,7 +132,7 @@
            }
            record.setLandId(farmPlant.getLandId());
            record.setOperator(farmPlant.getCreateUser());
            record.setRemarks("品种: " + farmPlant.getVarieties());
            record.setContent("品种: " + farmPlant.getVarieties());
            //新增
            farmingRecordService.save(record);
@@ -314,4 +326,48 @@
        return R.data(list);
    }
    /**
     * 自定义分页
     */
    @GetMapping("/pagex")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入farmPlant")
    public R<IPage<FarmPlantVO>> pagex(FarmPlantVO farmPlant, Query query) {
        IPage<FarmPlantVO> pages = farmplantService.selectFarmPlantPage(Condition.getPage(query), farmPlant);
        for (int i = 0; i < pages.getRecords().size(); i++) {
            //修改种养类型
            String plantingWay = pages.getRecords().get(i).getPlantingWay();
            if (plantingWay.equals("0")) {
                pages.getRecords().get(i).setTy("移栽");
            }
            else if (plantingWay.equals("1")) {
                pages.getRecords().get(i).setTy("直播");
            } else {
                pages.getRecords().get(i).setTy("秧苗");
            }
            //计算天数
            Date transplanTime = pages.getRecords().get(i).getTransplanTime();
            Date date = new Date();
            Integer integer = daysBetween(transplanTime, date);
            pages.getRecords().get(i).setFate(integer);
        }
        return R.data(pages);
    }
    /**
     * 根据时间阶段计算天数
     * @param smdate    开始时间
     * @param bdate     结束时间
     * @return
     */
    public static Integer daysBetween(Date smdate,Date bdate){
        Calendar cal = Calendar.getInstance();
        cal.setTime(smdate);
        long time1 = cal.getTimeInMillis();
        cal.setTime(bdate);
        long time2 = cal.getTimeInMillis();
        long between_days=(time2-time1)/(1000*3600*24);
        return Integer.parseInt(String.valueOf(between_days))+1;
    }
}
src/main/java/org/springblade/modules/farmplant/controller/StrainController.java
@@ -15,9 +15,11 @@
import org.springblade.modules.farmplant.service.StrainService;
import org.springblade.modules.farmplant.vo.StrainVO;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
/**
 * 农场检测报告/证书控制器
@@ -115,4 +117,14 @@
        return R.data(strainService.strainTree(strain));
    }
    /**
     * 分页
     */
    @GetMapping("/strain-trees")
    public R<IPage<Strain>> list(@ApiIgnore @RequestParam Map<String, Object> strain, Query query) {
        IPage<Strain> pages = strainService.page(Condition.getPage(query), Condition.getQueryWrapper(strain, Strain.class));
        return R.data(pages);
    }
}
src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
@@ -15,6 +15,9 @@
        <if test="farmPlant.landId!=null and farmPlant.landId!=''">
            and sfp.land_id = #{farmPlant.landId}
        </if>
        <if test="farmPlant.strainId!=null and farmPlant.strainId!=''">
            and sfp.strain_id = #{farmPlant.strainId}
        </if>
        <if test="farmPlant.plantingWay!=null and farmPlant.plantingWay!=''">
            and sfp.planting_way = #{farmPlant.plantingWay}
        </if>
@@ -181,9 +184,6 @@
    </select>
    <!--种植采收监管 产品等级(0:一等品)-->
    <select id="selectProduct" resultType="java.util.HashMap">
        SELECT
@@ -300,4 +300,5 @@
        </if>
        group by sfp.strain_id,strain_name,land_unit
    </select>
</mapper>
src/main/java/org/springblade/modules/farmplant/vo/FarmPlantVO.java
@@ -46,9 +46,14 @@
     * 结束时间
     */
    private String endTime;
    /**
     * 类型
     */
    private String ty;
    /**
     * 面积合计
     */
    private Double areas;
    private Integer fate;
}
src/main/java/org/springblade/modules/recovery/controller/RecoveryController.java
@@ -32,8 +32,9 @@
/**
 * 农事记录控制器
 * @since 2022-05-18
 *
 * @author zhongrj
 * @since 2022-05-18
 */
@RestController
@AllArgsConstructor
@@ -92,7 +93,7 @@
        recovery.setCreateTime(new Date());
        //新增
        boolean save = recoveryService.save(recovery);
        if (save){
        if (save) {
            //同时生成农事记录和库存记录
            FarmingRecord record = new FarmingRecord();
            record.setCreateTime(new Date());
@@ -103,7 +104,7 @@
            record.setLandId(recovery.getLandId());
            record.setOperator(recovery.getOperator());
            Strain strain = strainService.getById(recovery.getStrainId());
            record.setRemarks("品种: "+strain.getStrainName() +", 重量:"+recovery.getWeight());
            record.setContent("品种: " + strain.getStrainName() + ", 重量:" + recovery.getWeight());
            //新增
            farmingRecordService.save(record);
@@ -113,7 +114,7 @@
            stock.setFarmPlantId(recovery.getFarmPlantId());
            stock.setStrainId(recovery.getStrainId());
            FarmProductStock stock1 = farmProductStockService.getOne(new QueryWrapper<>(stock));
            if (null!=stock1) {
            if (null != stock1) {
                //更新库存
                //计算库存
                double old = Double.parseDouble(stock1.getWeight());
@@ -122,7 +123,7 @@
                stock1.setWeight(String.valueOf(addNum));
                //更新
                farmProductStockService.updateById(stock1);
            }else {
            } else {
                //新增库存
                FarmProductStock productStock = new FarmProductStock();
                productStock.setCreateTime(new Date());
@@ -142,11 +143,12 @@
    /**
     * double 相加
     *
     * @param d1
     * @param d2
     * @return
     */
    private double add(double d1, double d2){
    private double add(double d1, double d2) {
        // 进行加法运算
        BigDecimal b1 = new BigDecimal(d1);
        BigDecimal b2 = new BigDecimal(d2);
@@ -185,4 +187,24 @@
        return R.status(recoveryService.removeByIds(Func.toLongList(ids)));
    }
    /**
     * 小程序采收详情列表自定义分页
     */
    @GetMapping("/pagec")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "传入recovery")
    public R<IPage<RecoveryVO>> pagec(RecoveryVO recovery, Query query) {
        IPage<RecoveryVO> pages = recoveryService.selectRecoveryPage(Condition.getPage(query), recovery);
        for (int i = 0; i < pages.getRecords().size(); i++) {
            String jobWay = pages.getRecords().get(i).getJobWay();
            if (jobWay.equals("0")) {
                pages.getRecords().get(i).setLx("人工");
            } else {
                pages.getRecords().get(i).setLx("机械");
            }
        }
        return R.data(pages);
    }
}
src/main/java/org/springblade/modules/recovery/entity/Recovery.java
@@ -61,8 +61,8 @@
    /**
     * 采收时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date time;
    /**
src/main/java/org/springblade/modules/recovery/vo/RecoveryVO.java
@@ -21,4 +21,8 @@
     * 农产品名称
     */
    private String strainName;
    /**
     * 类型
     */
    private String lx;
}
src/main/java/org/springblade/modules/soldr/controller/SoldrController.java
@@ -40,6 +40,11 @@
import org.springblade.modules.soldr.service.ISoldrService;
import org.springblade.core.boot.ctrl.BladeController;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * 已出库存数量记录表 控制器
 *
@@ -161,7 +166,38 @@
            soldr.setSid(id);
            Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
            Integer amount1 = detail.getAmount1();
            soldrecordService.updateSold(amount1 - num, id);
            Double census = detail.getCensus();
            //统计公斤
            Integer specsValue1 = detail.getSpecsVal1();
            double v = 0;
            //克
            if (specsValue1 == 0) {
                v = num * 0.001;
            }
            //斤
            if (specsValue1 == 1) {
                v = num * 0.5;
            }
            //公斤
            if (specsValue1 == 2) {
                v = num;
            }
            //吨
            if (specsValue1 == 3) {
                v = num * 1000;
            }
            //毫升
            if (specsValue1 == 4) {
                //毫升换成升
                double s = num * 0.001;
                //升换成公斤
                v = s;
            }
            //升
            if (specsValue1 == 5) {
                v = num;
            }
            soldrecordService.updateSold(amount1 - num, id,census-v);
            Stock stock = new Stock();
            stock.setId(id);
            Stock detail1 = stockService.getOne(Condition.getQueryWrapper(stock));
@@ -192,7 +228,38 @@
            soldr.setSid(soldrVOs.getId());
            Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
            Integer amount1 = detail.getAmount1();
            soldrecordService.updateSold(amount1 - soldrVOs.getNum(), soldrVOs.getId());
            Double census = detail.getCensus();
            //统计公斤
            Integer specsValue1 = detail.getSpecsVal1();
            double v = 0;
            //克
            if (specsValue1 == 0) {
                v = soldrVOs.getNum() * 0.001;
            }
            //斤
            if (specsValue1 == 1) {
                v = soldrVOs.getNum() * 0.5;
            }
            //公斤
            if (specsValue1 == 2) {
                v = soldrVOs.getNum();
            }
            //吨
            if (specsValue1 == 3) {
                v = soldrVOs.getNum() * 1000;
            }
            //毫升
            if (specsValue1 == 4) {
                //毫升换成升
                double s = soldrVOs.getNum() * 0.001;
                //升换成公斤
                v = s;
            }
            //升
            if (specsValue1 == 5) {
                v = soldrVOs.getNum();
            }
            soldrecordService.updateSold(amount1 - soldrVOs.getNum(), soldrVOs.getId(),census-v);
            Stock stock = new Stock();
            stock.setId(soldrVOs.getId());
            Stock detail1 = stockService.getOne(Condition.getQueryWrapper(stock));
@@ -203,4 +270,24 @@
        return R.success("退回成功");
    }
    /**
     * 已出农资列表
     *
     * @return
     */
    @GetMapping("/selectSol")
    public R selectSol() {
        List<SoldrVO> soldrVOS = soldrService.selectSol();
        for (int i = 0; i < soldrVOS.size(); i++) {
            String specs1 = soldrVOS.get(i).getSpecs1();
            String dic1 = soldrVOS.get(i).getDic1();
            String dic2 = soldrVOS.get(i).getDic2();
            String agrname = soldrVOS.get(i).getAgrname();
            String s = agrname + specs1 + dic1 + "/" + dic2;
            soldrVOS.get(i).setSpn(s);
        }
        return R.data(soldrVOS);
    }
}
src/main/java/org/springblade/modules/soldr/entity/Soldr.java
@@ -23,6 +23,7 @@
import org.springblade.core.mp.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
/**
 * 已出库存数量记录表实体类
@@ -33,7 +34,7 @@
@Data
@TableName("sys_soldr")
@EqualsAndHashCode(callSuper = true)
public class Soldr extends BaseEntity {
public class Soldr extends TenantEntity {
    private static final long serialVersionUID = 1L;
@@ -45,7 +46,6 @@
     * 数量
     */
    private Integer amount1;
    private Integer tenantId1;
    /**
     * 规格
     */
@@ -63,5 +63,7 @@
     */
    private String type;
    private Long sid;
    private String deptId;
    private Double census;
}
src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.java
@@ -23,6 +23,7 @@
import org.springblade.modules.soldrecord.vo.SoldrecordVO;
import java.util.List;
import java.util.Map;
/**
 * 已出库存数量记录表 Mapper 接口
@@ -42,4 +43,7 @@
    List<SoldrVO> selectSoldrPage(IPage page, SoldrVO soldr);
    List<SoldrVO> selectLists(IPage page, SoldrVO soldr);
    void  del(Long id);
    void  dels(Long id);
    List<SoldrVO> selectSol();
    List<Map<String, Object>> selectCz(Long sid);
}
src/main/java/org/springblade/modules/soldr/mapper/SoldrMapper.xml
@@ -29,7 +29,7 @@
    </select>
    <select id="selectLists" resultType="org.springblade.modules.soldr.vo.SoldrVO">
        SELECT st.stock_id1,
        SELECT st.id,st.stock_id1,
        st.specs1,
        st.sid,
        st.amount1 AS amount1,
@@ -50,7 +50,8 @@
        WHERE CODE = 'stockSpecs2' AND is_deleted = 0 <if test="soldr.codes!=null and soldr.codes != ''">
        AND blade_dict_biz.tenant_id = #{soldr.codes}
    </if>) c ON c.dict_key = st.specs_val2
        LEFT JOIN ( SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'stockType' AND is_deleted = 0  <if test="soldr.codes!=null and soldr.codes != ''">
        LEFT JOIN ( SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'stockType' AND is_deleted = 0  <if
        test="soldr.codes!=null and soldr.codes != ''">
        AND blade_dict_biz.tenant_id = #{soldr.codes}
    </if>) a ON
        a.dict_key = stf.type
@@ -68,4 +69,47 @@
        from sys_soldr
        where sid = #{id}
    </delete>
    <delete id="dels">
        delete
        from sys_soldr
        where id = #{id}
    </delete>
    <!--已出农资列表-->
    <select id="selectSol" resultType="org.springblade.modules.soldr.vo.SoldrVO">
        SELECT st.id,
               st.stock_id1,
               st.specs1,
               st.sid,
               st.amount1            AS amount1,
               stf.factory_name      AS factoryName,
               a.dict_value          AS stype,
               d.dict_value          AS dic1,
               c.dict_value          AS dic2,
               stf.agricultural_name as agrname
        FROM sys_soldr st
                 LEFT JOIN sys_stockfactory stf ON stf.id = st.stock_id1
                 LEFT JOIN (SELECT dict_key, dict_value
                            FROM blade_dict_biz
                            WHERE CODE = 'stockSpecs1'
                              AND is_deleted = 0) d ON d.dict_key = st.specs_val1
                 LEFT JOIN (SELECT dict_key, dict_value
                            FROM blade_dict_biz
                            WHERE CODE = 'stockSpecs2'
                              AND is_deleted = 0) c ON c.dict_key = st.specs_val2
                 LEFT JOIN (SELECT dict_key, dict_value
                            FROM blade_dict_biz
                            WHERE CODE = 'stockType' AND is_deleted = 0) a ON
            a.dict_key = stf.type
        WHERE st.is_deleted = 0
    </select>
    <!--查询是否存在已出库农资-->
    <select id="selectCz" resultType="java.util.Map">
        SELECT census, sid, amount1
        FROM `sys_soldr`
        WHERE sid = #{sid}
    </select>
</mapper>
src/main/java/org/springblade/modules/soldr/service/ISoldrService.java
@@ -21,6 +21,9 @@
import org.springblade.core.mp.base.BaseService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
import java.util.Map;
/**
 * 已出库存数量记录表 服务类
 *
@@ -39,4 +42,7 @@
    IPage<SoldrVO> selectSoldrPage(IPage<SoldrVO> page, SoldrVO soldr);
    IPage<SoldrVO> selectLists(IPage<SoldrVO> page, SoldrVO soldr);
    void  del(Long id);
    void  dels(Long id);
    List<SoldrVO> selectSol();
    List<Map<String, Object>> selectCz(Long sid);
}
src/main/java/org/springblade/modules/soldr/service/impl/SoldrServiceImpl.java
@@ -24,6 +24,9 @@
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
import java.util.Map;
/**
 * 已出库存数量记录表 服务实现类
 *
@@ -48,4 +51,19 @@
        baseMapper.del(id);
    }
    @Override
    public void dels(Long id) {
        baseMapper.dels(id);
    }
    @Override
    public List<SoldrVO> selectSol() {
        return baseMapper.selectSol();
    }
    @Override
    public List<Map<String, Object>> selectCz(Long sid) {
        return baseMapper.selectCz(sid);
    }
}
src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.java
@@ -42,6 +42,6 @@
    List<SoldrecordVO> selectSoldrecordPage(IPage page, SoldrecordVO soldrecord);
    List<SoldrecordVO> selectLists(IPage page, SoldrecordVO soldrecord);
    List<SoldrecordVO> selectListbg(IPage page, SoldrecordVO soldrecord);
    void updateSold(Integer amount,Long id);
    void updateSold(Integer amount, Long id, Double census);
    void delc(String id);
}
src/main/java/org/springblade/modules/soldrecord/mapper/SoldrecordMapper.xml
@@ -103,8 +103,8 @@
    <update id="updateSold">
        update sys_soldr
        set amount1=#{amount}
        where sid = #{id}
        set amount1=#{amount}, census=#{census}
        where id = #{id}
    </update>
    <delete id="delc">
src/main/java/org/springblade/modules/soldrecord/service/ISoldrecordService.java
@@ -40,6 +40,6 @@
    IPage<SoldrecordVO> selectSoldrecordPage(IPage<SoldrecordVO> page, SoldrecordVO soldrecord);
    IPage<SoldrecordVO> selectLists(IPage<SoldrecordVO> page, SoldrecordVO soldrecord);
    IPage<SoldrecordVO> selectListbg(IPage<SoldrecordVO> page, SoldrecordVO soldrecord);
    void updateSold(Integer amount,Long id);
    void updateSold(Integer amount,Long id,Double census);
    void delc(String id);
}
src/main/java/org/springblade/modules/soldrecord/service/impl/SoldrecordServiceImpl.java
@@ -49,8 +49,8 @@
    }
    @Override
    public void updateSold(Integer amount,Long id) {
        baseMapper.updateSold(amount,id);
    public void updateSold(Integer amount,Long id,Double census) {
        baseMapper.updateSold(amount,id,census);
    }
    @Override
src/main/java/org/springblade/modules/stock/controller/StockController.java
@@ -434,10 +434,10 @@
     * @return
     */
    @GetMapping("/pagenumx")
    public R pagenumx(String startTime, String endTime) {
    public R pagenumx(String deptId,String startTime, String endTime) {
        Double rknu = 0.0;
        Double cknu = 0.0;
        List<StocksVO> pages = stockService.slectNumx(startTime, endTime);
        List<StocksVO> pages = stockService.slectNumx(deptId,startTime, endTime);
        for (int i = 0; i < pages.size(); i++) {
            Double cgnum = pages.get(i).getCgnum();
            Double dbrknum = pages.get(i).getDbrknum();
src/main/java/org/springblade/modules/stock/mapper/StockMapper.java
@@ -52,7 +52,7 @@
    List<StocksVO> slectNum(IPage page, StocksVO stock);
    List<StocksVO> slectNumx(String startTime, String endTime);
    List<StocksVO> slectNumx(String deptId,String startTime, String endTime);
    List<Map<String, Object>> StockCount(String deptId);
}
src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
@@ -116,10 +116,13 @@
        WHERE stock_type1 = 1
        AND type1 = 0
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
        </if>
        <if test="stock.deptId!=null and stock.deptId!=''">
            and dept_id = #{stock.deptId}
        </if>
        GROUP BY stock_id1) cg ON cg.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS dbrknum
@@ -127,10 +130,13 @@
        WHERE stock_type1 = 1
        AND type1 = 1
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
        </if>
        <if test="stock.deptId!=null and stock.deptId!=''">
            and dept_id = #{stock.deptId}
        </if>
        GROUP BY stock_id1) dbr ON dbr.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS lycknum
@@ -138,10 +144,13 @@
        WHERE stock_type1 = 0
        AND type1 = 0
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
        </if>
        <if test="stock.deptId!=null and stock.deptId!=''">
            and dept_id = #{stock.deptId}
        </if>
        GROUP BY stock_id1) lyc ON lyc.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS dbcknum
@@ -149,10 +158,13 @@
        WHERE stock_type1 = 0
        AND type1 = 1
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
        </if>
        <if test="stock.deptId!=null and stock.deptId!=''">
            and dept_id = #{stock.deptId}
        </if>
        GROUP BY stock_id1) dbc ON dbc.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS bfcknum
@@ -160,10 +172,13 @@
        WHERE stock_type1 = 0
        AND type1 = 2
        <if test="stock.startTime!=null and stock.startTime!=''">
            and time1 &gt;= #{stock.startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{stock.startTime}
        </if>
        <if test="stock.endTime!=null and stock.endTime!=''">
            and time1 &lt;= #{stock.endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{stock.endTime}
        </if>
        <if test="stock.deptId!=null and stock.deptId!=''">
            and dept_id = #{stock.deptId}
        </if>
        GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
    </select>
@@ -175,7 +190,8 @@
               sto.type
        FROM `sys_stock` st
                 LEFT JOIN (SELECT id, type FROM sys_stockfactory) sto ON st.stock_id = sto.id
        WHERE st.is_deleted = 0 and  dept_id=#{deptId}
        WHERE st.is_deleted = 0
          and dept_id = #{deptId}
    </select>
    <!--小程序数据统计-->
@@ -204,10 +220,13 @@
        WHERE stock_type1 = 1
        AND type1 = 0
        <if test="startTime!=null and startTime!=''">
            and time1 &gt;= #{startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            and time1 &lt;= #{endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        <if test="deptId!=null and deptId!=''">
            and dept_id = #{deptId}
        </if>
        GROUP BY stock_id1) cg ON cg.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS dbrknum
@@ -215,10 +234,13 @@
        WHERE stock_type1 = 1
        AND type1 = 1
        <if test="startTime!=null and startTime!=''">
            and time1 &gt;= #{startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            and time1 &lt;= #{endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        <if test="deptId!=null and deptId!=''">
            and dept_id = #{deptId}
        </if>
        GROUP BY stock_id1) dbr ON dbr.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS lycknum
@@ -226,10 +248,13 @@
        WHERE stock_type1 = 0
        AND type1 = 0
        <if test="startTime!=null and startTime!=''">
            and time1 &gt;= #{startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            and time1 &lt;= #{endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        <if test="deptId!=null and deptId!=''">
            and dept_id = #{deptId}
        </if>
        GROUP BY stock_id1) lyc ON lyc.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS dbcknum
@@ -237,10 +262,13 @@
        WHERE stock_type1 = 0
        AND type1 = 1
        <if test="startTime!=null and startTime!=''">
            and time1 &gt;= #{startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            and time1 &lt;= #{endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        <if test="deptId!=null and deptId!=''">
            and dept_id = #{deptId}
        </if>
        GROUP BY stock_id1) dbc ON dbc.stock_id1 = a.id
        LEFT JOIN (SELECT stock_id1, SUM(census) AS bfcknum
@@ -248,10 +276,13 @@
        WHERE stock_type1 = 0
        AND type1 = 2
        <if test="startTime!=null and startTime!=''">
            and time1 &gt;= #{startTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &gt;= #{startTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            and time1 &lt;= #{endTime}
            and DATE_FORMAT(time1,'%Y-%m-%d') &lt;= #{endTime}
        </if>
        <if test="deptId!=null and deptId!=''">
            and dept_id = #{deptId}
        </if>
        GROUP BY stock_id1) bfc ON bfc.stock_id1 = a.id
    </select>
src/main/java/org/springblade/modules/stock/service/IStockService.java
@@ -46,6 +46,6 @@
    boolean UpdaeAmountc(Stock stock);
    boolean Updaet(Stock stock);
    IPage<StocksVO> slectNum(IPage<StocksVO> page, StocksVO stock);
    List<StocksVO> slectNumx(String startTime, String endTime);
    List<StocksVO> slectNumx(String deptId,String startTime, String endTime);
    List<Map<String, Object>> StockCount(String deptId);
}
src/main/java/org/springblade/modules/stock/service/impl/StockServiceImpl.java
@@ -73,8 +73,8 @@
    }
    @Override
    public List<StocksVO> slectNumx(String startTime, String endTime) {
        return baseMapper.slectNumx(startTime,endTime);
    public List<StocksVO> slectNumx(String deptId,String startTime, String endTime) {
        return baseMapper.slectNumx(deptId,startTime,endTime);
    }
    @Override
src/main/java/org/springblade/modules/stockfactory/controller/StockfactoryController.java
@@ -132,5 +132,14 @@
        return R.data(stockfactoryService.selectStockFa());
    }
    /**
     * 小程序农资列表
     * @return
     */
    @GetMapping("/selectStockIn")
    public R selectStockIn() {
        return R.data(stockfactoryService.selectStockIn());
    }
}
src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.java
@@ -39,4 +39,5 @@
     */
    List<StockfactoryVO> selectStockfactoryPage(IPage page, StockfactoryVO stockfactory);
    List selectStockFa();
    List selectStockIn();
}
src/main/java/org/springblade/modules/stockfactory/mapper/StockfactoryMapper.xml
@@ -20,11 +20,27 @@
    <select id="selectStockfactoryPage" resultMap="stockfactoryResultMap">
        select * from sys_stockfactory where is_deleted = 0
        select *
        from sys_stockfactory
        where is_deleted = 0
    </select>
    <select id="selectStockFa" resultType="java.util.HashMap">
        select id as dictKey,agricultural_name as dictValue from sys_stockfactory where is_deleted = 0
        select id as dictKey, agricultural_name as dictValue
        from sys_stockfactory
        where is_deleted = 0
    </select>
    <!--小程序农资列表-->
    <select id="selectStockIn" resultType="java.util.HashMap">
        SELECT s.id                AS id,
               s.agricultural_name AS agrname,
               c.dict_value        AS dic
        FROM sys_stockfactory s
                 LEFT JOIN (SELECT dict_key, dict_value
                            FROM blade_dict_biz
                            WHERE CODE = 'stockType' AND is_deleted = 0) c ON c.dict_key = s.type
        WHERE is_deleted = 0
    </select>
</mapper>
src/main/java/org/springblade/modules/stockfactory/service/IStockfactoryService.java
@@ -40,4 +40,5 @@
     */
    IPage<StockfactoryVO> selectStockfactoryPage(IPage<StockfactoryVO> page, StockfactoryVO stockfactory);
    List selectStockFa();
    List selectStockIn();
}
src/main/java/org/springblade/modules/stockfactory/service/impl/StockfactoryServiceImpl.java
@@ -45,4 +45,9 @@
        return baseMapper.selectStockFa();
    }
    @Override
    public List selectStockIn() {
        return baseMapper.selectStockIn();
    }
}
src/main/java/org/springblade/modules/stockrecord/controller/StockrecordController.java
@@ -30,6 +30,7 @@
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.soldr.entity.Soldr;
import org.springblade.modules.soldr.service.ISoldrService;
import org.springblade.modules.soldr.vo.SoldrVO;
import org.springblade.modules.soldrecord.entity.Soldrecord;
import org.springblade.modules.soldrecord.service.ISoldrecordService;
import org.springblade.modules.stock.entity.Stock;
@@ -45,6 +46,7 @@
import org.springblade.core.boot.ctrl.BladeController;
import java.util.List;
import java.util.Map;
/**
 * 出入库记录 控制器
@@ -146,6 +148,9 @@
            Integer num = stockrecord.getNum();
            //出库量
            Integer amount1 = stockrecord.getAmount1();
            //规格
            String specs1 = stockrecord.getSpecs1();
            int spe = Integer.parseInt(specs1);
            //当前总量
            int i = num - amount1;
            Stock stock = new Stock();
@@ -156,30 +161,30 @@
            double v = 0;
            //克
            if (specsValue1 == 0) {
                v = amount1 * 0.001;
                v = amount1* spe * 0.001;
            }
            //斤
            if (specsValue1 == 1) {
                v = amount1 * 0.5;
                v = amount1* spe * 0.5;
            }
            //公斤
            if (specsValue1 == 2) {
                v = amount1;
                v = amount1* spe;
            }
            //吨
            if (specsValue1 == 3) {
                v = amount1 * 1000;
                v = amount1 * spe * 1000;
            }
            //毫升
            if (specsValue1 == 4) {
                //毫升换成升
                double s = amount1 * 0.001;
                double s = amount1* spe * 0.001;
                //升换成公斤
                v = s;
            }
            //升
            if (specsValue1 == 5) {
                v = amount1;
                v = amount1* spe;
            }
            stockrecord.setCensus(v);
            if (i == 0) {
@@ -207,17 +212,22 @@
                Soldr soldr = new Soldr();
                soldr.setSid(stockrecord.getSid());
                soldr.setStockId1(stockrecord.getStockId1());
                soldr.setStockId1(stockrecord.getStockId1());
                soldr.setAmount1(amount1);
                soldr.setSpecs1(stockrecord.getSpecs1());
                soldr.setSpecsVal1(stockrecord.getSpecsVal1());
                soldr.setSpecsVal2(stockrecord.getSpecsVal2());
                soldr.setType(stockrecord.getType1());
                soldr.setCensus(v);
                //已出库农资数量
                Soldr detail = soldrService.getOne(Condition.getQueryWrapper(soldr));
                if (null != detail) {
                    Integer amount11 = detail.getAmount1();
                    soldrecordService.updateSold(amount11 + amount1, detail.getSid());
                List<Map<String, Object>> maps = soldrService.selectCz(stockrecord.getSid());
                if (maps.size()!=0) {
                    String a = maps.get(0).get("amount1").toString();
                    Integer amount11=Integer.parseInt(a);
                    String amount12 = maps.get(0).get("amount1").toString();
                    Double census = Double.parseDouble(amount12);
                    String sid = maps.get(0).get("sid").toString();
                    Long si=Long.valueOf(sid);
                    soldrecordService.updateSold(amount11 + amount1, si,census+v);
                } else {
                    soldrService.save(soldr);
                }
@@ -231,6 +241,8 @@
            Integer num = stockrecord.getNum();
            //入库量
            Integer amount1 = stockrecord.getAmount1();
            String specs1 = stockrecord.getSpecs1();
            int spe=Integer.parseInt(specs1);
            //当前总量
            int i = num + amount1;
            Stock stock = new Stock();
@@ -243,30 +255,30 @@
            double v = 0;
            //克
            if (specsValue1 == 0) {
                v = amount1 * 0.001;
                v = amount1*spe * 0.001;
            }
            //斤
            if (specsValue1 == 1) {
                v = amount1 * 0.5;
                v = amount1*spe * 0.5;
            }
            //公斤
            if (specsValue1 == 2) {
                v = amount1;
                v = amount1*spe;
            }
            //吨
            if (specsValue1 == 3) {
                v = amount1 * 1000;
                v = amount1*spe * 1000;
            }
            //毫升
            if (specsValue1 == 4) {
                //毫升换成升
                double s = amount1 * 0.001;
                double s = amount1*spe * 0.001;
                //升换成公斤
                v = s;
            }
            //升
            if (specsValue1 == 5) {
                v = amount1;
                v = amount1*spe;
            }
            stockrecord.setCensus(v);
        }
src/main/java/org/springblade/modules/stockrecord/entity/Stockrecord.java
@@ -81,6 +81,7 @@
    private Integer stockType1;
    private String sp1;
    private String sp2;
    private String deptId;
    private Long sid;
    private Double census;
}
src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.xml
@@ -87,4 +87,5 @@
            and st.sid = #{stockrecord.sid}
        </if>
    </select>
</mapper>
src/main/java/org/springblade/modules/stockrecord/service/IStockrecordService.java
@@ -21,6 +21,8 @@
import org.springblade.core.mp.base.BaseService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
/**
 * 出入库记录 服务类
 *
@@ -38,5 +40,4 @@
     */
    IPage<StockrecordVO> selectStockrecordPage(IPage<StockrecordVO> page, StockrecordVO stockrecord);
    IPage<StockrecordVO> seletStockRecordList(IPage<StockrecordVO> page, StockrecordVO stockrecord);
}
src/main/java/org/springblade/modules/task/controller/TaskController.java
@@ -21,6 +21,7 @@
import io.swagger.annotations.ApiParam;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import lombok.AllArgsConstructor;
import javax.validation.Valid;
import org.springblade.core.mp.support.Condition;
@@ -35,8 +36,11 @@
import org.springblade.modules.task.service.ITaskService;
import org.springblade.core.boot.ctrl.BladeController;
import java.util.HashMap;
import java.util.Map;
/**
 *  控制器
 * 控制器
 *
 * @author BladeX
 * @since 2022-06-10
@@ -89,7 +93,7 @@
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入task")
    public R save(@Valid @RequestBody Task task) {
        task.setStatus(1);
        task.setStatus(2);
        return R.status(taskService.save(task));
    }
@@ -100,6 +104,17 @@
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入task")
    public R update(@Valid @RequestBody Task task) {
        return R.status(taskService.updateById(task));
    }
    /**
     * 任务处理
     */
    @PostMapping("/updatechuli")
    @ApiOperationSupport(order = 5)
    @ApiOperation(value = "修改", notes = "传入task")
    public R updatechuli(@Valid @RequestBody Task task) {
        task.setStatus(0);
        return R.status(taskService.updateById(task));
    }
@@ -124,5 +139,17 @@
        return R.status(taskService.deleteLogic(Func.toLongList(ids)));
    }
    /**
     * 统计待处理任务数量
     *
     * @param task
     * @return
     */
    @GetMapping("/selectCount")
    public R selectCount(Task task) {
        int i = taskService.selectCount(task.getTaskUser());
        Map map = new HashMap();
        map.put("num",i);
        return R.data(map);
    }
}
src/main/java/org/springblade/modules/task/entity/Task.java
@@ -26,6 +26,7 @@
import org.springblade.core.mp.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
import org.springframework.format.annotation.DateTimeFormat;
/**
@@ -37,7 +38,7 @@
@Data
@TableName("sys_task")
@EqualsAndHashCode(callSuper = true)
public class Task extends BaseEntity {
public class Task extends TenantEntity {
    private static final long serialVersionUID = 1L;
@@ -79,6 +80,18 @@
     * 农事操作
     */
    private String farm;
    /**
     * 农资id
     */
    private String stockId;
    /**
     * 农资规格
     */
    private String stockGg;
    /**
     * 农资数量
     */
    private String stockNum;
}
src/main/java/org/springblade/modules/task/mapper/TaskMapper.java
@@ -20,10 +20,11 @@
import org.springblade.modules.task.vo.TaskVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
/**
 *  Mapper 接口
 * Mapper 接口
 *
 * @author BladeX
 * @since 2022-06-10
@@ -39,4 +40,5 @@
     */
    List<TaskVO> selectTaskPage(IPage page, TaskVO task);
    int selectCount(String taskuser);
}
src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -3,7 +3,7 @@
<mapper namespace="org.springblade.modules.task.mapper.TaskMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="taskResultMap" type="org.springblade.modules.task.entity.Task">
    <resultMap id="taskResultMap" type="org.springblade.modules.task.vo.TaskVO">
        <result column="id" property="id"/>
        <result column="create_user" property="createUser"/>
        <result column="create_dept" property="createDept"/>
@@ -21,11 +21,35 @@
        <result column="remark" property="remark"/>
        <result column="tp" property="tp"/>
        <result column="farm" property="farm"/>
        <result column="landname" property="landname"/>
    </resultMap>
    <select id="selectTaskPage" resultMap="taskResultMap">
        select * from sys_task where is_deleted = 0
        select t.*, l.land_name as landname,f.agricultural_name as argname,
        u.real_name as reaname
        from sys_task t
        LEFT JOIN sys_land l ON t.land_id = l.id
        LEFT JOIN sys_stockfactory f ON f.id=t.stock_id
        LEFT JOIN blade_user u ON u.id=t.task_user
        where t.is_deleted = 0
        <if test="task.status!=null and task.status!=''">
            and t.status=#{task.status}
        </if>
        <if test="task.taskUser!=null and task.taskUser!=''">
            and t.create_user=#{task.taskUser}
        </if>
        <if test="task.createUser!=null and task.createUser!=''">
            and t.create_user=#{task.createUser}
        </if>
    </select>
    <!--统计待处理任务数量-->
    <select id="selectCount" resultType="java.lang.Integer">
        SELECT COUNT(*)
        FROM `sys_task`
        WHERE status = 2
          AND is_deleted = 0
          AND task_user = #{taskuser}
    </select>
</mapper>
src/main/java/org/springblade/modules/task/service/ITaskService.java
@@ -37,5 +37,5 @@
     * @return
     */
    IPage<TaskVO> selectTaskPage(IPage<TaskVO> page, TaskVO task);
    int selectCount(String taskuser);
}
src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
@@ -38,4 +38,9 @@
        return page.setRecords(baseMapper.selectTaskPage(page, task));
    }
    @Override
    public int selectCount(String taskuser) {
        return baseMapper.selectCount(taskuser);
    }
}
src/main/java/org/springblade/modules/task/vo/TaskVO.java
@@ -30,5 +30,7 @@
@EqualsAndHashCode(callSuper = true)
public class TaskVO extends Task {
    private static final long serialVersionUID = 1L;
    private String landname;
    private String argname;
    private String reaname;
}