Browse Source

代码合并19-05-08

chenw 7 years ago
parent
commit
35b2e6092a

+ 2 - 0
src/main/java/com/uas/erp/schedular/UasSchedulingApplication.java

@@ -1,5 +1,6 @@
 package com.uas.erp.schedular;
 
+import com.uas.erp.schedular.support.BackupDBFileUtils;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.builder.SpringApplicationBuilder;
 
@@ -10,6 +11,7 @@ import org.springframework.boot.builder.SpringApplicationBuilder;
 public class UasSchedulingApplication {
 
     public static void main(String[] args) {
+        BackupDBFileUtils.init();
         new SpringApplicationBuilder(UasSchedulingApplication.class).web(true).run(args);
     }
 

+ 11 - 0
src/main/java/com/uas/erp/schedular/b2b/domain/PurchaseDetail.java

@@ -67,6 +67,17 @@ public class PurchaseDetail {
 	//旧料规格
 	private String pr_oldspec;
 
+	//物料承认状态
+	private String pd_prmaterial;
+
+	public String getPd_prmaterial() {
+		return pd_prmaterial;
+	}
+
+	public void setPd_prmaterial(String pd_prmaterial) {
+		this.pd_prmaterial = pd_prmaterial;
+	}
+
 	public String getPr_oldcode() {
 		return pr_oldcode;
 	}

+ 3 - 2
src/main/java/com/uas/erp/schedular/b2b/task/SaleDownTask.java

@@ -78,9 +78,10 @@ public class SaleDownTask extends AbstractTask {
             sqls.add("update SaleDown set (sa_custid,sa_custcode,sa_custname,sa_apcustcode,sa_apcustname,sa_shcustcode,sa_shcustname,sa_sellerid,sa_seller,sa_sellercode)=(select cu_id,cu_code,cu_name,cu_arcode,cu_arname,cu_shcustcode,cu_shcustname,cu_sellerid,cu_sellername,em_code from customer left join employee on em_id=cu_sellerid where cu_uu=sa_customeruu) where sa_id in ("
                     + idStr.toString() + ")");
             sqls.add("merge into SaleDownDetail d " +
-                    "using (select distinct pc_prodid,pc_prodcode,pc_custproddetail,pc_custprodspec,pc_custprodcode from saledown " +
+                    "using (select distinct pc_prodid,pc_prodcode,pc_custproddetail,pc_custprodspec,pc_custprodcode,pc_custcode from saledown " +
                     "inner join productcustomer on pc_custcode = sa_custcode and sa_id in (" + idStr.toString() + ")) p " +
-                    "on (d.sd_custprodcode = p.pc_custprodcode and sd_said in (" + idStr.toString() + ")) " +
+                    "on (d.sd_custprodcode = p.pc_custprodcode and sd_said in (" + idStr.toString() + ")" +
+                    " and not exists(select count(1) from productcustomer t where t.pc_custcode=p.pc_custcode and t.pc_custprodcode= D.sd_custprodcode group by pc_custcode,pc_custprodcode HAVING count(1) > 1)) " +
                     "when matched then " +
                     "update set d.sd_prodid = p.pc_prodid,d.sd_prodcode = p.pc_prodcode,d.sd_custproddetail = p.pc_custproddetail,d.sd_prodcustcode = p.pc_custprodspec");
             // 更新客户采购订单明细中的物料,客户物料编号与我司编码一致的料号

+ 2 - 0
src/main/java/com/uas/erp/schedular/service/ScheduledTaskService.java

@@ -5,6 +5,7 @@ import com.uas.erp.schedular.entity.Master;
 import com.uas.erp.schedular.entity.MasterTaskConfigEntity;
 import com.uas.erp.schedular.entity.MasterTaskConfigId;
 import com.uas.erp.schedular.repository.MasterTaskConfigRepository;
+import com.uas.erp.schedular.support.BackupDBFileUtils;
 import com.uas.erp.schedular.task.support.MasterTaskConfig;
 import com.uas.erp.schedular.task.support.RefreshableScheduledTaskRegistrar;
 import com.uas.erp.schedular.task.support.TaskConfig;
@@ -63,6 +64,7 @@ public class ScheduledTaskService {
 
     public void save(List<MasterTaskConfigEntity> entities) {
         entities = masterTaskConfigRepository.save(entities);
+        BackupDBFileUtils.createFile();
         for (MasterTaskConfigEntity entity : entities) {
             refreshConfig(entity);
         }

+ 3 - 0
src/main/java/com/uas/erp/schedular/service/SettingService.java

@@ -2,6 +2,7 @@ package com.uas.erp.schedular.service;
 
 import com.uas.erp.schedular.entity.Setting;
 import com.uas.erp.schedular.repository.SettingRepository;
+import com.uas.erp.schedular.support.BackupDBFileUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -31,6 +32,7 @@ public class SettingService {
 
     public void save(Setting setting) {
         settingRepository.save(setting);
+        BackupDBFileUtils.createFile();
     }
 
     public void save(List<Setting> settings) {
@@ -39,6 +41,7 @@ public class SettingService {
 
     public void delete(Setting setting) {
         settingRepository.delete(setting);
+        BackupDBFileUtils.createFile();
     }
 
 }

+ 42 - 0
src/main/java/com/uas/erp/schedular/support/BackupDBFileUtils.java

@@ -0,0 +1,42 @@
+package com.uas.erp.schedular.support;
+
+import org.apache.commons.io.FileUtils;
+
+import java.io.File;
+import java.io.IOException;
+
+/**
+ * @Author: h2数据库备份
+ * @Date: Created in 15:44 2019/02/21.
+ */
+public class BackupDBFileUtils {
+
+    public static void createFile() {
+        copyFile("/home/uas/data/uas_schedular.mv.db", "/home/uas/backupdb/uas_schedular.mv.db");
+        copyFile("/home/uas/data/uas_schedular.trace.db", "/home/uas/backupdb/uas_schedular.trace.db");
+    }
+
+    public static void reserveFile() {
+        copyFile("/home/uas/backupdb/uas_schedular.mv.db", "/home/uas/data/uas_schedular.mv.db");
+        copyFile("/home/uas/backupdb/uas_schedular.trace.db", "/home/uas/data/uas_schedular.trace.db");
+    }
+
+    private static void copyFile(String sourcePath, String targetPath) {
+        File source = new File(sourcePath);
+        File target = new File(targetPath);
+        if (source.exists()) {
+            try {
+                FileUtils.copyFile(source, target);
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    public static void init() {
+        File file = new File("/home/uas/backupdb/uas_schedular.mv.db");
+        if (!file.exists()) {
+            createFile();
+        }
+    }
+}

+ 1 - 0
src/main/java/com/uas/erp/schedular/task/support/MasterTaskRunner.java

@@ -50,6 +50,7 @@ public class MasterTaskRunner implements Runnable {
         } catch (InvocationTargetException e) {
             // 记录错误日志
             logger.error(StringUtil.substr(e.getTargetException().getMessage(), 0, 500), args);
+            logger.error("MasterTaskRunner报错:" + e);
         } catch (Exception e) {
             logger.error(StringUtil.substr(e.getMessage(), 0, 500), args);
         } finally {