diff --git a/src/main/java/com/glxp/api/config/HdSchemaExecutor.java b/src/main/java/com/glxp/api/config/HdSchemaExecutor.java
index a1e2b500..020805ca 100644
--- a/src/main/java/com/glxp/api/config/HdSchemaExecutor.java
+++ b/src/main/java/com/glxp/api/config/HdSchemaExecutor.java
@@ -7,7 +7,6 @@ import com.glxp.api.dao.system.DbVersionDao;
 import com.glxp.api.entity.system.DbVersionEntity;
 import com.glxp.api.entity.system.SchemaData;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.boot.ApplicationArguments;
 import org.springframework.boot.ApplicationRunner;
 import org.springframework.core.annotation.Order;
@@ -27,16 +26,10 @@ public class HdSchemaExecutor implements ApplicationRunner {
     @Resource
     DbVersionDao hdCommonDao;
 
-    @Value("${initSql:true}")
-    private boolean initSql;
-
     private List<SchemaData> schema = new ArrayList<>();
 
     @Override
     public void run(ApplicationArguments args) throws Exception {
-        if (!initSql) {
-            return;
-        }
         //初始版本列表
         buildSchemas();
         //定义sql文件路径
@@ -49,7 +42,7 @@ public class HdSchemaExecutor implements ApplicationRunner {
         String sql = IoUtil.readUtf8(inputStream);
         try {
             //判断版本表是否存在
-            int count = hdCommonDao.selectTableExist("sys_db_version");
+            int count = hdCommonDao.selectTableExist("hd_version");
             if (count == 0) {
                 hdCommonDao.updateSql(sql);
             }
@@ -84,5 +77,7 @@ public class HdSchemaExecutor implements ApplicationRunner {
 //        schema.add(new SchemaData("v2.1", "schema_v2.1.sql"));
 //        schema.add(new SchemaData("v2.2", "schema_v2.2.sql"));
         schema.add(new SchemaData("v2.3", "schema_v2.3.sql"));
+//        schema.add(new SchemaData("v2.4", "schema_v2.4.sql"));
     }
+
 }
diff --git a/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java b/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java
index ff4b681a..4b2ff8a1 100644
--- a/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java
+++ b/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java
@@ -36,6 +36,7 @@ import com.glxp.api.service.inv.InvProductService;
 import com.glxp.api.service.system.SystemParamConfigService;
 import com.glxp.api.service.thrsys.ThrDataService;
 import com.glxp.api.service.thrsys.ThrSystemService;
+import com.glxp.api.util.IntUtil;
 import com.glxp.api.util.udi.FilterUdiUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.validation.BindingResult;
@@ -343,6 +344,7 @@ public class UdiRelevanceController extends BaseController {
         udiProductEntity.setAllowNoProduct(udiRelevanceSaveRequest.getAllowNoProduct());
         udiProductEntity.setAllowNoSerial(udiRelevanceSaveRequest.getAllowNoSerial());
         udiProductEntity.setZxxsbzbhsydysl(udiRelevanceEntity.getUseNum());
+        udiProductEntity.setGroupBuy(udiRelevanceSaveRequest.getGroupBuy());
         udiProductEntity.setBasicPrductRemak1(udiRelevanceSaveRequest.getBasicPrductRemak1());
         udiProductEntity.setBasicPrductRemak2(udiRelevanceSaveRequest.getBasicPrductRemak2());
         udiProductEntity.setBasicPrductRemak3(udiRelevanceSaveRequest.getBasicPrductRemak3());
@@ -715,7 +717,7 @@ public class UdiRelevanceController extends BaseController {
         boolean falg = udiProductService.updateUdiInfoById(udiProductEntity);
         UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity();
         udiRelevanceEntity.setId(udiProductEntity.getUid());
-        udiRelevanceEntity.setGroupBuy(udiProductEntity.isGroupBuy());
+        udiRelevanceEntity.setGroupBuy(IntUtil.value(udiProductEntity.getGroupBuy()));
         boolean b = udiRelevanceService.updateUdiRelevance(udiRelevanceEntity);
         if (udiProductEntity.getRelSupId() != null) {
             UdiRlSupEntity udiRlSupEntity = new UdiRlSupEntity();
diff --git a/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java b/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java
index cfd851a0..3435e900 100644
--- a/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java
+++ b/src/main/java/com/glxp/api/controller/basic/UdiRlSupController.java
@@ -244,6 +244,7 @@ public class UdiRlSupController extends BaseController {
         UdiRelevanceEntity udiRelevanceEntity = new UdiRelevanceEntity();
         udiRelevanceEntity.setId(Long.parseLong(rlidStr));
         udiRelevanceEntity.setLockStatus(1);
+        udiRelevanceEntity.setGroupBuy(udiInfoExportRequest.getSupplementRequest().getGroupBuy());
         udiRelevanceService.updateUdiRelevance(udiRelevanceEntity);
         UdiProductEntity udiProductEntity = new UdiProductEntity();
         BeanUtil.copyProperties(udiInfoExportRequest.getSupplementRequest(), udiProductEntity);
diff --git a/src/main/java/com/glxp/api/controller/purchase/SupCertController.java b/src/main/java/com/glxp/api/controller/purchase/SupCertController.java
index c13d5522..55891916 100644
--- a/src/main/java/com/glxp/api/controller/purchase/SupCertController.java
+++ b/src/main/java/com/glxp/api/controller/purchase/SupCertController.java
@@ -437,7 +437,7 @@ public class SupCertController {
                     supData.put("status", obj.getStatus() == 0 ? "有效" : "失效");
                     supData.put("auditStatus", getAuditStatus(obj.getAuditStatus()));
                     supData.put("remark", obj.getRemark() == null ? ' ' : obj.getRemark());
-                    supData.put("filePath", filePath + "register/image2/" + url);
+                    supData.put("filePath", filePath + "register/file/image2/" + url);
                     list.add(supData);
                     i++;
                 }
@@ -553,7 +553,7 @@ public class SupCertController {
                     supData.put("status", obj.getStatus() == 0 ? "有效" : "失效");
                     supData.put("auditStatus", getAuditStatus(obj.getAuditStatus()));
                     supData.put("remark2", obj.getRemark() == null ? ' ' : obj.getRemark());
-                    supData.put("filePath", filePath + "register/image2/" + url);
+                    supData.put("filePath", filePath + "register/file/image2/" + url);
                     list.add(supData);
                     i++;
                 }
@@ -619,7 +619,7 @@ public class SupCertController {
                     supData.put("status", obj.getStatus() == 0 ? "有效" : "失效");
                     supData.put("auditStatus", getAuditStatus(obj.getAuditStatus()));
                     supData.put("remark2", obj.getRemark() == null ? ' ' : obj.getRemark());
-                    supData.put("filePath", filePath + "register/image2/" + url);
+                    supData.put("filePath", filePath + "register/file/image2/" + url);
                     list.add(supData);
                     i++;
                 }
diff --git a/src/main/java/com/glxp/api/controller/purchase/SupProductController.java b/src/main/java/com/glxp/api/controller/purchase/SupProductController.java
index 2dc4ed8b..f088cbac 100644
--- a/src/main/java/com/glxp/api/controller/purchase/SupProductController.java
+++ b/src/main/java/com/glxp/api/controller/purchase/SupProductController.java
@@ -177,6 +177,7 @@ public class SupProductController {
         supProductEntity.setProductType(udiRelevanceResponse.getQxlb());
         supProductEntity.setProductDirectoryCode(udiRelevanceResponse.getFlbm());
         supProductEntity.setRecordPeopleName(udiRelevanceResponse.getYlqxzcrbarmc());
+        supProductEntity.setManufactory(selectProductBindRequest.getCompanyName());
         supProductEntity.setSpecification(udiRelevanceResponse.getGgxh());
         supProductEntity.setCreateTime(new Date());
         supProductEntity.setUpdateTime(new Date());
diff --git a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsAddDiController.java b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsAddDiController.java
index cfd7cf38..967d0d1c 100644
--- a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsAddDiController.java
+++ b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsAddDiController.java
@@ -224,6 +224,8 @@ public class ThrProductsAddDiController {
                     udiProductEntity.setBasicPrductRemak6(thrProductsAddDiResponse.getBasicPrductRemak6());
                     udiProductEntity.setBasicPrductRemak7(thrProductsAddDiResponse.getBasicPrductRemak7());
                     udiProductEntity.setBasicPrductRemak8(thrProductsAddDiResponse.getBasicPrductRemak8());
+                    udiProductEntity.setGroupBuy(thrProductsAddDiResponse.getGroupBuy());
+                    udiRelevanceEntity.setGroupBuy(thrProductsAddDiResponse.getGroupBuy());
                     udiProductEntity.setNameCode(null);
                     udiProductService.updateUdiInfoByUuid(udiProductEntity);
                     UdiRelevanceEntity udiRelevanceEntity1 = new UdiRelevanceEntity();
diff --git a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailResultDao.java b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailResultDao.java
index 666072e5..e86b892e 100644
--- a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailResultDao.java
+++ b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailResultDao.java
@@ -30,4 +30,7 @@ public interface IoOrderDetailResultDao extends BaseMapperPlus<IoOrderDetailResu
     List<CptTraceOrderResponse> cptTrace(CptTraceRequest cptTraceRequest);
 
 
+    List<CptTraceOrderResponse> cptCodeTrace(CptTraceRequest cptTraceRequest);
+
+
 }
diff --git a/src/main/java/com/glxp/api/entity/basic/BasicCorpEntity.java b/src/main/java/com/glxp/api/entity/basic/BasicCorpEntity.java
index 8cb89382..23b545e9 100644
--- a/src/main/java/com/glxp/api/entity/basic/BasicCorpEntity.java
+++ b/src/main/java/com/glxp/api/entity/basic/BasicCorpEntity.java
@@ -99,7 +99,7 @@ public class BasicCorpEntity {
     private String thirdName4;
 
     /**
-     * 往来单位类型:1.客户,2:供应商,3:内部科室,4.特殊单据
+     * 往来单位类型:1.客户,2:供应商,3:内部科室,4.特殊往来
      */
     @TableField(value = "corpType")
     private Integer corpType;
diff --git a/src/main/java/com/glxp/api/entity/basic/BasicProductsEntity.java b/src/main/java/com/glxp/api/entity/basic/BasicProductsEntity.java
index b895b594..38372aac 100644
--- a/src/main/java/com/glxp/api/entity/basic/BasicProductsEntity.java
+++ b/src/main/java/com/glxp/api/entity/basic/BasicProductsEntity.java
@@ -348,6 +348,9 @@ public class BasicProductsEntity {
     @TableField(value = "remark")
     private String remark;
 
+    @TableField(value = "cphhhbh")
+    private String cphhhbh;
+
     public static final String COL_ID = "id";
 
     public static final String COL_UUID = "uuid";
diff --git a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java
index 168162a8..e712685a 100644
--- a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java
+++ b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java
@@ -95,7 +95,7 @@ public class UdiProductEntity {
 
     private Long relSupId;
 
-    private boolean groupBuy;
+    private Boolean groupBuy;
 
     private Long uid;
 
diff --git a/src/main/java/com/glxp/api/entity/thrsys/ThrProductsAddDiEntity.java b/src/main/java/com/glxp/api/entity/thrsys/ThrProductsAddDiEntity.java
index 37da2a18..ac96c20c 100644
--- a/src/main/java/com/glxp/api/entity/thrsys/ThrProductsAddDiEntity.java
+++ b/src/main/java/com/glxp/api/entity/thrsys/ThrProductsAddDiEntity.java
@@ -282,6 +282,11 @@ public class ThrProductsAddDiEntity {
     @ApiModelProperty(value = "关联ID主键")
     private String relId;
 
+    @TableField(value = "groupBuy")
+    @ApiModelProperty(value = "集采")
+    private Boolean groupBuy;
+
+
     /**
      * 1第三方2自增
      */
diff --git a/src/main/java/com/glxp/api/req/auth/FilterInvWarehouseRequest.java b/src/main/java/com/glxp/api/req/auth/FilterInvWarehouseRequest.java
index 85cbbd11..73790fd4 100644
--- a/src/main/java/com/glxp/api/req/auth/FilterInvWarehouseRequest.java
+++ b/src/main/java/com/glxp/api/req/auth/FilterInvWarehouseRequest.java
@@ -14,6 +14,9 @@ public class FilterInvWarehouseRequest extends ListPageRequest {
     private String code;
     private String name;
     private String deptCode;
+    /**
+     * 1:入账库,2:预验收库,3:寄售库
+     */
     private Integer advanceType;
     private Boolean isDefault;
     private Date updateTime;
diff --git a/src/main/java/com/glxp/api/req/basic/SupplementRequest.java b/src/main/java/com/glxp/api/req/basic/SupplementRequest.java
index de5f59ea..2f2d83af 100644
--- a/src/main/java/com/glxp/api/req/basic/SupplementRequest.java
+++ b/src/main/java/com/glxp/api/req/basic/SupplementRequest.java
@@ -5,7 +5,6 @@ import lombok.Data;
 //选入产品补充信息
 @Data
 public class SupplementRequest {
-
     //补充信息:
     private String basicPrductRemak1;
     private String basicPrductRemak2;
@@ -22,4 +21,5 @@ public class SupplementRequest {
     private String spmc;
     private String cpms;
     private String price;
+    private Boolean groupBuy;
 }
diff --git a/src/main/java/com/glxp/api/req/thrsys/AddThrDiProductsRequest.java b/src/main/java/com/glxp/api/req/thrsys/AddThrDiProductsRequest.java
index eb88c940..10df6f73 100644
--- a/src/main/java/com/glxp/api/req/thrsys/AddThrDiProductsRequest.java
+++ b/src/main/java/com/glxp/api/req/thrsys/AddThrDiProductsRequest.java
@@ -49,6 +49,7 @@ public class AddThrDiProductsRequest {
     private String basicPrductRemak8;
 
     private String deviceRecordKey;
+    private Boolean groupBuy;
 
 
 }
diff --git a/src/main/java/com/glxp/api/res/basic/CompanyProductRelevanceResponse.java b/src/main/java/com/glxp/api/res/basic/CompanyProductRelevanceResponse.java
index 4c53dcdd..d0236f8b 100644
--- a/src/main/java/com/glxp/api/res/basic/CompanyProductRelevanceResponse.java
+++ b/src/main/java/com/glxp/api/res/basic/CompanyProductRelevanceResponse.java
@@ -83,4 +83,6 @@ public class CompanyProductRelevanceResponse {
     private String basicPrductRemak6;
     private String basicPrductRemak7;
     private String basicPrductRemak8;
+
+    private String cphhhbh;
 }
diff --git a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java
index c9c732a0..6d7fa045 100644
--- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java
+++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java
@@ -119,7 +119,7 @@ public class UdiRelevanceResponse {
     private String syqsfxyjxmj;
     private String mjfs;
     private String categoryName;
-
+    private String cphhhbh;
 
     public int getBhzxxsbzsl() {
         if (bhzxxsbzsl == null || bhzxxsbzsl == 0) {
diff --git a/src/main/java/com/glxp/api/res/basic/UdiRlDlResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRlDlResponse.java
index 4e57f512..1fae38d9 100644
--- a/src/main/java/com/glxp/api/res/basic/UdiRlDlResponse.java
+++ b/src/main/java/com/glxp/api/res/basic/UdiRlDlResponse.java
@@ -45,6 +45,7 @@ public class UdiRlDlResponse {
     private String sptm;
     private Integer productType;
     private String mainId;
+    private String cphhhbh;
 
     public Integer getProductType() {
         if (productType == null) return 0
diff --git a/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java
index bdba6ef1..1a906bc6 100644
--- a/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java
+++ b/src/main/java/com/glxp/api/res/basic/UdiRlSupResponse.java
@@ -94,6 +94,6 @@ public class UdiRlSupResponse {
     private String classifyName;
 
     private boolean groupBuy;           //是否集采产品
-
+    private String cphhhbh;
     private Long uid;
 }
diff --git a/src/main/java/com/glxp/api/res/inv/InnerOrderPrintResponse.java b/src/main/java/com/glxp/api/res/inv/InnerOrderPrintResponse.java
index df71d503..d3063dd6 100644
--- a/src/main/java/com/glxp/api/res/inv/InnerOrderPrintResponse.java
+++ b/src/main/java/com/glxp/api/res/inv/InnerOrderPrintResponse.java
@@ -23,6 +23,7 @@ public class InnerOrderPrintResponse {
     private String ylqxzcrbarmc;
     private String zczbhhzbapzbh;
     private String warehouseName;
+    private String manufactory;
     private String warehouseCode;
     private String spaceCode;
     private String spaceName;
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java
index 2548ac42..571d3cde 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java
@@ -76,7 +76,10 @@ public class IoOrderDetailResultServiceImpl implements IoOrderDetailResultServic
 
     @Override
     public List<CptTraceOrderResponse> cptTrace(CptTraceRequest cptTraceRequest) {
-        return orderDetailResultDao.cptTrace(cptTraceRequest);
+        if (StrUtil.isNotEmpty(cptTraceRequest.getSerialNo())) {
+            return orderDetailResultDao.cptCodeTrace(cptTraceRequest);
+        } else
+            return orderDetailResultDao.cptTrace(cptTraceRequest);
     }
 
 }
diff --git a/src/main/java/com/glxp/api/service/purchase/impl/SupProductServiceImpl.java b/src/main/java/com/glxp/api/service/purchase/impl/SupProductServiceImpl.java
index 42f6e6e1..8119dc31 100644
--- a/src/main/java/com/glxp/api/service/purchase/impl/SupProductServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/purchase/impl/SupProductServiceImpl.java
@@ -147,10 +147,12 @@ public class SupProductServiceImpl extends ServiceImpl<SupProductDao, SupProduct
     public boolean insertRegistration(SupProductEntity companyEntity) {
         return supProductDao.insert(companyEntity) > 0 ? true : false;
     }
+
     @Override
     public int findProduct(SupProductEntity supProductEntity) {
         return supProductDao.findProduct(supProductEntity);
     }
+
     @Override
     public boolean deleteById(String id) {
         return supProductDao.deleteById(id);
diff --git a/src/main/java/com/glxp/api/service/sync/SpsSyncDownloadService.java b/src/main/java/com/glxp/api/service/sync/SpsSyncDownloadService.java
index c91c2f0f..e8a73bb4 100644
--- a/src/main/java/com/glxp/api/service/sync/SpsSyncDownloadService.java
+++ b/src/main/java/com/glxp/api/service/sync/SpsSyncDownloadService.java
@@ -295,7 +295,7 @@ public class SpsSyncDownloadService {
             }
             exportStatus = BasicExportStatusEntity.builder()
                     .id(CustomUtil.getId())
-                    .status(syncTime == null ? BasicExportStatusEnum.WAIT_TRIGGERED.getCode() : BasicExportStatusEnum.WAIT_BUILT.getCode())
+                    .status(BasicExportStatusEnum.WAIT_BUILT.getCode())
                     .idDatas(exportEnum.getKey())
                     .type(exportEnum.getRemark())
                     .scheduleType(0)
@@ -303,9 +303,9 @@ public class SpsSyncDownloadService {
                     .startTime(now)
                     .build();
             basicExportService.save(exportStatus);
-            if (syncTime != null) {
-                createFileMethod.apply(applicationContext.getBean(this.getClass()));
-            }
+//            if (syncTime != null) {
+            createFileMethod.apply(applicationContext.getBean(this.getClass()));
+//            }
         } else if (exportStatus.getStatus().equals(BasicExportStatusEnum.WAIT_BUILT.getCode())) {//文件待生成
             createFileMethod.apply(applicationContext.getBean(this.getClass()));
         }
diff --git a/src/main/java/com/glxp/api/service/thrsys/impl/ThrProductsAddDiService.java b/src/main/java/com/glxp/api/service/thrsys/impl/ThrProductsAddDiService.java
index 21651a2f..e6d4316a 100644
--- a/src/main/java/com/glxp/api/service/thrsys/impl/ThrProductsAddDiService.java
+++ b/src/main/java/com/glxp/api/service/thrsys/impl/ThrProductsAddDiService.java
@@ -122,7 +122,7 @@ public class ThrProductsAddDiService extends ServiceImpl<ThrProductsAddDiDao, Th
             thrProductsAddDiEntity.setYlqxzcrbarmc(productInfoEntity.getYlqxzcrbarmc());
             thrProductsAddDiEntity.setDeviceRecordKey(productInfoEntity.getDeviceRecordKey());
             thrProductsAddDiEntity.setZczbhhzbapzbh(productInfoEntity.getZczbhhzbapzbh());
-
+            thrProductsAddDiEntity.setGroupBuy(thrDiProductsRequest.getGroupBuy());
             //设置编辑区参数
             thrProductsAddDiEntity.setSptm(thrDiProductsRequest.getSptm());
             thrProductsAddDiEntity.setYbbm(thrDiProductsRequest.getYbbm());
@@ -134,7 +134,7 @@ public class ThrProductsAddDiService extends ServiceImpl<ThrProductsAddDiDao, Th
 
             thrProductsAddDiEntity.setCreateTime(date);
             thrProductsAddDiEntity.setUpdateTime(new Date());
-            thrProductsAddDiEntity.setStatus(1); //未审核
+            thrProductsAddDiEntity.setStatus(1); //..
             thrProductsAddDiEntity.setSelectThridSysStr(JSONUtil.toJsonStr(thrDiProductsRequest.getSelectThirdSys()));
             list.add(thrProductsAddDiEntity);
         }
diff --git a/src/main/java/com/glxp/api/upload/uploadController.java b/src/main/java/com/glxp/api/upload/uploadController.java
index d6ae82e8..4c46dd5b 100644
--- a/src/main/java/com/glxp/api/upload/uploadController.java
+++ b/src/main/java/com/glxp/api/upload/uploadController.java
@@ -1,10 +1,13 @@
 package com.glxp.api.upload;
 
+import cn.hutool.core.exceptions.ExceptionUtil;
 import com.glxp.api.common.enums.ResultEnum;
 import com.glxp.api.common.res.BaseResponse;
 import com.glxp.api.common.util.ResultVOUtils;
 import com.glxp.api.util.MinioUtil;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.exception.ExceptionUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestParam;
@@ -21,6 +24,7 @@ import java.util.UUID;
 /**
  * 上传文件控制器
  */
+@Slf4j
 @RestController
 public class uploadController {
 
@@ -41,7 +45,8 @@ public class uploadController {
      */
 
     @PostMapping("/udiwms/upload/pdf/template/jasper")
-    public BaseResponse uploadPDFTemplate(@RequestParam("file") MultipartFile file) throws UnsupportedEncodingException {
+    public BaseResponse uploadPDFTemplate(@RequestParam("file") MultipartFile file) {
+        log.error("上传jasper文件了");
         if (file.isEmpty()) {
             return ResultVOUtils.error(ResultEnum.DATA_ERROR, "上传文件不能为空");
         }
@@ -60,6 +65,8 @@ public class uploadController {
             file1.mkdirs();// 创建多层目录
         }
         file1 = new File(savePath + "/" + newName);
+
+        log.error("创建文件了");
         try {
             file.transferTo(file1);
             Map<String, String> rMap = new HashMap<>();
@@ -68,6 +75,7 @@ public class uploadController {
             return ResultVOUtils.success(rMap);
         } catch (IOException e) {
             e.printStackTrace();
+            log.error("异常" + ExceptionUtils.getStackTrace(e));
         }
         return ResultVOUtils.error(ResultEnum.DATA_ERROR, "上传失败");
     }
diff --git a/src/main/java/com/glxp/api/util/JasperUtils.java b/src/main/java/com/glxp/api/util/JasperUtils.java
index 3d5d1972..59ace894 100644
--- a/src/main/java/com/glxp/api/util/JasperUtils.java
+++ b/src/main/java/com/glxp/api/util/JasperUtils.java
@@ -2,12 +2,14 @@ package com.glxp.api.util;
 
 import cn.hutool.json.JSONUtil;
 import com.alibaba.fastjson.JSON;
+import lombok.extern.slf4j.Slf4j;
 import net.sf.jasperreports.engine.*;
 import net.sf.jasperreports.engine.export.ooxml.JRDocxExporter;
 import net.sf.jasperreports.engine.query.JsonQueryExecuterFactory;
 import net.sf.jasperreports.engine.util.JRLoader;
 import net.sf.jasperreports.export.SimpleExporterInput;
 import net.sf.jasperreports.export.SimpleOutputStreamExporterOutput;
+import org.apache.commons.lang3.exception.ExceptionUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
@@ -28,6 +30,7 @@ import java.util.Map;
  * @date 2021-11-10 22:23
  */
 @Component
+@Slf4j
 public class JasperUtils {
     private static Logger logger = LoggerFactory.getLogger(JasperUtils.class);
 
@@ -102,7 +105,7 @@ public class JasperUtils {
                 os.close();
             }
         } catch (Exception e) {
-
+            log.error(ExceptionUtils.getStackTrace(e));
             e.printStackTrace();
 
         }
diff --git a/src/main/java/com/glxp/api/util/SupplementVailUtil.java b/src/main/java/com/glxp/api/util/SupplementVailUtil.java
index 7ac1aea6..ea9f1c98 100644
--- a/src/main/java/com/glxp/api/util/SupplementVailUtil.java
+++ b/src/main/java/com/glxp/api/util/SupplementVailUtil.java
@@ -78,6 +78,13 @@ public class SupplementVailUtil {
                 }
             }
 
+            basicProductSetEntity = basicProductSetEntityMap.get("groupBuy");
+            if (isMustFill(type, basicProductSetEntity)) {
+                if (supplementRequest.getGroupBuy() == null) {
+                    return "请选择是否集采";
+                }
+            }
+
 
             basicProductSetEntity = basicProductSetEntityMap.get("basicPrductRemak1");
             if (isMustFill(type, basicProductSetEntity)) {
@@ -131,6 +138,15 @@ public class SupplementVailUtil {
                     if (!systemParamConfigEntity.getParamValue().equals("0")) {
                         return systemParamConfigEntity.getParamValue() + "不能为空";
                     }
+                } else {
+                    if (supplementRequest.getBasicPrductRemak6().equals("1")) {
+                        if (StrUtil.isEmpty(supplementRequest.getBasicPrductRemak8())) {
+                            SystemParamConfigEntity temp = systemParamConfigEntityMap.get("basicPrductRemak8");
+                            if (!temp.getParamValue().equals("0")) {
+                                return temp.getParamValue() + "不能为空";
+                            }
+                        }
+                    }
                 }
             }
             basicProductSetEntity = basicProductSetEntityMap.get("basicPrductRemak7");
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index f0db8fbc..a2bd2805 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -3,7 +3,7 @@ server:
 spring:
   datasource:
     driver-class-name: com.p6spy.engine.spy.P6SpyDriver
-    jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_spms_pt?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
+    jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_spms_ct?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
     username: root
     password: 123456
     hikari:
diff --git a/src/main/resources/application-pro.yml b/src/main/resources/application-pro.yml
index 7813e7d6..cbbed480 100644
--- a/src/main/resources/application-pro.yml
+++ b/src/main/resources/application-pro.yml
@@ -13,7 +13,7 @@ spring:
   redis:
     database: 10
     host: 127.0.0.1
-    port: 6404
+    port: 6379
     #    password: 123456
     timeout: 300
     jedis:
@@ -43,15 +43,20 @@ logging:
   level:
     com.glxp.api.dao: debug
 
-file_path: /udi/udiwms/udiwmsfile/
-back_file_path: /share/udisps/back/
-err_path: /udi/udiwms/err/
+
+file_path: D:/udi/udiwms/udiwmsfile/
+file_lpath: /udiwms/image/register/file/getImage
+file_url: http://127.0.0.1:9993
+minio_path: /udi
+minio_url: http://139.9.219.60:9000
+err_path: d:/udi/udiwms/err/
+back_file_path: d:/share/udisps/back/
 UDI_KEY: 6b137c66-6286-46c6-8efa-c2f5dd9237df
 UDI_SERVER_URL: https://www.udims.com/UDI_DL_Server_test
 SPMS_KEY: lCOdWCBKS6Kw45wdnnqUTELXyuSKnXEs
 
 API_KEY: 1101
 API_SECRET: zBITspLNvuoEd4FaamlSoqxRHmNsmQ9L
-WEB_TITLE: 漳州市中医院
+WEB_TITLE: 大田县总医院
 
 WEBSOCKET_TOKEN: 07rKFDFkQvBkbxgc7aUBlONo4gWNdx8b
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index cc8bc4c7..8749172a 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -7,6 +7,7 @@ spring:
     multipart:
       max-file-size: 200MB
       max-request-size: 200MB
+      location: D:/tmp
 mybatis-plus:
   mapper-locations: classpath:mybatis/mapper/*/*.xml
   configuration:
@@ -31,6 +32,6 @@ server:
   tomcat:
     max-http-form-post-size: 100MB
     max-http-post-size: 100MB
-  max-http-header-size: 100MB
+    max-http-header-size: 100MB
 
 
diff --git a/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml b/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml
index 3e7a851e..279da12d 100644
--- a/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml
+++ b/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml
@@ -92,6 +92,7 @@
                basic_products.syqsfxyjxmj,
                basic_products.mjfs,
                basic_products.categoryName,
+               basic_products.cphhhbh,
                basic_products.hchzsb
         FROM (company_product_relevance
                 inner JOIN basic_udirel
@@ -674,6 +675,9 @@
             <if test="basicPrductRemak8 != null">
                 basicPrductRemak8=#{basicPrductRemak8},
             </if>
+            <if test="groupBuy != null">
+                groupBuy=#{groupBuy},
+            </if>
             <if test="updateTime != null">
                 updateTime=#{updateTime},
             </if>
diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml
index fdb9a8a9..d821fe9b 100644
--- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml
+++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml
@@ -65,7 +65,8 @@
                basic_products.sfwwjbz,
                basic_products.syqsfxyjxmj,
                basic_products.mjfs,
-               basic_products.categoryName
+               basic_products.categoryName,
+               basic_products.cphhhbh
         FROM basic_udirel
                      inner JOIN basic_products
                 ON basic_products.uuid = basic_udirel.uuid
@@ -325,7 +326,7 @@
                basic_products.sfwwjbz,
                basic_products.syqsfxyjxmj,
                basic_products.mjfs,
-               basic_products.categoryName,
+               basic_products.categoryName,basic_products.cphhhbh,
                company_product_relevance.unitFk,
                basic_corp.name companyName
         FROM basic_udirel
@@ -463,7 +464,8 @@
                basic_products.mjfs,
                basic_products.categoryName,
                basic_products.groupBuy,
-               basic_products.basicPrductRemak8
+               basic_products.basicPrductRemak8,
+        basic_products.cphhhbh
         FROM basic_products
                      inner JOIN basic_udirel
                 ON basic_products.uuid = basic_udirel.uuid
@@ -645,7 +647,7 @@
                basic_products.sfwwjbz,
                basic_products.syqsfxyjxmj,
                basic_products.mjfs,
-               basic_products.categoryName
+               basic_products.categoryName,basic_products.cphhhbh
         FROM basic_products
                      inner JOIN basic_udirel
                 ON basic_products.uuid = basic_udirel.uuid
@@ -820,7 +822,7 @@
                basic_products.sfwwjbz,
                basic_products.syqsfxyjxmj,
                basic_products.mjfs,
-               basic_products.categoryName
+               basic_products.categoryName,basic_products.cphhhbh
         from basic_udirel
                      INNER JOIN basic_products on basic_udirel.uuid = basic_products.uuid
         <where>
@@ -1254,7 +1256,7 @@
                basic_products.sfwwjbz,
                basic_products.syqsfxyjxmj,
                basic_products.mjfs,
-               basic_products.categoryName
+               basic_products.categoryName,basic_products.cphhhbh
         FROM basic_udirel
                      INNER JOIN basic_products
                 on basic_udirel.uuid = basic_products.uuid
@@ -1374,7 +1376,7 @@
                basic_products.mjfs,
                basic_products.categoryName,
                company_product_relevance.unitFk,
-               basic_corp.name companyName
+               basic_corp.name companyName,basic_products.cphhhbh
         FROM basic_udirel
                      inner JOIN basic_products
                 ON basic_products.uuid = basic_udirel.uuid
diff --git a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml
index 2059dd61..51d0c467 100644
--- a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml
+++ b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml
@@ -102,6 +102,7 @@
                basic_products.basicPrductRemak6,
                basic_products.basicPrductRemak7,
                basic_products.basicPrductRemak8,
+               basic_products.cphhhbh,
                basic_products.sfwblztlcp,
                basic_products.cgzmraqxgxx,
                basic_products.sfbjwycxsy,
@@ -109,9 +110,8 @@
                basic_products.sfwwjbz,
                basic_products.syqsfxyjxmj,
                basic_products.mjfs,
-               basic_products.categoryName,
+               basic_products.categoryName,basic_products.cphhhbh,
                basic_udirel.groupBuy,
-
                basic_udirel.id   as uid,
                basic_corp.name      companyName
         FROM company_product_relevance
@@ -377,14 +377,12 @@
 
     <select id="filterCompanyProduct" parameterType="com.glxp.api.req.basic.FilterCompanyProductRelevanceRequest"
             resultType="com.glxp.api.req.inout.ioOrderUploadRequest">
-        SELECT
-        basic_udirel.id,
-        basic_udirel.uuid as udiRlIdFk
-        FROM
-        company_product_relevance
-        INNER JOIN basic_udirel ON company_product_relevance.udiRlIdFk = basic_udirel.id
-        INNER JOIN basic_products ON basic_udirel.uuid = basic_products.uuid
-        LEFT JOIN basic_corp ON basic_corp.erpId = company_product_relevance.customerId
+        SELECT basic_udirel.id,
+               basic_udirel.uuid as udiRlIdFk
+        FROM company_product_relevance
+                     INNER JOIN basic_udirel ON company_product_relevance.udiRlIdFk = basic_udirel.id
+                     INNER JOIN basic_products ON basic_udirel.uuid = basic_products.uuid
+                     LEFT JOIN basic_corp ON basic_corp.erpId = company_product_relevance.customerId
         <where>
             <if test="customerId != '' and customerId != null">
                 and company_product_relevance.customerId = #{customerId}
diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml
index 2e685cdb..2fd9e156 100644
--- a/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml
+++ b/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml
@@ -89,7 +89,8 @@
                basic_corp.creditNo,
                io.action,
                io.fromInvCode,
-               bbt.corpType,iodr.reCount count
+               bbt.corpType,
+               iodr.reCount      count
         from io_order_detail_result iodr
                      INNER JOIN io_order io on iodr.orderIdFk = io.billNo
                      left join basic_corp on io.fromCorp = basic_corp.erpId
@@ -107,4 +108,36 @@
             </if>
         </where>
     </select>
+    <select id="cptCodeTrace" parameterType="com.glxp.api.req.inout.CptTraceRequest"
+            resultType="com.glxp.api.res.inout.CptTraceOrderResponse">
+        select io.billNo,
+               io.createTime,
+               io.mainAction,
+               bbt.`name`        billType,
+               basic_corp.`name` fromCorpName,
+               basic_corp.creditNo,
+               io.action,
+               io.fromInvCode,
+               bbt.corpType,
+               iodr.reCount      count
+        from io_code iodr
+                     INNER JOIN io_order io on iodr.orderId = io.billNo
+                     left join basic_corp on io.fromCorp = basic_corp.erpId
+                     INNER JOIN basic_bussiness_type bbt on io.action = bbt.action
+        <where>
+            and bbt.inStock = true
+            <if test="batchNo != null and batchNo != ''">
+                AND iodr.batchNo = #{batchNo}
+            </if>
+            <if test="diList != null and diList.size() != 0">
+                AND iodr.`nameCode` in
+                <foreach collection="diList" index="index" item="item" open="(" close=")" separator=",">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="serialNo != null and serialNo != ''">
+                AND iodr.serialNo = #{serialNo}
+            </if>
+        </where>
+    </select>
 </mapper>
diff --git a/src/main/resources/mybatis/mapper/inv/InvInnerOrderPrintDao.xml b/src/main/resources/mybatis/mapper/inv/InvInnerOrderPrintDao.xml
index 38a6c2f3..a1aacfb0 100644
--- a/src/main/resources/mybatis/mapper/inv/InvInnerOrderPrintDao.xml
+++ b/src/main/resources/mybatis/mapper/inv/InvInnerOrderPrintDao.xml
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.glxp.api.dao.inv.InvInnerOrderPrintDao">
-    <resultMap id="BaseResultMap" autoMapping="true"  type="com.glxp.api.entity.inv.InvInnerOrderPrintEntity">
+    <resultMap id="BaseResultMap" autoMapping="true" type="com.glxp.api.entity.inv.InvInnerOrderPrintEntity">
         <!--@mbg.generated-->
         <!--@Table inv_inner_order_print-->
-<!--        <id column="id" jdbcType="INTEGER" property="id"/>-->
+        <!--        <id column="id" jdbcType="INTEGER" property="id"/>-->
         <result column="orderIdFk" jdbcType="VARCHAR" property="orderIdFk"/>
         <result column="udiCode" jdbcType="VARCHAR" property="udiCode"/>
         <result column="productId" jdbcType="VARCHAR" property="productId"/>
@@ -54,6 +54,7 @@
                basic_products.cpmctymc,
                basic_products.ylqxzcrbarmc,
                basic_products.zczbhhzbapzbh,
+               basic_products.manufactory,
                basic_products.ggxh
 
         FROM inv_inner_order_print
diff --git a/src/main/resources/mybatis/mapper/thrsys/ThrProductsAddDiDao.xml b/src/main/resources/mybatis/mapper/thrsys/ThrProductsAddDiDao.xml
index 4e113e47..ede48012 100644
--- a/src/main/resources/mybatis/mapper/thrsys/ThrProductsAddDiDao.xml
+++ b/src/main/resources/mybatis/mapper/thrsys/ThrProductsAddDiDao.xml
@@ -16,7 +16,7 @@
                                          qxlb, tyshxydm, zczbhhzbapzbh,
                                          ylqxzcrbarmc, ylqxzcrbarywmc, updateTime,
                                          supName, model, `standard`,
-                                         qtbm, zczyxqz, relId, type, deviceRecordKey)
+                                         qtbm, zczyxqz, relId, type, deviceRecordKey, groupBuy)
                 values
         <foreach collection="list" index="index" item="item" separator=",">
             (#{item.uuid},
@@ -25,8 +25,6 @@
              #{item.auditTime},
              #{item.remark},
              #{item.auditUser},
-
-
              #{item.status},
              #{item.thirdSysFk},
              #{item.code},
@@ -44,7 +42,7 @@
                     , #{item.flbm}, #{item.qxlb}, #{item.tyshxydm}, #{item.zczbhhzbapzbh}
                     , #{item.ylqxzcrbarmc}, #{item.ylqxzcrbarywmc}, #{item.updateTime}, #{item.supName}, #{item.model}
                     , #{item.standard}, #{item.qtbm}, #{item.standard}, #{item.zczyxqz}, #{item.type},
-             #{item.deviceRecordKey})
+             #{item.deviceRecordKey}, #{item.groupBuy})
         </foreach>
     </insert>
 
@@ -126,6 +124,9 @@
             <if test="selectThridSysStr != null">
                 `selectThridSysStr`=#{selectThridSysStr},
             </if>
+            <if test="groupBuy != null">
+                `groupBuy`=#{groupBuy},
+            </if>
         </trim>
         WHERE id = #{id}
     </update>
@@ -231,9 +232,9 @@
             <if test="status != null">
                 AND tdi.status = #{status}
             </if>
-            <if test="diType != null">
-                AND updateTime &lt;= "2023-04-5 00:00:00"
-            </if>
+<!--            <if test="diType != null">-->
+        <!--                AND updateTime &lt;= "2023-04-5 00:00:00"-->
+        <!--            </if>-->
         </where>
     </select>
 </mapper>
diff --git a/src/main/resources/schemas/schema_v2.3.sql b/src/main/resources/schemas/schema_v2.3.sql
index 68b8c452..f1ac0ad1 100644
--- a/src/main/resources/schemas/schema_v2.3.sql
+++ b/src/main/resources/schemas/schema_v2.3.sql
@@ -623,39 +623,6 @@ INSERT ignore INTO `sys_param_config`(`id`, `parentId`, `paramName`, `paramKey`,
 VALUES (20078, 0, '是否启用价格先进先出策略', 'price_fifo', '1', 1, 0, '0:否;1:是', '2023-10-10 10:10:08');
 
 
-
-INSERT ignore INTO `auth_menu`(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`,
-                               `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`,
-                               `create_time`, `update_by`, `update_time`, `remark`)
-VALUES (2006, '首页111111', 0, 20, 'home/11111', NULL, NULL, 1, 0, 'M', '1', '0', NULL, NULL, '超级用户',
-        '2023-11-17 09:27:27', NULL, NULL, NULL);
-INSERT ignore INTO `auth_menu`(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`,
-                               `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`,
-                               `create_time`, `update_by`, `update_time`, `remark`)
-VALUES (2007, '已对照产品', 2006, 1, NULL, NULL, NULL, 1, 0, 'F', '0', '0', 'home:index:product', NULL, '超级用户',
-        '2023-11-17 09:30:47', NULL, NULL, NULL);
-INSERT ignore INTO `auth_menu`(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`,
-                               `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`,
-                               `create_time`, `update_by`, `update_time`, `remark`)
-VALUES (2008, '库存预警', 2006, 2, NULL, NULL, NULL, 1, 0, 'F', '0', '0', 'home:index:invWarn', NULL, '超级用户',
-        '2023-11-17 09:35:08', NULL, NULL, NULL);
-INSERT ignore INTO `auth_menu`(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`,
-                               `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`,
-                               `create_time`, `update_by`, `update_time`, `remark`)
-VALUES (2009, '资质预警', 2006, 3, NULL, NULL, NULL, 1, 0, 'F', '0', '0', 'home:index:certWarn', NULL, '超级用户',
-        '2023-11-17 09:35:24', NULL, NULL, NULL);
-INSERT ignore INTO `auth_menu`(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`,
-                               `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`,
-                               `create_time`, `update_by`, `update_time`, `remark`)
-VALUES (2010, '待办事项', 2006, 4, NULL, NULL, NULL, 1, 0, 'F', '0', '0', 'home:index:todo', NULL, '超级用户',
-        '2023-11-17 09:36:08', NULL, NULL, NULL);
-INSERT ignore INTO `auth_menu`(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`,
-                               `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`,
-                               `create_time`, `update_by`, `update_time`, `remark`)
-VALUES (2011, '待审核单据·', 2006, 5, NULL, NULL, NULL, 1, 0, 'F', '0', '0', 'home:index:ioAudit', NULL, '超级用户',
-        '2023-11-17 09:36:26', NULL, NULL, NULL);
-
-
 CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'inPreInBack', 'tinyint', 1);
 
 
@@ -695,3 +662,7 @@ CALL Pro_Temp_ColumnWork('io_order_detail_code', 'sterDate', 'varchar(255)', 1);
 
 CALL Pro_Temp_ColumnWork('io_order_detail_result', 'sterBatchNo', 'varchar(255)', 1);
 CALL Pro_Temp_ColumnWork('io_order_detail_result', 'sterDate', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('basic_products', 'cphhhbh', 'varchar(255)', 1);
+
+
+CALL Pro_Temp_ColumnWork('thr_products_add_di', 'groupBuy', 'tinyint', 1);