diff --git a/blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/BasicPrintTemplateController.java b/blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/BasicPrintTemplateController.java
index a677308e6..39b4dc578 100644
--- a/blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/BasicPrintTemplateController.java
+++ b/blade-service/logpm-basic/src/main/java/com/logpm/basic/controller/BasicPrintTemplateController.java
@@ -18,6 +18,7 @@ package com.logpm.basic.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.logpm.basic.dto.BasicPrintTemplateDTO;
 import com.logpm.basic.entity.BasicPrintTemplateEntity;
 import com.logpm.basic.excel.BasicPrintTemplateExcel;
@@ -47,6 +48,7 @@ import springfox.documentation.annotations.ApiIgnore;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 import javax.servlet.http.HttpServletResponse;
 
 /**
@@ -102,6 +104,21 @@ public class BasicPrintTemplateController extends BladeController {
 	@ApiOperationSupport(order = 4)
 	@ApiOperation(value = "新增", notes = "传入basicPrintTemplate")
 	public R save(@Valid @RequestBody BasicPrintTemplateDTO basicPrintTemplateDTO) {
+		if(basicPrintTemplateDTO.getKnifeSwitch()){
+			List<BasicPrintTemplateEntity> list = basicPrintTemplateService.list(Wrappers.<BasicPrintTemplateEntity>query().lambda()
+				.eq(BasicPrintTemplateEntity::getKnifeSwitch, true)
+				.eq(BasicPrintTemplateEntity::getTemplateType, basicPrintTemplateDTO.getTemplateType())
+			);
+			List<Long> collect = list.stream().map(BasicPrintTemplateEntity::getId).collect(Collectors.toList());
+			collect.forEach( i -> {
+				BasicPrintTemplateEntity basicPrintTemplate = new BasicPrintTemplateEntity();
+				basicPrintTemplate.setId(i);
+				basicPrintTemplate.setKnifeSwitch(false);
+				basicPrintTemplateService.updateById(basicPrintTemplate);
+			});
+
+		}
+
 		boolean result = basicPrintTemplateService.insertPrintTemplate(basicPrintTemplateDTO);
 		return R.status(result);
 	}
diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java
index 4c571304d..526c3e9b5 100644
--- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java
+++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java
@@ -396,6 +396,9 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl<Distrib
 //		String tenantId = AuthUtil.getTenantId();
 //		String templateId = (String) params.get("templateId");
 		BasicPrintTemplateEntity template = basicPrintTemplateClient.getPrintTemplate();
+		if(ObjectUtil.isEmpty(template)){
+			throw new ServiceException("模板信息未找到!!");
+		}
 //		BasicPrintTemplateEntity template = basicPrintTemplateClient.getTemplate("1688431772497219586");
 		String qrCode = (String) params.get("qrCode");
 		if (Func.isBlank(qrCode)){
@@ -444,6 +447,9 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl<Distrib
 		//待删除文件列表
 		List<String> list= new ArrayList<>();
 		BasicPrintTemplateEntity template = basicPrintTemplateClient.getPrintTemplate();
+		if(ObjectUtil.isEmpty(template)){
+		 return R.fail("模板信息未找到!!");
+		}
 		String id = (String) params.get("id");
 		DistributionStockArticleQRCodeVO orderNoList = baseMapper.getOrderNoList( null,id);
 			Map<String,Object> map = JSONObject.parseObject(JSONObject.toJSONString(orderNoList), Map.class);