Browse Source

入库采购订单后 需要手动入库操作

master
djz8236 2 years ago
parent
commit
98b8024eba
  1. 23
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/PurchaseInStoreHouseParams.java
  2. 2
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/Purchasenew.java
  3. 2
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/PurchasenewDto.java
  4. 4
      warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/PurchasenewQuery.java
  5. 26
      warehousing-system/project/wh-manage/src/main/java/com/wh/controller/api/input/InStoreHouseMainController.java
  6. 7
      warehousing-system/project/wh-manage/src/main/java/com/wh/controller/purchasenew/PurchasenewController.java
  7. 9
      warehousing-system/project/wh-manage/src/main/java/com/wh/mapper/purchasenew/PurchasenewMapper.java
  8. 131
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/api/instorehouse/InStorehouseMainService.java
  9. 3
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/api/prodstock/ProdStockService.java
  10. 72
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/purchasenew/PurchasenewService.java
  11. 6
      warehousing-system/project/wh-manage/src/main/java/com/wh/service/purchasenewproduct/PurchasenewProductService.java
  12. 3
      warehousing-system/project_web/src/main.js

23
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/api/PurchaseInStoreHouseParams.java

@ -0,0 +1,23 @@
package com.wh.pojo.api;
import lombok.Data;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true)
public class PurchaseInStoreHouseParams {
//仓库id
private String storeHouseSid;
//仓库id
private String storeHouseName;
//采购订单sid
private String purchaseSid;
//采购订单编号
private String purchaseNo;
//客户sid
private String custerSid;
//用户sid
private String userSid;
//用户sid
private String userName;
}

2
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/Purchasenew.java

@ -74,5 +74,5 @@ public class Purchasenew extends BaseEntity {
@ApiModelProperty("仓库id")
private String storehouseId; // 仓库id
@ApiModelProperty("状态")
private String status; // 状态
private String status="1"; // 状态
}

2
warehousing-system/project/wh-common/src/main/java/com/wh/pojo/purchasenew/PurchasenewDto.java

@ -74,8 +74,6 @@ public class PurchasenewDto implements Dto {
private String storehouseName; // 仓库名称
@ApiModelProperty("仓库id")
private String storehouseId; // 仓库id
@ApiModelProperty("状态")
private String status; // 状态
@ApiModelProperty("商品列表")
private List<PurchasenewProductDto> products;
}

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

