Просмотр исходного кода

Merge remote-tracking branch 'origin/liusw-seekpurchae-v2.0.1.13' into liusw-seekpurchae-v2.0.1.13

yangc 8 лет назад
Родитель
Сommit
7779025d02

+ 23 - 2
src/main/java/com/uas/platform/b2c/trade/seek/service/impl/SeekPurchaseServiceImpl.java

@@ -53,6 +53,7 @@ import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.dao.DataAccessException;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Sort.Direction;
 import org.springframework.data.jpa.domain.Specification;
@@ -401,6 +402,10 @@ public class SeekPurchaseServiceImpl implements SeekPurchaseService {
             Double unitPrice = Double.valueOf(StringUtilB2C.replaceLineBreak(StringUtilB2C.getStr(unitPriceValue)));
             seekPurchaseByBatch.setUnitPrice(unitPrice);
         }
+        // 如果填了单价又不选币种,导入的时候系统就默认人民币吧
+        if (!StringUtils.isEmpty(unitPriceValue) && StringUtils.isEmpty(currencyValue)) {
+            seekPurchaseByBatch.setCurrency("RMB");
+        }
         // 封装
         Object encapsulationValue = readWorkBookCell(row.getCell(6), Cell.CELL_TYPE_STRING,
                 rowNum, 6);
@@ -493,6 +498,8 @@ public class SeekPurchaseServiceImpl implements SeekPurchaseService {
             // 保存所有
             seekPurchaseByBatchList = seekPurchaseByBatchDao.findByBomId(bomId);
         }
+        // 商城现货的数量
+        int haveGoodsCount = 0;
         // 将临时表转换成正式表数据
         List<SeekPurchase> seekPurchaseList = new ArrayList<>();
         // 发布到正式表的临时数据
@@ -514,6 +521,11 @@ public class SeekPurchaseServiceImpl implements SeekPurchaseService {
                 seekPurchase.setEnUu(seekPurchaseBom.getEnuu());
                 seekPurchase.setUu(seekPurchaseBom.getUu());
                 seekPurchase.setStatus(Status.NO_OFFER.getValue());
+                // 商城现货搜索
+                List<Goods> goods = goodsDao.getGoodsByCodeAndName(seekPurchase.getCode(), seekPurchase.getBrand());
+                if (goods != null && goods.size() > 0) {
+                    haveGoodsCount++;
+                }
                 deleteBatchList.add(batch);
                 seekPurchaseList.add(seekPurchase);
             }
@@ -523,7 +535,7 @@ public class SeekPurchaseServiceImpl implements SeekPurchaseService {
         seekPurchaseBom.setStatus(1);
         seekPurchaseBomDao.save(seekPurchaseBom);
         seekPurchaseByBatchDao.delete(deleteBatchList);
-        return ResultMap.success(seekPurchaseList.size());
+        return ResultMap.success(haveGoodsCount);
     }
 
     @Override
@@ -559,7 +571,12 @@ public class SeekPurchaseServiceImpl implements SeekPurchaseService {
     public Map<String, Object> getImportBomInfo(Long bomId) {
         String sql = "select bom_id,count(bom_id) as successImport,(sum((IF(sp_brand is null,1,0)))+sum((IF(sp_code is null,1,0)))+sum((IF(sp_deadline is null,1,0)))) as nullField "
                 + "from trade$seek_purchase_by_batch where bom_id = ? group by bom_id";
-        return jdbcTemplate.queryForMap(sql, new Object[]{bomId});
+        try {
+            Map<String, Object> map = jdbcTemplate.queryForMap(sql, new Object[]{bomId});
+            return map;
+        } catch (DataAccessException e) {
+            return null;
+        }
     }
 
     @Override
@@ -580,6 +597,10 @@ public class SeekPurchaseServiceImpl implements SeekPurchaseService {
     @Override
     public ResultMap updateSeekPurchaseBom(SeekPurchaseBom seekPurchaseBom) {
         SeekPurchaseBom oldBom = seekPurchaseBomDao.findOne(seekPurchaseBom.getId());
+        String name = seekPurchaseBom.getName();
+        if (StringUtils.isEmpty(name)) {
+            throw new IllegalOperatorException("bom名称不符合要求");
+        }
         oldBom.setName(seekPurchaseBom.getName());
         seekPurchaseBomDao.save(oldBom);
         return ResultMap.success(null);

BIN
src/main/resources/jxls-tpl/trade/seekPurchaseByBatch.xls