Procházet zdrojové kódy

2023年10月30日17:39:20

纪新园 před 2 roky
rodič
revize
740b9a6246
23 změnil soubory, kde provedl 973 přidání a 167 odebrání
  1. 34 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/reports/dto/ReportsDTO.java
  2. 161 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/reports/entity/Reports.java
  3. 36 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/reports/vo/ReportsVO.java
  4. 7 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/units/entity/BUnits.java
  5. 17 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/sea/entity/Bills.java
  6. 132 0
      blade-service-api/blade-los-api/src/main/java/org/springblade/los/finance/fee/entity/FeeCenter.java
  7. 67 108
      blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/feign/DeliveryClient.java
  8. 126 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/controller/ReportsController.java
  9. 42 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/mapper/ReportsMapper.java
  10. 36 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/mapper/ReportsMapper.xml
  11. 48 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/IReportsService.java
  12. 75 0
      blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/impl/ReportsServiceImpl.java
  13. 3 3
      blade-service/blade-los/src/main/java/org/springblade/los/basic/units/controller/BUnitsController.java
  14. 15 5
      blade-service/blade-los/src/main/java/org/springblade/los/basic/units/service/IBUnitsService.java
  15. 41 1
      blade-service/blade-los/src/main/java/org/springblade/los/basic/units/service/impl/BUnitsServiceImpl.java
  16. 63 34
      blade-service/blade-los/src/main/java/org/springblade/los/business/sea/controller/BillsController.java
  17. 1 0
      blade-service/blade-los/src/main/java/org/springblade/los/business/sea/mapper/BillsMapper.xml
  18. 35 0
      blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java
  19. 22 0
      blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/mapper/FeeCenterMapper.xml
  20. 3 7
      blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/service/impl/FeeCenterServiceImpl.java
  21. 6 6
      blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderItemsServiceImpl.java
  22. 1 1
      blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java
  23. 2 2
      blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java

+ 34 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/reports/dto/ReportsDTO.java

@@ -0,0 +1,34 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.basic.reports.dto;
+
+import org.springblade.los.basic.reports.entity.Reports;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 基础资料-报表管理数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2023-10-30
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ReportsDTO extends Reports {
+	private static final long serialVersionUID = 1L;
+
+}

+ 161 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/reports/entity/Reports.java

@@ -0,0 +1,161 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.basic.reports.entity;
+
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 基础资料-报表管理实体类
+ *
+ * @author BladeX
+ * @since 2023-10-30
+ */
+@Data
+@TableName("los_b_reports")
+@ApiModel(value = "Reports对象", description = "基础资料-报表管理")
+public class Reports implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 主键
+	 */
+	@ApiModelProperty(value = "主键")
+	private Long id;
+	/**
+	 * 分公司 Id
+	 */
+	@ApiModelProperty(value = "分公司 Id")
+	private String branchId;
+	/**
+	 * 创建人 Id
+	 */
+	@ApiModelProperty(value = "创建人 Id")
+	private Long createUser;
+	/**
+	 * 创建人
+	 */
+	@ApiModelProperty(value = "创建人")
+	private String createUserName;
+	/**
+	 * 创建部门 Id
+	 */
+	@ApiModelProperty(value = "创建部门 Id")
+	private String createDept;
+	/**
+	 * 创建部门
+	 */
+	@ApiModelProperty(value = "创建部门")
+	private String createDeptName;
+	/**
+	 * 创建时间
+	 */
+	@ApiModelProperty(value = "创建时间")
+	private Date createTime;
+	/**
+	 * 修改人 Id
+	 */
+	@ApiModelProperty(value = "修改人 Id")
+	private Long updateUser;
+	/**
+	 * 修改人
+	 */
+	@ApiModelProperty(value = "修改人")
+	private String updateUserName;
+	/**
+	 * 修改时间
+	 */
+	@ApiModelProperty(value = "修改时间")
+	private Date updateTime;
+	/**
+	 * 业务类型
+	 */
+	@ApiModelProperty(value = "业务类型")
+	private String businessType;
+	/**
+	 * 类别
+	 */
+	@ApiModelProperty(value = "类别")
+	private String classifyCode;
+	/**
+	 * 组别
+	 */
+	@ApiModelProperty(value = "组别")
+	private String groupCode;
+	/**
+	 * 报表编码,用于识别唯一报表
+	 */
+	@ApiModelProperty(value = "报表编码,用于识别唯一报表")
+	private String code;
+	/**
+	 * 中文名称
+	 */
+	@ApiModelProperty(value = "中文名称")
+	private String cnName;
+	/**
+	 * 英文名称
+	 */
+	@ApiModelProperty(value = "英文名称")
+	private String enName;
+	/**
+	 * 报表格式
+	 */
+	@ApiModelProperty(value = "报表格式")
+	private String content;
+	/**
+	 * 授权用户
+	 */
+	@ApiModelProperty(value = "授权用户")
+	private String authorizedUsers;
+	/**
+	 * 版本
+	 */
+	@ApiModelProperty(value = "版本")
+	private String version;
+	/**
+	 * 状态(0 正常 1停用)
+	 */
+	@ApiModelProperty(value = "状态(0 正常 1停用)")
+	private Integer status;
+	/**
+	 * 备注
+	 */
+	@ApiModelProperty(value = "备注")
+	private String remarks;
+
+	/**
+	 * 是否已删除(0 否 1是)
+	 */
+	@TableLogic(value = "0",delval = "1")
+	@ApiModelProperty(value = "是否已删除(0 否 1是)")
+	private Integer isDeleted;
+
+	/**
+	 * 租户
+	 */
+	@ApiModelProperty(value = "租户")
+	private String tenantId;
+
+
+}

+ 36 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/reports/vo/ReportsVO.java

@@ -0,0 +1,36 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.basic.reports.vo;
+
+import org.springblade.los.basic.reports.entity.Reports;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * 基础资料-报表管理视图实体类
+ *
+ * @author BladeX
+ * @since 2023-10-30
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ApiModel(value = "ReportsVO对象", description = "基础资料-报表管理")
+public class ReportsVO extends Reports {
+	private static final long serialVersionUID = 1L;
+
+}

+ 7 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/basic/units/entity/BUnits.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.los.basic.units.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
@@ -145,5 +146,11 @@ public class BUnits implements Serializable {
 	@ApiModelProperty(value = "租户")
 	private String tenantId;
 
+	/**
+	 * 主表id
+	 */
+	@TableField(exist = false)
+	private Long srcBillId;
+
 
 }

+ 17 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/sea/entity/Bills.java