@ -49,7 +49,9 @@ import lombok.Data;
@ApiModel(value = "采购订单 查询条件", description = "采购订单 查询条件")
public class PurchasenewQuery implements Query {
@ApiModelProperty("订单日期")
private String purchaseDate; // 订单日期
private String purchaseDateStart; // 订单日期
@ApiModelProperty("订单日期")
private String purchaseDateEnd; // 订单日期
@ApiModelProperty("订单编号")
private String purchaseNo; // 订单编号
@ApiModelProperty("采购人员")

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

@ -1,8 +1,12 @@
package com.wh.controller.api.input;
import com.wh.pojo.InStorehouse;
import com.wh.pojo.api.*;
import com.wh.pojo.purchasenew.Purchasenew;
import com.wh.service.api.instorehouse.InStorehouseMainService;
import com.wh.service.purchasenew.PurchasenewService;
import com.wh.service.purchasenewproduct.PurchasenewProductService;
import com.wh.vo.SysResult;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
@ -10,6 +14,10 @@ import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@CrossOrigin
@RequestMapping("/input/")
@ -17,12 +25,20 @@ public class InStoreHouseMainController {
@Autowired
private InStorehouseMainService inStorehouseMainService;
@Autowired
private PurchasenewService purchasenewService;
@Autowired
private PurchasenewProductService purchasenewProductService;
@PostMapping("addInStorehouse")
public ResultBean addInStorehouse(@RequestBody InStoreHouseMainDto inStoreHouseMainDto){
ResultBean resultBean = inStorehouseMainService.addInStorehouse(inStoreHouseMainDto);
return resultBean;
}
@PostMapping("addInStorehouseByPurchase")
public ResultBean addInStorehouseByPurchase(@RequestBody PurchaseInStoreHouseParams purchaseInStoreHouseParams){
return inStorehouseMainService.addInStorehouseByPurchase(purchaseInStoreHouseParams);
}
@PostMapping("listPage")
public ResultBean listPage(@RequestBody PagerQuery<InStorehouseMainQuery> pq){
PagerVo<InStoreHouseMainVo> pv = inStorehouseMainService.listPage(pq);
@ -34,6 +50,16 @@ public class InStoreHouseMainController {
return inStorehouseMainService.getInStorehouse(sid);
}
/**
* 获取所有未入库的采购订单编号和仓库信息
* @return
*/
@GetMapping("getQuery")
public SysResult getQuery(@RequestBody InStorehouseMainQuery query){
Map<String,Object> map = inStorehouseMainService.getQuery(query);
return SysResult.success(map);
}
}

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

@ -37,7 +37,9 @@ public class PurchasenewController {
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
purchasenewService.delBySids(sids);
int i = purchasenewService.delByPurchasenewSids(sids);
if (i==0)
return rb;
return rb.success();
}
@ -46,6 +48,9 @@ public class PurchasenewController {
public ResultBean<PurchasenewDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
PurchasenewDetailsVo vo = purchasenewService.fetchDetailsVoBySid(sid);
if(vo==null){
return rb;
}
return rb.success().setData(vo);
}
}

9
warehousing-system/project/wh-manage/src/main/java/com/wh/mapper/purchasenew/PurchasenewMapper.java

@ -34,6 +34,7 @@ import com.wh.pojo.purchasenew.PurchasenewVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import java.util.List;
@ -62,4 +63,12 @@ public interface PurchasenewMapper extends BaseMapper<Purchasenew> {
@Select("select * from purchasenew")
List<PurchasenewVo> selectListVo();
/**
* 将采购订单的状态修改为已入库
* @param sid
* @return
*/
@Update("update purchasenew set status='2' where sid=#{sid}")
int updatePutInStatus(@Param("sid") String sid);
}

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

@ -1,15 +1,26 @@
package com.wh.service.api.instorehouse;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
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.api.*;
import com.wh.pojo.purchasenew.Purchasenew;
import com.wh.pojo.purchasenew.PurchasenewDto;
import com.wh.pojo.purchasenewproduct.PurchasenewProduct;
import com.wh.pojo.purchasenewproduct.PurchasenewProductDto;
import com.wh.service.api.prodstock.ProdStockService;
import com.wh.service.purchasenew.PurchasenewService;
import com.wh.service.purchasenewproduct.PurchasenewProductService;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
@ -36,6 +47,12 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
private InStorehouseListingService inStorehouseListingService;
@Autowired
private ProdStockService prodStockService;
@Autowired
private LocationMapper locationMapper;
@Autowired
private PurchasenewService purchasenewService;
@Autowired
private PurchasenewProductService purchasenewProductService;
@Transactional
public ResultBean addInStorehouse(InStoreHouseMainDto inStoreHouseMainDto) {
ResultBean<Object> r = ResultBean.fireFail();
@ -160,6 +177,7 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
prodStock.setCusterSid(l.getCusterSid());// varchar 64 客户Sid(企业)
prodStock.setStoreHouseSid(l.getStoreHouseSid());// varchar 64 仓库Sid
prodStock.setStoreHouseName(l.getStoreHouseName());// varchar 100 仓库名称
prodStock.setProSid(l.getProSid());
prodStockService.insert(prodStock);
}
@ -176,6 +194,7 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
stockQuery.setCusterSid(l.getCusterSid());
stockQuery.setProModel(l.getProModel());
stockQuery.setProName(l.getProName());
stockQuery.setProSid(l.getProSid());
pq.setParams(stockQuery);
PagerVo<ProdStock> proStocks = prodStockService.getProStocks(pq);
return proStocks;
@ -266,4 +285,116 @@ public class InStorehouseMainService extends MybatisBaseService<InStorehouseMai
baseMapper.deleteByMap(params);
return r.success();
}
public void deleteByPurchaseSid(String sid) {
Map<String,Object> params=new HashMap<>();
params.put("purchase_sid",sid);
List<InStorehouseMain> inStorehouseMains = baseMapper.selectByMap(params);
if(inStorehouseMains!=null&&inStorehouseMains.size()>0){
InStorehouseMain inStorehouseMain = inStorehouseMains.get(0);
deleteByMainSid(inStorehouseMain.getSid());
}
}
/**
* 获取所有未入库的采购订单编号和仓库信息
* @return
*/
public Map<String, Object> getQuery(InStorehouseMainQuery query) {
// Purchasenew purchase = new Purchasenew();
// if (org.springframework.util.StringUtils.hasLength(inStorehouse.getReceivingId())){
// Receiving receivingAble = receivingMapper.selectById(inStorehouse.getReceivingId());
// purchase = purchaseMapper.selectById(receivingAble.getPurchaseId());
// }
QueryWrapper<Receiving> receivingQueryWrapper = new QueryWrapper<>();
receivingQueryWrapper.eq("status","已审核")
.select("receiving_id");
QueryWrapper<Location> locationQueryWrapper = new QueryWrapper<>();
locationQueryWrapper.eq("status","空闲")
.eq("type","入库区")
//.eq(org.springframework.util.StringUtils.hasLength(purchase.getStorehouse()),"storehouse",purchase.getStorehouse())
.select("location_id");
//List<Receiving> receivingList = receivingMapper.selectList(receivingQueryWrapper);
Map<String,Object> params=new HashMap<>();
params.put("status","1");//未入库的采购订单
params.put("cust_id",query.getCusterSid());//未入库的采购订单
List<Purchasenew> purchasenews = purchasenewService.listByMap(params);
List<Location> locationList = locationMapper.selectList(locationQueryWrapper);
List<Map<String,String>> receivingIdList = new ArrayList<>();
List<Map<String,String>> locationIdList = new ArrayList<>();
for (Purchasenew receiving : purchasenews){
Map<String,String> map=new HashMap<>();
map.put("no",receiving.getPurchaseNo());
map.put("sid",receiving.getSid());
receivingIdList.add(map);
}
if (locationList != null){
for (Location location : locationList){
Map<String,String> map=new HashMap<>();
map.put("locationId",location.getLocationId());
map.put("locationName",location.getName());
locationIdList.add(map);
}
}
Map<String,Object> map = new HashMap<>();
map.put("receivingIdList",receivingIdList);
map.put("locationIdList",locationIdList);
return map;
}
public ResultBean addInStorehouseByPurchase(PurchaseInStoreHouseParams params) {
ResultBean<Object> r = ResultBean.fireFail();
String purchaseSid = params.getPurchaseSid();
String userName = params.getUserName();
String storeHouseSid = params.getStoreHouseSid();
String storeHouseName = params.getStoreHouseName();
// Location location = locationMapper.selectById(storeHouseSid);
// if(location==null){
// return r.setMsg("仓库信息不存在");
// }
String custerSid = params.getCusterSid();
Map<String,Object> param5=new HashMap<>();
param5.put("sid",purchaseSid);
List<Purchasenew> purchasenews = purchasenewService.listByMap(param5);
if(purchasenews==null||purchasenews.size()==0){
return r.setMsg("数据不存在");
}
Purchasenew purchasenew = purchasenews.get(0);
Map<String,Object> params2=new HashMap<>();
params2.put("purchase_sid",purchasenew.getSid());
List<InStorehouseMain> inStorehouseMains = baseMapper.selectByMap(params2);
if(inStorehouseMains.size()>0){
return r.setMsg("采购订单已经有入库记录");
}
PurchasenewDto pd=new PurchasenewDto();
BeanUtil.copyProperties(purchasenew,pd);
Map<String,Object> params3=new HashMap<>();
params3.put("main_sid",purchasenew.getSid());
List<PurchasenewProduct> purchasenewProducts = purchasenewProductService.listByMap(params3);
if (purchasenewProducts==null||purchasenewProducts.size()==0){
return r.setMsg("没有商品信息!");
}
List<PurchasenewProductDto> purchasenewProductDtos =new ArrayList<>();
purchasenewProducts.forEach(p->{
PurchasenewProductDto ppd=new PurchasenewProductDto();
BeanUtil.copyProperties(p,ppd);
ppd.setStoreHouseSid(storeHouseSid);
ppd.setStoreHouseName(storeHouseName);
purchasenewProductDtos.add(ppd);
});
pd.setProducts(purchasenewProductDtos);
pd.setPurchasePersonSid(custerSid);
pd.setPurchasePerson(userName);
saveOrUpdateByPurchaseSid(pd,purchasenew.getSid());
purchasenewService.updatePutInStatus(purchasenew.getSid());
return r.success();
}
}

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

