Browse Source

完善功能

master
djz236 2 years ago
parent
commit
19209cec22
  1. 2
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStoreHouseMainDetailVo.java
  2. 9
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStoreHouseMainDto.java
  3. 3
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStoreHouseMainVo.java
  4. 18
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStorehouseMain.java
  5. 18
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStorehouseMainQuery.java
  6. 1
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/OutStorehouseMainQuery.java
  7. 2
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/OutStorehouseVo.java
  8. 81
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/PurchasenewForImportDto.java
  9. 4
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/PurchasenewQuery.java
  10. 2
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenewproduct/PurchasenewProductDto.java
  11. 12
      warehousing-system/project/wh-manage/src/main/java/com/wh/controller/api/input/InStoreHouseMainController.java
  12. 9
      warehousing-system/project/wh-manage/src/main/java/com/wh/controller/api/output/OutStorehouseMainController.java
  13. 2
      warehousing-system/project/wh-manage/src/main/java/com/wh/controller/api/prodstock/ProdStockController.java
  14. 14
      warehousing-system/project/wh-manage/src/main/java/com/wh/controller/outstorehouse/PickingController.java
  15. 2
      warehousing-system/project/wh-manage/src/main/java/com/wh/controller/purchasenew/PurchasenewController.java
  16. 1
      warehousing-system/project/wh-manage/src/main/java/com/wh/controller/shstorehouse/ShStorehouseRest.java
  17. 6
      warehousing-system/project/wh-manage/src/main/java/com/wh/mapper/api/outstorehouse/OutStorehouseMainMapper.java
  18. 10
      warehousing-system/project/wh-manage/src/main/java/com/wh/mapper/api/prodstock/ProdStockMapper.java
  19. 42
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/api/instorehouse/InStorehouseMainService.java
  20. 32
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/api/outstorehouse/OutStorehouseMainService.java
  21. 39
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/api/prodstock/ProdStockService.java
  22. 25
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/initial/ProductService.java
  23. 23
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/initial/ProductServiceImpl.java
  24. 33
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/purchasenew/PurchasenewService.java

2
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStoreHouseMainDetailVo.java

@ -17,4 +17,6 @@ public class InStoreHouseMainDetailVo implements Vo {
private String approvedDate; // varchar 50 审核日期
private List<InStorehouseListing> list;
private String purchaseSid;//采购申请单的sid
private String locationName; //货位名称
private String locationId;//货位id
}

9
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStoreHouseMainDto.java

