diff --git a/fill-manager/src/main/bin/shutdown.sh b/fill-manager/src/main/bin/shutdown.sh
index d52ea5362289039f7146296ee004714283da3227..29c69e6a205067f7eee77e9062b15aff37d62122 100644
--- a/fill-manager/src/main/bin/shutdown.sh
+++ b/fill-manager/src/main/bin/shutdown.sh
@@ -1,5 +1,4 @@
 #! /bin/sh
-source /etc/profile
 PORT="@profiles.server.port@"
 BASEDIR=`dirname $0`
 BASEDIR=`(cd "$BASEDIR"; pwd)`
@@ -15,12 +14,12 @@ fi
 pid=`ps ax | grep -i "$MAIN_CLASS"  | grep java | grep -v grep | awk '{print $1}'`
 if [ -z "$pid" ] ; then
         echo "No Server running."
-        exit -1;
+        exit $FAIL;
 fi
 
 echo "stoping application $PROJECT_NAME......"
 
-kill -9 ${pid}
+kill -15 ${pid}
 
 echo "Send shutdown request to Server $PROJECT_NAME OK"
 
diff --git a/fill-manager/src/main/bin/start.sh b/fill-manager/src/main/bin/start.sh
index 72bb712d2dade759cb49fa174d62daf3f0c05ff4..03bd46626fbd32bb778c7e26c0f8946bd1e3950a 100644
--- a/fill-manager/src/main/bin/start.sh
+++ b/fill-manager/src/main/bin/start.sh
@@ -1,5 +1,4 @@
 #!/bin/sh
-source /etc/profile
 PORT="@profiles.server.port@"
 BASEDIR=`dirname $0`/..
 BASEDIR=`(cd "$BASEDIR"; pwd)`
@@ -27,7 +26,6 @@ fi
 if [ -z "$JAVACMD" ] ; then
   if [ -n "$JAVA_HOME" ] ; then
     if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
-      # IBM's JDK on AIX uses strange locations for the executables
       JAVACMD="$JAVA_HOME/jre/sh/java"
     else
       JAVACMD="$JAVA_HOME/bin/java"
diff --git a/fill-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceServiceImpl.java b/fill-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceServiceImpl.java
index 0187fc2fb96aac292b2d3d805d96d2a9ae12400d..8e311eb0bc83c009bc3adac29aa17a83d2d15273 100644
--- a/fill-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceServiceImpl.java
+++ b/fill-manager/src/main/java/com/mortals/xhx/module/device/service/impl/DeviceServiceImpl.java
@@ -44,7 +44,7 @@ public class DeviceServiceImpl extends AbstractCRUDServiceImpl<DeviceDao, Device
         DevicePdu devicePdu = new DevicePdu();
         BeanUtils.copyProperties(entity, devicePdu, BeanUtil.getNullPropertyNames(entity));
 
-        String productName = GlobalSysInfo.getParamValue(Constant.PARAMS_PRODUCT_NAME, "鏁板瓧濉崟鏈�");
+        String productName = GlobalSysInfo.getParamValue(Constant.PARAMS_PRODUCT_NAME, "濉崟鏈�");
         devicePdu.setProductName(productName);
 
         Rest<RespData<List<DevicePdu>>> rest = deviceFeign.list(devicePdu);
diff --git a/fill-manager/src/main/java/com/mortals/xhx/module/matter/service/impl/MatterDatumServiceImpl.java b/fill-manager/src/main/java/com/mortals/xhx/module/matter/service/impl/MatterDatumServiceImpl.java
index 63238299a183c6e777d206e8fbf84e13035a4040..b534be3ac8cc8436bedd2ce0aa0f2e7b3860aaf3 100644
--- a/fill-manager/src/main/java/com/mortals/xhx/module/matter/service/impl/MatterDatumServiceImpl.java
+++ b/fill-manager/src/main/java/com/mortals/xhx/module/matter/service/impl/MatterDatumServiceImpl.java
@@ -108,10 +108,6 @@ public class MatterDatumServiceImpl extends AbstractCRUDServiceImpl<MatterDatumD
         super.saveAfter(entity, context);
     }
 