@@ -335,6 +335,12 @@ public class Bills implements Serializable {
 	@DateTimeFormat(pattern = "yyyy-MM-dd")
 	@JsonFormat(pattern = "yyyy-MM-dd")
 	private Date etd;
+
+	/**
+	 * 开船日期
+	 */
+	@TableField(exist = false)
+	private List<String> etdList;
 	/**
 	 * 到港日期
 	 */
@@ -343,6 +349,11 @@ public class Bills implements Serializable {
 	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
 	private Date eta;
 	/**
+	 * 到港日期
+	 */
+	@TableField(exist = false)
+	private List<String> etaList;
+	/**
 	 * 装货港 id
 	 */
 	@ApiModelProperty(value = "装货港 id")
@@ -1337,6 +1348,12 @@ public class Bills implements Serializable {
 	@ApiModelProperty(value = "订舱代理英文名称")
 	private String bookingAgentEnName;
 
+	/**
+	 * 数据修改字符串
+	 */
+	@ApiModelProperty(value = "数据修改字符串")
+	private String charData;
+
 
 	/**
 	 * 预配箱型箱量

+ 132 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/finance/fee/entity/FeeCenter.java

@@ -643,5 +643,137 @@ public class FeeCenter implements Serializable {
 	@ApiModelProperty(value = "MB/L 付款地点")
 	private String payplace;
 
+	/**
+	 * 发票 Id
+	 */
+	@ApiModelProperty(value = "发票 Id")
+	private Long invoiceBillId;
+
+	/**
+	 * 发票单据编号
+	 */
+	@ApiModelProperty(value = "发票单据编号")
+	private String invoiceBillNo;
+
+	/**
+	 * 发票号
+	 */
+	@ApiModelProperty(value = "发票号")
+	private String invoiceNo;
+
+	/**
+	 * 发票日期
+	 */
+	@ApiModelProperty(value = "发票日期")
+	private Date invoiceDate;
+
+	/**
+	 *发票状态 0 = 未开 9=已开 2 待开 3 不开
+	 */
+	@ApiModelProperty(value = "发票状态 0 = 未开 9=已开 2 待开 3 不开")
+	private Integer invoiceStatus;
+
+	/**
+	 * 发票币种
+	 */
+	@ApiModelProperty(value = "发票币种")
+	private String invoiceCurCode;
+
+	/**
+	 * 发票汇率
+	 */
+	@ApiModelProperty(value = "发票汇率")
+	private BigDecimal invoiceExrate;
+
+	/**
+	 * 本次发票金额
+	 */
+	@ApiModelProperty(value = "本次发票金额")
+	private BigDecimal invoiceAmount;
+
+	/**
+	 * 本次发票本币金额
+	 */
+	@ApiModelProperty(value = "本次发票本币金额")
+	private BigDecimal invoiceAmountLoc;
+
+	/**
+	 * 发票创建人 Id
+	 */
+	@ApiModelProperty(value = "发票创建人 Id")
+	private Long invoiceById;
+
+	/**
+	 * 发票创建人
+	 */
+	@ApiModelProperty(value = "发票创建人")
+	private String invoiceByName;
+
+	/**
+	 * 是否已签收(0 否 1是)
+	 */
+	@ApiModelProperty(value = "是否已签收(0 否 1是)")
+	private Integer isSignfor;
+
+	/**
+	 * 签收人 Id
+	 */
+	@ApiModelProperty(value = "签收人 Id")
+	private Integer signforId;
+
+	/**
+	 * 签收人
+	 */
+	@ApiModelProperty(value = "签收人")
+	private String signforName;
+
+	/**
+	 * 签收日期
+	 */
+	@ApiModelProperty(value = "签收日期")
+	private Date signforDate;
+
+	/**
+	 * 请核人 Id
+	 */
+	@ApiModelProperty(value = "请核人 Id")
+	private Long applyId;
+
+	/**
+	 * 请核人
+	 */
+	@ApiModelProperty(value = "请核人")
+	private String applyName;
+
+	/**
+	 * 请核时间
+	 */
+	@ApiModelProperty(value = "请核时间")
+	private Date applyTime;
+
+	/**
+	 * 审核人 Id
+	 */
+	@ApiModelProperty(value = "审核人 Id")
+	private Long approverId;
+
+	/**
+	 * 审核人
+	 */
+	@ApiModelProperty(value = "审核人")
+	private String approverName;
+
+	/**
+	 * 审核时间
+	 */
+	@ApiModelProperty(value = "审核时间")
+	private Date approveTime;
+
+	/**
+	 * 审核状态 0 新建费用 1 已请核 2 审核中 3 驳回 4 通过
+	 */
+	@ApiModelProperty(value = "审核状态 0 新建费用 1 已请核 2 审核中 3 驳回 4 通过")
+	private String auditStatus;
+
 
 }

+ 67 - 108
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/feign/DeliveryClient.java

@@ -27,6 +27,7 @@ import springfox.documentation.annotations.ApiIgnore;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 @NonDS
 @ApiIgnore()
@@ -201,121 +202,79 @@ public class DeliveryClient implements IDeliveryClient {
 			deliveryNew = delivery;
 		}
 		if (ObjectUtils.isNotNull(order.getOrderItemsList()) && order.getOrderItemsList().size() > 0) {
+			LambdaQueryWrapper<DeliveryItems> itemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
+			itemsLambdaQueryWrapper.eq(DeliveryItems::getIsDeleted, 0)
+				.eq(DeliveryItems::getTenantId, AuthUtil.getTenantId())
+				.eq(DeliveryItems::getPid, deliveryNew.getId());
+			List<DeliveryItems> deliveryItemsList1 = deliveryItemsService.list(itemsLambdaQueryWrapper);
+			if (deliveryItemsList1.size() > 0) {
+				deliveryItemsService.removeByIds(deliveryItemsList1.stream().map(DeliveryItems::getId).collect(Collectors.toList()));
+			}
 			for (OrderItems orderItems : order.getOrderItemsList()) {
-				LambdaQueryWrapper<DeliveryItems> itemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
-				itemsLambdaQueryWrapper.eq(DeliveryItems::getIsDeleted, 0)
-					.eq(DeliveryItems::getTenantId, AuthUtil.getTenantId())
-					.eq(DeliveryItems::getSrcId, orderItems.getId())
-					.eq(DeliveryItems::getSrcOrderNo, order.getOrderNo())
-					.eq(DeliveryItems::getOrgOrderNo, order.getSysNo());
-				DeliveryItems deliveryItems1 = deliveryItemsService.getOne(itemsLambdaQueryWrapper);
-				if (ObjectUtils.isNotNull(deliveryItems1)) {
-					deliveryItems1.setItemId(orderItems.getItemId());//货物
-					deliveryItems1.setPriceCategory(orderItems.getPriceCategory());//商品类别
-					deliveryItems1.setProductDesc(orderItems.getItemDescription());//产品描述
-					deliveryItems1.setSpecificationAndModel(orderItems.getItemType());//产品型号
-					deliveryItems1.setPriceCategoryNames(orderItems.getPriceCategory());//商品类别名称
-					deliveryItems1.setItemProp(orderItems.getItemProp());//产品属性
-					deliveryItems1.setPackageRemarks(orderItems.getPartsColourName());//包装要求
-					deliveryItems1.setActualQuantity(orderItems.getOrderQuantity());//数量
-					deliveryItems1.setPrice(orderItems.getPrice());//单价
-					deliveryItems1.setPurchaseAmount(orderItems.getAmount());//销售金额
-					deliveryItems1.setContractAmount(orderItems.getAmount());//销售金额
-					deliveryItems1.setPurchaseTotalAmount(orderItems.getAmount());//采购总价
-					deliveryItems1.setPurchaseQuantity(orderItems.getOrderQuantity());//采购数量
-					deliveryItems1.setUnit(orderItems.getUnit());//计量单位
-					deliveryItems1.setTaxRate(orderItems.getTaxRate());//税率
-					deliveryItems1.setCurrency(order.getCurrency());//币别
-					deliveryItems1.setExRate(order.getExchangeRate());//汇率
-					deliveryItems1.setGoodType(0);//默认0为商品信息 1为赠品信息
-					deliveryItems1.setEname(orderItems.getEname());
-					deliveryItems1.setRemarks(orderItems.getRemarks());
-//					deliveryItemsService.updateById(deliveryItems1);
-					deliveryItemsList.add(deliveryItems1);
-				} else {
-					DeliveryItems deliveryItems = new DeliveryItems();
-					deliveryItems.setPid(deliveryNew.getId());
-					deliveryItems.setSort(1);
-					deliveryItems.setSrcOrderNo(order.getOrderNo());//来源订单号
-					deliveryItems.setOrgOrderNo(order.getSysNo());//原始订单号
-					deliveryItems.setSrcId(orderItems.getId());//来源id
-					deliveryItems.setItemId(orderItems.getItemId());//货物
-					deliveryItems.setPriceCategory(orderItems.getPriceCategory());//商品类别
-					deliveryItems.setProductDesc(orderItems.getItemDescription());//产品描述
-					deliveryItems.setSpecificationAndModel(orderItems.getItemType());//产品型号
-					deliveryItems.setPriceCategoryNames(orderItems.getPriceCategory());//商品类别名称
-					deliveryItems.setItemProp(orderItems.getItemProp());//产品属性
-					deliveryItems.setPackageRemarks(orderItems.getPartsColourName());//包装要求
-					deliveryItems.setActualQuantity(orderItems.getOrderQuantity());//数量
-					deliveryItems.setPrice(orderItems.getPrice());//单价
-					deliveryItems.setPurchaseAmount(orderItems.getAmount());//采购金额
-					deliveryItems.setPurchaseTotalAmount(orderItems.getAmount());//采购总价
-					deliveryItems.setPurchaseQuantity(orderItems.getOrderQuantity());//采购数量
-					deliveryItems.setUnit(orderItems.getUnit());//计量单位
-					deliveryItems.setTaxRate(orderItems.getTaxRate());//税率
-					deliveryItems.setCurrency(order.getCurrency());//币别
-					deliveryItems.setExRate(order.getExchangeRate());//汇率
-					deliveryItems.setGoodType(0);//默认0为商品信息 1为赠品信息
-					deliveryItems.setCreateUser(order.getDocumenterId());
-					deliveryItems.setCreateTime(new Date());
-					deliveryItems.setTenantId(SecureUtil.getTenantId());
-					deliveryItems.setEname(orderItems.getEname());
-					deliveryItems.setRemarks(orderItems.getRemarks());
-//					deliveryItemsService.save(deliveryItems);
-					deliveryItemsList.add(deliveryItems);
-				}
+				DeliveryItems deliveryItems = new DeliveryItems();
+				deliveryItems.setPid(deliveryNew.getId());
+				deliveryItems.setSort(1);
+				deliveryItems.setSrcOrderNo(order.getOrderNo());//来源订单号
+				deliveryItems.setOrgOrderNo(order.getSysNo());//原始订单号
+				deliveryItems.setSrcId(orderItems.getId());//来源id
+				deliveryItems.setItemId(orderItems.getItemId());//货物
+				deliveryItems.setPriceCategory(orderItems.getPriceCategory());//商品类别
+				deliveryItems.setProductDesc(orderItems.getItemDescription());//产品描述
+				deliveryItems.setSpecificationAndModel(orderItems.getItemType());//产品型号
+				deliveryItems.setPriceCategoryNames(orderItems.getPriceCategory());//商品类别名称
+				deliveryItems.setItemProp(orderItems.getItemProp());//产品属性
+				deliveryItems.setPackageRemarks(orderItems.getPartsColourName());//包装要求
+				deliveryItems.setActualQuantity(orderItems.getOrderQuantity());//数量
+				deliveryItems.setPrice(orderItems.getPrice());//单价
+				deliveryItems.setPurchaseAmount(orderItems.getAmount());//采购金额
+				deliveryItems.setPurchaseTotalAmount(orderItems.getAmount());//采购总价
+				deliveryItems.setPurchaseQuantity(orderItems.getOrderQuantity());//采购数量
+				deliveryItems.setUnit(orderItems.getUnit());//计量单位
+				deliveryItems.setTaxRate(orderItems.getTaxRate());//税率
+				deliveryItems.setCurrency(order.getCurrency());//币别
+				deliveryItems.setExRate(order.getExchangeRate());//汇率
+				deliveryItems.setGoodType(0);//默认0为商品信息 1为赠品信息
+				deliveryItems.setCreateUser(order.getDocumenterId());
+				deliveryItems.setCreateTime(new Date());
+				deliveryItems.setTenantId(SecureUtil.getTenantId());
+				deliveryItems.setEname(orderItems.getEname());
+				deliveryItems.setRemarks(orderItems.getRemarks());
+				deliveryItemsList.add(deliveryItems);
 			}
 			if (deliveryItemsList.size() > 0) {
 				deliveryItemsService.saveOrUpdateBatch(deliveryItemsList);
 			}
 			if (ObjectUtils.isNotNull(order.getOrderFeesList()) && order.getOrderFeesList().size() > 0) {
+				LambdaQueryWrapper<DeliveryFees> feesLambdaQueryWrapper = new LambdaQueryWrapper<>();
+				feesLambdaQueryWrapper.eq(DeliveryFees::getIsDeleted, 0)
+					.eq(DeliveryFees::getTenantId, AuthUtil.getTenantId())
+					.eq(DeliveryFees::getPid, deliveryNew.getId());
+				List<DeliveryFees> deliveryFees1 = feesService.list(feesLambdaQueryWrapper);
+				if (deliveryFees1.size() > 0) {
+					feesService.removeByIds(deliveryFees1.stream().map(DeliveryFees::getId).collect(Collectors.toList()));
+				}
 				for (OrderFees orderFees : order.getOrderFeesList()) {
-					LambdaQueryWrapper<DeliveryFees> itemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
-					itemsLambdaQueryWrapper.eq(DeliveryFees::getIsDeleted, 0)
-						.eq(DeliveryFees::getTenantId, AuthUtil.getTenantId())
-						.eq(DeliveryFees::getSrcId, orderFees.getId())
-						.eq(DeliveryFees::getSrcOrderNo, order.getOrderNo());
-					DeliveryFees deliveryFees1 = feesService.getOne(itemsLambdaQueryWrapper);
-					if (ObjectUtils.isNotNull(deliveryFees1)) {
-						deliveryFees1.setSrcId(orderFees.getId());//来源id
-						deliveryFees1.setItemId(orderFees.getItemId());//费用名称
-						deliveryFees1.setCorpId(orderFees.getCorpId());//客户
-						deliveryFees1.setQuantity(orderFees.getQuantity());//数量
-						deliveryFees1.setUnit(orderFees.getUnit());//计价单位
-						deliveryFees1.setPrice(orderFees.getPrice());//单价
-						deliveryFees1.setAmount(orderFees.getAmount());//金额
-						deliveryFees1.setCurrency(orderFees.getCurrency());//币别
-						deliveryFees1.setExchangeRate(orderFees.getExchangeRate());//汇率
-						deliveryFees1.setTaxRate(orderFees.getTaxRate());//税率
-						deliveryFees1.setSettlmentAmount(orderFees.getSettlmentAmount());//结算金额
-						deliveryFees1.setRefundSettlmentAmount(orderFees.getRefundSettlmentAmount());//退费金额
-						deliveryFees1.setFeesType(orderFees.getFeesType());//类型
-//						feesService.updateById(deliveryFees1);
-						deliveryFeesList.add(deliveryFees1);
-					} else {
-						DeliveryFees deliveryFees = new DeliveryFees();
-						deliveryFees.setPid(deliveryNew.getId());
-						deliveryFees.setSort(1);
-						deliveryFees.setSrcOrderNo(order.getOrderNo());//来源订单号
-						deliveryFees.setSrcId(orderFees.getId());//来源id
-						deliveryFees.setItemId(orderFees.getItemId());//费用名称
-						deliveryFees.setCorpId(orderFees.getCorpId());//客户
-						deliveryFees.setQuantity(orderFees.getQuantity());//数量
-						deliveryFees.setUnit(orderFees.getUnit());//计价单位
-						deliveryFees.setPrice(orderFees.getPrice());//单价
-						deliveryFees.setAmount(orderFees.getAmount());//金额
-						deliveryFees.setCurrency(orderFees.getCurrency());//币别
-						deliveryFees.setExchangeRate(orderFees.getExchangeRate());//汇率
-						deliveryFees.setTaxRate(orderFees.getTaxRate());//税率
-						deliveryFees.setSettlmentAmount(orderFees.getSettlmentAmount());//结算金额
-						deliveryFees.setRefundSettlmentAmount(orderFees.getRefundSettlmentAmount());//退费金额
-						deliveryFees.setFeesType(orderFees.getFeesType());//类型
-						deliveryFees.setCreateUser(order.getDocumenterId());
-						deliveryFees.setCreateTime(new Date());
-						deliveryFees.setTenantId(SecureUtil.getTenantId());
-//						feesService.save(deliveryFees);
-						deliveryFeesList.add(deliveryFees);
-					}
+					DeliveryFees deliveryFees = new DeliveryFees();
+					deliveryFees.setPid(deliveryNew.getId());
+					deliveryFees.setSort(1);
+					deliveryFees.setSrcOrderNo(order.getOrderNo());//来源订单号
+					deliveryFees.setSrcId(orderFees.getId());//来源id
+					deliveryFees.setItemId(orderFees.getItemId());//费用名称
+					deliveryFees.setCorpId(orderFees.getCorpId());//客户
+					deliveryFees.setQuantity(orderFees.getQuantity());//数量
+					deliveryFees.setUnit(orderFees.getUnit());//计价单位
+					deliveryFees.setPrice(orderFees.getPrice());//单价
+					deliveryFees.setAmount(orderFees.getAmount());//金额
+					deliveryFees.setCurrency(orderFees.getCurrency());//币别
+					deliveryFees.setExchangeRate(orderFees.getExchangeRate());//汇率
+					deliveryFees.setTaxRate(orderFees.getTaxRate());//税率
+					deliveryFees.setSettlmentAmount(orderFees.getSettlmentAmount());//结算金额
+					deliveryFees.setRefundSettlmentAmount(orderFees.getRefundSettlmentAmount());//退费金额
+					deliveryFees.setFeesType(orderFees.getFeesType());//类型
+					deliveryFees.setCreateUser(order.getDocumenterId());
+					deliveryFees.setCreateTime(new Date());
+					deliveryFees.setTenantId(SecureUtil.getTenantId());
+					deliveryFeesList.add(deliveryFees);
 				}
 			}
 			if (deliveryFeesList.size() > 0) {

+ 126 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/controller/ReportsController.java

@@ -0,0 +1,126 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.basic.reports.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.los.basic.reports.entity.Reports;
+import org.springblade.los.basic.reports.vo.ReportsVO;
+import org.springblade.los.basic.reports.service.IReportsService;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 基础资料-报表管理 控制器
+ *
+ * @author BladeX
+ * @since 2023-10-30
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/reports")
+@Api(value = "基础资料-报表管理", tags = "基础资料-报表管理接口")
+public class ReportsController extends BladeController {
+
+	private final IReportsService reportsService;
+
+	/**
+	 * 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入reports")
+	public R<Reports> detail(Reports reports) {
+		Reports detail = reportsService.getOne(Condition.getQueryWrapper(reports));
+		return R.data(detail);
+	}
+
+	/**
+	 * 分页 基础资料-报表管理
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入reports")
+	public R<IPage<Reports>> list(Reports reports, Query query) {
+		IPage<Reports> pages = reportsService.page(Condition.getPage(query), Condition.getQueryWrapper(reports));
+		return R.data(pages);
+	}
+
+	/**
+	 * 自定义分页 基础资料-报表管理
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入reports")
+	public R<IPage<ReportsVO>> page(ReportsVO reports, Query query) {
+		IPage<ReportsVO> pages = reportsService.selectReportsPage(Condition.getPage(query), reports);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增 基础资料-报表管理
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入reports")
+	public R save(@Valid @RequestBody Reports reports) {
+		return R.status(reportsService.save(reports));
+	}
+
+	/**
+	 * 修改 基础资料-报表管理
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入reports")
+	public R update(@Valid @RequestBody Reports reports) {
+		return R.status(reportsService.updateById(reports));
+	}
+
+	/**
+	 * 新增或修改 基础资料-报表管理
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入reports")
+	public R submit(@Valid @RequestBody Reports reports) {
+		return reportsService.submit(reports);
+	}
+
+
+	/**
+	 * 删除 基础资料-报表管理
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 8)
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(reportsService.removeByIds(Func.toLongList(ids)));
+	}
+
+
+}

+ 42 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/mapper/ReportsMapper.java

@@ -0,0 +1,42 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.basic.reports.mapper;
+
+import org.springblade.los.basic.reports.entity.Reports;
+import org.springblade.los.basic.reports.vo.ReportsVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 基础资料-报表管理 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2023-10-30
+ */
+public interface ReportsMapper extends BaseMapper<Reports> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param reports
+	 * @return
+	 */
+	List<ReportsVO> selectReportsPage(IPage page, ReportsVO reports);
+
+}

+ 36 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/mapper/ReportsMapper.xml

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.los.basic.reports.mapper.ReportsMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="reportsResultMap" type="org.springblade.los.basic.reports.entity.Reports">
+        <id column="id" property="id"/>
+        <result column="branch_id" property="branchId"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_user_name" property="createUserName"/>
+        <result column="create_dept" property="createDept"/>
+        <result column="create_dept_name" property="createDeptName"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_user_name" property="updateUserName"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="business_type" property="businessType"/>
+        <result column="classify_code" property="classifyCode"/>
+        <result column="group_code" property="groupCode"/>
+        <result column="code" property="code"/>
+        <result column="cn_name" property="cnName"/>
+        <result column="en_name" property="enName"/>
+        <result column="content" property="content"/>
+        <result column="authorized_users" property="authorizedUsers"/>
+        <result column="version" property="version"/>
+        <result column="status" property="status"/>
+        <result column="remarks" property="remarks"/>
+        <result column="is_deleted" property="isDeleted"/>
+    </resultMap>
+
+
+    <select id="selectReportsPage" resultMap="reportsResultMap">
+        select * from los_b_reports where is_deleted = 0
+    </select>
+
+</mapper>

+ 48 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/IReportsService.java

@@ -0,0 +1,48 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.basic.reports.service;
+
+import org.springblade.core.tool.api.R;
+import org.springblade.los.basic.reports.entity.Reports;
+import org.springblade.los.basic.reports.vo.ReportsVO;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 基础资料-报表管理 服务类
+ *
+ * @author BladeX
+ * @since 2023-10-30
+ */
+public interface IReportsService extends IService<Reports> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param reports
+	 * @return
+	 */
+	IPage<ReportsVO> selectReportsPage(IPage<ReportsVO> page, ReportsVO reports);
+
+	/**
+	 * 新增或修改 基础资料-报表管理
+	 * @param reports
+	 * @return
+	 */
+	R submit(Reports reports);
+}

+ 75 - 0
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/impl/ReportsServiceImpl.java

@@ -0,0 +1,75 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.los.basic.reports.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.AllArgsConstructor;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.los.basic.reports.entity.Reports;
+import org.springblade.los.basic.reports.mapper.ReportsMapper;
+import org.springblade.los.basic.reports.service.IReportsService;
+import org.springblade.los.basic.reports.vo.ReportsVO;
+import org.springblade.system.feign.ISysClient;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 基础资料-报表管理 服务实现类
+ *
+ * @author BladeX
+ * @since 2023-10-30
+ */
+@Service
+@AllArgsConstructor
+public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> implements IReportsService {
+
+	private final ISysClient sysClient;
+
+	@Override
+	public IPage<ReportsVO> selectReportsPage(IPage<ReportsVO> page, ReportsVO reports) {
+		return page.setRecords(baseMapper.selectReportsPage(page, reports));
+	}
+
+	@Override
+	public R submit(Reports reports) {
+		if (reports.getId() == null) {
+			reports.setCreateTime(new Date());
+			reports.setCreateUser(AuthUtil.getUserId());
+			reports.setCreateUserName(AuthUtil.getUserName());
+			//获取部门ids对应中文名
+			if (ObjectUtils.isNotNull(AuthUtil.getDeptId())) {
+				reports.setCreateDept(AuthUtil.getDeptId());
+				R<List<String>> res = sysClient.getDeptNames(AuthUtil.getDeptId());
+				if (res.isSuccess() && ObjectUtils.isNotNull(res.getData())) {
+					reports.setCreateDeptName(String.join(",", res.getData()));
+				}
+			}
+		} else {
+			reports.setUpdateUser(AuthUtil.getUserId());
+			reports.setUpdateTime(new Date());
+			reports.setUpdateUserName(AuthUtil.getUserName());
+		}
+		this.saveOrUpdate(reports);
+		return R.data(reports);
+	}
+
+}

+ 3 - 3
blade-service/blade-los/src/main/java/org/springblade/los/basic/units/controller/BUnitsController.java

@@ -91,13 +91,13 @@ public class BUnitsController extends BladeController {
 	}
 
 	/**
-	 * 自定义分页 基础资料-计量单位
+	 *  基础资料-计量单位
 	 */
 	@GetMapping("/page")
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "分页", notes = "传入bUnits")
-	public R<IPage<BUnitsVO>> page(BUnitsVO bUnits, Query query) {
-		IPage<BUnitsVO> pages = bUnitsService.selectBUnitsPage(Condition.getPage(query), bUnits);
+	public R<List<BUnits>> page(BUnits bUnits) {
+		List<BUnits> pages = bUnitsService.selectList(bUnits);
 		return R.data(pages);
 	}
 

+ 15 - 5
blade-service/blade-los/src/main/java/org/springblade/los/basic/units/service/IBUnitsService.java

@@ -16,12 +16,12 @@
  */
 package org.springblade.los.basic.units.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.core.tool.api.R;
-import org.springblade.los.excel.BUnitsExcel;
 import org.springblade.los.basic.units.entity.BUnits;
 import org.springblade.los.basic.units.vo.BUnitsVO;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.los.excel.BUnitsExcel;
 
 import java.util.List;
 
@@ -44,15 +44,25 @@ public interface IBUnitsService extends IService<BUnits> {
 
 	/**
 	 * 新增或修改 基础资料-计量单位
+	 *
 	 * @param bUnits
 	 * @return
 	 */
-    R submit(BUnits bUnits);
+	R submit(BUnits bUnits);
 
 	/**
-	 *  导入 基础资料-计量单位
+	 * 导入 基础资料-计量单位
+	 *
 	 * @param excelList
 	 * @return
 	 */
 	R<List<BUnits>> importBUnits(List<BUnitsExcel> excelList);
+
+	/**
+	 * 列表
+	 *
+	 * @param bUnits
+	 * @return
+	 */
+	List<BUnits> selectList(BUnits bUnits);
 }

+ 41 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/units/service/impl/BUnitsServiceImpl.java

@@ -24,17 +24,22 @@ import lombok.AllArgsConstructor;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
-import org.springblade.los.excel.BUnitsExcel;
 import org.springblade.los.basic.units.entity.BUnits;
 import org.springblade.los.basic.units.mapper.UnitsMapper;
 import org.springblade.los.basic.units.service.IBUnitsService;
 import org.springblade.los.basic.units.vo.BUnitsVO;
+import org.springblade.los.business.sea.entity.Bills;
+import org.springblade.los.business.sea.entity.PreContainers;
+import org.springblade.los.business.sea.mapper.BillsMapper;
+import org.springblade.los.business.sea.mapper.PreContainersMapper;
+import org.springblade.los.excel.BUnitsExcel;
 import org.springblade.system.feign.ISysClient;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 基础资料-计量单位 服务实现类
@@ -49,6 +54,10 @@ public class BUnitsServiceImpl extends ServiceImpl<UnitsMapper, BUnits> implemen
 
 	private final ISysClient sysClient;
 
+	private final BillsMapper billsMapper;
+
+	private final PreContainersMapper preContainersMapper;
+
 	@Override
 	public IPage<BUnitsVO> selectBUnitsPage(IPage<BUnitsVO> page, BUnitsVO bUnits) {
 		return page.setRecords(baseMapper.selectBUnitsPage(page, bUnits));
@@ -113,4 +122,35 @@ public class BUnitsServiceImpl extends ServiceImpl<UnitsMapper, BUnits> implemen
 		return R.data(bUnitsList);
 	}
 
+	@Override
+	public List<BUnits> selectList(BUnits bUnits) {
+		List<BUnits> list = new ArrayList<>();
+		List<BUnits> bUnitsList = baseMapper.selectList(new LambdaQueryWrapper<BUnits>()
+			.eq(BUnits::getTenantId, AuthUtil.getTenantId())
+			.eq(BUnits::getIsDeleted, 0)
+			.eq(BUnits::getStatus, 0));
+		Bills bills = billsMapper.selectById(bUnits.getSrcBillId());
+		List<PreContainers> preContainersList = new ArrayList<>();
+		if (bills != null) {
+			preContainersList = preContainersMapper.selectList(new LambdaQueryWrapper<PreContainers>()
+				.eq(PreContainers::getTenantId, AuthUtil.getTenantId())
+				.eq(PreContainers::getIsDeleted, 0)
+				.eq(PreContainers::getPid, bills.getId()));
+		}
+		String boxType = "";
+		if (preContainersList.size() > 0) {
+			boxType = preContainersList.stream().map(PreContainers::getCntrTypeCode).distinct().collect(Collectors.joining());
+		}
+		for (BUnits item : bUnitsList) {
+			if ("箱量".equals(item.getQuantityRule())) {
+				if (bills != null && boxType.contains(item.getCode())) {
+					list.add(item);
+				}
+			} else {
+				list.add(item);
+			}
+		}
+		return list;
+	}
+
 }

+ 63 - 34
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/controller/BillsController.java

@@ -73,32 +73,46 @@ public class BillsController extends BladeController {
 		LambdaQueryWrapper<Bills> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(Bills::getIsDeleted, 0)
 			.eq(Bills::getTenantId, AuthUtil.getTenantId())
-			.eq(ObjectUtils.isNotNull(bills.getBillType()), Bills::getBillType, bills.getBillType())
-			.eq(ObjectUtils.isNotNull(bills.getBusinessType()), Bills::getBusinessType, bills.getBusinessType())
-			.eq(ObjectUtils.isNotNull(bills.getSeaType()), Bills::getSeaType, bills.getSeaType())
 			.and(i -> i.isNull(Bills::getMasterId).or()
 				.eq(Bills::getMasterId, 0))
-			.eq(ObjectUtils.isNotNull(bills.getBillStatus()), Bills::getBillStatus, bills.getBillStatus())
-			.eq(ObjectUtils.isNotNull(bills.getPlaceReceiptId()), Bills::getPlaceReceiptId, bills.getPlaceReceiptId())
-			.eq(ObjectUtils.isNotNull(bills.getPolId()), Bills::getPolId, bills.getPolId())
 			.like(ObjectUtils.isNotNull(bills.getBillNo()), Bills::getBillNo, bills.getBillNo())
-			.like(ObjectUtils.isNotNull(bills.getHblno()), Bills::getHblno, bills.getHblno())
 			.like(ObjectUtils.isNotNull(bills.getMblno()), Bills::getMblno, bills.getMblno())
-			.like(ObjectUtils.isNotNull(bills.getCreateUserName()), Bills::getCreateUserName, bills.getCreateUserName())
-			.and(ObjectUtils.isNotNull(bills.getPolCnName()), i -> i.like(Bills::getPolCnName, bills.getPolCnName()).or()
-				.like(Bills::getPolCode, bills.getPolCnName()).or().like(Bills::getPolEnName, bills.getPolCnName()))
+			.like(ObjectUtils.isNotNull(bills.getHblno()), Bills::getHblno, bills.getHblno())
+			.and(ObjectUtils.isNotNull(bills.getVesselCnName()), i -> i.like(Bills::getVesselCnName, bills.getVesselCnName()).or()
+				.like(Bills::getVesselEnName, bills.getVesselCnName()))
+			.like(ObjectUtils.isNotNull(bills.getVoyageNo()), Bills::getVoyageNo, bills.getVoyageNo())
 			.and(ObjectUtils.isNotNull(bills.getCorpCnName()), i -> i.like(Bills::getCorpCnName, bills.getCorpCnName()).or()
 				.like(Bills::getCorpEnName, bills.getCorpCnName()))
-			.and(ObjectUtils.isNotNull(bills.getPlaceReceiptName()), i -> i.like(Bills::getPlaceReceiptCode, bills.getPlaceReceiptName()).or()
-				.like(Bills::getPlaceReceiptName, bills.getPlaceReceiptName()))
-			.like(ObjectUtils.isNotNull(bills.getCorpArgreementNo()), Bills::getBillNo, bills.getBillNo())
-			.like(ObjectUtils.isNotNull(bills.getVoyageNo()), Bills::getBillNo, bills.getBillNo())
 			.and(ObjectUtils.isNotNull(bills.getCarrierCnName()), i -> i.like(Bills::getCarrierCnName, bills.getCarrierCnName()).or()
 				.like(Bills::getCarrierEnName, bills.getCarrierCnName()).or().like(Bills::getCarrierArgreementNo, bills.getCarrierCnName()))
+			.and(ObjectUtils.isNotNull(bills.getPodCnName()), i -> i.like(Bills::getPodCnName, bills.getPodCnName()).or()
+				.like(Bills::getPodEnName, bills.getPodCnName()).or().like(Bills::getPodCode, bills.getPodCnName()))
+			.and(ObjectUtils.isNotNull(bills.getLineCnName()), i -> i.like(Bills::getLineCnName, bills.getLineCnName()).or()
+				.like(Bills::getLineEnName, bills.getLineCnName()))
 			.and(ObjectUtils.isNotNull(bills.getCyCode()), i -> i.like(Bills::getCyCode, bills.getCyCode()).or()
 				.like(Bills::getCyCnName, bills.getCyCode()).or().like(Bills::getCyEnName, bills.getCyCode()))
-			.and(ObjectUtils.isNotNull(bills.getVesselCnName()), i -> i.like(Bills::getVesselCnName, bills.getVesselCnName()).or()
-				.like(Bills::getVesselEnName, bills.getVesselCnName()))
+			.eq(ObjectUtils.isNotNull(bills.getSrcType()), Bills::getSrcType, bills.getSrcType())
+			.and(ObjectUtils.isNotNull(bills.getSrcCnName()), i -> i.like(Bills::getSrcCnName, bills.getSrcCnName()).or()
+				.like(Bills::getSrcEnName, bills.getSrcCnName()))
+			.apply(ObjectUtils.isNotNull(bills.getCreateDeptName()), "find_in_set('" + bills.getCreateDeptName() + "',create_dept_name)");
+		if (ObjectUtils.isNotNull(bills.getEtdList()) && bills.getEtdList().size() > 0) {
+			lambdaQueryWrapper.lt(Bills::getEtd, bills.getEtdList().get(0));
+			lambdaQueryWrapper.gt(Bills::getEtd, bills.getEtdList().get(1));
+		}
+		if (ObjectUtils.isNotNull(bills.getEtaList()) && bills.getEtaList().size() > 0) {
+			lambdaQueryWrapper.lt(Bills::getEta, bills.getEtaList().get(0));
+			lambdaQueryWrapper.gt(Bills::getEta, bills.getEtaList().get(1));
+		}
+		lambdaQueryWrapper.and(ObjectUtils.isNotNull(bills.getBookingAgentCnName()), i -> i.like(Bills::getBookingAgentCnName, bills.getBookingAgentCnName()).or()
+			.like(Bills::getBookingAgentEnName, bills.getBookingAgentCnName()))
+			.eq(ObjectUtils.isNotNull(bills.getIssueType()), Bills::getIssueType, bills.getIssueType())
+			.and(ObjectUtils.isNotNull(bills.getHConsigneeCnName()), i -> i.like(Bills::getHConsigneeCnName, bills.getHConsigneeCnName()).or()
+				.like(Bills::getHConsigneeCode, bills.getHConsigneeCnName()).or().like(Bills::getHConsigneeEnName, bills.getHConsigneeCnName()))
+
+			.eq(ObjectUtils.isNotNull(bills.getBillType()), Bills::getBillType, bills.getBillType())
+			.eq(ObjectUtils.isNotNull(bills.getBusinessType()), Bills::getBusinessType, bills.getBusinessType())
+			.eq(ObjectUtils.isNotNull(bills.getSeaType()), Bills::getSeaType, bills.getSeaType())
+			.eq(ObjectUtils.isNotNull(bills.getBillStatus()), Bills::getBillStatus, bills.getBillStatus())
 			.orderByDesc(Bills::getCreateTime);
 		IPage<Bills> pages = billsService.page(Condition.getPage(query), lambdaQueryWrapper);
 		return R.data(pages);
@@ -114,32 +128,47 @@ public class BillsController extends BladeController {
 		LambdaQueryWrapper<Bills> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(Bills::getIsDeleted, 0)
 			.eq(Bills::getTenantId, AuthUtil.getTenantId())
-			.eq(ObjectUtils.isNotNull(bills.getBillType()), Bills::getBillType, bills.getBillType())
-			.eq(ObjectUtils.isNotNull(bills.getBusinessType()), Bills::getBusinessType, bills.getBusinessType())
-			.eq(ObjectUtils.isNotNull(bills.getSeaType()), Bills::getSeaType, bills.getSeaType())
-			.eq(ObjectUtils.isNotNull(bills.getMasterBillNo()), Bills::getMasterBillNo, bills.getMasterBillNo())
-			.eq(ObjectUtils.isNotNull(bills.getMasterId()), Bills::getMasterId, bills.getMasterId())
-			.eq(ObjectUtils.isNotNull(bills.getBillStatus()), Bills::getBillStatus, bills.getBillStatus())
-			.eq(ObjectUtils.isNotNull(bills.getPlaceReceiptId()), Bills::getPlaceReceiptId, bills.getPlaceReceiptId())
-			.eq(ObjectUtils.isNotNull(bills.getPolId()), Bills::getPolId, bills.getPolId())
 			.like(ObjectUtils.isNotNull(bills.getBillNo()), Bills::getBillNo, bills.getBillNo())
-			.like(ObjectUtils.isNotNull(bills.getHblno()), Bills::getHblno, bills.getHblno())
 			.like(ObjectUtils.isNotNull(bills.getMblno()), Bills::getMblno, bills.getMblno())
-			.like(ObjectUtils.isNotNull(bills.getCreateUserName()), Bills::getCreateUserName, bills.getCreateUserName())
-			.and(ObjectUtils.isNotNull(bills.getPolCnName()), i -> i.like(Bills::getPolCnName, bills.getPolCnName()).or()
-				.like(Bills::getPolCode, bills.getPolCnName()).or().like(Bills::getPolEnName, bills.getPolCnName()))
+			.like(ObjectUtils.isNotNull(bills.getHblno()), Bills::getHblno, bills.getHblno())
+			.and(ObjectUtils.isNotNull(bills.getVesselCnName()), i -> i.like(Bills::getVesselCnName, bills.getVesselCnName()).or()
+				.like(Bills::getVesselEnName, bills.getVesselCnName()))
+			.like(ObjectUtils.isNotNull(bills.getVoyageNo()), Bills::getVoyageNo, bills.getVoyageNo())
 			.and(ObjectUtils.isNotNull(bills.getCorpCnName()), i -> i.like(Bills::getCorpCnName, bills.getCorpCnName()).or()
 				.like(Bills::getCorpEnName, bills.getCorpCnName()))
-			.and(ObjectUtils.isNotNull(bills.getPlaceReceiptName()), i -> i.like(Bills::getPlaceReceiptCode, bills.getPlaceReceiptName()).or()
-				.like(Bills::getPlaceReceiptName, bills.getPlaceReceiptName()))
-			.like(ObjectUtils.isNotNull(bills.getCorpArgreementNo()), Bills::getBillNo, bills.getBillNo())
-			.like(ObjectUtils.isNotNull(bills.getVoyageNo()), Bills::getBillNo, bills.getBillNo())
 			.and(ObjectUtils.isNotNull(bills.getCarrierCnName()), i -> i.like(Bills::getCarrierCnName, bills.getCarrierCnName()).or()
 				.like(Bills::getCarrierEnName, bills.getCarrierCnName()).or().like(Bills::getCarrierArgreementNo, bills.getCarrierCnName()))
+			.and(ObjectUtils.isNotNull(bills.getPodCnName()), i -> i.like(Bills::getPodCnName, bills.getPodCnName()).or()
+				.like(Bills::getPodEnName, bills.getPodCnName()).or().like(Bills::getPodCode, bills.getPodCnName()))
+			.and(ObjectUtils.isNotNull(bills.getLineCnName()), i -> i.like(Bills::getLineCnName, bills.getLineCnName()).or()
+				.like(Bills::getLineEnName, bills.getLineCnName()))
 			.and(ObjectUtils.isNotNull(bills.getCyCode()), i -> i.like(Bills::getCyCode, bills.getCyCode()).or()
 				.like(Bills::getCyCnName, bills.getCyCode()).or().like(Bills::getCyEnName, bills.getCyCode()))
-			.and(ObjectUtils.isNotNull(bills.getVesselCnName()), i -> i.like(Bills::getVesselCnName, bills.getVesselCnName()).or()
-				.like(Bills::getVesselEnName, bills.getVesselCnName()))
+			.eq(ObjectUtils.isNotNull(bills.getSrcType()), Bills::getSrcType, bills.getSrcType())
+			.and(ObjectUtils.isNotNull(bills.getSrcCnName()), i -> i.like(Bills::getSrcCnName, bills.getSrcCnName()).or()
+				.like(Bills::getSrcEnName, bills.getSrcCnName()))
+			.apply(ObjectUtils.isNotNull(bills.getCreateDeptName()), "find_in_set('" + bills.getCreateDeptName() + "',create_dept_name)");
+		if (ObjectUtils.isNotNull(bills.getEtdList()) && bills.getEtdList().size() > 0) {
+			lambdaQueryWrapper.lt(Bills::getEtd, bills.getEtdList().get(0));
+			lambdaQueryWrapper.gt(Bills::getEtd, bills.getEtdList().get(1));
+		}
+		if (ObjectUtils.isNotNull(bills.getEtaList()) && bills.getEtaList().size() > 0) {
+			lambdaQueryWrapper.lt(Bills::getEta, bills.getEtaList().get(0));
+			lambdaQueryWrapper.gt(Bills::getEta, bills.getEtaList().get(1));
+		}
+		lambdaQueryWrapper.and(ObjectUtils.isNotNull(bills.getBookingAgentCnName()), i -> i.like(Bills::getBookingAgentCnName, bills.getBookingAgentCnName()).or()
+			.like(Bills::getBookingAgentEnName, bills.getBookingAgentCnName()))
+			.eq(ObjectUtils.isNotNull(bills.getIssueType()), Bills::getIssueType, bills.getIssueType())
+			.and(ObjectUtils.isNotNull(bills.getHConsigneeCnName()), i -> i.like(Bills::getHConsigneeCnName, bills.getHConsigneeCnName()).or()
+				.like(Bills::getHConsigneeCode, bills.getHConsigneeCnName()).or().like(Bills::getHConsigneeEnName, bills.getHConsigneeCnName()))
+
+			.eq(ObjectUtils.isNotNull(bills.getBillType()), Bills::getBillType, bills.getBillType())
+			.eq(ObjectUtils.isNotNull(bills.getBusinessType()), Bills::getBusinessType, bills.getBusinessType())
+			.eq(ObjectUtils.isNotNull(bills.getSeaType()), Bills::getSeaType, bills.getSeaType())
+
+			.eq(ObjectUtils.isNotNull(bills.getMasterBillNo()), Bills::getMasterBillNo, bills.getMasterBillNo())
+			.eq(ObjectUtils.isNotNull(bills.getMasterId()), Bills::getMasterId, bills.getMasterId())
+			.eq(ObjectUtils.isNotNull(bills.getBillStatus()), Bills::getBillStatus, bills.getBillStatus())
 			.orderByDesc(Bills::getCreateTime);
 		List<Bills> pages = billsService.list(lambdaQueryWrapper);
 		return R.data(pages);

+ 1 - 0
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/mapper/BillsMapper.xml

@@ -250,6 +250,7 @@
         <result column="booking_agent_id" property="bookingAgentId"/>
         <result column="booking_agent_cn_name" property="bookingAgentCnName"/>
         <result column="booking_agent_en_name" property="bookingAgentEnName"/>
+        <result column="char_data" property="charData"/>
     </resultMap>
 
 

+ 35 - 0
blade-service/blade-los/src/main/java/org/springblade/los/business/sea/service/impl/BillsServiceImpl.java

@@ -48,6 +48,7 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * 业务-海运进出口 服务实现类
@@ -97,7 +98,15 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				deptName = String.join(",", res.getData());
 			}
 		}
+		List<Bills> count = baseMapper.selectList(new LambdaQueryWrapper<Bills>()
+			.eq(Bills::getCreateDept, AuthUtil.getDeptId())
+			.eq(Bills::getTenantId, AuthUtil.getTenantId())
+			.eq(Bills::getIsDeleted, 0)
+			.eq(Bills::getMblno, bills.getMblno()));
 		if (bills.getId() == null) {
+			if (count.size() > 0) {
+				throw new RuntimeException("提单号不允许重复");
+			}
 			BusinessBillNo businessBillNo = new BusinessBillNo();
 			businessBillNo.setBusinessTypeId(bills.getBusinessTypeId());
 			businessBillNo.setCode(bills.getBillNoFormat());
@@ -116,6 +125,10 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 				bills.setCreateDeptName(deptName);
 			}
 		} else {
+			List<Long> ids = count.stream().map(Bills::getId).distinct().collect(Collectors.toList());
+			if (count.size() > 0 && !ids.contains(bills.getId())) {
+				throw new RuntimeException("提单号不允许重复");
+			}
 			bills.setUpdateUser(AuthUtil.getUserId());
 			bills.setUpdateTime(new Date());
 			bills.setUpdateUserName(AuthUtil.getUserName());
@@ -165,6 +178,22 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 		bills.setQuantityV48(GP48);
 		/**-------------箱型箱量计算---------*/
 
+		//判断是否修改
+		String charData = bills.getBusinessType() + bills.getBillType() + bills.getBillNo()
+			+ bills.getBillDate() + bills.getCorpId() + bills.getCorpCnName() + bills.getCorpEnName()
+			+ bills.getLineId() + bills.getLineCnName() + bills.getLineEnName() + bills.getVesselId()
+			+ bills.getVesselCnName() + bills.getVesselEnName() + bills.getVoyageNo() + bills.getMblno()
+			+ bills.getEtd() + bills.getEta() + bills.getPolCnName() + bills.getPolId() + bills.getPolEnName()
+			+ bills.getPolCode() + bills.getPodCode() + bills.getPodId() + bills.getPodCnName() + bills.getPodCnName()
+			+ bills + bills.getMPaymode();
+		if (ObjectUtils.isNotNull(bills.getCharData())) {
+			if (!charData.equals(bills.getCharData())) {
+				bills.setCharData(charData);
+			}
+		} else {
+			bills.setCharData(charData);
+		}
+
 		/**-------------费用计算---------*/
 		BigDecimal amountDr = new BigDecimal("0.00");
 		BigDecimal amountCr = new BigDecimal("0.00");
@@ -186,6 +215,9 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 					amountCrUsd = amountCrUsd.add(usd);
 				}
 			}