@ -25,6 +25,15 @@ public class InStoreHouseMainDto {
private List<InStorehouseListing> list;
private String purchaseSid;//采购申请单的sid
private String locationId;
private String locationName; //货位名称
public String getLocationName() {
return locationName;
}
public void setLocationName(String locationName) {
this.locationName = locationName;
}
public String getLocationId() {
return locationId;

3
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStoreHouseMainVo.java

@ -19,4 +19,7 @@ public class InStoreHouseMainVo implements Vo {
private String approvedDate; // varchar 50 审核日期
private String prodNum; // varchar 50 商品数量
private String purchaseSid;//采购申请单的sid
private String locationName; //货位名称
private String locationId;//货位id
private String createTime;//入库日期
}

18
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStorehouseMain.java

@ -25,6 +25,24 @@ public class InStorehouseMain extends BaseEntity {
private String approvedDate; // varchar 50 审核日期
private String approvedRemark; // varchar 50 审核备注
private String purchaseSid;//采购申请单的sid
private String locationName; //货位名称
private String locationId;//货位id
public String getLocationName() {
return locationName;
}
public void setLocationName(String locationName) {
this.locationName = locationName;
}
public String getLocationId() {
return locationId;
}
public void setLocationId(String locationId) {
this.locationId = locationId;
}
public String getNo() {
return no;

18
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/InStorehouseMainQuery.java

@ -23,6 +23,24 @@ public class InStorehouseMainQuery implements Query {
private String approvedDate; // varchar 50 审核日期
private String approvedRemark; // varchar 50 审核备注
private String purchaseSid;//采购申请单的sid
private String locationName; //货位名称
private String locationId;//货位id
public String getLocationName() {
return locationName;
}
public void setLocationName(String locationName) {
this.locationName = locationName;
}
public String getLocationId() {
return locationId;
}
public void setLocationId(String locationId) {
this.locationId = locationId;
}
public String getSid() {
return sid;

1
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/OutStorehouseMainQuery.java

@ -16,4 +16,5 @@ public class OutStorehouseMainQuery implements Query {
private String creatorName; /// varchar 50 制单人姓名
private String custerName; // varchar 100 客户名称(企业)
private String mainSid; // varchar 100 mainSid
private String state;
}

2
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/OutStorehouseVo.java

@ -19,4 +19,6 @@ public class OutStorehouseVo implements Vo {
private String auditorName; // varchar 50 审核人姓名
private String approvedDate; // varchar 50 审核日期
private String prodNum; // varchar 50 商品数量
private String modifyTime; //修改日期
private String state;
}

81
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/PurchasenewForImportDto.java

@ -0,0 +1,81 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.wh.pojo.purchasenew;
import com.wh.pojo.purchasenewproduct.PurchasenewProductDto;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* Project: warehouse(仓储) <br/>
* File: PurchasenewDto.java <br/>
* Class: com.wh..api.purchasenew.PurchasenewDto <br/>
* Description: 采购订单 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-06-10 18:09:57 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "采购订单 数据传输对象", description = "采购订单 数据传输对象")
public class PurchasenewForImportDto implements Dto {
private String sid; // sid
@ApiModelProperty("订单日期")
private String purchaseDate; // 订单日期
@ApiModelProperty("订单编号")
private String purchaseNo; // 订单编号
@ApiModelProperty("采购人员")
private String purchasePerson; // 采购人员
@ApiModelProperty("采购人员sid")
private String purchasePersonSid; // 采购人员sid
@ApiModelProperty("客户id")
private String custId; // 客户id
@ApiModelProperty("客户名称")
private String custName; // 客户名称
@ApiModelProperty("供应商名称")
private String supplierName; // 供应商名称
@ApiModelProperty("供应商id")
private String supplierId; // 供应商id
@ApiModelProperty("仓库名称")
private String storehouseName; // 仓库名称
@ApiModelProperty("仓库id")
private String storehouseId; // 仓库id
@ApiModelProperty("仓库id")
private String locationId;
@ApiModelProperty("仓库id")
private String locationNumber;
@ApiModelProperty("商品列表")
private List<PurchasenewProductDto> products;
}

4
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/PurchasenewQuery.java

@ -70,7 +70,9 @@ public class PurchasenewQuery implements Query {
private String storehouseName; // 仓库名称
@ApiModelProperty("仓库id")
private String storehouseId; // 仓库id
// @ApiModelProperty("状态")
// private String status; // 状态
@ApiModelProperty("状态")
private String status; // 状态
private String state; // 状态
}

2
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenewproduct/PurchasenewProductDto.java

@ -87,6 +87,8 @@ public class PurchasenewProductDto implements Dto {
private String realityCalculatedValue; // 实际核算的价值
@ApiModelProperty("货位号")
private String locationNumber; // 货位号
@ApiModelProperty("货位id")
private String locationId; // 货位号id
@ApiModelProperty("申请单的sid")
private String mainSid; // 申请单的sid
@ApiModelProperty("质物id")

12
warehousing-system/project/wh-manage/src/main/java/com/wh/controller/api/input/InStoreHouseMainController.java

@ -5,6 +5,8 @@ import com.alibaba.fastjson.JSONObject;
import com.wh.feign.enterpriseinformation.WhEnterpriseInformationFeign;
import com.wh.feign.enterpriseinformation.WhEnterpriseInformationQuery;
import com.wh.pojo.api.*;
import com.wh.pojo.purchasenew.PurchasenewQuery;
import com.wh.pojo.purchasenew.PurchasenewVo;
import com.wh.service.api.instorehouse.InStorehouseMainService;
import com.wh.service.purchasenew.PurchasenewService;
import com.wh.service.purchasenewproduct.PurchasenewProductService;
@ -12,6 +14,7 @@ import com.wh.vo.SysResult;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -32,7 +35,14 @@ public class InStoreHouseMainController {
private PurchasenewProductService purchasenewProductService;
@Resource
private WhEnterpriseInformationFeign enterpriseInformationFeign;
// @ApiOperation("根据条件分页查询数据的列表")
// @PostMapping("/listPage")
// public ResultBean<PagerVo<PurchasenewVo>> listPage(@RequestBody PagerQuery<PurchasenewQuery> pq){
// pq.getParams().setState("2");
// ResultBean rb = ResultBean.fireFail();
// PagerVo<PurchasenewVo> pv = purchasenewService.listPageVo(pq);
// return rb.success().setData(pv);
// }
@PostMapping("addInStorehouse")
public ResultBean addInStorehouse(@RequestBody InStoreHouseMainDto inStoreHouseMainDto){
log.info("/input/addInStorehouse:{}", JSONObject.toJSONString(inStoreHouseMainDto));

9
warehousing-system/project/wh-manage/src/main/java/com/wh/controller/api/output/OutStorehouseMainController.java

@ -14,6 +14,9 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Slf4j
@RestController
@CrossOrigin
@ -45,6 +48,12 @@ public class OutStorehouseMainController {
ResultBean<PagerVo<OutStorehouseVo>> r = ResultBean.fireSuccess();
return r.setData(pv);
}
@PostMapping("listAllForPicking")
public ResultBean listAllForPicking(){
ResultBean r=ResultBean.fireFail();
List<OutStorehouseMain> list= outStorehouseMainService.listAllForPicking();
return r.success().setData(list);
}
@GetMapping("getOutStorehouse/{sid}")
public ResultBean getOutStorehouse(@PathVariable(value = "sid") String sid){
return outStorehouseMainService.getOutStorehouse(sid);

2
warehousing-system/project/wh-manage/src/main/java/com/wh/controller/api/prodstock/ProdStockController.java

@ -34,7 +34,7 @@ public class ProdStockController {
if(list.size()>0){
List<ProdStock> prodStocks = prodStockService.importStock(list);
if(prodStocks.size()>0){
return rb.fail().setData(prodStocks).setMsg("部分数据导入失败");
return rb.fail().setData(prodStocks).setMsg("部分数据导入失败,商品、仓库信息不能为空");
}
}else{
return rb.setMsg("导入失败");

14
warehousing-system/project/wh-manage/src/main/java/com/wh/controller/outstorehouse/PickingController.java

@ -4,13 +4,17 @@ import com.alibaba.fastjson.JSONObject;
import com.wh.pojo.Picking;
import com.wh.pojo.api.OutStorehouseListing;
import com.wh.pojo.api.OutStorehouseMain;
import com.wh.pojo.api.OutStorehouseMainQuery;
import com.wh.pojo.api.OutStorehouseVo;
import com.wh.service.api.outstorehouse.OutStorehouseListingService;
import com.wh.service.api.outstorehouse.OutStorehouseMainService;
import com.wh.service.outstorehouse.PickingService;
import com.wh.vo.PageResult;
import com.wh.vo.PickingUser;
import com.wh.vo.SysResult;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -26,7 +30,15 @@ public class PickingController {
@Autowired
private PickingService pickingService;
@Autowired
private OutStorehouseMainService outStorehouseMainService;
@PostMapping("listPage")
public ResultBean listPage(@RequestBody PagerQuery<OutStorehouseMainQuery> pq){
pq.getParams().setState("2");
PagerVo<OutStorehouseVo> pv = outStorehouseMainService.listPage(pq);
ResultBean<PagerVo<OutStorehouseVo>> r = ResultBean.fireSuccess();
return r.setData(pv);
}
@GetMapping("getOptions")
public SysResult getOptions(){
List<String> outStorehouseIdList = pickingService.getOptions();

2
warehousing-system/project/wh-manage/src/main/java/com/wh/controller/purchasenew/PurchasenewController.java

@ -44,7 +44,7 @@ public class PurchasenewController {
@ApiOperation("导入采购订单 入库")
@PostMapping("/importPurchase")
public ResultBean importPurchase(@RequestBody PurchasenewDto dto){
public ResultBean importPurchase(@RequestBody PurchasenewForImportDto dto){
log.info("/stock/importStock:{}", JSONObject.toJSONString(dto));
return purchasenewService.importPurchase(dto);
}

1
warehousing-system/project/wh-manage/src/main/java/com/wh/controller/shstorehouse/ShStorehouseRest.java

@ -129,7 +129,6 @@ public class ShStorehouseRest {
ResultBean rb = ResultBean.fireFail();
return rb.success().setData(shStorehouseService.list());
}
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody ShStorehouseDto dto){

6
warehousing-system/project/wh-manage/src/main/java/com/wh/mapper/api/outstorehouse/OutStorehouseMainMapper.java

@ -10,10 +10,14 @@ import com.wh.pojo.api.OutStorehouseMain;
import com.wh.pojo.api.OutStorehouseVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@Mapper
public interface OutStorehouseMainMapper extends BaseMapper<OutStorehouseMain> {
IPage<OutStorehouseVo> selectPageVo(IPage<OutStorehouseVo> page,
@Param(Constants.WRAPPER) Wrapper<OutStorehouseVo> qw);
@Select("select * from out_storehouse_main where state=1;")
List<OutStorehouseMain> listAllForPicking();
}

10
warehousing-system/project/wh-manage/src/main/java/com/wh/mapper/api/prodstock/ProdStockMapper.java

@ -11,6 +11,12 @@ public interface ProdStockMapper extends BaseMapper<ProdStock> {
@Update("update prod_stock set num=num-#{num} , calculated_value=(num*confirmed_price) where pro_sid=#{proSid} and custer_sid=#{custerSid}")
void reduceNumByProdSidAndCustSid(@Param("proSid") String proSid, @Param("custerSid")String custerSid,
@Param("num")String num);
@Update("update prod_stock set num=num+#{num}, calculated_value=(num*confirmed_price) where pro_sid=#{proSid} and custer_sid=#{custerSid}")
void addNumByProdSidAndCustSid(String proSid, String custerSid, String num);
@Update("update prod_stock set num=num+#{num}, calculated_value=(num*confirmed_price) " +
" where pro_sid=#{proSid} and custer_sid=#{custerSid} and store_house_sid=#{storehousesid}" +
" and location_number=#{locationnum}")
void addNumByProdSidAndCustSid(@Param("proSid")String proSid, @Param("custerSid")String custerSid,
@Param("num")String num, @Param("storehousesid")String storehousesid,
@Param("locationnum")String locationnum);
@Update("update prod_stock set num=num-#{num} , calculated_value=#{value} where id=#{id} ")
void updateByProdStockId(@Param("num")String num, @Param("value")String value, @Param("id")int id);
}

42
warehousing-system/project/wh-manage/src/main/java/com/wh/service/api/instorehouse/InStorehouseMainService.java

@ -10,10 +10,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.wh.api.Api;
import com.wh.mapper.api.instorehouse.InStorehouseMainMapper;
import com.wh.mapper.initial.LocationMapper;
import com.wh.pojo.InStorehouse;
import com.wh.pojo.Location;
import com.wh.pojo.Purchase;
import com.wh.pojo.Receiving;
import com.wh.pojo.*;
import com.wh.pojo.api.*;
import com.wh.pojo.purchasenew.Purchasenew;
import com.wh.pojo.purchasenew.PurchasenewDto;
@ -22,6 +19,7 @@ import com.wh.pojo.purchasenewproduct.PurchasenewProductDto;
import com.wh.pojo.purchasenewproduct.PurchasenewProductVo;
import com.wh.service.api.prodstock.ProdStockService;
import com.wh.service.initial.LocationService;
import com.wh.service.initial.ProductService;
import com.wh.service.purchasenew.PurchasenewService;
import com.wh.service.purchasenewproduct.PurchasenewProductService;
import com.yxt.common.base.service.MybatisBaseService;
@ -38,10 +36,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Positive;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
@Slf4j
@Service
@ -61,6 +56,8 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
private PurchasenewProductService purchasenewProductService;
@Autowired
private InStorehouseMainService inStorehouseMainService;
@Autowired
private ProductService productService;
public ResultBean addInStorehouse(InStoreHouseMainDto inStoreHouseMainDto) {
log.info("/InStorehouseMainService/addInStorehouse:{}", JSONObject.toJSONString(inStoreHouseMainDto));
ResultBean<Object> r = ResultBean.fireFail();
@ -74,6 +71,9 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
return r.setMsg("货位不能为空");
}
Location location = locationService.getLocationById(inStoreHouseMainDto.getLocationId());
if(location==null){
return r.setMsg("货位信息不存在");
}
QueryWrapper<Purchasenew> purchasenewWrapper = new QueryWrapper<>();
purchasenewWrapper.eq("purchase_no",inStoreHouseMainDto.getNo());
List<Purchasenew> list1 = purchasenewService.list(purchasenewWrapper);
@ -99,6 +99,7 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
d.setStoreHouseName(location.getStorehouse());
d.setStoreHouseSid(location.getStorehouseid());
d.setLocationNumber(location.getName());
d.setLocationId(location.getLocationId());
products.add(d);
}
dto.setProducts(products);
@ -125,6 +126,15 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
//申请单主表信息
baseMapper.insert(in);
addListing(in, list);
String purchaseSid = in.getPurchaseSid();
QueryWrapper<Purchasenew> qw = new QueryWrapper<>();
qw.eq("sid",purchaseSid);
Purchasenew one = purchasenewService.getOne(qw);
one.setState(2);
one.setModifyTime(new Date());
purchasenewService.updateById(one);
//purchasenewService.updateStateToInputBySid(in.getPurchaseSid());
return ResultBean.fireSuccess().setMsg("添加成功");
@ -206,6 +216,9 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
}
BigDecimal i=new BigDecimal(num).add(new BigDecimal(l.getNum()));
prodStock.setNum(l.getNum());
prodStock.setConfirmedPrice(prodStock.getConfirmedPrice());
BigDecimal multiply = new BigDecimal(prodStock.getNum()).multiply(new BigDecimal(prodStock.getConfirmedPrice()));
prodStock.setCalculatedValue(multiply.toString());
prodStock.setStoreHouseName(l.getStoreHouseName());
prodStock.setStoreHouseSid(l.getStoreHouseSid());
// TODO 当系统调试通后需要做修改 将下一行代码注释去掉
@ -238,6 +251,16 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
prodStock.setProductTypeName(l.getProductTypeName());//分类名称
prodStock.setProductTypeKey(l.getProductTypeKey());//分类key
prodStockService.insert(prodStock);
ResultBean productListByNameAndCode = productService.getProductListByNameAndCode(l.getProName(), l.getProSid());
if (productListByNameAndCode.getSuccess()){
List<Product> data = (List<Product>) productListByNameAndCode.getData();
if(data.size()==0){
Product product=new Product();
product.setName(l.getProName());
product.setBarCode(l.getProSid());
productService.addProduct(product);
}
}
}
/**
@ -255,6 +278,7 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
stockQuery.setProName(l.getProName());
stockQuery.setProSid(l.getProSid());
stockQuery.setStoreHouseSid(l.getStoreHouseSid());
stockQuery.setLocationNumber(l.getLocationNumber());
pq.setParams(stockQuery);
PagerVo<ProdStock> proStocks = prodStockService.getProStocks(pq);
return proStocks;
@ -292,6 +316,8 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
deleteBySid(inStorehouseMain.getSid());
}
InStoreHouseMainDto inStoreHouseMainDto=new InStoreHouseMainDto();
inStoreHouseMainDto.setLocationName(dto.getProducts().get(0).getLocationNumber());
inStoreHouseMainDto.setLocationId(dto.getProducts().get(0).getLocationId());
inStoreHouseMainDto.setNo("RK"+dto.getPurchaseNo()); //varchar 50 编号
inStoreHouseMainDto.setApplicationDate(dto.getPurchaseDate()); //date 50 制单日期
inStoreHouseMainDto.setCreatorSid(dto.getPurchasePersonSid()); //varchar 64 制单人Sid

32
warehousing-system/project/wh-manage/src/main/java/com/wh/service/api/outstorehouse/OutStorehouseMainService.java

@ -37,10 +37,9 @@ import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.math.BigDecimal;
import java.util.*;
@Slf4j
@Service
public class OutStorehouseMainService extends MybatisBaseService<OutStorehouseMainMapper, OutStorehouseMain> {
@ -136,7 +135,16 @@ public class OutStorehouseMainService extends MybatisBaseService<OutStorehouseMa
}
int i=Integer.valueOf(num)-Integer.valueOf(l.getRealityNum());
prodStock.setNum(i+"");
prodStockService.updateById(prodStock);
String mainSid = l.getMainSid();
QueryWrapper<OutStorehouseMain> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("sid",mainSid);
OutStorehouseMain outStorehouseMain = baseMapper.selectOne(queryWrapper);
outStorehouseMain.setModifyTime(new Date());
outStorehouseMain.setState(2);
baseMapper.updateById(outStorehouseMain);
BigDecimal multiply = new BigDecimal(prodStock.getNum()).multiply(new BigDecimal(prodStock.getConfirmedPrice()));
prodStockService.updateByProdStockId(prodStock.getNum(),multiply.toString(),prodStock.getId());
}
/**
@ -209,6 +217,9 @@ public class OutStorehouseMainService extends MybatisBaseService<OutStorehouseMa
if (StrUtil.isNotBlank(query.getCusterName())) {
qw.like("custer_name", query.getCusterName());
}
if (StrUtil.isNotBlank(query.getState())) {
qw.like("state", query.getState());
}
return qw;
}
@ -231,7 +242,8 @@ public class OutStorehouseMainService extends MybatisBaseService<OutStorehouseMa
List<OutStorehouseListing> list=outStorehouseListingService.selectInStorehouseListingsByMainSid(sid);
int ii=outStorehouseListingService.deleteByMainSid(sid);
list.forEach(l->{
prodStockService.addNumByProdSidAndCustSid(l.getProSid(), l.getCusterSid(),l.getRealityNum());
prodStockService.addNumByProdSidAndCustSid(l.getProSid(), l.getCusterSid(),l.getRealityNum(),
l.getStoreHouseSid(), l.getLocationNumber());
});
return i;
}
@ -241,10 +253,14 @@ public class OutStorehouseMainService extends MybatisBaseService<OutStorehouseMa
if(!resultBean.getSuccess()){
return resultBean;
}
String sid = (String) resultBean.getData();
OutStorehouseMain out = (OutStorehouseMain) resultBean.getData();
PickingUser pu=new PickingUser();
pu.setOutStorehouseId(sid);
pu.setOutStorehouseId(out.getSid());
ResultBean picking = pickingService.picking(pu);
return picking;
}
public List<OutStorehouseMain> listAllForPicking() {
return baseMapper.listAllForPicking();
}
}

39
warehousing-system/project/wh-manage/src/main/java/com/wh/service/api/prodstock/ProdStockService.java

@ -5,13 +5,17 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wh.mapper.api.prodstock.ProdStockMapper;
import com.wh.pojo.Product;
import com.wh.pojo.api.*;
import com.wh.service.initial.ProductService;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -22,7 +26,8 @@ import java.util.Map;
@Slf4j
@Service
public class ProdStockService extends MybatisBaseService<ProdStockMapper, ProdStock> {
@Autowired
private ProductService productService;
public PagerVo<ProdStock> getProStocks(PagerQuery<ProdStockQuery> pq ) {
ProdStockQuery params = pq.getParams();
QueryWrapper<ProdStock> qw = createQueryWrapper(params);
@ -62,6 +67,9 @@ public class ProdStockService extends MybatisBaseService<ProdStockMapper, ProdSt
if (StringUtils.isNotBlank(query.getProSid())) {
qw.eq("pro_sid", query.getProSid());
}
if (StringUtils.isNotBlank(query.getLocationNumber())) {
qw.eq("location_number", query.getLocationNumber());
}
return qw;
}
@ -69,9 +77,9 @@ public class ProdStockService extends MybatisBaseService<ProdStockMapper, ProdSt
log.info("reduceNumByProdSidAndCustSid:{},{},{}",proSid,custerSid,num);
baseMapper.reduceNumByProdSidAndCustSid(proSid,custerSid,num);
}
public void addNumByProdSidAndCustSid(String proSid, String custerSid, String num) {
public void addNumByProdSidAndCustSid(String proSid, String custerSid, String num, String storehousesid, String locationnum) {
log.info("addNumByProdSidAndCustSid:{},{},{}",proSid,custerSid,num);
baseMapper.addNumByProdSidAndCustSid(proSid,custerSid,num);
baseMapper.addNumByProdSidAndCustSid(proSid,custerSid,storehousesid,locationnum,num);
}
@Transactional
public List<ProdStock> importStock(List<ProdStock> list) {
@ -81,18 +89,35 @@ public class ProdStockService extends MybatisBaseService<ProdStockMapper, ProdSt
String custerSid = l.getCusterSid();
String proSid = l.getProSid();
if(StringUtils.isBlank(storeHouseSid)||
StringUtils.isBlank(custerSid)||
StringUtils.isBlank(proSid)){
/* StringUtils.isBlank(custerSid)||*/
StringUtils.isBlank(proSid)||StringUtils.isBlank(l.getProName())){
r.add(l);
continue;
}
Map<String, Object> columnMap=new HashMap<>();
columnMap.put("store_house_sid",storeHouseSid);
columnMap.put("custer_sid",custerSid);
// columnMap.put("custer_sid",custerSid);
columnMap.put("pro_sid",proSid);
baseMapper.deleteByMap(columnMap);
columnMap.put("pro_model",l.getProModel());
columnMap.put("pro_name",l.getProName());
baseMapper.deleteByMap(columnMap); //依据最新的库存为准 之前的库存删了
baseMapper.insert(l);
ResultBean productListByNameAndCode = productService.getProductListByNameAndCode(l.getProName(), proSid);
if (productListByNameAndCode.getSuccess()){
List<Product> data = (List<Product>) productListByNameAndCode.getData();
if(data.size()==0){
Product product=new Product();
product.setName(l.getProName());
product.setBarCode(proSid);
productService.addProduct(product);
}
}
}
return r;
}
public void updateByProdStockId(String num, String value, Integer id) {
baseMapper.updateByProdStockId(num,value,id);
}
}

25
warehousing-system/project/wh-manage/src/main/java/com/wh/service/initial/ProductService.java

@ -1,8 +1,11 @@
package com.wh.service.initial;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.wh.pojo.Product;
import com.wh.pojo.Storehouse;
import com.wh.vo.PageResult;
import com.yxt.common.core.result.ResultBean;
import org.springframework.util.StringUtils;
import java.util.List;
@ -16,4 +19,26 @@ public interface ProductService {
void deleteProduct(String barCode);
List<Storehouse> getStorehouse();
/**
* 根据名称 code去查询商品
* @param name
* @param code
* @return
*/
public ResultBean<List<Product>> getProductListByNameAndCode(String name, String code) ;
/**
* 根据名称 去查询商品
* @param name
* @return
*/
public ResultBean<List<Product>> getProductListByName(String name) ;
/**
* 根据 code 去查询商品
* @param code
* @return
*/
public ResultBean<List<Product>> getProductListByCode(String code);
}

23
warehousing-system/project/wh-manage/src/main/java/com/wh/service/initial/ProductServiceImpl.java

@ -7,6 +7,7 @@ import com.wh.mapper.initial.StorehouseMapper;
import com.wh.pojo.Product;
import com.wh.pojo.Storehouse;
import com.wh.vo.PageResult;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
@ -37,7 +38,27 @@ public class ProductServiceImpl implements ProductService{
// System.out.println(productPage.getRecords().size());
return pageResult;
}
public ResultBean<List<Product>> getProductListByNameAndCode(String name,String code) {
ResultBean rb=ResultBean.fireFail();
QueryWrapper<Product> queryWrapper = new QueryWrapper<>();
if(StringUtils.isEmpty(name)&&StringUtils.isEmpty(code)){
return rb.setMsg("参数为空");
}
if (!StringUtils.isEmpty(name)){
queryWrapper.eq("name",name);
}
if (!StringUtils.isEmpty(code)){
queryWrapper.eq("bar_code",code);
}
List<Product> products = productMapper.selectList(queryWrapper);
return rb.success().setData(products);
}
public ResultBean<List<Product>> getProductListByName(String name) {
return getProductListByNameAndCode(name,null);
}
public ResultBean<List<Product>> getProductListByCode(String code) {
return getProductListByNameAndCode(null,code);
}
@Override
public void addProduct(Product product) {
productMapper.insert(product);

33
warehousing-system/project/wh-manage/src/main/java/com/wh/service/purchasenew/PurchasenewService.java

@ -59,6 +59,9 @@ public class PurchasenewService extends MybatisBaseService<PurchasenewMapper, Pu
if(org.apache.commons.lang3.StringUtils.isNotBlank(query.getCustId())){
qw.eq("cust_id",query.getCustId());
}
if(org.apache.commons.lang3.StringUtils.isNotBlank(query.getState())){
qw.eq("state",query.getState());
}
return qw;
}
@ -73,16 +76,16 @@ public class PurchasenewService extends MybatisBaseService<PurchasenewMapper, Pu
@Transactional
public ResultBean saveOrUpdateDto(PurchasenewDto dto){
ResultBean rb = ResultBean.fireFail();
String custId = dto.getCustId();
ResultBean<List<WhEnterpriseInformationVo>> listResultBean = whEnterpriseInformationFeign.EnterpriseList();
List<WhEnterpriseInformationVo> data = listResultBean.getData();
data.forEach(d->{
String enterpriseName = d.getEnterpriseName();
String sid = d.getSid();
if(sid.equals(custId)){
dto.setCustName(enterpriseName);
}
});
// String custId = dto.getCustId();
// ResultBean<List<WhEnterpriseInformationVo>> listResultBean = whEnterpriseInformationFeign.EnterpriseList();
// List<WhEnterpriseInformationVo> data = listResultBean.getData();
// data.forEach(d->{
// String enterpriseName = d.getEnterpriseName();
// String sid = d.getSid();
// if(sid.equals(custId)){
// dto.setCustName(enterpriseName);
// }
// });
String dtoSid = dto.getSid();
List<PurchasenewProductDto> products = dto.getProducts();
if(products.size()==0){
@ -210,14 +213,18 @@ public class PurchasenewService extends MybatisBaseService<PurchasenewMapper, Pu
baseMapper.updateById(purchasenew);
}
public ResultBean importPurchase(PurchasenewDto dto) {
ResultBean resultBean = saveOrUpdateDto(dto);
public ResultBean importPurchase(PurchasenewForImportDto dto) {
PurchasenewDto d=new PurchasenewDto();
BeanUtil.copyProperties(dto,d);
ResultBean resultBean = saveOrUpdateDto(d);
if(!resultBean.getSuccess()){
return resultBean;
}
InStoreHouseMainDto inStoreHouseMainDto=new InStoreHouseMainDto();
inStoreHouseMainDto.setLocationId(dto.getStorehouseId());
inStoreHouseMainDto.setLocationId(dto.getLocationId());
inStoreHouseMainDto.setLocationName(dto.getLocationNumber());
inStoreHouseMainDto.setNo(dto.getPurchaseNo());
// inStoreHouseMainDto.setNo(dto.getPurchaseNo());
return inStorehouseMainService.addInStorehouse(inStoreHouseMainDto);
}
}

Loading…
Cancel
Save