纪新园 3 лет назад
Родитель
Сommit
c73ac8c3d1

+ 1 - 1
blade-service-api/trade-purchase-api/src/main/java/com/trade/purchase/agreement/entity/Agreement.java

@@ -183,7 +183,7 @@ public class Agreement implements Serializable {
 	 * 仓库
 	 */
 	@ApiModelProperty(value = "仓库")
-	private Long warehouseId;
+	private String warehouseId;
 
 	//仓库
 	@TableField(exist = false)

+ 66 - 64
blade-service-api/trade-purchase-api/src/main/java/com/trade/purchase/agreement/entity/Agreementitems.java

@@ -16,20 +16,17 @@
  */
 package com.trade.purchase.agreement.entity;
 
-import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
 
-import java.math.BigDecimal;
-import java.time.LocalDateTime;
 import java.io.Serializable;
+import java.math.BigDecimal;
 import java.util.Date;
 
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-
 /**
  * 仓储费明细表实体类
  *
@@ -46,75 +43,80 @@ public class Agreementitems implements Serializable {
 	@TableId(value = "id", type = IdType.AUTO)
 	private Long id;
 	/**
-	* 对应主表id
-	*/
-		@ApiModelProperty(value = "对应主表id")
-		private Long pid;
+	 * 对应主表id
+	 */
+	@ApiModelProperty(value = "对应主表id")
+	private Long pid;
+	/**
+	 * 行号
+	 */
+	@ApiModelProperty(value = "行号")
+	private Integer lineno;
 	/**
-	* 行号
-	*/
-		@ApiModelProperty(value = "行号")
-		private Integer lineno;
+	 * 费用名称,存储id 显示名称	t_fees 中的no或 name,模糊查找选择后,存储f_id,显示name
+	 */
+	@ApiModelProperty(value = "费用名称,存储id 显示名称	t_fees 中的no或 name,模糊查找选择后,存储f_id,显示name")
+	private Long feeId;
 	/**
-	* 费用名称,存储id 显示名称	t_fees 中的no或 name,模糊查找选择后,存储f_id,显示name
-	*/
-		@ApiModelProperty(value = "费用名称,存储id 显示名称	t_fees 中的no或 name,模糊查找选择后,存储f_id,显示name")
-		private Long feeId;
+	 * 计价单位,t_unitfees f_id存储id 显示名称 name	对应,t_unitfees f_id,如果选择为毛重,数量(f_qty)取主表的毛重,如果选择净重,取主表的净重,如果为箱量,取主表的箱量
+	 */
+	@ApiModelProperty(value = "计价单位,t_unitfees f_id存储id 显示名称 name	对应,t_unitfees f_id,如果选择为毛重,数量(f_qty)取主表的毛重,如果选择净重,取主表的净重,如果为箱量,取主表的箱量")
+	private Long feeUnitId;
 	/**
-	* 计价单位,t_unitfees f_id存储id 显示名称 name	对应,t_unitfees f_id,如果选择为毛重,数量(f_qty)取主表的毛重,如果选择净重,取主表的净重,如果为箱量,取主表的箱量
-	*/
-		@ApiModelProperty(value = "计价单位,t_unitfees f_id存储id 显示名称 name	对应,t_unitfees f_id,如果选择为毛重,数量(f_qty)取主表的毛重,如果选择净重,取主表的净重,如果为箱量,取主表的箱量")
-		private Long feeUnitId;
+	 * 开始天数,只有为仓储费显示
+	 */
+	@ApiModelProperty(value = "开始天数,只有为仓储费显示")
+	private Integer fromDays;
 	/**
-	* 开始天数,只有为仓储费显示
-	*/
-		@ApiModelProperty(value = "开始天数,只有为仓储费显示")
-		private Integer fromDays;
+	 * 结束天数,只有为仓储费显示
+	 */
+	@ApiModelProperty(value = "结束天数,只有为仓储费显示")
+	private Integer enDays;
 	/**
-	* 结束天数,只有为仓储费显示
-	*/
-		@ApiModelProperty(value = "结束天数,只有为仓储费显示")
-		private Integer enDays;
+	 * 单价,只有为仓储费显示
+	 */
+	@ApiModelProperty(value = "单价,只有为仓储费显示")
+	private BigDecimal price;
 	/**
-	* 单价,只有为仓储费显示
-	*/
-		@ApiModelProperty(value = "单价,只有为仓储费显示")
-		private BigDecimal price;
+	 * 状态,默认 T ,正常T 停用F 下拉选择
+	 */
+	@ApiModelProperty(value = "状态,默认 T ,正常T 停用F 下拉选择")
+	private String status;
 	/**
-	* 状态,默认 T ,正常T 停用F 下拉选择
-	*/
-		@ApiModelProperty(value = "状态,默认 T ,正常T 停用F 下拉选择")
-		private String status;
+	 * 删除状态
+	 */
+	@ApiModelProperty(value = "删除状态")
+	private String delFlag;
 	/**
-	* 删除状态
-	*/
-		@ApiModelProperty(value = "删除状态")
-		private String delFlag;
+	 * 创建者
+	 */
+	@ApiModelProperty(value = "创建者")
+	private String createBy;
 	/**
-	* 创建者
-	*/
-		@ApiModelProperty(value = "创建者")
-		private String createBy;
+	 * 创建时间
+	 */
+	@ApiModelProperty(value = "创建时间")
+	private Date createTime;
 	/**
-	* 创建时间
-	*/
-		@ApiModelProperty(value = "创建时间")
-		private Date createTime;
+	 * 更新者
+	 */
+	@ApiModelProperty(value = "更新者")
+	private String updateBy;
 	/**
-	* 更新者
-	*/
-		@ApiModelProperty(value = "更新者")
-		private String updateBy;
+	 * 更新时间
+	 */
+	@ApiModelProperty(value = "更新时间")
+	private Date updateTime;
 	/**
-	* 更新时间
-	*/
-		@ApiModelProperty(value = "更新时间")
-		private Date updateTime;
+	 * 备注
+	 */
+	@ApiModelProperty(value = "备注")
+	private String remark;
 	/**
-	* 备注
-	*/
-		@ApiModelProperty(value = "备注")
-		private String remark;
+	 * 费用名称
+	 */
+	@ApiModelProperty(value = "费用名称")
+	private String feeName;
 
 
 }