+			if (!charData.equals(bills.getCharData())) {
+				feeCenterService.saveOrUpdateBatch(bills.getFeeCenterListC());
+			}
 		}
 		if (ObjectUtils.isNotNull(bills.getFeeCenterListD())) {
 			for (FeeCenter item : bills.getFeeCenterListD()) {
@@ -198,6 +230,9 @@ public class BillsServiceImpl extends ServiceImpl<BillsMapper, Bills> implements
 					amountDrUsd = amountCrUsd.add(usd);
 				}
 			}
+			if (!charData.equals(bills.getCharData())) {
+				feeCenterService.saveOrUpdateBatch(bills.getFeeCenterListD());
+			}
 		}
 
 		//主单应加上分单费用

+ 22 - 0
blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/mapper/FeeCenterMapper.xml

@@ -118,6 +118,28 @@
         <result column="status" property="status"/>
         <result column="remarks" property="remarks"/>
         <result column="payplace" property="payplace"/>
+        <result column="invoice_bill_id" property="invoiceBillId"/>
+        <result column="invoice_bill_no" property="invoiceBillNo"/>
+        <result column="invoice_no" property="invoiceNo"/>
+        <result column="invoice_date" property="invoiceDate"/>
+        <result column="invoice_status" property="invoiceStatus"/>
+        <result column="invoice_cur_code" property="invoiceCurCode"/>
+        <result column="invoice_exrate" property="invoiceExrate"/>
+        <result column="invoice_amount" property="invoiceAmount"/>
+        <result column="invoice_amount_loc" property="invoiceAmountLoc"/>
+        <result column="invoice_by_id" property="invoiceById"/>
+        <result column="invoice_by_name" property="invoiceByName"/>
+        <result column="is_signfor" property="isSignfor"/>
+        <result column="signfor_id" property="signforId"/>
+        <result column="signfor_name" property="signforName"/>
+        <result column="signfor_date" property="signforDate"/>
+        <result column="apply_id" property="applyId"/>
+        <result column="apply_name" property="applyName"/>
+        <result column="apply_time" property="applyTime"/>
+        <result column="approver_id" property="approverId"/>
+        <result column="approver_name" property="approverName"/>
+        <result column="approve_time" property="approveTime"/>
+        <result column="audit_status" property="auditStatus"/>
     </resultMap>
 
 

