src/main/java/org/springblade/modules/stock/controller/StockController.java
@@ -27,6 +27,8 @@ import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.modules.stockrecord.entity.Stockrecord; import org.springblade.modules.stockrecord.service.IStockrecordService; import org.springblade.modules.system.entity.DictBiz; import org.springblade.modules.system.service.IDictBizService; import org.springframework.web.bind.annotation.*; @@ -52,7 +54,7 @@ public class StockController extends BladeController { private final IStockService stockService; private final IDictBizService dictService; private final IStockrecordService stockrecordService; /** * 详情 */ @@ -104,6 +106,22 @@ stock.setState("0"); stock.setSp1("stockSpecs1"); stock.setSp2("stockSpecs2"); //农资记录表 Stockrecord stockrecord =new Stockrecord(); //农资ID stockrecord.setStockId1(stock.getStockId()); stockrecord.setAmount1(stock.getAmount()); stockrecord.setTime1(stock.getTime()); stockrecord.setType1(stock.getType()); stockrecord.setStockType1(1); stockrecord.setPicture1(stock.getPicture()); stockrecord.setRemarks1(stock.getRemarks()); stockrecord.setSpecs1(stock.getSpecs()); stockrecord.setSpecsVal1(stock.getSpecsValue1()); stockrecord.setSpecsVal2(stock.getSpecsValue2()); stockrecord.setSp1("stockSpecs1"); stockrecord.setSp2("stockSpecs2"); stockrecordService.save(stockrecord); return R.status(stockService.save(stock)); } src/main/java/org/springblade/modules/stock/mapper/StockMapper.java
@@ -16,6 +16,8 @@ */ package org.springblade.modules.stock.mapper; import org.apache.ibatis.annotations.Param; import org.springblade.modules.farm.entity.Farm; import org.springblade.modules.stock.entity.Stock; import org.springblade.modules.stock.vo.StockVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -39,5 +41,5 @@ */ List<StockVO> selectStockPage(IPage page, StockVO stock); List<StockVO> selectLists(IPage page, StockVO stock); int UpdaeAmountc(@Param("stock") Stock stock); } src/main/java/org/springblade/modules/stock/mapper/StockMapper.xml
@@ -33,7 +33,7 @@ <select id="selectLists" resultType="org.springblade.modules.stock.vo.StockVO"> SELECT st.*, stf.agricultural_name AS factoryName, stf.factory_name AS factoryName, stf.type AS stype, d.dict_value AS dic1, c.dict_value AS dic2 @@ -62,5 +62,9 @@ and st.type = #{stock.type} </if> </select> <!--入库出库--> <update id="UpdaeAmountc"> update sys_stock set amount = #{stock.amount} ,state=#{stock.state} where stock_id=#{stock.stockId} </update> </mapper> src/main/java/org/springblade/modules/stock/service/IStockService.java
@@ -16,6 +16,7 @@ */ package org.springblade.modules.stock.service; import org.springblade.modules.farm.entity.Farm; import org.springblade.modules.stock.entity.Stock; import org.springblade.modules.stock.vo.StockVO; import org.springblade.core.mp.base.BaseService; @@ -38,5 +39,5 @@ */ IPage<StockVO> selectStockPage(IPage<StockVO> page, StockVO stock); IPage<StockVO> selectLists(IPage<StockVO> page, StockVO stock); boolean UpdaeAmountc(Stock stock); } src/main/java/org/springblade/modules/stock/service/impl/StockServiceImpl.java
@@ -43,4 +43,14 @@ return page.setRecords(baseMapper.selectLists(page,stock)); } @Override public boolean UpdaeAmountc(Stock stock) { //更新 int i = baseMapper.UpdaeAmountc(stock); if (i>0){ return true; } return false; } } src/main/java/org/springblade/modules/stockfactory/controller/StockfactoryController.java
@@ -123,7 +123,10 @@ return R.status(stockfactoryService.deleteLogic(Func.toLongList(ids))); } /** * 农资列表 * @return */ @GetMapping("/selectStockFa") public R selectStockFa() { return R.data(stockfactoryService.selectStockFa()); src/main/java/org/springblade/modules/stockrecord/controller/StockrecordController.java
@@ -21,12 +21,17 @@ 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; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.modules.stock.entity.Stock; import org.springblade.modules.stock.service.IStockService; import org.springblade.modules.system.entity.DictBiz; import org.springblade.modules.system.service.IDictBizService; import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.RequestParam; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -34,6 +39,8 @@ import org.springblade.modules.stockrecord.vo.StockrecordVO; import org.springblade.modules.stockrecord.service.IStockrecordService; import org.springblade.core.boot.ctrl.BladeController; import java.util.List; /** * 出入库记录 控制器 @@ -48,6 +55,8 @@ public class StockrecordController extends BladeController { private final IStockrecordService stockrecordService; private final IStockService stockService; private final IDictBizService dictService; /** * 详情 @@ -78,7 +87,42 @@ @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "传入stockrecord") public R<IPage<StockrecordVO>> page(StockrecordVO stockrecord, Query query) { IPage<StockrecordVO> pages = stockrecordService.selectStockrecordPage(Condition.getPage(query), stockrecord); IPage<StockrecordVO> pages = stockrecordService.seletStockRecordList(Condition.getPage(query), stockrecord); for (int i = 0; i < pages.getRecords().size(); i++) { String specs = pages.getRecords().get(i).getSpecs1(); String dic1 = pages.getRecords().get(i).getDic1(); String dic2 = pages.getRecords().get(i).getDic2(); String s = specs + dic1 + "/" + dic2; //出库 if (pages.getRecords().get(i).getStockType1() == 0) { String count = "-" + pages.getRecords().get(i).getAmount1() + dic2; pages.getRecords().get(i).setCount(count); } else { String count = "+" + pages.getRecords().get(i).getAmount1() + dic2; pages.getRecords().get(i).setCount(count); } pages.getRecords().get(i).setSpn(s); //获取农资出入库类型 0:出库 1:入库 Integer stockType1 = pages.getRecords().get(i).getStockType1(); String type1 = pages.getRecords().get(i).getType1(); if (stockType1 == 0) { List<DictBiz> tree = dictService.getList("stockPurchase1"); for (int j = 0; j < tree.size(); j++) { if (tree.get(j).getDictKey().equals(type1)) { pages.getRecords().get(i).setType1(tree.get(j).getDictValue()); } } } else { List<DictBiz> tree = dictService.getList("stockPurchase"); for (int j = 0; j < tree.size(); j++) { if (tree.get(j).getDictKey().equals(type1)) { pages.getRecords().get(i).setType1(tree.get(j).getDictValue()); } } } } return R.data(pages); } @@ -88,7 +132,41 @@ @PostMapping("/save") @ApiOperationSupport(order = 4) @ApiOperation(value = "新增", notes = "传入stockrecord") public R save(@Valid @RequestBody Stockrecord stockrecord) { public R save(@Valid @RequestBody StockrecordVO stockrecord) { Integer stockType1 = stockrecord.getStockType1(); //出库 if (stockType1 == 0) { //库存量 Integer num = stockrecord.getNum(); //出库量 Integer amount1 = stockrecord.getAmount1(); //当前总量 int i = num - amount1; Stock stock = new Stock(); stock.setStockId(stockrecord.getStockId1()); stock.setAmount(i); if (i == 0) { stock.setState("1"); stockService.UpdaeAmountc(stock); } else { stock.setState("0"); stockService.UpdaeAmountc(stock); } } //入库 else { //库存量 Integer num = stockrecord.getNum(); //入库量 Integer amount1 = stockrecord.getAmount1(); //当前总量 int i = num + amount1; Stock stock = new Stock(); stock.setStockId(stockrecord.getStockId1()); stock.setAmount(i); stock.setState("0"); stockService.UpdaeAmountc(stock); } return R.status(stockrecordService.save(stockrecord)); } @@ -112,7 +190,7 @@ return R.status(stockrecordService.saveOrUpdate(stockrecord)); } /** * 删除 出入库记录 */ @@ -123,5 +201,5 @@ return R.status(stockrecordService.deleteLogic(Func.toLongList(ids))); } } src/main/java/org/springblade/modules/stockrecord/entity/Stockrecord.java
@@ -19,9 +19,13 @@ import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.time.LocalDateTime; import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import org.springblade.core.mp.base.BaseEntity; import lombok.Data; import lombok.EqualsAndHashCode; import org.springframework.format.annotation.DateTimeFormat; /** * 出入库记录实体类 @@ -43,27 +47,17 @@ /** * 数量 */ private String amount1; private Integer amount1; /** * 时间 */ private LocalDateTime time1; @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd") private Date time1; /** * 类型 (0:出库 1:入库) * 采购类型 (0:采购入库 1:调拨入库) */ private String type1; /** * 操作人 */ private String operator1; /** * 规格 */ private String spn1; /** * 农资类型 */ private String stockType1; /** * 图片 */ @@ -72,6 +66,19 @@ * 备注 */ private String remarks1; /** * 规格 */ private String specs1; /** * 规格值(0:克 1:斤 2:公斤 3:吨 4:毫升 5:升 ) */ private Integer specsVal1; /** * 规格值2( 0:袋 1:包 2:瓶 3:盒 4:箱 5:桶 6:支) */ private Integer specsVal2; private Integer stockType1; private String sp1; private String sp2; } src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.java
@@ -38,5 +38,6 @@ * @return */ List<StockrecordVO> selectStockrecordPage(IPage page, StockrecordVO stockrecord); List<StockrecordVO> seletStockRecordList(IPage page, StockrecordVO stockrecord); } src/main/java/org/springblade/modules/stockrecord/mapper/StockrecordMapper.xml
@@ -18,7 +18,9 @@ <select id="selectStockrecordPage" resultMap="stockrecordResultMap"> select * from sys_stockrecord where is_deleted = 0 select * from sys_stockrecord where is_deleted = 0 </select> <select id="seletList" resultType="org.springblade.modules.stock.vo.StockVO"> SELECT st.*, @@ -50,4 +52,27 @@ </if> </select> <!--农资记录查询--> <select id="seletStockRecordList" resultType="org.springblade.modules.stockrecord.vo.StockrecordVO"> SELECT st.*, stf.type AS stype, stf.factory_name AS factoryName, d.dict_value AS dic1, c.dict_value AS dic2, a.name as czr FROM `sys_stockrecord` st LEFT JOIN sys_stockfactory stf ON st.stock_id1 = stf.id 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 name, id FROM blade_user WHERE is_deleted = 0) a ON a.id = st.create_user WHERE st.is_deleted = 0 </select> </mapper> src/main/java/org/springblade/modules/stockrecord/service/IStockrecordService.java
@@ -37,5 +37,6 @@ * @return */ IPage<StockrecordVO> selectStockrecordPage(IPage<StockrecordVO> page, StockrecordVO stockrecord); IPage<StockrecordVO> seletStockRecordList(IPage<StockrecordVO> page, StockrecordVO stockrecord); } src/main/java/org/springblade/modules/stockrecord/service/impl/StockrecordServiceImpl.java
@@ -38,4 +38,9 @@ return page.setRecords(baseMapper.selectStockrecordPage(page, stockrecord)); } @Override public IPage<StockrecordVO> seletStockRecordList(IPage<StockrecordVO> page, StockrecordVO stockrecord) { return page.setRecords(baseMapper.seletStockRecordList(page,stockrecord)); } } src/main/java/org/springblade/modules/stockrecord/vo/StockrecordVO.java
@@ -30,5 +30,12 @@ @EqualsAndHashCode(callSuper = true) public class StockrecordVO extends Stockrecord { private static final long serialVersionUID = 1L; Integer num; String stype; String factoryName; String dic1; String dic2; String spn; String czr; String count; }