package com.codingfuture.service.impl;
import com.codingfuture.dto.*;
import com.codingfuture.entity.*;
import com.codingfuture.mapper.OrdersMapper;
import com.codingfuture.mapper.ReturnOrdersMapper;
import com.codingfuture.service.ReturnOrdersService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
* @author Wxy
* @date 2022/8/10 8:50
*/
@Service
public class ReturnOrdersServiceImpl implements ReturnOrdersService {
@Autowired
private ReturnOrdersMapper returnOrdersMapper;
@Autowired
private OrdersMapper ordersMapper;
/**
* 表格渲染
*/
@Override
public List<ReturnOrdersSupplierDTO> returnOrders(String state) {
return returnOrdersMapper.returnOrders(state);
}
/**
* 查询商品
*/
@Override
public List<ReturnOrdersSupplierDTO> salesReturnListByPage() {
return returnOrdersMapper.salesReturnListByPage();
}
/**
* 退货登记
*/
@Override
public int add(ReturnOrdersDTO returnOrdersDTO, Object username) {
Emp emp = ordersMapper.findName(username);
returnOrdersDTO.setCreater(emp.getName());
returnOrdersDTO.setCreateTime(new Date());
for (int i = 0; i < returnOrdersDTO.getReturnOrderDetails().size(); i++) {
ReturnOrderDetail returnOrderDetail = returnOrdersDTO.getReturnOrderDetails().get(i);
Double money = returnOrderDetail.getMoney();
double totalMoney = returnOrdersDTO.getTotalMoney();
if (money == null) {
return -1;
}
totalMoney += money;
returnOrdersDTO.setTotalMoney(totalMoney);
}
returnOrdersMapper.addReturnOrders(returnOrdersDTO);
Integer uuid = returnOrdersDTO.getUuid();
for (int j = 0; j < returnOrdersDTO.getReturnOrderDetails().size(); j++) {
ReturnOrderDetail returnOrderDetail = returnOrdersDTO.getReturnOrderDetails().get(j);
returnOrderDetail.setReturnOrdersUuid(uuid);
returnOrdersMapper.add(returnOrderDetail);
}
return 0;
}
/**
* 查询仓库
*/
@Override
public List<Store> selectStore() {
return returnOrdersMapper.selectStore();
}
/**
* 退货审核
*/
@Override
public int doCheck(Integer id, Object username) {
Emp emp = ordersMapper.findName(username);
ReturnOrders returnOrders = new ReturnOrders();
returnOrders.setUuid(id);
returnOrders.setCheckTime(new Date());
returnOrders.setChecker(emp.getName());
return returnOrdersMapper.doCheck(returnOrders);
}
/**
* 退货出库
*/
@Override
public int doInStore(Integer id, Integer storeuuid, Object username) {
Emp emp = ordersMapper.findName(username);
ReturnOrderDetail returnOrdersById = returnOrdersMapper.findReturnOrdersById(id);
Integer returnOrdersUuid = returnOrdersById.getReturnOrdersUuid();
ReturnOrders returnOrders = returnOrdersMapper.findById(returnOrdersUuid);
Storeoper storeoper = new Storeoper();
storeoper.setEmpUuid(emp.getUuid());
storeoper.setStoreUuid(storeuuid);
storeoper.setOperTime(new Date());
returnOrders.setEndTime(new Date());
returnOrders.setEnder(emp.getName());
int i1 = returnOrdersMapper.doInReturnOrders(returnOrders);
String type = returnOrdersMapper.findTypeById(returnOrdersUuid);
storeoper.setType(type);
ReturnOrderDetail returnOrdersDetailById = returnOrdersMapper.findReturnOrdersDetailById(id);
returnOrdersDetailById.setEnder(emp.getName());
returnOrdersDetailById.setEndTime(new Date());
returnOrdersDetailById.setStoreUuid(storeuuid);
returnOrdersDetailById.setReturnOrdersUuid(returnOrdersUuid);
int i2 = returnOrdersMapper.doInReturnOrderdetail(returnOrdersDetailById);
Integer goodsUuid = returnOrdersDetailById.getGoodsUuid();
String goodsName = returnOrdersDetailById.getGoodsName();
ViewStorealert viewStoreAlert = new ViewStorealert();
viewStoreAlert.setName(goodsName);
Storedetail storeDetail = returnOrdersMapper.findStoreDetail(goodsUuid,storeuuid);
storeoper.setGoodsUuid(goodsUuid);
storeoper.setStoreUuid(storeuuid);
storeoper.setNum(returnOrdersDetailById.getNum());
returnOrdersMapper.doInStoreoper(storeoper);
if (storeDetail == null) {
ordersMapper.addStoreDetail(storeoper);
}else {
Integer num = storeDetail.getNum();
Integer num1 = storeoper.getNum();
storeoper.setNum(num - num1);
ordersMapper.updateStoreDetail(storeoper);
}
viewStoreAlert.setStoreNum(returnOrdersDetailById.getNum());
List<ViewStorealert> view = ordersMapper.findView(goodsName);
//判断 viewStoreAlert表中是否有相同的商品,如果没有直接添加
if (view.size() == 0) {
ordersMapper.addViewStore(viewStoreAlert);
} else {
for (int j = 0; j < view.size(); j++) {
ViewStorealert viewStorealert = view.get(j);
Integer storeNum = viewStorealert.getStoreNum();
viewStoreAlert.setStoreNum(storeNum - returnOrdersDetailById.getNum());
ordersMapper.updateViewStore(viewStoreAlert);
}
//如果viewStoreAlert表中有相同名字的商品存在,那么只需要对num进行修改即可
}
List<ReturnOrderDetail> returnOrderDetails = returnOrdersMapper.find(returnOrdersUuid);
if (returnOrderDetails.size()==0){
returnOrdersMapper.updateReturnOrder(returnOrdersUuid);
}
return i1;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
最新版ERP多仓库进销存系统完整源码分享,Springboot+layui 前后端源码都有,其中用到了MD5加盐加密,拦截等各种技术,对接了阿里云的短信服务(阿里云信的工具类需要秘钥等信息需要自行填写)一套管理系统最具代表性的模板,可以拿来学习,自己改造都可以。其中有订单,销售,库存,图表等各种系统,简单明了但是技术该有的都有。还用到了动态的权限管理,不同的权限显示不同的侧边栏,可以配置权限,各种的玩法应有尽有,还需要大家自行体验。
资源推荐
资源详情
资源评论
收起资源包目录
erp销售管理系统源码 (2000个子文件)
01bf12532a9fac3d5146b8f1a661c6b3a10ebd 236B
01bf12532a9fac3d5146b8f1a661c6b3a10ebd 236B
02562b1769a413a06ade523384d15f6e3386fa 54B
02562b1769a413a06ade523384d15f6e3386fa 54B
027daa56a06e83e359e975fce7b196754ac271 984B
027daa56a06e83e359e975fce7b196754ac271 984B
02c100548222e3d4fe4e7c06bc60ec1722c4cb 363B
02c100548222e3d4fe4e7c06bc60ec1722c4cb 363B
02ca2dcf8beb41e3dd2353b3c5360d36a07407 229B
02ca2dcf8beb41e3dd2353b3c5360d36a07407 229B
02f6b142f3c6a8a624f004d7b585808eafee3f 82B
02f6b142f3c6a8a624f004d7b585808eafee3f 82B
0436ab206bc6b68a9cff6461f6e0ab96fa3da9 341B
0436ab206bc6b68a9cff6461f6e0ab96fa3da9 341B
0447721157362035995dcf16e529782c430afa 575B
0447721157362035995dcf16e529782c430afa 575B
04a95430622683e9aabf0e3c626cbf2d4ea735 130B
04a95430622683e9aabf0e3c626cbf2d4ea735 130B
04c5b8b6e400ae879ce659fb6e729b92d09740 276B
04c5b8b6e400ae879ce659fb6e729b92d09740 276B
04ef568f34ce4ce612010d171399059086b36e 684B
04ef568f34ce4ce612010d171399059086b36e 684B
0567de7a4803090f2008b2a5b63d0cb17ca03d 345B
0567de7a4803090f2008b2a5b63d0cb17ca03d 345B
057c2387bbcf84e686efbc1c3d97a21beef2b7 177B
057c2387bbcf84e686efbc1c3d97a21beef2b7 177B
06114e02e94a7e04ae3e46c593daed98fcc000 117B
06114e02e94a7e04ae3e46c593daed98fcc000 117B
06611292119bba9f961c71cb062e0ee67e81d5 47B
06611292119bba9f961c71cb062e0ee67e81d5 47B
069d3c35014454213443c6d3cf08e84ebaf38b 971B
069d3c35014454213443c6d3cf08e84ebaf38b 971B
06c4341a7fdc546f4491d8015730f86ddd81da 79B
06c4341a7fdc546f4491d8015730f86ddd81da 79B
07d97a42890ada5a997d744fb662aa5d426eba 307B
07d97a42890ada5a997d744fb662aa5d426eba 307B
0852f911b04caa6ea64080a370ecf238ada4ab 711B
0852f911b04caa6ea64080a370ecf238ada4ab 711B
0a1a65b893de60b52b2afe2337a87251e62249 46B
0a1a65b893de60b52b2afe2337a87251e62249 46B
0af410a988f55115e9096a3021c08b2a4dd60b 520B
0af410a988f55115e9096a3021c08b2a4dd60b 520B
0b1b4d12dcbe2d6128cca16a7ad0f833dd1934 204B
0b1b4d12dcbe2d6128cca16a7ad0f833dd1934 204B
0b8756f2b4026ad9fab75ad4cb35c9a322d3be 82B
0b8756f2b4026ad9fab75ad4cb35c9a322d3be 82B
0b8b508f66edb7b3b75bbfae49f14f7895cac0 635B
0b8b508f66edb7b3b75bbfae49f14f7895cac0 635B
0b8e4f8593fe8516a494a8deabf4dab737e6e1 54B
0b8e4f8593fe8516a494a8deabf4dab737e6e1 54B
0bbc6dd4047edd699be5ae605eda04a33752a6 271B
0bbc6dd4047edd699be5ae605eda04a33752a6 271B
0c2ded451b027d80e2d729830935de3190fee5 54B
0c2ded451b027d80e2d729830935de3190fee5 54B
0c43aaed28d9b3cf1d2f74c7bb18c0439560bc 46B
0c43aaed28d9b3cf1d2f74c7bb18c0439560bc 46B
0cde629d2a46bc1c0300128acb9dfe59d1758f 529B
0cde629d2a46bc1c0300128acb9dfe59d1758f 529B
0cfaea75327437ee41f6da4ab7cc55e5af76ec 177B
0cfaea75327437ee41f6da4ab7cc55e5af76ec 177B
0d4d276fbfbc9cf5e88b2577ef174885fbf6e9 1KB
0d4d276fbfbc9cf5e88b2577ef174885fbf6e9 1KB
0d8c0baa348c063ba80c44abbb63b30b4e866b 849B
0d8c0baa348c063ba80c44abbb63b30b4e866b 849B
0dd389b298d82195b9b818554b5c0f30bb3aa5 222B
0dd389b298d82195b9b818554b5c0f30bb3aa5 222B
0df4d1eb9ad49040bade32f4454933cbf0bec1 354B
0df4d1eb9ad49040bade32f4454933cbf0bec1 354B
0dfaa13a47a617ef1e61ca81396fb29fab3d20 643B
0dfaa13a47a617ef1e61ca81396fb29fab3d20 643B
0ed237f009e8c28c6d86e1307124ce711e43c7 654B
0ed237f009e8c28c6d86e1307124ce711e43c7 654B
0efab4c63ce9a60bf7b6d4502fec2a18c8885d 45B
0efab4c63ce9a60bf7b6d4502fec2a18c8885d 45B
0f1b930114e1f8ff88ea8dd57ed71a44d16377 117B
0f1b930114e1f8ff88ea8dd57ed71a44d16377 117B
0f491b68326f6747544bb86408100fc5db4275 129B
0f491b68326f6747544bb86408100fc5db4275 129B
10c1d8607f6082de08a537eed197c03e33c997 453B
10c1d8607f6082de08a537eed197c03e33c997 453B
1147061c18cde98ef319735722c311188afc59 678B
1147061c18cde98ef319735722c311188afc59 678B
117889ca9708dc29e83993e540dfb353a599d4 54B
117889ca9708dc29e83993e540dfb353a599d4 54B
11a6f275dd087749f902ba13477858187601c5 54B
11a6f275dd087749f902ba13477858187601c5 54B
11c99211bdf48cc02a7fceeeae3569985a93e1 129B
11c99211bdf48cc02a7fceeeae3569985a93e1 129B
11efb6264c2c1c4ded3ce7cc511c604a8c81b6 725B
11efb6264c2c1c4ded3ce7cc511c604a8c81b6 725B
12503b9a2bea2f8c8facb39c744eb912b6f2f4 217B
12503b9a2bea2f8c8facb39c744eb912b6f2f4 217B
1294237f5a3788f4fb89eada3e19a13edf7c08 344B
1294237f5a3788f4fb89eada3e19a13edf7c08 344B
12b24744d444c03ce14db29ed482aab6ae32af 718B
12b24744d444c03ce14db29ed482aab6ae32af 718B
12c7253d348a34976a17f7b1b2c67b87c1ee8a 263B
12c7253d348a34976a17f7b1b2c67b87c1ee8a 263B
12e20d4f64e14c0f8ba2bc74f39c17f6b41d52 252B
12e20d4f64e14c0f8ba2bc74f39c17f6b41d52 252B
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
小王要努力ぴ
- 粉丝: 3399
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功