|  |  | @ -14,9 +14,7 @@ import com.glxp.api.controller.BaseController; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.dao.inout.IoOrderDetailBizDao; |  |  |  | import com.glxp.api.dao.inout.IoOrderDetailBizDao; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.auth.AuthAdmin; |  |  |  | import com.glxp.api.entity.auth.AuthAdmin; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.auth.InvWarehouseEntity; |  |  |  | import com.glxp.api.entity.auth.InvWarehouseEntity; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.basic.BasicBusTypeChangeEntity; |  |  |  | import com.glxp.api.entity.basic.*; | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.basic.BasicBussinessTypeEntity; |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.basic.UdiRelevanceEntity; |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.inout.*; |  |  |  | import com.glxp.api.entity.inout.*; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.thrsys.ThrOrderDetailEntity; |  |  |  | import com.glxp.api.entity.thrsys.ThrOrderDetailEntity; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.entity.thrsys.ThrOrderEntity; |  |  |  | import com.glxp.api.entity.thrsys.ThrOrderEntity; | 
			
		
	
	
		
		
			
				
					|  |  | @ -28,9 +26,7 @@ import com.glxp.api.res.PageSimpleResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.res.basic.UdiRelevanceResponse; |  |  |  | import com.glxp.api.res.basic.UdiRelevanceResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.res.inout.IoOrderDetailBizResponse; |  |  |  | import com.glxp.api.res.inout.IoOrderDetailBizResponse; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.service.auth.InvWarehouseService; |  |  |  | import com.glxp.api.service.auth.InvWarehouseService; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.service.basic.IBasicBusTypeChangeService; |  |  |  | import com.glxp.api.service.basic.*; | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.service.basic.IBasicBussinessTypeService; |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.service.basic.UdiRelevanceService; |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.service.inout.*; |  |  |  | import com.glxp.api.service.inout.*; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.service.thrsys.ThrOrderDetailService; |  |  |  | import com.glxp.api.service.thrsys.ThrOrderDetailService; | 
			
		
	
		
		
			
				
					
					|  |  |  | import com.glxp.api.service.thrsys.ThrOrderService; |  |  |  | import com.glxp.api.service.thrsys.ThrOrderService; | 
			
		
	
	
		
		
			
				
					|  |  | @ -178,25 +174,23 @@ public class IoOrderDetailBizController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |     ThrOrderDetailService thrOrderDetailService; |  |  |  |     ThrOrderDetailService thrOrderDetailService; | 
			
		
	
		
		
			
				
					
					|  |  |  |     @Resource |  |  |  |     @Resource | 
			
		
	
		
		
			
				
					
					|  |  |  |     ThrSystemBusApiService thrSystemBusApiService; |  |  |  |     ThrSystemBusApiService thrSystemBusApiService; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     @Resource | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     UdiRlSupService udiRlSupService; | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     //选入第三方单据至业务单据
 |  |  |  |     //选入第三方单据至业务单据
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     @AuthRuleAnnotation("") |  |  |  |     @AuthRuleAnnotation("") | 
			
		
	
		
		
			
				
					
					|  |  |  |     @PostMapping("/udiwms/inout/order/addThrOrder") |  |  |  |     @PostMapping("/udiwms/inout/order/addThrOrder") | 
			
		
	
		
		
			
				
					
					|  |  |  |     public BaseResponse addThrOrder(@RequestBody ThrOrderEntity thrOrderRequest, |  |  |  |     public BaseResponse addThrOrder(@RequestBody ThrOrderEntity thrOrderRequest) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |                                     BindingResult bindingResult) { |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (bindingResult.hasErrors()) { |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |             return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |  | 
			
		
	
		
		
			
				
					
					|  |  |  |         ThrOrderEntity thrOrderEntity = thrOrderService.findById(thrOrderRequest.getId()); |  |  |  |         ThrOrderEntity thrOrderEntity = thrOrderService.findById(thrOrderRequest.getId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (thrOrderEntity == null) { |  |  |  |         if (thrOrderEntity == null) { | 
			
		
	
		
		
			
				
					
					|  |  |  |             return ResultVOUtils.error(ResultEnum.DATA_NOT); |  |  |  |             return ResultVOUtils.error(ResultEnum.DATA_NOT); | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         List<ThrOrderDetailEntity> thrOrderDetailEntities = thrOrderDetailService.selectByBillNo(thrOrderRequest.getBillNo()); |  |  |  |         List<ThrOrderDetailEntity> thrOrderDetailEntities = thrOrderDetailService.selectByBillNo(thrOrderEntity.getBillNo()); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         //获取单据类型
 |  |  |  |         //获取单据类型
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         ThrSystemBusApiEntity thrSystemBusApiEntity = thrSystemBusApiService.selectByThrBus(thrOrderEntity.getBillType(), thrOrderEntity.getThirdSysFk()); |  |  |  |         ThrSystemBusApiEntity thrSystemBusApiEntity = thrSystemBusApiService.selectByThrBus(thrOrderEntity.getBillType(), thrOrderEntity.getThirdSysFk()); | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (thrSystemBusApiEntity == null && StrUtil.isEmpty(thrSystemBusApiEntity.getCode())) { |  |  |  |         if (thrSystemBusApiEntity == null || StrUtil.isEmpty(thrSystemBusApiEntity.getCode())) { | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |             return ResultVOUtils.error(500, "单据类型对照有误!"); |  |  |  |             return ResultVOUtils.error(500, "单据类型对照有误!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(thrSystemBusApiEntity.getCode()); |  |  |  |         BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(thrSystemBusApiEntity.getCode()); | 
			
		
	
	
		
		
			
				
					|  |  | @ -218,18 +212,94 @@ public class IoOrderDetailBizController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         //获取当前部门
 |  |  |  |         //获取当前部门
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         if (StrUtil.isNotEmpty(thrOrderEntity.getInvCode())) { |  |  |  |         if (StrUtil.isNotEmpty(thrOrderEntity.getInvCode())) { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  |             InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByThrCode(thrOrderEntity.getInvCode(), thrOrderEntity.getThirdSysFk()); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             if (invWarehouseEntity != null) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 orderEntity.setDeptCode(invWarehouseEntity.getParentId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 orderEntity.setInvCode(invWarehouseEntity.getCode()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |         } else { |  |  |  |         } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |             return ResultVOUtils.error(500, "第三方单据所属仓库不能为空!"); |  |  |  |             return ResultVOUtils.error(500, "第三方单据所属仓库不能为空!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         //获取往来信息
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_INNOR) {//内部调拨
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByThrCode(thrOrderEntity.getCorpId(), thrOrderEntity.getThirdSysFk()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             orderEntity.setFromDeptCode(invWarehouseEntity.getParentId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             orderEntity.setFromInvCode(invWarehouseEntity.getCode()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         } else if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {    //往来信息
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             BasicCorpEntity basicCorpEntity = basicCorpService.selectByThirdId(thrOrderEntity.getCorpId(), thrOrderEntity.getThirdSysFk()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             orderEntity.setFromCorp(basicCorpEntity.getErpId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             orderEntity.setFromCorp(thrOrderEntity.getCorpId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         orderEntity.setStatus(ConstantStatus.ORDER_STATUS_TEMP_SAVE); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         orderEntity.setDealStatus(ConstantStatus.ORDER_DEAL_DRAFT); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         orderEntity.setFromType(ConstantStatus.FROM_THRORDER); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         orderEntity.setOrderType(ConstantStatus.ORDER_TYPE_BIZ); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         orderService.insertOrder(orderEntity); | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |         thrOrderService.updateThrOrder(thrOrderEntity); |  |  |  |         for (ThrOrderDetailEntity thrOrderDetailEntity : thrOrderDetailEntities) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         return ResultVOUtils.success(); |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             thrOrderDetailEntity.getProductId(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             List<UdiRelevanceResponse> udiRelevanceEntities = udiRelevanceService.selectListByThirdId(thrOrderDetailEntity.getProductId(), thrOrderEntity.getThirdSysFk()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             IoOrderDetailBizEntity ioOrderDetailBizEntity = new IoOrderDetailBizEntity(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             UdiRelevanceResponse udiRelevanceResponse = null; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             if (udiRelevanceEntities.size() == 1) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 udiRelevanceResponse = udiRelevanceEntities.get(0); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setBindRlFk(udiRelevanceResponse.getId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setUuidFk(udiRelevanceResponse.getUuid()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setNameCode(udiRelevanceResponse.getNameCode()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setCoName(udiRelevanceResponse.getCpmctymc()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setCertCode(udiRelevanceResponse.getZczbhhzbapzbh()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setYlqxzcrbarmc(udiRelevanceResponse.getYlqxzcrbarmc()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setManufacturer(udiRelevanceResponse.getManufactory()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setMeasname(udiRelevanceResponse.getMeasname()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setSpec(udiRelevanceResponse.getGgxh()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setPrice(udiRelevanceResponse.getPrice()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setCoName(thrOrderDetailEntity.getCorpName()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setCertCode(thrOrderDetailEntity.getZczbhhzbapzbh()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setYlqxzcrbarmc(thrOrderDetailEntity.getYlqxzcrbarmc()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setManufacturer(thrOrderDetailEntity.getManufactory()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setSpec(thrOrderDetailEntity.getSpec()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setPrice(thrOrderDetailEntity.getPrice()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 if (udiRelevanceEntities.size() > 1) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     String bindRlIds = ""; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     for (UdiRelevanceResponse temp : udiRelevanceEntities) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                         bindRlIds = bindRlIds + "," + temp.getId(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     ioOrderDetailBizEntity.setBindRlIds(bindRlIds); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             ioOrderDetailBizEntity.setOrderIdFk(orderEntity.getBillNo()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             ioOrderDetailBizEntity.setProductDate(thrOrderDetailEntity.getProductDate()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             ioOrderDetailBizEntity.setExpireDate(thrOrderDetailEntity.getExpireDate()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             ioOrderDetailBizEntity.setBatchNo(thrOrderDetailEntity.getBatchNo()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             ioOrderDetailBizEntity.setCount(thrOrderDetailEntity.getCount()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             if (StrUtil.isNotEmpty(thrOrderDetailEntity.getSupId())) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 BasicCorpEntity basicCorpEntity = basicCorpService.selectByThirdId(thrOrderDetailEntity.getSupId(), thrOrderEntity.getThirdSysFk()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 ioOrderDetailBizEntity.setSupId(basicCorpEntity.getErpId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             } else if (udiRelevanceResponse != null) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 List<UdiRlSupEntity> udiRlSupEntities = udiRlSupService.findByUdiRlId(udiRelevanceResponse.getId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 if (CollUtil.isNotEmpty(udiRlSupEntities) && udiRlSupEntities.size() == 1) { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                     ioOrderDetailBizEntity.setSupId(udiRlSupEntities.get(0).getCustomerId()); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |                 } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |             orderDetailBizService.insert(ioOrderDetailBizEntity); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         thrOrderService.updateThrOrder(thrOrderEntity); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         return ResultVOUtils.success("选入成功!"); | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     @Resource | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     BasicCorpService basicCorpService; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     //选入领用单据至业务单据
 |  |  |  |     //选入领用单据至业务单据
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     @AuthRuleAnnotation("") |  |  |  |     @AuthRuleAnnotation("") | 
			
		
	
	
		
		
			
				
					|  |  | @ -289,7 +359,7 @@ public class IoOrderDetailBizController extends BaseController { | 
			
		
	
		
		
			
				
					
					|  |  |  |             ioOrderDetailBizEntity.setCount(purReceiveDetailEntity.getCount()); |  |  |  |             ioOrderDetailBizEntity.setCount(purReceiveDetailEntity.getCount()); | 
			
		
	
		
		
			
				
					
					|  |  |  |             orderDetailBizService.insert(ioOrderDetailBizEntity); |  |  |  |             orderDetailBizService.insert(ioOrderDetailBizEntity); | 
			
		
	
		
		
			
				
					
					|  |  |  |         } |  |  |  |         } | 
			
		
	
		
		
			
				
					
					|  |  |  |         return ResultVOUtils.success(); |  |  |  |         return ResultVOUtils.success("选入成功!"); | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | 
 |