@ -51,6 +51,9 @@ public class ProdStockService extends MybatisBaseService<ProdStockMapper, ProdSt
if (StringUtils.isNotBlank(query.getProModel())) {
qw.eq("pro_model", query.getProModel());
}
if (StringUtils.isNotBlank(query.getProSid())) {
qw.eq("pro_sid", query.getProSid());
}
return qw;
}

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

@ -21,8 +21,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.text.SimpleDateFormat;
import java.util.*;
@Slf4j
@Service
@ -35,6 +35,21 @@ public class PurchasenewService extends MybatisBaseService<PurchasenewMapper, Pu
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<Purchasenew> qw = new QueryWrapper<>();
if(org.apache.commons.lang3.StringUtils.isNotBlank(query.getPurchaseDateEnd())){
qw.le("purchase_date",query.getPurchaseDateEnd());
}
if(org.apache.commons.lang3.StringUtils.isNotBlank(query.getPurchaseDateStart())){
qw.ge("purchase_date",query.getPurchaseDateStart());
}
if(org.apache.commons.lang3.StringUtils.isNotBlank(query.getPurchaseNo())){
qw.like("purchase_no",query.getPurchaseNo());
}
if(org.apache.commons.lang3.StringUtils.isNotBlank(query.getCustName())){
qw.like("cust_name",query.getCustName());
}
if(org.apache.commons.lang3.StringUtils.isNotBlank(query.getCustId())){
qw.eq("cust_id",query.getCustId());
}
return qw;
}
@ -55,7 +70,29 @@ public class PurchasenewService extends MybatisBaseService<PurchasenewMapper, Pu
return rb.setMsg("商品列表不能为空");
}
if (StringUtils.isBlank(dtoSid)) {
return this.insertByDto(dto);
String purchaseNo= dto.getPurchaseNo();
if(org.apache.commons.lang3.StringUtils.isBlank(purchaseNo)){
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
String format = sdf.format(new Date());
PurchasenewQuery query=new PurchasenewQuery();
query.setCustId(dto.getCustId());
query.setPurchaseNo("RK"+format);
QueryWrapper<Purchasenew> qw = createQueryWrapper(query);
List<Purchasenew> purchasenews = baseMapper.selectList(qw);
int size = purchasenews.size();
String no="RK"+format;
if(size==0){
no=no+"01";
}
if(size>0&&size<10){
no=no+"0"+size;
}
if(size>=10){
no=no+size;
}
dto.setPurchaseNo(no);
}
return this.insertByDto(dto);
}
return this.updateByDto(dto);
}
@ -66,9 +103,8 @@ public class PurchasenewService extends MybatisBaseService<PurchasenewMapper, Pu
Purchasenew entity = new Purchasenew();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
/* dto.setSid(entity.getSid());*/
addPurchasenewProduct(dto, rb, entity);
return inStorehouseMainService.saveOrUpdateByPurchaseSid(dto,entity.getSid());
return addPurchasenewProduct(dto, rb, entity);
// inStorehouseMainService.saveOrUpdateByPurchaseSid(dto,entity.getSid());
}
@ -79,6 +115,10 @@ public class PurchasenewService extends MybatisBaseService<PurchasenewMapper, Pu
return rb.setMsg("主键信息不能为空");
}
Purchasenew entity = fetchBySid(dtoSid);
String status = entity.getStatus();
if("2".equals(status)){
return rb.setMsg("采购订单已经入库不允许修改");
}
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
//dto.setSid(entity.getSid());
@ -104,8 +144,28 @@ public class PurchasenewService extends MybatisBaseService<PurchasenewMapper, Pu
public PurchasenewDetailsVo fetchDetailsVoBySid(String sid){
Purchasenew entity = fetchBySid(sid);
if(entity==null){
return null;
}
PurchasenewDetailsVo vo = new PurchasenewDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
@Transactional
public int delByPurchasenewSids(String[] sids) {
for (String sid : sids) {
Map<String,Object> params=new HashMap<>();
params.put("sid",sid);
baseMapper.deleteByMap(params);
purchasenewProductService.deleteByPurchaseSid(sid);
inStorehouseMainService.deleteByPurchaseSid(sid);
}
return sids.length;
}
public ResultBean updatePutInStatus(String sid) {
ResultBean rb = ResultBean.fireFail();
int i=baseMapper.updatePutInStatus(sid);
return rb.success();
}
}