+ 13 - 0
blade-service/blade-client/src/main/java/org/springblade/client/goods/controller/GoodsTypeController.java

@@ -105,6 +105,19 @@ public class GoodsTypeController extends BladeController {
 	}
 
 	/**
+	 *商品类别表
+	 */
+	@GetMapping("/listAll")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入goodsType")
+	public R<List<GoodsType>> listAll(GoodsTypeVO goodsType) {
+		goodsType.setTenantId(AuthUtil.getTenantId());
+		goodsType.setType(GoodsTypeEnum.GOODS.getType());
+		List<GoodsType> list = goodsTypeService.list(Condition.getQueryWrapper(goodsType));
+		return R.data(list);
+	}
+
+	/**
 	 * 新增 商品类别表
 	 */
 	@PostMapping("/save")

+ 23 - 21
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java

@@ -949,27 +949,29 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 					throw new SecurityException(exception.getMessage());
 				}
 			}*/
-			if ((StringUtils.isBlank(tradeType)) || (StringUtils.isNotBlank(tradeType)) && !tradeType.equals(OrderTypeEnum.DOMESTIC.getType())){
-				if (e.getSrcType() == 2) {
-					OrderFees orderFees = orderFeesClient.getById(e.getSrcFeesId());
-					if (orderFees == null) {
-						throw new SecurityException("未查到原单据的费用明细,无法修改状态");
-					}
-					orderFees.setSubmitPay(1);
-					orderFees.setIsCheck(1);
-					R submit = orderFeesClient.submit(orderFees);
-					if (!submit.isSuccess()) {
-						throw new SecurityException("财务-修改原单据的费用明细错误");
-					}
-				} else {
-					OrderItems client = orderItemsClient.getById(e.getSrcFeesId());
-					if (client == null) {
-						throw new SecurityException("未查到原单据的商品明细,无法修改状态");
-					}
-					client.setSubmitPay(1);
-					R submit = orderItemsClient.submit(client);
-					if (!submit.isSuccess()) {
-						throw new SecurityException("财务-修改原单据的商品明细错误");
+			if (!tradeType.equals(OrderTypeEnum.WOOD_HARVESTING_CLOUD.getType())){
+				if ((StringUtils.isBlank(tradeType)) || (StringUtils.isNotBlank(tradeType)) && !tradeType.equals(OrderTypeEnum.DOMESTIC.getType())){
+					if (e.getSrcType() == 2) {
+						OrderFees orderFees = orderFeesClient.getById(e.getSrcFeesId());
+						if (orderFees == null) {
+							throw new SecurityException("未查到原单据的费用明细,无法修改状态");
+						}
+						orderFees.setSubmitPay(1);
+						orderFees.setIsCheck(1);
+						R submit = orderFeesClient.submit(orderFees);
+						if (!submit.isSuccess()) {
+							throw new SecurityException("财务-修改原单据的费用明细错误");
+						}
+					} else {
+						OrderItems client = orderItemsClient.getById(e.getSrcFeesId());
+						if (client == null) {
+							throw new SecurityException("未查到原单据的商品明细,无法修改状态");
+						}
+						client.setSubmitPay(1);
+						R submit = orderItemsClient.submit(client);
+						if (!submit.isSuccess()) {
+							throw new SecurityException("财务-修改原单据的商品明细错误");
+						}
 					}
 				}
 			}

+ 9 - 4
blade-service/trade-purchase/src/main/java/com/trade/purchase/agreement/controller/AgreementController.java

@@ -90,10 +90,15 @@ public class AgreementController extends BladeController {
 		List<Agreement> agreementList = pages.getRecords();
 		for (Agreement agreement1 : agreementList) {
 			if (ObjectUtils.isNotNull(agreement1.getWarehouseId())) {
-				//仓库
-				StorageType storageType = iStorageClient.getStorageType(agreement1.getWarehouseId());
-				if (ObjectUtils.isNotNull(storageType)) {
-					agreement1.setWarehouseName(storageType.getCname());
+				String[] arrs = agreement1.getWarehouseId().split(",");
+				String[] warehouseName = new String[arrs.length];
+				for (String arr : arrs) {
+					//仓库
+					StorageType storageType = iStorageClient.getStorageType(Long.parseLong(arr));
+					if (ObjectUtils.isNotNull(storageType)) {
+
+					}
+					agreement1.setWarehouseName(warehouseName.toString());
 				}
 			}
 

+ 13 - 8
blade-service/trade-purchase/src/main/java/com/trade/purchase/agreement/service/impl/AgreementServiceImpl.java

@@ -41,7 +41,6 @@ import org.springblade.system.feign.ISysClient;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
-import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -112,20 +111,26 @@ public class AgreementServiceImpl extends ServiceImpl<AgreementMapper, Agreement
 
 	/**
 	 * 查看详情
+	 *
 	 * @param id
 	 * @return
 	 */
 	@Override
 	public Agreement getDetails(Long id) {
 		QueryWrapper<Agreement> queryWrapper = new QueryWrapper<>();
-		queryWrapper.eq("tenant_id",AuthUtil.getTenantId()).eq("del_flag","0").eq("id",id);
+		queryWrapper.eq("tenant_id", AuthUtil.getTenantId()).eq("del_flag", "0").eq("id", id);
 		Agreement agreement = baseMapper.selectOne(queryWrapper);
-		if (ObjectUtils.isNotNull(agreement)){
+		if (ObjectUtils.isNotNull(agreement)) {
 			if (ObjectUtils.isNotNull(agreement.getWarehouseId())) {
-				//仓库
-				StorageType storageType = iStorageClient.getStorageType(agreement.getWarehouseId());
-				if (ObjectUtils.isNotNull(storageType)) {
-					agreement.setWarehouseName(storageType.getCname());
+				String[] arrs = agreement.getWarehouseId().split(",");
+				String[] warehouseName = new String[arrs.length];
+				for (String arr : arrs) {
+					//仓库
+					StorageType storageType = iStorageClient.getStorageType(Long.parseLong(arr));
+					if (ObjectUtils.isNotNull(storageType)) {
+
+					}
+					agreement.setWarehouseName(warehouseName.toString());
 				}
 			}
 
@@ -151,7 +156,7 @@ public class AgreementServiceImpl extends ServiceImpl<AgreementMapper, Agreement
 				}
 			}
 			QueryWrapper<Agreementitems> agreementitemsQueryWrapper = new QueryWrapper<>();
-			agreementitemsQueryWrapper.eq("del_flag","0").eq("pid",agreement.getId());
+			agreementitemsQueryWrapper.eq("del_flag", "0").eq("pid", agreement.getId());
 			List<Agreementitems> agreementitemsList = agreementitemsService.list(agreementitemsQueryWrapper);
 			agreement.setAgreementitemsList(agreementitemsList);
 		}

+ 3 - 3
blade-service/trade-purchase/src/main/java/com/trade/purchase/order/controller/WoodHarvestingCloudController.java

@@ -242,12 +242,12 @@ public class WoodHarvestingCloudController {
 	/**
 	 * 入出库提交审批
 	 *
-	 * @param order
+	 * @param submitDto
 	 * @return
 	 */
 	@PostMapping("/checkWarehousing")
-	public R checkOrder(@RequestBody Order order) {
-		orderService.checkWarehousing(order);
+	public R checkOrder(@RequestBody OrderSubmitDto submitDto) {
+		orderService.checkWarehousing(submitDto);
 		return R.data("操作成功");
 	}
 

+ 1 - 1
blade-service/trade-purchase/src/main/java/com/trade/purchase/order/service/IOrderService.java

@@ -170,7 +170,7 @@ public interface IOrderService extends IService<Order> {
 	 * 入出库审批提交
 	 * @param order
 	 */
-	void checkWarehousing(Order order);
+	void checkWarehousing(OrderSubmitDto order);
 
 	R passCheck(Long id);
 

+ 183 - 100
blade-service/trade-purchase/src/main/java/com/trade/purchase/order/service/impl/OrderServiceImpl.java

@@ -4,7 +4,10 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.*;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.trade.purchase.agreement.entity.Agreement;
@@ -60,11 +63,7 @@ import org.springblade.system.user.feign.IUserClient;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-import org.springframework.web.multipart.MultipartFile;
 
-import javax.servlet.http.HttpServletRequest;
 import java.io.File;
 import java.io.IOException;
 import java.math.BigDecimal;
@@ -1107,7 +1106,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
 			throw new Error("生成系统编号失败");
 		}
-		if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())){
+		if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())) {
 			submitDto.setOrderNo(billNo.getData().toString());
 			submitDto.setOrgOrderNo(billNo.getData().toString());
 		}
@@ -1123,7 +1122,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		BigDecimal balanceMoney = new BigDecimal(0);
 		if (ObjectUtils.isNotNull(orderItemsList)) {
 			for (OrderItems orderItems : orderItemsList) {
-				if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())){
+				if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())) {
 					LambdaQueryWrapper<OrderItems> orderItemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
 					orderItemsLambdaQueryWrapper
 						.eq(OrderItems::getGoodType, 0)
@@ -1131,8 +1130,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						.eq(OrderItems::getTenantId, AuthUtil.getTenantId())
 						.eq(OrderItems::getIsDeleted, 0);
 					List<OrderItems> orderItemsBillNo = orderItemsMapper.selectList(orderItemsLambdaQueryWrapper);
-					if (ObjectUtils.isNull(orderItemsBillNo)){
-						throw new Error("捆包号:"+orderItems.getBillNo()+"不允许重复");
+					if (ObjectUtils.isNotNull(orderItemsBillNo)) {
+						throw new Error("捆包号:" + orderItems.getBillNo() + "不允许重复");
 					}
 				}
 				orderItems.setPid(submitDto.getId());
@@ -1176,28 +1175,32 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		BigDecimal balanceMoney = new BigDecimal(0);
 		if (ObjectUtils.isNotNull(orderItemsList)) {
 			for (OrderItems orderItems : orderItemsList) {
-				if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())){
+				List<OrderItems> orderItemsBillNo = new ArrayList<>();
+				if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())) {
 					LambdaQueryWrapper<OrderItems> orderItemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
 					orderItemsLambdaQueryWrapper
 						.eq(OrderItems::getGoodType, 0)
 						.eq(OrderItems::getBillNo, orderItems.getBillNo())
 						.eq(OrderItems::getTenantId, AuthUtil.getTenantId())
 						.eq(OrderItems::getIsDeleted, 0);
-					List<OrderItems> orderItemsBillNo = orderItemsMapper.selectList(orderItemsLambdaQueryWrapper);
-					if (ObjectUtils.isNull(orderItemsBillNo)){
-						throw new Error("捆包号:"+orderItems.getBillNo()+"不允许重复");
-					}
+					orderItemsBillNo = orderItemsMapper.selectList(orderItemsLambdaQueryWrapper);
 				}
 				orderItems.setPid(submitDto.getId());
 				orderItems.setTenantId(AuthUtil.getTenantId());
 				orderItems.setBalanceNumber(orderItems.getStorageAmount());//结余量
 				orderItems.setBalanceMoney(orderItems.getPurchaseQuantity());//结余金额
 				if (ObjectUtils.isNotNull(orderItems.getId())) {
+					if (orderItemsBillNo.size() > 1) {
+						throw new Error("捆包号:" + orderItems.getBillNo() + "不允许重复");
+					}
 					orderItems.setUpdateTime(new Date());
 					orderItems.setUpdateUser(AuthUtil.getUserId());
 					orderItems.setUpdateUserName(AuthUtil.getUserName());
 					orderItemsMapper.updateById(orderItems);
 				} else {
+					if (orderItemsBillNo.size() > 0) {
+						throw new Error("捆包号:" + orderItems.getBillNo() + "不允许重复");
+					}
 					orderItems.setCreateTime(new Date());
 					orderItems.setCreateUser(AuthUtil.getUserId());
 					orderItems.setCreateUserName(AuthUtil.getUserName());
@@ -1246,7 +1249,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			submitDto.setUpdateTime(new Date());
 			baseMapper.updateById(submitDto);
 		} else {
-			if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())){
+			if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())) {
 				submitDto.setOrderNo(billNo.getData().toString());
 				submitDto.setOrgOrderNo(billNo.getData().toString());
 			}
@@ -1259,16 +1262,17 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		BigDecimal balanceMoney = new BigDecimal(0);
 		if (ObjectUtils.isNotNull(orderItemsList)) {
 			for (OrderItems orderItems : orderItemsList) {
-				if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())){
+				List<OrderItems> orderItemsBillNo = new ArrayList<>();
+				if (OrderTypeEnum.WAREHOUSING.getType().equals(submitDto.getBillType())) {
 					LambdaQueryWrapper<OrderItems> orderItemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
 					orderItemsLambdaQueryWrapper
 						.eq(OrderItems::getGoodType, 0)
 						.eq(OrderItems::getBillNo, orderItems.getBillNo())
 						.eq(OrderItems::getTenantId, AuthUtil.getTenantId())
 						.eq(OrderItems::getIsDeleted, 0);
-					List<OrderItems> orderItemsBillNo = orderItemsMapper.selectList(orderItemsLambdaQueryWrapper);
-					if (ObjectUtils.isNull(orderItemsBillNo)){
-						throw new Error("捆包号:"+orderItems.getBillNo()+"不允许重复");
+					orderItemsBillNo = orderItemsMapper.selectList(orderItemsLambdaQueryWrapper);
+					if (orderItemsBillNo.size() > 1) {
+						throw new Error("捆包号:" + orderItems.getBillNo() + "不允许重复");
 					}
 				}
 				orderItems.setPid(submitDto.getId());
@@ -1276,11 +1280,17 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				orderItems.setBalanceNumber(orderItems.getStorageAmount());//结余量
 				orderItems.setBalanceMoney(orderItems.getPurchaseQuantity());//结余金额
 				if (ObjectUtils.isNotNull(orderItems.getId())) {
+					if (orderItemsBillNo.size() > 1) {
+						throw new Error("捆包号:" + orderItems.getBillNo() + "不允许重复");
+					}
 					orderItems.setUpdateTime(new Date());
 					orderItems.setUpdateUser(AuthUtil.getUserId());
 					orderItems.setUpdateUserName(AuthUtil.getUserName());
 					orderItemsMapper.updateById(orderItems);
 				} else {
+					if (orderItemsBillNo.size() > 0) {
+						throw new Error("捆包号:" + orderItems.getBillNo() + "不允许重复");
+					}
 					orderItems.setCreateTime(new Date());
 					orderItems.setCreateUser(AuthUtil.getUserId());
 					orderItems.setCreateUserName(AuthUtil.getUserName());
@@ -1312,7 +1322,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@GlobalTransactional(rollbackFor = Exception.class, timeoutMills = 12000000)
-	public void checkWarehousing(Order order) {
+	public void checkWarehousing(OrderSubmitDto order) {
 		Order salesOrder = baseMapper.selectById(order.getId());
 		if (order.getCheckFlag() != 3 && salesOrder.getStatus() != 0) {
 			throw new SecurityException("订单已开启审核,请勿重复提交");
@@ -1388,19 +1398,19 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 					try {
 						File packageFile = new File("/home/minio/file/673511-bladex/upload");
 
-						if (!packageFile.getParentFile().exists()){
+						if (!packageFile.getParentFile().exists()) {
 							boolean a = packageFile.mkdirs();
-							if (a){
+							if (a) {
 								System.out.println("文件夹创建成功");
-							}else{
+							} else {
 								System.out.println("文件夹创建失败");
 							}
 						}
 
-						File oneFile = new File(packageFile,item.getBillNo() + "捆包号.png");
+						File oneFile = new File(packageFile, item.getBillNo() + "捆包号.png");
 						oneFile.createNewFile();
 
-						File qRCodeFile = new File(packageFile,item.getBillNo() + "货物明细.png");
+						File qRCodeFile = new File(packageFile, item.getBillNo() + "货物明细.png");
 						qRCodeFile.createNewFile();
 
 						String oneCode = BarCodeTest.generateCode(oneFile, item.getBillNo(), 500, 250);
@@ -1412,7 +1422,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						System.out.println(qRCode);
 						item.setQrCode(qRCode);
 						orderItemsMapper.updateById(item);
-					}catch (IOException e){
+					} catch (IOException e) {
 						throw new SecurityException("生成码失败");
 					}
 
@@ -1440,9 +1450,23 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			if (!financeProcess.isSuccess()) {
 				throw new SecurityException("操作失败,请联系管理员");
 			}
+			order.setOrderNo(salesOrder.getOrderNo());
+			order.setBusinesDate(salesOrder.getBusinesDate());
+			order.setCorpId(salesOrder.getCorpId());
+			order.setBelongToCorpId(salesOrder.getBelongToCorpId());
+			order.setTradeType(salesOrder.getTradeType());
+			order.setThisUsedProfit(salesOrder.getThisUsedProfit());
+			order.setPurchaserId(salesOrder.getPurchaserId());
+			order.setStorageId(salesOrder.getStorageId());
+			order.setOrgOrderNo(order.getOrgOrderNo());
+			order.setOrderRemark(salesOrder.getOrderRemark());
+			order.setStorageQuantity(salesOrder.getStorageQuantity());
 			//出库生成仓储费
 			if ("CK".equals(salesOrder.getBillType())) {
-				this.paymentApply(salesOrder, "收费", OrderTypeEnum.STORAGE_FEE.getType());
+				this.paymentApply(order, "收费", OrderTypeEnum.STORAGE_FEE.getType());
+				this.paymentApply(order, "收费", "出库");
+			}else if ("RK".equals(salesOrder.getBillType())){
+				this.paymentApply(order, "付费", "入库");
 			}
 
 		}
@@ -1575,7 +1599,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 	 * @param itemType 付款类型: 采购 销售 收货 发货
 	 */
 	@Transactional
-	public void paymentApply(Order order, String billType, String itemType) {
+	public void paymentApply(OrderSubmitDto order, String billType, String itemType) {
 		//获取所属公司中文名
 		if (order.getBelongToCorpId() != null) {
 			R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(order.getBelongToCorpId());
@@ -1629,15 +1653,77 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			List<OrderFees> orderFeesList = orderFeesService.list(orderFeesLambdaQueryWrapper);
 			if (CollectionUtils.isNotEmpty(orderFeesList)) {
 				amount = amount.add(orderFeesList.stream().map(OrderFees::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add));
+				if (order.getThisUsedProfit() != null) {
+					amount = amount.subtract(order.getThisUsedProfit());
+				}
+				if (quantity.compareTo(BigDecimal.ZERO) > 0) {
+					price = amount.divide(quantity, 5, RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_UP);
+				}
+				items.setItemType(itemType);
+				items.setPrice(price);
+				//账单数据
+				items.setAmount(amount);
+				items.setQuantity(quantity);
+				items.setSrcOrderno(order.getOrgOrderNo());
+				items.setCorpId(order.getPurchaserId());
+				items.setSrcParentId(order.getId());
+				items.setCurrency("CNY");
+				items.setExchangeRate(new BigDecimal(1));
+				items.setTaxRate(BigDecimal.ZERO);
+				items.setSrcType(1);
+				items.setTradeType(order.getTradeType());
+				items.setUnit("条");
+				items.setRemarks(order.getOrderRemark());
+				//获取费用id
+				R<FeesDesc> fees = feesDescClient.getFeesByName("货款");
+				if (fees.isSuccess() && fees.getData() != null) {
+					items.setCostType(fees.getData().getId().toString());
+				}
+				itemsList.add(items);
+				applyDTO.setItemsList(itemsList);
+				if (CollectionUtils.isNotEmpty(itemsList)) {
+					//生成账单
+					R paymentApply = financeClient.paymentApply(applyDTO);
+					if (!paymentApply.isSuccess()) {
+						throw new RuntimeException(paymentApply.getMsg());
+					}
+					//给角色为财务的人发送消息
+					R<String> clientDeptIds = sysClient.getRoleIds(SecureUtil.getTenantId(), "财务");
+					if (clientDeptIds.isSuccess() && StringUtils.isNotBlank(clientDeptIds.getData())) {
+						R<List<User>> userList = userClient.listUserByRoleId(Long.valueOf(clientDeptIds.getData()));
+						if (userList.isSuccess() && CollectionUtils.isNotEmpty(userList.getData())) {
+							for (User datum : userList.getData()) {
+								//循环发送消息
+								Message sendMessage = new Message();
+								sendMessage.setParameter(String.valueOf(order.getId()));
+								sendMessage.setUserName(AuthUtil.getUserName());
+								sendMessage.setUserId(AuthUtil.getUserId());
+								sendMessage.setToUserId(datum.getId());
+								sendMessage.setToUserName(datum.getName());
+								sendMessage.setMessageType(1);
+								sendMessage.setTenantId(AuthUtil.getTenantId());
+								sendMessage.setCreateUser(AuthUtil.getUserId());
+								sendMessage.setCreateTime(new Date());
+								sendMessage.setUrl(order.getUrl());
+								sendMessage.setPageLabel(order.getPageLabel());
+								sendMessage.setPageStatus(order.getPageStatus());
+								sendMessage.setMessageBody(order.getBelongToCorpName() + " 您的客户:" + order.getCorpName() + "的订单 " + order.getSysNo() + "审核通过,请查看");
+								R save = messageClient.save(sendMessage);
+								if (!save.isSuccess()) {
+									throw new SecurityException("发送消息失败");
+								}
+							}
+						}
+					}
+					//修改原数据表示已生成账单
+					//修改商品明细
+					orderItemsMapper.submitPay(order.getId());
+					//修改费用明细
+					orderFeesService.submitPay(order.getId());
+				}
+			}else{
+
 			}
-			if (order.getThisUsedProfit() != null) {
-				amount = amount.subtract(order.getThisUsedProfit());
-			}
-			if (quantity.compareTo(BigDecimal.ZERO) > 0) {
-				price = amount.divide(quantity, 5, RoundingMode.HALF_UP).setScale(2, RoundingMode.HALF_UP);
-			}
-			items.setItemType(itemType);
-			items.setPrice(price);
 		} else {
 			items.setItemType("仓储费");
 
@@ -1667,14 +1753,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 			//获取仓储费协议
 			LambdaQueryWrapper<Agreement> agreementLambdaQueryWrapper = new LambdaQueryWrapper<>();
 			agreementLambdaQueryWrapper
-				.eq(Agreement::getDc, "D")
-				.eq(Agreement::getCorpId, order.getCorpId())
+				.eq(Agreement::getCorpId, order.getPurchaserId())
 				.eq(Agreement::getFeetypeId, "0")
-				.eq(Agreement::getWarehouseId, order.getStorageId())
-				.ge(Agreement::getEndDate, new Date())
-				.eq(Agreement::getBillStatus, "T")
 				.eq(Agreement::getDelFlag, "0")
-				.eq(Agreement::getTenantId, AuthUtil.getTenantId());
+				.eq(Agreement::getTenantId, AuthUtil.getTenantId())
+			.apply("FIND_IN_SET("+order.getStorageId()+",warehouse_id)");
 			Agreement agreement = agreementService.getOne(agreementLambdaQueryWrapper);
 			if (agreement == null) {
 				throw new SecurityException("未找到仓储费协议");
@@ -1696,75 +1779,75 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				//判断实际存放天数是否大于本条结束天数
 				if (days >= agreementitems.getEnDays()) {
 					//本条收费天数乘以单价 = 所需收费金额
-					amount = amount.add((new BigDecimal((agreementitems.getEnDays() - agreementitems.getFromDays()), MathContext.UNLIMITED)).multiply(agreementitems.getPrice(), MathContext.UNLIMITED));
+					amount = amount.add((new BigDecimal((agreementitems.getEnDays() - agreementitems.getFromDays()+1), MathContext.UNLIMITED)).multiply(agreementitems.getPrice(), MathContext.UNLIMITED).multiply(order.getStorageQuantity()));
 					//业务天数减去本条结束天数所得天数为下一条要收费天数
-					date = date - agreementitems.getEnDays();
+					date = date - (agreementitems.getEnDays() - agreementitems.getFromDays()+1);
 				} else {
 					//业务天数乘以单价 = 剩余所需收费金额
-					amount = amount.add((new BigDecimal(date)).multiply(agreementitems.getPrice(), MathContext.UNLIMITED));
+					amount = amount.add((new BigDecimal(date+1)).multiply(agreementitems.getPrice(), MathContext.UNLIMITED).multiply(order.getStorageQuantity()));
 				}
 			}
 			quantity = RKoOrder.getStorageQuantity();
-		}
-		//账单数据
-		items.setAmount(amount);
-		items.setQuantity(quantity);
-		items.setSrcOrderno(order.getOrgOrderNo());
-		items.setCorpId(order.getCorpId());
-		items.setSrcParentId(order.getId());
-		items.setCurrency("CNY");
-		items.setExchangeRate(new BigDecimal(1));
-		items.setTaxRate(BigDecimal.ZERO);
-		items.setSrcType(1);
-		items.setTradeType(order.getTradeType());
-		items.setUnit("条");
-		items.setRemarks(order.getOrderRemark());
-		//获取费用id
-		R<FeesDesc> fees = feesDescClient.getFeesByName("货款");
-		if (fees.isSuccess() && fees.getData() != null) {
-			items.setCostType(fees.getData().getId().toString());
-		}
-		itemsList.add(items);
-		applyDTO.setItemsList(itemsList);
-		if (CollectionUtils.isNotEmpty(itemsList)) {
-			//生成账单
-			R paymentApply = financeClient.paymentApply(applyDTO);
-			if (!paymentApply.isSuccess()) {
-				throw new RuntimeException(paymentApply.getMsg());
+			//账单数据
+			items.setAmount(amount);
+			items.setQuantity(quantity);
+			items.setSrcOrderno(order.getOrgOrderNo());
+			items.setCorpId(order.getPurchaserId());
+			items.setSrcParentId(order.getId());
+			items.setCurrency("CNY");
+			items.setExchangeRate(new BigDecimal(1));
+			items.setTaxRate(BigDecimal.ZERO);
+			items.setSrcType(1);
+			items.setTradeType(order.getTradeType());
+			items.setUnit("条");
+			items.setRemarks(order.getOrderRemark());
+			//获取费用id
+			R<FeesDesc> fees = feesDescClient.getFeesByName("货款");
+			if (fees.isSuccess() && fees.getData() != null) {
+				items.setCostType(fees.getData().getId().toString());
 			}
-			//给角色为财务的人发送消息
-			R<String> clientDeptIds = sysClient.getRoleIds(SecureUtil.getTenantId(), "财务");
-			if (clientDeptIds.isSuccess() && StringUtils.isNotBlank(clientDeptIds.getData())) {
-				R<List<User>> userList = userClient.listUserByRoleId(Long.valueOf(clientDeptIds.getData()));
-				if (userList.isSuccess() && CollectionUtils.isNotEmpty(userList.getData())) {
-					for (User datum : userList.getData()) {
-						//循环发送消息
-						Message sendMessage = new Message();
-						sendMessage.setParameter(String.valueOf(order.getId()));
-						sendMessage.setUserName(AuthUtil.getUserName());
-						sendMessage.setUserId(AuthUtil.getUserId());
-						sendMessage.setToUserId(datum.getId());
-						sendMessage.setToUserName(datum.getName());
-						sendMessage.setMessageType(1);
-						sendMessage.setTenantId(AuthUtil.getTenantId());
-						sendMessage.setCreateUser(AuthUtil.getUserId());
-						sendMessage.setCreateTime(new Date());
-						sendMessage.setUrl(order.getUrl());
-						sendMessage.setPageLabel(order.getPageLabel());
-						sendMessage.setPageStatus(order.getPageStatus());
-						sendMessage.setMessageBody(order.getBelongToCorpName() + " 您的客户:" + order.getCorpName() + "的订单 " + order.getSysNo() + "审核通过,请查看");
-						R save = messageClient.save(sendMessage);
-						if (!save.isSuccess()) {
-							throw new SecurityException("发送消息失败");
+			itemsList.add(items);
+			applyDTO.setItemsList(itemsList);
+			if (CollectionUtils.isNotEmpty(itemsList)) {
+				//生成账单
+				R paymentApply = financeClient.paymentApply(applyDTO);
+				if (!paymentApply.isSuccess()) {
+					throw new RuntimeException(paymentApply.getMsg());
+				}
+				//给角色为财务的人发送消息
+				R<String> clientDeptIds = sysClient.getRoleIds(SecureUtil.getTenantId(), "财务");
+				if (clientDeptIds.isSuccess() && StringUtils.isNotBlank(clientDeptIds.getData())) {
+					R<List<User>> userList = userClient.listUserByRoleId(Long.valueOf(clientDeptIds.getData()));
+					if (userList.isSuccess() && CollectionUtils.isNotEmpty(userList.getData())) {
+						for (User datum : userList.getData()) {
+							//循环发送消息
+							Message sendMessage = new Message();
+							sendMessage.setParameter(String.valueOf(order.getId()));
+							sendMessage.setUserName(AuthUtil.getUserName());
+							sendMessage.setUserId(AuthUtil.getUserId());
+							sendMessage.setToUserId(datum.getId());
+							sendMessage.setToUserName(datum.getName());
+							sendMessage.setMessageType(1);
+							sendMessage.setTenantId(AuthUtil.getTenantId());
+							sendMessage.setCreateUser(AuthUtil.getUserId());
+							sendMessage.setCreateTime(new Date());
+							sendMessage.setUrl(order.getUrl());
+							sendMessage.setPageLabel(order.getPageLabel());
+							sendMessage.setPageStatus(order.getPageStatus());
+							sendMessage.setMessageBody(order.getBelongToCorpName() + " 您的客户:" + order.getCorpName() + "的订单 " + order.getSysNo() + "审核通过,请查看");
+							R save = messageClient.save(sendMessage);
+							if (!save.isSuccess()) {
+								throw new SecurityException("发送消息失败");
+							}
 						}
 					}
 				}
+				//修改原数据表示已生成账单
+				//修改商品明细
+				orderItemsMapper.submitPay(order.getId());
+				//修改费用明细
+				orderFeesService.submitPay(order.getId());
 			}
-			//修改原数据表示已生成账单
-			//修改商品明细
-			orderItemsMapper.submitPay(order.getId());
-			//修改费用明细
-			orderFeesService.submitPay(order.getId());
 		}
 	}