|  |  |  | @ -392,4 +392,162 @@ public class BasicBussinessTypeServiceImpl extends ServiceImpl<BasicBussinessTyp | 
			
		
	
		
			
				
					|  |  |  |  |     public List<BasicBussinessTypeEntity> findByLastTime(Date lastUpdateTime) { | 
			
		
	
		
			
				
					|  |  |  |  |         return basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>().gt("updateTime", lastUpdateTime)); | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     @Override | 
			
		
	
		
			
				
					|  |  |  |  |     public List<BasicBussinessTypeEntity> findByVueTypeAndType(FilterBussinessTypeRequest bussinessTypeFilterRequest) { | 
			
		
	
		
			
				
					|  |  |  |  |         List<BasicBussinessTypeEntity> bussinessTypeEntities = null; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         switch (bussinessTypeFilterRequest.getVueType()) { | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_NOR_DETAIL: | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("actionType", 1) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("inStock", true).eq("enable", true)); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_PRE_DETAIL: | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("actionType", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("inStock", true).eq("enable", true)); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_PREIN_DETAIL: | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("actionType", 2) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("inStock", true).eq("enable", true)); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_SUP_DELIVERY: | 
			
		
	
		
			
				
					|  |  |  |  |                 //允许送货单直接入库变更库存,则不判断送货单是否入库
 | 
			
		
	
		
			
				
					|  |  |  |  |                 String deliveryInstock = systemParamConfigService.selectValueByParamKey("deliveryInstock"); | 
			
		
	
		
			
				
					|  |  |  |  |                 if (StrUtil.isNotEmpty(deliveryInstock) && deliveryInstock.equals("1")) { | 
			
		
	
		
			
				
					|  |  |  |  |                     bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                             .eq("mainAction", ConstantType.TYPE_PUT) | 
			
		
	
		
			
				
					|  |  |  |  |                             .eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()) | 
			
		
	
		
			
				
					|  |  |  |  |                             .eq("corpType", ConstantStatus.CORP_TYPE_OUT) | 
			
		
	
		
			
				
					|  |  |  |  |                             .gt("spUse", 1).eq("enable", true)); | 
			
		
	
		
			
				
					|  |  |  |  |                 } else { | 
			
		
	
		
			
				
					|  |  |  |  |                     bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                             .eq("mainAction", ConstantType.TYPE_PUT) | 
			
		
	
		
			
				
					|  |  |  |  |                             .eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()) | 
			
		
	
		
			
				
					|  |  |  |  |                             .eq("corpType", ConstantStatus.CORP_TYPE_OUT) | 
			
		
	
		
			
				
					|  |  |  |  |                             .gt("spUse", 1).eq("inStock", false).eq("enable", true)); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             /** | 
			
		
	
		
			
				
					|  |  |  |  |              * 出入库类型为入库 | 
			
		
	
		
			
				
					|  |  |  |  |              * 往来单位类型为供应商 | 
			
		
	
		
			
				
					|  |  |  |  |              * 更改库存为否 | 
			
		
	
		
			
				
					|  |  |  |  |              * 供应商使用权限为增删改查 | 
			
		
	
		
			
				
					|  |  |  |  |              * 库存方式为入账 | 
			
		
	
		
			
				
					|  |  |  |  |              * 单据状态待审核 | 
			
		
	
		
			
				
					|  |  |  |  |              * | 
			
		
	
		
			
				
					|  |  |  |  |              * or | 
			
		
	
		
			
				
					|  |  |  |  |              * | 
			
		
	
		
			
				
					|  |  |  |  |              * 出入库类型为入库 | 
			
		
	
		
			
				
					|  |  |  |  |              * 往来单位类型为供应商 | 
			
		
	
		
			
				
					|  |  |  |  |              * 是否更改库存为是 | 
			
		
	
		
			
				
					|  |  |  |  |              * 库存方式为入账 | 
			
		
	
		
			
				
					|  |  |  |  |              * 单据状态已审核 | 
			
		
	
		
			
				
					|  |  |  |  |              */ | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_SUP_INVOICE: | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("mainAction", ConstantType.TYPE_PUT) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()) | 
			
		
	
		
			
				
					|  |  |  |  |                         .gt("spUse", 0).eq("actionType", 1).eq("enable", true)); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_SUP_DELAUDIT:        //供应商审核送货单
 | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("mainAction", ConstantType.TYPE_PUT).eq("corpType", ConstantStatus.CORP_TYPE_OUT) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()) | 
			
		
	
		
			
				
					|  |  |  |  |                         .gt("spUse", 1).eq("enable", true)); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_SUP_INOUT:        //供应商查询出入库单
 | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .gt("spUse", 0).eq("enable", true).eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType())); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_SUP_PREIN: | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .gt("spUse", 0).eq("enable", true).eq("corpType", ConstantStatus.CORP_TYPE_OUT).eq("actionType", 2) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("inStock", true) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()) | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("mainAction", ConstantType.TYPE_PUT)); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_WAIT_CHECK:      //待校验
 | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("enable", true).eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()).and( | 
			
		
	
		
			
				
					|  |  |  |  |                                 webNew -> webNew.eq("checkWebNew", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().eq("checkPdaUn", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().eq("checkPdaEd", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().eq("checkUdims", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().eq("checkPc", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().eq("checkSp", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().eq("checkChange", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().eq("checkBalance", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().eq("checkCopy", 3) | 
			
		
	
		
			
				
					|  |  |  |  |                         ) | 
			
		
	
		
			
				
					|  |  |  |  |                 ); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_WAIT_DEAL: //待配货/拣货页面
 | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("enable", true).eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()).and( | 
			
		
	
		
			
				
					|  |  |  |  |                                 webNew -> webNew.in("checkWebNew", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkPdaUn", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkPdaEd", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkUdims", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkPc", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkSp", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkChange", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkBalance", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkCopy", 1, 2) | 
			
		
	
		
			
				
					|  |  |  |  |                         ) | 
			
		
	
		
			
				
					|  |  |  |  |                 ); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_THIRD_STOCK: //内部码
 | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("enable", true).eq(bussinessTypeFilterRequest.getProductType() != null, "productType", bussinessTypeFilterRequest.getProductType()).and( | 
			
		
	
		
			
				
					|  |  |  |  |                                 webNew -> webNew.in("checkWebNew", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkPdaUn", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkPdaEd", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkUdims", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkPc", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkSp", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkChange", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkBalance", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                                         .or().in("checkCopy", 1, 2, 3) | 
			
		
	
		
			
				
					|  |  |  |  |                         ) | 
			
		
	
		
			
				
					|  |  |  |  |                 ); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_THIRD_UPLOAD: | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |                 List<ThrOrderUploadBustypesEntity> thrOrderUploadBustypesEntities = thrOrderUploadBustypesService.list(); | 
			
		
	
		
			
				
					|  |  |  |  |                 List<String> actions = new ArrayList<>(); | 
			
		
	
		
			
				
					|  |  |  |  |                 thrOrderUploadBustypesEntities.forEach(item -> | 
			
		
	
		
			
				
					|  |  |  |  |                 { | 
			
		
	
		
			
				
					|  |  |  |  |                     actions.add(item.getAction()); | 
			
		
	
		
			
				
					|  |  |  |  |                 }); | 
			
		
	
		
			
				
					|  |  |  |  |                 if (CollUtil.isNotEmpty(actions)) { | 
			
		
	
		
			
				
					|  |  |  |  |                     bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>().in("action", actions)); | 
			
		
	
		
			
				
					|  |  |  |  |                 } | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |             //科室拆零预出库界面
 | 
			
		
	
		
			
				
					|  |  |  |  |             case Constant.ORDER_ACTION_SPLIT: | 
			
		
	
		
			
				
					|  |  |  |  |                 bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>() | 
			
		
	
		
			
				
					|  |  |  |  |                         .eq("enable", true).and( | 
			
		
	
		
			
				
					|  |  |  |  |                                 webNew -> webNew.in("action", "SC72197936495755", "SC72249388338364") | 
			
		
	
		
			
				
					|  |  |  |  |                         ) | 
			
		
	
		
			
				
					|  |  |  |  |                 ); | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |             default: | 
			
		
	
		
			
				
					|  |  |  |  |                 break; | 
			
		
	
		
			
				
					|  |  |  |  |         } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |         return bussinessTypeEntities; | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
	
		
			
				
					|  |  |  | 
 |