|
|
@@ -24,6 +24,7 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
+import io.swagger.annotations.ApiParam;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import org.springblade.client.entity.CorpsDesc;
|
|
|
import org.springblade.client.entity.StorageDesc;
|
|
|
@@ -36,6 +37,7 @@ import org.springblade.core.secure.utils.SecureUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
import org.springblade.core.tool.utils.ObjectUtil;
|
|
|
+import org.springblade.finance.feign.IFinanceClient;
|
|
|
import org.springblade.purchase.sales.entity.Order;
|
|
|
import org.springblade.purchase.sales.entity.OrderItems;
|
|
|
import org.springblade.purchase.sales.service.IOrderItemsService;
|
|
|
@@ -66,6 +68,7 @@ public class AppPartsController extends BladeController {
|
|
|
private final ICorpsDescClient corpsDescClient;//获取客户信息
|
|
|
private final IUserClient userClient;//获取用户信息
|
|
|
private IStorageClient iStorageClient;//库区信息
|
|
|
+ private final IFinanceClient financeClient;
|
|
|
|
|
|
/**
|
|
|
* 获得app首页营业收入和采购支出(配件系统)
|
|
|
@@ -108,28 +111,16 @@ public class AppPartsController extends BladeController {
|
|
|
lambdaQueryWrapper.ge(Func.isNotEmpty(order.getContractStartDate()), Order::getBusinesDate, order.getContractStartDate());//合同日期开始
|
|
|
lambdaQueryWrapper.le(Func.isNotEmpty(order.getContractEndDate()), Order::getBusinesDate, order.getContractEndDate());//合同日期结束
|
|
|
lambdaQueryWrapper.like(Func.isNotEmpty(order.getSrcOrderNo()), Order::getSrcOrderNo, order.getSrcOrderNo());//订单来源
|
|
|
- lambdaQueryWrapper.like(Func.isNotEmpty(order.getShippingAddress()), Order::getShippingAddress, order.getShippingAddress());//发货地址
|
|
|
lambdaQueryWrapper.like(Func.isNotEmpty(order.getArrivalAddress()), Order::getArrivalAddress, order.getArrivalAddress());//到货地址
|
|
|
- lambdaQueryWrapper.ge(Func.isNotEmpty(order.getActualDeliveryDateStart()), Order::getActualDeliveryDate, order.getActualDeliveryDateStart());//发货日期开始
|
|
|
- lambdaQueryWrapper.le(Func.isNotEmpty(order.getActualDeliveryDateEnd()), Order::getActualDeliveryDate, order.getActualDeliveryDateEnd());//发货日期结束
|
|
|
- lambdaQueryWrapper.ge(Func.isNotEmpty(order.getDeliveryStartDate()), Order::getRequiredDeliveryDate, order.getDeliveryStartDate());//要求发货日期开始
|
|
|
- lambdaQueryWrapper.le(Func.isNotEmpty(order.getDeliveryEndDate()), Order::getRequiredDeliveryDate, order.getDeliveryEndDate());//要求发货日期结束
|
|
|
- lambdaQueryWrapper.ge(Func.isNotEmpty(order.getArrivalDateStart()), Order::getRequiredArrivalDate, order.getArrivalDateStart());//要求到货日期开始
|
|
|
- lambdaQueryWrapper.le(Func.isNotEmpty(order.getArrivalDateEnd()), Order::getRequiredArrivalDate, order.getArrivalDateEnd());//要求到货日期结束
|
|
|
- lambdaQueryWrapper.like(Func.isNotEmpty(order.getOrderStatus()), Order::getOrderStatus, order.getOrderStatus());//单据状态
|
|
|
lambdaQueryWrapper.like(Func.isNotEmpty(order.getSysNo()), Order::getSysNo, order.getSysNo());//系统编号
|
|
|
lambdaQueryWrapper.eq(Func.isNotEmpty(order.getCreateUser()), Order::getCreateUser, order.getCreateUser());//制单人
|
|
|
- lambdaQueryWrapper.ge(Func.isNotEmpty(order.getCreateTimeStart()), Order::getCreateTime, order.getCreateTimeStart());//制单日期开始
|
|
|
- lambdaQueryWrapper.le(Func.isNotEmpty(order.getCreateTimeEnd()), Order::getCreateTime, order.getCreateTimeEnd());//制单日期结束
|
|
|
- lambdaQueryWrapper.ge(Func.isNotEmpty(order.getDateValidityStart()), Order::getDateValidity, order.getDateValidityStart());//有效日期开始
|
|
|
- lambdaQueryWrapper.le(Func.isNotEmpty(order.getDateValidityEnd()), Order::getDateValidity, order.getDateValidityEnd());//有效日期结束
|
|
|
lambdaQueryWrapper.ge(Func.isNotEmpty(order.getOrderStartDate()), Order::getBusinesDate, order.getOrderStartDate());//订单日期开始
|
|
|
lambdaQueryWrapper.le(Func.isNotEmpty(order.getOrderEndDate()), Order::getBusinesDate, order.getOrderEndDate());//订单日期结束
|
|
|
- lambdaQueryWrapper.like(Func.isNotEmpty(order.getPortOfLoad()), Order::getPortOfLoad, order.getPortOfLoad());//装货港
|
|
|
- lambdaQueryWrapper.like(Func.isNotEmpty(order.getPortOfDestination()), Order::getPortOfDestination, order.getPortOfDestination());//目的港
|
|
|
- lambdaQueryWrapper.like(Func.isNotEmpty(order.getPlannedDeliveryStart()), Order::getPlannedDeliveryDate, order.getPlannedDeliveryStart());//计划交货开始
|
|
|
- lambdaQueryWrapper.like(Func.isNotEmpty(order.getPlannedDeliveryEnd()), Order::getPlannedDeliveryDate, order.getPlannedDeliveryEnd());//计划交货结束
|
|
|
- lambdaQueryWrapper.like(Func.isNotEmpty(order.getOrderRemark()), Order::getOrderRemark, order.getOrderRemark());//备注
|
|
|
+ lambdaQueryWrapper.eq(Func.isNotEmpty(order.getBillType()),Order::getBillType,order.getBillType());
|
|
|
+ lambdaQueryWrapper.eq(Func.isNotEmpty(order.getTradeType()),Order::getTradeType,order.getTradeType());
|
|
|
+ if ("1".equals(order.getModular())){
|
|
|
+ lambdaQueryWrapper.apply("debit_amount > settlment_amount");
|
|
|
+ }
|
|
|
if ("0".equals(order.getSort())) {
|
|
|
if ("1".equals(order.getTypeSort())) {
|
|
|
lambdaQueryWrapper.orderByAsc(Order::getCorpId);
|
|
|
@@ -161,8 +152,6 @@ public class AppPartsController extends BladeController {
|
|
|
|
|
|
String corpIds = "";//客户拼接
|
|
|
String belongToCorpIds = "";//销售公司
|
|
|
- String productionPlantIds = "";//生产工厂
|
|
|
- String createUserIds = "";//创建人
|
|
|
String storageIds = "";//仓库
|
|
|
|
|
|
for (Order orders : page.getRecords()) {
|
|
|
@@ -172,12 +161,6 @@ public class AppPartsController extends BladeController {
|
|
|
if (ObjectUtil.isNotEmpty(orders.getCorpId())) {
|
|
|
belongToCorpIds = belongToCorpIds + orders.getBelongToCorpId() + ",";
|
|
|
}
|
|
|
- if (ObjectUtil.isNotEmpty(orders.getCorpId())) {
|
|
|
- productionPlantIds = productionPlantIds + orders.getProductionPlant() + ",";
|
|
|
- }
|
|
|
- if (ObjectUtil.isNotEmpty(orders.getCreateUser())) {
|
|
|
- createUserIds = createUserIds + orders.getCreateUser() + ",";
|
|
|
- }
|
|
|
if (ObjectUtil.isNotEmpty(orders.getStorageId())) {
|
|
|
storageIds = storageIds + orders.getStorageId() + ",";
|
|
|
}
|
|
|
@@ -185,8 +168,6 @@ public class AppPartsController extends BladeController {
|
|
|
|
|
|
List<CorpsDesc> corpsDescList = corpsDescClient.selectByCorpIds(corpIds);
|
|
|
List<CorpsDesc> belongToCorpList = corpsDescClient.selectByCorpIds(belongToCorpIds);
|
|
|
- List<CorpsDesc> productionPlantList = corpsDescClient.selectByCorpIds(productionPlantIds);
|
|
|
- List<User> createUserList = userClient.selectUserIds(createUserIds);
|
|
|
List<StorageDesc> storageList = iStorageClient.selectStorageIds(storageIds);
|
|
|
|
|
|
if (CollectionUtils.isNotEmpty(page.getRecords())) {
|
|
|
@@ -197,7 +178,6 @@ public class AppPartsController extends BladeController {
|
|
|
if (ObjectUtils.isNotNull(corpsDesc)) {
|
|
|
item.setCorpsName(corpsDesc.getCname());
|
|
|
}
|
|
|
-// item.setCorpsName(corpsDescList.stream().filter(e -> e.getId().equals(item.getCorpId())).findFirst().get().getCname());
|
|
|
}
|
|
|
}
|
|
|
if (item.getBelongToCorpId() != null) {
|
|
|
@@ -206,26 +186,6 @@ public class AppPartsController extends BladeController {
|
|
|
if (ObjectUtils.isNotNull(corpsDesc)) {
|
|
|
item.setBelongToCorpName(corpsDesc.getCname());
|
|
|
}
|
|
|
-// item.setBelongToCorpName(belongToCorpList.stream().filter(e -> e.getId().equals(item.getBelongToCorpId())).findFirst().get().getCname());
|
|
|
- }
|
|
|
- }
|
|
|
- if (item.getProductionPlant() != null) {
|
|
|
- if (ObjectUtil.isNotEmpty(productionPlantList)) {
|
|
|
- CorpsDesc corpsDesc = productionPlantList.stream().filter(d -> d.getId().equals(item.getProductionPlant())).findFirst().orElse(null);
|
|
|
- if (ObjectUtils.isNotNull(corpsDesc)) {
|
|
|
- item.setProductionPlantName(corpsDesc.getCname());
|
|
|
- }
|
|
|
-// item.setProductionPlantName(productionPlantList.stream().filter(e -> e.getId().equals(item.getProductionPlant())).findFirst().get().getCname());
|
|
|
- }
|
|
|
- }
|
|
|
- //制单人
|
|
|
- if (item.getCreateUser() != null) {
|
|
|
- if (ObjectUtil.isNotEmpty(createUserList)) {
|
|
|
- User user = createUserList.stream().filter(d -> d.getId().equals(item.getCreateUser())).findFirst().orElse(null);
|
|
|
- if (ObjectUtils.isNotNull(user)) {
|
|
|
- item.setCreateUserName(user.getName());
|
|
|
- }
|
|
|
-// item.setCreateUserName(createUserList.stream().filter(e -> e.getId().equals(item.getCreateUser())).findFirst().get().getName());
|
|
|
}
|
|
|
}
|
|
|
//仓库信息
|
|
|
@@ -235,18 +195,16 @@ public class AppPartsController extends BladeController {
|
|
|
if (ObjectUtils.isNotNull(storageDesc)) {
|
|
|
item.setStorageName(storageDesc.getCname());
|
|
|
}
|
|
|
-// item.setStorageName((storageList.stream().filter(e -> e.getId().equals(item.getStorageId()))).findFirst().get().getCname());
|
|
|
}
|
|
|
}
|
|
|
//获取订单明细
|
|
|
- List<OrderItems> list = orderItemsService.list(new QueryWrapper<OrderItems>().eq("pid", item.getId()).eq("is_deleted", 0));
|
|
|
+ /*List<OrderItems> list = orderItemsService.list(new QueryWrapper<OrderItems>().eq("pid", item.getId()).eq("is_deleted", 0));
|
|
|
if (CollectionUtils.isNotEmpty(list)) {
|
|
|
item.setOrderQuantity(list.stream().map(OrderItems::getOrderQuantity).reduce(BigDecimal.ZERO, BigDecimal::add));//数量合计
|
|
|
item.setAmount(list.stream().map(OrderItems::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add));//销售金额
|
|
|
item.setPurchaseAmount(list.stream().map(OrderItems::getPurchaseAmount).reduce(BigDecimal.ZERO, BigDecimal::add));//采购金额
|
|
|
item.setActualQuantity(list.stream().map(OrderItems::getActualQuantity).reduce(BigDecimal.ZERO, BigDecimal::add));//发货数量
|
|
|
- item.setActualWeight(list.stream().map(OrderItems::getActualWeight).reduce(BigDecimal.ZERO, BigDecimal::add));//已发重量(吨)
|
|
|
- }
|
|
|
+ }*/
|
|
|
});
|
|
|
}
|
|
|
return R.data(page);
|
|
|
@@ -283,4 +241,43 @@ public class AppPartsController extends BladeController {
|
|
|
return orderService.remind(order);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 删除明细
|
|
|
+ */
|
|
|
+ @PostMapping("/removeItem")
|
|
|
+ @ApiOperationSupport(order = 6)
|
|
|
+ @ApiOperation(value = "删除", notes = "传入id")
|
|
|
+ public R removeItem(@RequestParam("itemId") Long id) {
|
|
|
+ OrderItems orderItems = orderItemsService.getById(id);
|
|
|
+ Order order = orderService.getById(orderItems.getPid());
|
|
|
+ order.setStorageAmount(order.getStorageAmount().subtract(orderItems.getStorageAmount()));
|
|
|
+ order.setStorageQuantity(order.getStorageQuantity().subtract(orderItems.getStorageInQuantity()));
|
|
|
+ orderService.updateById(order);
|
|
|
+ return R.data(orderItemsService.removeById(id));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除 销售或采购订单表
|
|
|
+ */
|
|
|
+ @PostMapping("/remove")
|
|
|
+ @ApiOperationSupport(order = 8)
|
|
|
+ @ApiOperation(value = "删除", notes = "传入id")
|
|
|
+ public R remove( @RequestParam Long id) {
|
|
|
+ if (id == null){
|
|
|
+ throw new RuntimeException("缺少必要参数");
|
|
|
+ }
|
|
|
+ financeClient.deleteBySrcId(id);
|
|
|
+ return R.data(orderService.removeById(id));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 复制单据
|
|
|
+ */
|
|
|
+ @PostMapping("/copyOrder")
|
|
|
+ @ApiOperationSupport(order = 6)
|
|
|
+ @ApiOperation(value = "复制单据", notes = "传入order")
|
|
|
+ public R copyOrder(@Valid @RequestBody Order order) {
|
|
|
+ return orderService.copyOrder(order);
|
|
|
+ }
|
|
|
+
|
|
|
}
|