|
@@ -24,13 +24,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.jeecg.common.aspect.annotation.PermissionData;
|
|
|
import org.jeecg.common.util.DateUtils;
|
|
|
+import org.jeecg.modules.baseCode.entity.BaseProductArchive;
|
|
|
import org.jeecg.modules.baseCode.entity.BaseProductClass;
|
|
|
import org.jeecg.modules.baseCode.entity.BaseShipArchive;
|
|
|
import org.jeecg.modules.baseCode.entity.BaseTemplates;
|
|
|
-import org.jeecg.modules.baseCode.service.IBaseProductClassService;
|
|
|
-import org.jeecg.modules.baseCode.service.IBaseShipArchiveService;
|
|
|
-import org.jeecg.modules.baseCode.service.IBaseTemplatesService;
|
|
|
-import org.jeecg.modules.baseCode.service.ISerialPatternService;
|
|
|
+import org.jeecg.modules.baseCode.service.*;
|
|
|
import org.jeecg.modules.cuspCode.entity.CuspCustomerProfile;
|
|
|
import org.jeecg.modules.cuspCode.service.ICuspCustomerProfileService;
|
|
|
import org.jeecg.modules.purCode.entity.PurCommissionRequest;
|
|
@@ -114,6 +112,8 @@ public class SaleOrderController {
|
|
|
private ICuspCustomerProfileService cuspCustomerProfileService;
|
|
|
@Autowired
|
|
|
private IBaseShipArchiveService baseShipArchiveService;
|
|
|
+ @Autowired
|
|
|
+ private IBaseProductArchiveService baseProductArchiveService;
|
|
|
|
|
|
@Value(value = "${jeecg.path.upload}")
|
|
|
private String uploadpath;
|
|
@@ -907,11 +907,32 @@ public class SaleOrderController {
|
|
|
saleOrder.setEmail(classEnt.getEmail());
|
|
|
}
|
|
|
}
|
|
|
+ // 获取计产品档案
|
|
|
+ List<BaseProductArchive> productArchiveList = new ArrayList<>();
|
|
|
+ if (oConvertUtils.listIsNotEmpty(productList)){
|
|
|
+ LambdaQueryWrapper<BaseProductArchive> productWrapper = new LambdaQueryWrapper<>();
|
|
|
+ productWrapper.in(BaseProductArchive::getId, productList.stream().map(SaleOrderProduct::getProductId).collect(Collectors.toList()));
|
|
|
+ productArchiveList = baseProductArchiveService.list(productWrapper);
|
|
|
+ }
|
|
|
+ // 产品设置
|
|
|
+ int rowNum = 1;
|
|
|
BigDecimal orderMoney = BigDecimal.ZERO;
|
|
|
for(SaleOrderProduct o:productList){
|
|
|
BigDecimal amount = o.getTaxAmount() == null ? BigDecimal.ZERO: o.getTaxAmount();
|
|
|
orderMoney = orderMoney.add(amount);
|
|
|
+ o.setRowNumber(rowNum++);
|
|
|
+ if (o.getDeliveryTime() != null){
|
|
|
+ o.setDeliverDateText(DateUtils.date2Str(o.getDeliveryTime(), DateUtils.date_sdf.get()));
|
|
|
+ }
|
|
|
+ if (oConvertUtils.isNotEmpty(o.getDiscount())){
|
|
|
+ o.setDiscountText(o.getDiscount().intValue()+"%");
|
|
|
+ }
|
|
|
+ BaseProductArchive findProduct = productArchiveList.stream().filter(e->e.getId().equals(o.getProductId())).findFirst().orElse(null);
|
|
|
+ if (findProduct != null){
|
|
|
+ o.setUnit(findProduct.getMeasurementUnit());
|
|
|
+ }
|
|
|
}
|
|
|
+ orderMoney = orderMoney.setScale(2);
|
|
|
saleOrder.setOrderMoney(orderMoney);
|
|
|
|
|
|
String shipname = "";
|
|
@@ -938,11 +959,11 @@ public class SaleOrderController {
|
|
|
}
|
|
|
//
|
|
|
saleOrder.setBillDateText(DateUtils.date2Str(saleOrder.getBillDate(), DateUtils.date_sdf.get()));
|
|
|
-
|
|
|
- int rowNum = 1;
|
|
|
- for (SaleOrderProduct product : productList){
|
|
|
- product.setRowNumber(rowNum++);
|
|
|
+ if (oConvertUtils.isNotEmpty(saleOrder.getDoubleDiscount())){
|
|
|
+ saleOrder.setDiscountText(saleOrder.getDoubleDiscount().intValue()+"%");
|
|
|
+ saleOrder.setDiscountMoney(orderMoney.subtract(new BigDecimal(saleOrder.getConvertedAmount())).setScale(2));
|
|
|
}
|
|
|
+
|
|
|
// 制单人信息
|
|
|
SysUser sysUser = sysUserService.getUserByName(saleOrder.getCreateBy());
|
|
|
saleOrder.setSalesPhone(sysUser.getPhone());
|