6
warehousing-system/project/wh-manage/src/main/java/com/wh/service/purchasenewproduct/PurchasenewProductService.java

@ -58,6 +58,9 @@ public class PurchasenewProductService extends MybatisBaseService<PurchasenewPro
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<PurchasenewProduct> qw = new QueryWrapper<>();
if(StringUtils.isNotBlank(query.getMainSid())){
qw.eq("main_sid",query.getMainSid());
}
return qw;
}
@ -108,6 +111,9 @@ public class PurchasenewProductService extends MybatisBaseService<PurchasenewPro
*/
public ResultBean deleteByPurchaseSid(String dtoSid) {
ResultBean rb = ResultBean.fireFail();
if(StringUtils.isBlank(dtoSid)){
return rb;
}
PurchasenewProductQuery query=new PurchasenewProductQuery();
query.setMainSid(dtoSid);
QueryWrapper<PurchasenewProduct> qw = createQueryWrapper(query);

3
warehousing-system/project_web/src/main.js

@ -16,7 +16,8 @@ import 'quill/dist/quill.bubble.css' // for bubble theme
import axios from 'axios'
/* 设定axios的请求根目录 */
axios.defaults.baseURL = 'http://8.130.39.13:9050/'
//axios.defaults.baseURL = 'http://8.130.39.13:9050/'
axios.defaults.baseURL = 'http://127.0.0.1:9050/'
// axios.defaults.baseURL = 'http://192.168.3.183:9050/'
// axios.defaults.baseURL = 'http://manage.jt.com/'
// axios.defaults.baseURL = 'http://yichuwh.com/'

Loading…
Cancel
Save