|  | @@ -189,6 +189,9 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |          for (TyreMsgDTO tyreMsgDTO : storeBrandTyres) {
 | 
	
		
			
				|  |  |              RLock lock = redissonClient.getLock(tyreMsgDTO.getTireNumber());
 | 
	
		
			
				|  |  |              lock.lock(30, TimeUnit.SECONDS);
 | 
	
		
			
				|  |  | +            // 测试代码!!!!!!
 | 
	
		
			
				|  |  | +            tyreMsgDTO.setFlagRegular(0);
 | 
	
		
			
				|  |  | +            // 测试代码结束!!!!
 | 
	
		
			
				|  |  |              try {
 | 
	
		
			
				|  |  |                  StoreAgentBrandLv storeBrandLv = this.getStoreAgentBrandLv(storeScanDTO.getStoreId(),tyreMsgDTO.getBrand());
 | 
	
		
			
				|  |  |                  if (null == tyreMsgDTO.getFlagRegular()) {
 | 
	
	
		
			
				|  | @@ -205,9 +208,6 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |                      // 通过redis缓存获取轮胎奖励,缓存key:门店id+轮胎号   缓存时间10分钟,如果缓存失效从数据库查询
 | 
	
		
			
				|  |  |                      Boolean satisfyActivity = false;
 | 
	
		
			
				|  |  |                      Activity activity = redisUtils.get(storeInfo.getMainId() + tyreMsgDTO.getTireNumber(), Activity.class);
 | 
	
		
			
				|  |  | -                    if (null == activity) {
 | 
	
		
			
				|  |  | -                        activity = this.getActivityByTyreMsg(storeInfo, tyreMsgDTO, storeBrandLv);
 | 
	
		
			
				|  |  | -                    }
 | 
	
		
			
				|  |  |                      if (null != activity) {
 | 
	
		
			
				|  |  |                          satisfyActivity = true;
 | 
	
		
			
				|  |  |                      }
 | 
	
	
		
			
				|  | @@ -219,14 +219,16 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |                              putInCode,
 | 
	
		
			
				|  |  |                              satisfyActivity,
 | 
	
		
			
				|  |  |                              tyreMsgDTO,
 | 
	
		
			
				|  |  | -                            storeScanDTO.getScanAddress());
 | 
	
		
			
				|  |  | -                    // 入库并满足活动进行后续操作
 | 
	
		
			
				|  |  | +                            storeScanDTO.getScanAddress(),
 | 
	
		
			
				|  |  | +                            tyreMsgDTO.getScanWay(),
 | 
	
		
			
				|  |  | +                            "");
 | 
	
		
			
				|  |  | +                    // 加库存
 | 
	
		
			
				|  |  |                      if (saveScanRecord) {
 | 
	
		
			
				|  |  |                          // 加库存
 | 
	
		
			
				|  |  |                          this.storeStockService.recordStoreStock(storeScanDTO.getStoreId(),tyreMsgDTO,true);
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -                    if (satisfyActivity) {
 | 
	
		
			
				|  |  | -                        // 算奖励(加钱 + 记录奖励日志 + 门店积分)、月度核算
 | 
	
		
			
				|  |  | +                    // 入库成功后 轮胎满足活动  算奖励(加钱 + 记录奖励日志 + 门店积分)
 | 
	
		
			
				|  |  | +                    if (saveScanRecord && satisfyActivity) {
 | 
	
		
			
				|  |  |                          this.storeScanGetSettlement(storeScanDTO.getStoreId(),
 | 
	
		
			
				|  |  |                                  activity,
 | 
	
		
			
				|  |  |                                  tyreMsgDTO,
 | 
	
	
		
			
				|  | @@ -243,7 +245,8 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |                              tyreMsgDTO,
 | 
	
		
			
				|  |  |                              storeScanDTO.getLatitude(),
 | 
	
		
			
				|  |  |                              storeScanDTO.getLongitude(),
 | 
	
		
			
				|  |  | -                            storeScanDTO.getScanAddress());
 | 
	
		
			
				|  |  | +                            storeScanDTO.getScanAddress(),
 | 
	
		
			
				|  |  | +                            1);
 | 
	
		
			
				|  |  |                      nonRegularCount++;
 | 
	
		
			
				|  |  |                      nonRegularTyreNumbers.add(tyreMsgDTO.getTireNumber());
 | 
	
		
			
				|  |  |                  }
 | 
	
	
		
			
				|  | @@ -340,7 +343,7 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          // 存redis做缓存处理
 | 
	
		
			
				|  |  | -        redisUtils.set(storeInfo.getMainId() + tyreMsgDTO.getTireNumber(),activity,60*10);
 | 
	
		
			
				|  |  | +        redisUtils.set(storeInfo.getMainId() + tyreMsgDTO.getTireNumber(),activity);
 | 
	
		
			
				|  |  |          return activity;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -401,7 +404,9 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |                                     String scanNum,
 | 
	
		
			
				|  |  |                                     Boolean satisfyActivity,
 | 
	
		
			
				|  |  |                                     TyreMsgDTO tyreMsgDTO,
 | 
	
		
			
				|  |  | -                                   String scanAddress) {
 | 
	
		
			
				|  |  | +                                   String scanAddress,
 | 
	
		
			
				|  |  | +                                   String scanWay,
 | 
	
		
			
				|  |  | +                                   String kunnr) {
 | 
	
		
			
				|  |  |          RLock lock = redissonClient.getLock(tyreMsgDTO.getTireNumber());
 | 
	
		
			
				|  |  |          lock.lock(20, TimeUnit.SECONDS);
 | 
	
		
			
				|  |  |          Boolean b = true;
 | 
	
	
		
			
				|  | @@ -411,7 +416,7 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |              scanRecord.setStoreId(storeId);
 | 
	
		
			
				|  |  |              scanRecord.setMatnr(tyreMsgDTO.getMatnr());
 | 
	
		
			
				|  |  |              scanRecord.setTireNumber(tyreMsgDTO.getTireNumber());
 | 
	
		
			
				|  |  | -            scanRecord.setKunnr(tyreMsgDTO.getSoldToPartyKunnr());
 | 
	
		
			
				|  |  | +            scanRecord.setKunnr(kunnr);
 | 
	
		
			
				|  |  |              scanRecord.setBrand(tyreMsgDTO.getBrand());
 | 
	
		
			
				|  |  |              scanRecord.setSpec(tyreMsgDTO.getSpecs());
 | 
	
		
			
				|  |  |              scanRecord.setPatterns(tyreMsgDTO.getPattern());
 | 
	
	
		
			
				|  | @@ -422,6 +427,7 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |              scanRecord.setCreateTime(new Date());
 | 
	
		
			
				|  |  |              scanRecord.setScanType(scanType);
 | 
	
		
			
				|  |  |              scanRecord.setFlagRegular(tyreMsgDTO.getFlagRegular());
 | 
	
		
			
				|  |  | +            scanRecord.setScanway(scanWay);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              Date shippedDate = DateUtil.parse(tyreMsgDTO.getShippedDate(),"yyyyMMdd");
 | 
	
		
			
				|  |  |              scanRecord.setShippedDate(shippedDate);
 | 
	
	
		
			
				|  | @@ -563,6 +569,7 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |              RLock lock = redissonClient.getLock(tyreMsgDTO.getTireNumber());
 | 
	
		
			
				|  |  |              lock.lock(30, TimeUnit.SECONDS);
 | 
	
		
			
				|  |  |              try {
 | 
	
		
			
				|  |  | +                StoreAgentBrandLv storeBrandLv = this.getStoreAgentBrandLv(storeScanDTO.getStoreId(),tyreMsgDTO.getBrand());
 | 
	
		
			
				|  |  |                  if (null == tyreMsgDTO.getFlagRegular()) {
 | 
	
		
			
				|  |  |                      throw new RRException("轮胎正规信息不能为空");
 | 
	
		
			
				|  |  |                  } else if ("0".equals(tyreMsgDTO.getFlagRegular().toString())) {
 | 
	
	
		
			
				|  | @@ -582,7 +589,9 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |                              putOutCode,
 | 
	
		
			
				|  |  |                              false,
 | 
	
		
			
				|  |  |                              tyreMsgDTO,
 | 
	
		
			
				|  |  | -                            storeScanDTO.getScanAddress());
 | 
	
		
			
				|  |  | +                            storeScanDTO.getScanAddress(),
 | 
	
		
			
				|  |  | +                            tyreMsgDTO.getScanWay(),
 | 
	
		
			
				|  |  | +                            "");
 | 
	
		
			
				|  |  |                      if (scanBoolean) {
 | 
	
		
			
				|  |  |                          // 出库后操作 -库存
 | 
	
		
			
				|  |  |                          this.storeScanGetSettlement(storeId, null, tyreMsgDTO, false);
 | 
	
	
		
			
				|  | @@ -596,7 +605,8 @@ public class ScanRecordService extends ServiceImpl<ScanRecordMapper,ScanRecord>{
 | 
	
		
			
				|  |  |                              tyreMsgDTO,
 | 
	
		
			
				|  |  |                              storeScanDTO.getLatitude(),
 | 
	
		
			
				|  |  |                              storeScanDTO.getLongitude(),
 | 
	
		
			
				|  |  | -                            storeScanDTO.getScanAddress());
 | 
	
		
			
				|  |  | +                            storeScanDTO.getScanAddress(),
 | 
	
		
			
				|  |  | +                            1);
 | 
	
		
			
				|  |  |                      nonRegularCount++;
 | 
	
		
			
				|  |  |                      nonRegularTyreNumbers.add(tyreMsgDTO.getTireNumber());
 | 
	
		
			
				|  |  |                  }
 |