+ 3 - 7
blade-service/blade-los/src/main/java/org/springblade/los/finance/fee/service/impl/FeeCenterServiceImpl.java

@@ -115,19 +115,15 @@ public class FeeCenterServiceImpl extends ServiceImpl<FeeCenterMapper, FeeCenter
 		if (bills == null) {
 			throw new RuntimeException("未找到主表信息");
 		}
-		List<FeesTemplateItems> feesTemplateItemsList = feesTemplateItemsMapper.selectList(new LambdaQueryWrapper<FeesTemplateItems>()
-			.eq(FeesTemplateItems::getTenantId, AuthUtil.getTenantId())
-			.eq(FeesTemplateItems::getIsDeleted, 0)
-			.eq(FeesTemplateItems::getPid, losBFeesTemplate.getId()));
-		if (feesTemplateItemsList.size() > 0) {
-			String code = feesTemplateItemsList.stream().map(FeesTemplateItems::getCurCode).distinct().collect(Collectors.joining());
+		if (losBFeesTemplate.getFeesTemplateItemsList().size() > 0) {
+			String code = losBFeesTemplate.getFeesTemplateItemsList().stream().map(FeesTemplateItems::getCurCode).distinct().collect(Collectors.joining());
 			List<BCurrency> bCurrency = currencyMapper.selectList(new LambdaQueryWrapper<BCurrency>()
 				.eq(BCurrency::getTenantId, AuthUtil.getTenantId())
 				.eq(BCurrency::getIsDeleted, 0)
 				.apply("find_in_set(code,'" + code + "')")
 				.eq(BCurrency::getStatus, 0));
 			int count = 1;
-			for (FeesTemplateItems items : feesTemplateItemsList) {
+			for (FeesTemplateItems items : losBFeesTemplate.getFeesTemplateItemsList()) {
 				FeeCenter feeCenter = new FeeCenter();
 				feeCenter.setPid(bills.getId());
 				feeCenter.setBillNo(bills.getBillNo());

+ 6 - 6
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderItemsServiceImpl.java

@@ -114,7 +114,7 @@ public class OrderItemsServiceImpl extends ServiceImpl<OrderItemsMapper, OrderIt
 	}
 
 	@Override
-	public R<Map<String, Object>> importUser(List<OrderItemsExcel> data, Boolean isCovered,Long warehouseId) {
+	public R<Map<String, Object>> importUser(List<OrderItemsExcel> data, Boolean isCovered, Long warehouseId) {
 		Map<String, Object> map = new HashMap<>();
 		List<OrderItems> list = new ArrayList<>();//导入成功
 		List<String> lose = new ArrayList<>();//导入失败的
@@ -143,7 +143,7 @@ public class OrderItemsServiceImpl extends ServiceImpl<OrderItemsMapper, OrderIt
 				stockGoods.setItemType(goods.getData().getTypeno());
 				stockGoods.setWarehouseId(warehouseId);
 				List<StockGoods> stock = stockGoodsClient.selectStockList(stockGoods);
-				if (stock != null && stock.size()>0) {
+				if (stock != null && stock.size() > 0) {
 					orderItems.setStorageQuantity(stock.get(0).getSurplusRouteQuantity());
 					orderItems.setStorageId(stock.get(0).getStorageId());
 					orderItems.setStorageName(stock.get(0).getStockName());
@@ -292,12 +292,12 @@ public class OrderItemsServiceImpl extends ServiceImpl<OrderItemsMapper, OrderIt
 	public List<OrderItems> getOrderItems(Order order) {
 		//判断订单明细的ids是否有值,有则查对应的订单明细 无则查所有的明细
 		List<OrderItems> orderItemsList = new ArrayList<>();
-		if (CollectionUtils.isEmpty(order.getOrderItemIds())) {
+		if (ObjectUtils.isNull(order.getOrderItemIds()) || order.getOrderItemIds().size() == 0) {
 			orderItemsList = baseMapper.selectList(new QueryWrapper<OrderItems>().eq("pid", order.getId())
-				.eq("tenant_id", SecureUtil.getTenantId()).eq("is_deleted", 0));
+				.eq("tenant_id", AuthUtil.getTenantId()).eq("is_deleted", 0));
 		} else {
 			orderItemsList = baseMapper.selectList(new QueryWrapper<OrderItems>().eq("pid", order.getId())
-				.eq("tenant_id", SecureUtil.getTenantId()).eq("is_deleted", 0).in("id", order.getOrderItemIds()));
+				.eq("tenant_id", AuthUtil.getTenantId()).eq("is_deleted", 0).in("id", order.getOrderItemIds()));
 		}
 		String itemIds = "";//商品id拼接
 		String updateUserIds = "";//修改人id拼接
@@ -346,7 +346,7 @@ public class OrderItemsServiceImpl extends ServiceImpl<OrderItemsMapper, OrderIt
 						item.setCode(goodsDescList.stream().filter(e -> e.getId().equals(item.getItemId())).findFirst().get().getCode());
 						item.setCname(goodsDescList.stream().filter(e -> e.getId().equals(item.getItemId())).findFirst().get().getCname());
 						item.setTypeno(goodsDescList.stream().filter(e -> e.getId().equals(item.getItemId())).findFirst().get().getTypeno());
-						if (!"577435".equals(AuthUtil.getTenantId())){
+						if (!"577435".equals(AuthUtil.getTenantId())) {
 							item.setEname(goodsDescList.stream().filter(e -> e.getId().equals(item.getItemId())).findFirst().get().getEname());
 						}
 						item.setBrandItem(goodsDescList.stream().filter(e -> e.getId().equals(item.getItemId())).findFirst().get().getBrandItem());

+ 1 - 1
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java

@@ -5673,7 +5673,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 		sendMessage.setUrl("/exportTrade/invoice/index");
 		sendMessage.setPageLabel(order.getPageLabel());
 		sendMessage.setPageStatus(order.getPageStatus());
-		sendMessage.setMessageBody("您有销售订单" + orderMessage.getSysNo() + "待处理,请查看");
+		sendMessage.setMessageBody("您有销售订单" + orderMessage.getOrderNo() + "待处理,请查看");
 		R save = messageClient.save(sendMessage);
 		if (!save.isSuccess()) {
 			throw new SecurityException("发送消息失败");

+ 2 - 2
blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java

@@ -95,9 +95,9 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
 				accountNumber = JsonUtil.parse(decrypt, Tenant.class).getAccountNumber();
 			}
 			Integer tenantCount = baseMapper.selectCount(Wrappers.<User>query().lambda().eq(User::getTenantId, tenantId));
-			if (accountNumber != null && accountNumber > 0 && accountNumber <= tenantCount) {
+			/*if (accountNumber != null && accountNumber > 0 && accountNumber <= tenantCount) {
 				throw new ServiceException("当前租户已到最大账号额度!");
-			}
+			}*/
 		}
 		if (Func.isNotEmpty(user.getPassword())) {
 			user.setPassword(DigestUtil.encrypt(user.getPassword()));