-    @Override
-    protected void updateBefore(MatterDatumEntity entity, Context context) throws AppException {
-        super.updateBefore(entity, context);
-    }
 
     @Override
     protected void updateAfter(MatterDatumEntity entity, Context context) throws AppException {
@@ -149,6 +145,7 @@ public class MatterDatumServiceImpl extends AbstractCRUDServiceImpl<MatterDatumD
 
     @Override
     protected void saveBefore(MatterDatumEntity entity, Context context) throws AppException {
+        super.saveBefore(entity, context);
         if (StringUtils.isEmpty(entity.getFileUrl())) {
             throw new AppException("濉崟闄勪欢涓嶈兘涓虹┖");
         }
@@ -176,9 +173,41 @@ public class MatterDatumServiceImpl extends AbstractCRUDServiceImpl<MatterDatumD
             parseDocxToJson(entity);
         }
 
-        super.saveBefore(entity, context);
+
+    }
+
+    @Override
+    protected void updateBefore(MatterDatumEntity entity, Context context) throws AppException {
+        super.updateBefore(entity, context);
+        //鍒ゆ柇涓嬫ā鏉挎槸鍚︽洿鏂颁簡锛屽鏋滄洿鏂颁簡 鍒欓噸鏂扮敓鎴愯〃鍗�
+        MatterDatumEntity beforeMatterDatumEntity = this.get(entity.getId());
+        if (!ObjectUtils.isEmpty(entity.getTemplatePath()) && !entity.getTemplatePath().equals(beforeMatterDatumEntity.getTemplatePath())) {
+            //鍒犻櫎鍘熷鏂囦欢
+            String realFile = uploadService.getFilePath(beforeMatterDatumEntity.getTemplatePath());
+            if (FileUtil.isFile(realFile)) {
+                FileUtil.del(realFile);
+            }
+            //閲嶆柊缂栬瘧鏇存柊
+            parseDocxToJson(entity);
+        }
+
+        //鏇存柊棰勮鍥剧墖
+        if (!ObjectUtils.isEmpty(entity.getFileUrl()) && !entity.getTemplatePath().equals(beforeMatterDatumEntity.getTemplatePath())) {
+            String rootPath = this.filePath.endsWith("/") ? this.filePath : this.filePath + "/";
+            String prePath = "file/preview/";
+            String newName = genPreviewPath(rootPath, prePath, entity.getFileUrl());
+            entity.setFilePreViewUrl(prePath + newName);
+        }
+
+        if (!ObjectUtils.isEmpty(entity.getSamplePath()) && !entity.getSamplePath().equals(beforeMatterDatumEntity.getSamplePath())) {
+            String rootPath = this.filePath.endsWith("/") ? this.filePath : this.filePath + "/";
+            String prePath = "file/preview/";
+            String newName = genPreviewPath(rootPath, prePath, entity.getSamplePath());
+            entity.setPreViewPath(prePath + newName);
+        }
     }
 
+
     private String genPreviewPath(String rootPath, String prePath, String tempPath) {
         //鐢熸垚鏍疯〃棰勮鍥剧墖
         String samplePath = rootPath + tempPath;
@@ -193,11 +222,11 @@ public class MatterDatumServiceImpl extends AbstractCRUDServiceImpl<MatterDatumD
         String extName = FileUtil.getSuffix(samplePath);
         if (this.isExsitArry(extName, word)) {
             WordUtil.convertWordToJPEG(samplePath, filePathAll);
-        }else if(this.isExsitArry(extName, pdf)){
-           WordUtil.pdfToImages(samplePath,filePathAll);
-        }else if(this.isExsitArry(extName,imgs)){
+        } else if (this.isExsitArry(extName, pdf)) {
+            WordUtil.pdfToImages(samplePath, filePathAll);
+        } else if (this.isExsitArry(extName, imgs)) {
             try {
-                com.mortals.framework.util.FileUtil.copyFile(samplePath,filePathAll);
+                com.mortals.framework.util.FileUtil.copyFile(samplePath, filePathAll);
             } catch (FileNotFoundException e) {
                 throw new RuntimeException(e);
             }