From aa0161bf05195ccb00bc1d8da4b1b8218f93f4d3 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期六, 04 十一月 2023 16:14:18 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/priOnline2/priOnline.html                       |  297 ++++----
 src/main/webapp/static/js/priOnline2/priOnline.js                     |   68 +
 src/main/resources/mapper/CstmrMapper.xml                             |   95 +-
 src/main/webapp/views/priOnline2/priOnline_check.html                 |  473 ++++++------
 src/main/java/com/zy/crm/manager/entity/ProcessPermissions.java       |    6 
 src/main/java/com/zy/crm/manager/entity/PriOnline2.java               |   12 
 src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java |  343 +++------
 src/main/java/com/zy/crm/manager/controller/PlanController.java       |   27 
 src/main/java/com/zy/crm/common/model/SettleDto.java                  |   73 +-
 src/main/resources/mapper/PriOnline2Mapper.xml                        |    2 
 src/main/webapp/views/priOnline2/priOnline_detail.html                |  640 +++++++++--------
 src/main/java/com/zy/crm/manager/utils/SmsUtils.java                  |    2 
 src/main/webapp/views/priOnline2/priOnline_more.html                  |   11 
 src/main/webapp/views/processPermissions/processPermissions.html      |    6 
 14 files changed, 1,005 insertions(+), 1,050 deletions(-)

diff --git a/src/main/java/com/zy/crm/common/model/SettleDto.java b/src/main/java/com/zy/crm/common/model/SettleDto.java
index ce79013..c9c1066 100644
--- a/src/main/java/com/zy/crm/common/model/SettleDto.java
+++ b/src/main/java/com/zy/crm/common/model/SettleDto.java
@@ -30,7 +30,27 @@
 
     private Boolean curr;
 
-    public static List<SettleDto> init(Plan plan, User manager,User planLeader) {
+    public static List<SettleDto> InItFlowPath(List<User> users, List<String> names, int nodes) {
+        List<SettleDto> list = new ArrayList<>();
+        for (int i = 0; i < nodes; i++) {
+            SettleDto dto = new SettleDto();
+            dto.setStep(i);
+            if (i == 0) {
+                dto.setTitle("寮�濮�");
+                dto.setMsg(users.get(i).getUsername() + names.get(i));
+                dto.setTime(DateUtils.convert(new Date()));
+                dto.setCurr(Boolean.TRUE);
+            } else {
+                dto.setTitle(names.get(i));
+            }
+            dto.setUserId(users.get(i).getId());
+            dto.setUsername(users.get(i).getUsername());
+            list.add(dto);
+        }
+        return list;
+    }
+
+    public static List<SettleDto> init(Plan plan, User manager, User planLeader) {
         List<SettleDto> list = new ArrayList<>();
         for (int i = 1; i < 6; i++) {
             SettleDto dto = new SettleDto();
@@ -45,12 +65,6 @@
                     dto.setCurr(Boolean.TRUE);
                     list.add(dto);
                     break;
-//                case 2:
-//                    dto.setTitle("缁勯暱瀹℃牳");
-//                    dto.setUserId(manager.getId());
-//                    dto.setUsername(manager.getNickname());
-//                    list.add(dto);
-//                    break;
                 case 2:
                     dto.setTitle("鍞墠瀹℃牳");
                     dto.setUserId(planLeader.getId());
@@ -74,7 +88,7 @@
         return list;
     }
 
-    public static List<SettleDto> initPriQuote(Plan plan, User manager ,User president,User user) {
+    public static List<SettleDto> initPriQuote(Plan plan, User manager, User president, User user) {
         List<SettleDto> list = new ArrayList<>();
         for (int i = 1; i < 5; i++) {
             SettleDto dto = new SettleDto();
@@ -101,10 +115,6 @@
                     dto.setUsername(president.getNickname());
                     list.add(dto);
                     break;
-//                case 4:
-//                    dto.setTitle("涓氬姟鍛樺鏍�");
-//                    list.add(dto);
-//                    break;
                 case 4:
                     dto.setTitle("瀹℃壒閫氳繃");
                     dto.setUserId(plan.getUserId());
@@ -118,21 +128,12 @@
         return list;
     }
 
-    public static List<SettleDto> initPriQuote(ReimburseOnline reimburseOnline, User manager , User president3, User president4,User president5,User president6,User user) {
+    public static List<SettleDto> initPriQuote(ReimburseOnline reimburseOnline, User manager, User president3, User president4, User president5, User president6, User user) {
         List<SettleDto> list = new ArrayList<>();
         for (int i = 0; i < 7; i++) {
             SettleDto dto = new SettleDto();
             dto.setStep(i);
             switch (i) {
-//                case 0:
-//                    dto.setTitle("寮�濮�");
-//                    dto.setMsg(user.getUsername() + "鍒涘缓浜嗗鎵�");
-//                    dto.setUserId(user.getId());
-//                    dto.setUsername(user.getUsername());
-//                    dto.setTime(DateUtils.convert(new Date()));
-//                    dto.setCurr(Boolean.TRUE);
-//                    list.add(dto);
-//                    break;
                 case 1:
                     dto.setTitle("寮�濮�");
                     dto.setMsg(user.getUsername() + "鍒涘缓浜嗗鎵�");
@@ -149,33 +150,29 @@
                     list.add(dto);
                     break;
                 case 3:
-                    dto.setTitle(president3.getUsername()+"瀹℃牳");
+                    dto.setTitle(president3.getUsername() + "瀹℃牳");
                     dto.setUserId(president3.getId());
                     dto.setUsername(president3.getNickname());
                     list.add(dto);
                     break;
                 case 4:
-                    dto.setTitle(president4.getUsername()+"瀹℃牳");
+                    dto.setTitle(president4.getUsername() + "瀹℃牳");
                     dto.setUserId(president4.getId());
                     dto.setUsername(president4.getNickname());
                     list.add(dto);
                     break;
                 case 5:
-                    dto.setTitle(president5.getUsername()+"瀹℃牳");
+                    dto.setTitle(president5.getUsername() + "瀹℃牳");
                     dto.setUserId(president5.getId());
                     dto.setUsername(president5.getNickname());
                     list.add(dto);
                     break;
                 case 6:
-                    dto.setTitle(president6.getUsername()+"瀹℃牳");
+                    dto.setTitle(president6.getUsername() + "瀹℃牳");
                     dto.setUserId(president6.getId());
                     dto.setUsername(president6.getNickname());
                     list.add(dto);
                     break;
-//                case 4:
-//                    dto.setTitle("涓氬姟鍛樺鏍�");
-//                    list.add(dto);
-//                    break;
                 default:
                     break;
             }
@@ -183,7 +180,7 @@
         return list;
     }
 
-    public static List<SettleDto> initBusiness(User manager ,User user) {
+    public static List<SettleDto> initBusiness(User manager, User user) {
         List<SettleDto> list = new ArrayList<>();
         for (int i = 0; i < 3; i++) {
             SettleDto dto = new SettleDto();
@@ -193,7 +190,7 @@
                     dto.setTitle("鎻愪氦鍑哄樊");
                     dto.setUserId(user.getId());
                     dto.setUsername(user.getNickname());
-                    dto.setMsg(user.getNickname()+"鎻愪氦鍑哄樊鐢宠");
+                    dto.setMsg(user.getNickname() + "鎻愪氦鍑哄樊鐢宠");
                     dto.setTime(DateUtils.convert(new Date()));
                     list.add(dto);
                     break;
@@ -210,9 +207,9 @@
         return list;
     }
 
-    public static List<SettleDto> initSalesPricing(User manager ,User user,User userUp,List<String> names ,int nodes) {
+    public static List<SettleDto> initSalesPricing(User manager, User user, User userUp, List<String> names, int nodes) {
         List<SettleDto> list = new ArrayList<>();
-        for (int i = 0; i < nodes+1; i++) {
+        for (int i = 0; i < nodes + 1; i++) {
             SettleDto dto = new SettleDto();
             dto.setStep(i);
             switch (i) {
@@ -250,9 +247,9 @@
         return list;
     }
 
-    public static List<SettleDto> initSalesPricingPriOnline2(User user,User userUp,List<String> names ,int nodes) {
+    public static List<SettleDto> initSalesPricingPriOnline2(User user, User userUp, List<String> names, int nodes) {
         List<SettleDto> list = new ArrayList<>();
-        for (int i = 0; i < nodes+1; i++) {
+        for (int i = 0; i < nodes + 1; i++) {
             SettleDto dto = new SettleDto();
             dto.setStep(i);
             switch (i) {
@@ -284,9 +281,9 @@
         return list;
     }
 
-    public static List<SettleDto> initContract(User manager ,User user,User president,List<String> names ,int nodes) {
+    public static List<SettleDto> initContract(User manager, User user, User president, List<String> names, int nodes) {
         List<SettleDto> list = new ArrayList<>();
-        for (int i = 0; i < nodes+1; i++) {
+        for (int i = 0; i < nodes + 1; i++) {
             SettleDto dto = new SettleDto();
             dto.setStep(i);
             switch (i) {
diff --git a/src/main/java/com/zy/crm/manager/controller/PlanController.java b/src/main/java/com/zy/crm/manager/controller/PlanController.java
index 5a40c57..eb74659 100644
--- a/src/main/java/com/zy/crm/manager/controller/PlanController.java
+++ b/src/main/java/com/zy/crm/manager/controller/PlanController.java
@@ -59,6 +59,7 @@
     private ProcessPermissionsService processPermissionsService;
 
     String PZH=" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� ";
+    Integer PBN = 6;
 
 
     @GetMapping(value = "/plan/{id}/auth")
@@ -696,30 +697,20 @@
         wrapper.like("name", condition);
         wrapper.eq("status",1);
 
-
-        ProcessPermissions processPermissions1 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "1-1"));//2锛氭牳浠锋祦绋�
-        User manager1 = userService.selectById(processPermissions1.getUserId());       // 鑾峰彇鏍镐环娴佺▼鑺傜偣1纭浜�
-
-        ProcessPermissions processPermissions2 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "1-2"));//2锛氭牳浠锋祦绋�
-        User manager2 = userService.selectById(processPermissions2.getUserId());       // 鑾峰彇鏍镐环娴佺▼鑺傜偣1纭浜�
-
-        ProcessPermissions processPermissions3= processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "1-3"));//2锛氭牳浠锋祦绋�
-        User manager3 = userService.selectById(processPermissions3.getUserId());       // 鑾峰彇鏍镐环娴佺▼鑺傜偣1纭浜�
-
+        List<ProcessPermissions> processPermissionsList = processPermissionsService.selectList(new EntityWrapper<ProcessPermissions>().eq("process_memo", 4).or().eq("process_memo", 5));//2锛氭牳浠锋祦绋�
         int type =0;
-        if (getUserId().equals(manager1.getId())){
-            type=1;//(璐ф灦)
-        }else if (getUserId().equals(manager2.getId()) || getUserId().equals(manager3.getId())){
-            type = 2;//(闆嗘垚)
-        }else {
+        for (ProcessPermissions processPermissions:processPermissionsList){
+            if (getUserId().equals(processPermissions.getUserId())){
+                type=PBN-processPermissions.getProcessMemo();
+                break;
+            }
+        }
+        if (type==0){
             return R.error("浣犱笉鏄牳浠峰憳,鏃犳潈鎺ヤ换鍔�");
         }
 
         List<Long> typeList = new ArrayList<>();
         List<PlanType> planTypes = planTypeService.selectList(new EntityWrapper<PlanType>().eq("type", type));
-        if (type==1){
-            planTypes = planTypeService.selectList(new EntityWrapper<PlanType>());
-        }
         if (Cools.isEmpty(planTypes) || planTypes.size()==0){
             return R.ok();
         }
diff --git a/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java b/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
index 478a3a3..bf22ba6 100644
--- a/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
+++ b/src/main/java/com/zy/crm/manager/controller/PriOnline2Controller.java
@@ -42,7 +42,7 @@
     private PlanService planService;
 
     @Autowired
-    private  PlanTypeService planTypeService;
+    private PlanTypeService planTypeService;
 
     @Autowired
     private ProcessPermissionsService processPermissionsService;
@@ -56,7 +56,7 @@
     @Autowired
     private UserService userService;
 
-    String PZH=" 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� ";
+    String PZH = " 鈥斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�斺�� ";
 
     @RequestMapping(value = "/priOnline2/{id}/auth")
     @ManagerAuth
@@ -65,7 +65,7 @@
         assert priOnline2 != null;
         JSONObject resultObj = JSON.parseObject(JSON.toJSONString(priOnline2));
         // 姝ラ鏉$浉鍏�
-        resultObj.put("step", priOnline2.getSettle() == 3 ? 0 : priOnline2.getSettle() + 1);
+        resultObj.put("step", priOnline2.getSettle().equals(priOnline2.getSettleSize()) ? 0 : priOnline2.getSettle() + 1);
         return R.ok().add(resultObj);
     }
 
@@ -81,69 +81,71 @@
 
     @RequestMapping(value = "/priOnline2/list/auth")
     @ManagerAuth
-    public R list(@RequestParam(defaultValue = "1")Integer curr,
-                  @RequestParam(defaultValue = "10")Integer limit,
-                  @RequestParam(required = false)String orderByField,
-                  @RequestParam(required = false)String orderByType,
-                  @RequestParam(required = false)String condition,
-                  @RequestParam Map<String, Object> param){
+    public R list(@RequestParam(defaultValue = "1") Integer curr,
+                  @RequestParam(defaultValue = "10") Integer limit,
+                  @RequestParam(required = false) String orderByField,
+                  @RequestParam(required = false) String orderByType,
+                  @RequestParam(required = false) String condition,
+                  @RequestParam Map<String, Object> param) {
         EntityWrapper<PriOnline2> wrapper = new EntityWrapper<>();
-        wrapper.setSqlSelect("id,title,create_time as createTime,filepath,settle,item_id as itemId,order_num as orderNum,template_name as templateName,user_id as userId,dept_id as deptId,status,update_time as updateTime,check_data as checkData,update_user_id as updateUserId,member_id as memberId");
+        wrapper.setSqlSelect("id,title,create_time as createTime,filepath,settle,settle_size as settleSize,item_id as itemId,order_num as orderNum,template_name as templateName,user_id as userId,dept_id as deptId,status,update_time as updateTime,check_data as checkData,update_user_id as updateUserId,member_id as memberId");
 //        wrapper.in("member_id", getUserRoleBelongsToUserId("allopen"));
         excludeTrash(param);
         convert(param, wrapper);
         allLike(PriOnline2.class, param.keySet(), wrapper, condition);
-        wrapper.or().eq("member_id",getUserId());
-        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
+        wrapper.or().eq("member_id", getUserId());
+        if (!Cools.isEmpty(orderByField)) {
+            wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+        }
         return R.ok(priOnline2Service.selectPage(new Page<>(curr, limit), wrapper));
     }
 
-    private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){
+    private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper) {
         boolean signUserId = false;
         boolean signDeptId = false;
         boolean signHostId = false;
-        for (Map.Entry<String, Object> entry : map.entrySet()){
-            if (entry.getKey().equals("dept_id")){
+        for (Map.Entry<String, Object> entry : map.entrySet()) {
+            if (entry.getKey().equals("dept_id")) {
                 signDeptId = true;
-                if (String.valueOf(entry.getValue()).equals("19")){
+                if (String.valueOf(entry.getValue()).equals("19")) {
                     signHostId = true;
                 }
             }
         }
-        for (Map.Entry<String, Object> entry : map.entrySet()){
+        for (Map.Entry<String, Object> entry : map.entrySet()) {
             String val = String.valueOf(entry.getValue());
-            if (val.contains(RANGE_TIME_LINK)){
+            if (val.contains(RANGE_TIME_LINK)) {
                 String[] dates = val.split(RANGE_TIME_LINK);
                 wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
                 wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
-            } else if (entry.getKey().equals("dept_id")){
-                if (!val.equals("19")){
+            } else if (entry.getKey().equals("dept_id")) {
+                if (!val.equals("19")) {
                     wrapper.eq(entry.getKey(), val);
                 }
-            } else if (entry.getKey().equals("user_id") && !signDeptId){
+            } else if (entry.getKey().equals("user_id") && !signDeptId) {
                 signUserId = true;
                 wrapper.eq(entry.getKey(), val);
             } else {
                 wrapper.like(entry.getKey(), val);
             }
         }
-        if (!signUserId && !signDeptId){
-            if (getRole().getId()==1){
-                wrapper.or().eq("host_id",1);
-            }else if (getRole().getId()==2){
-                wrapper.eq("dept_id",getDeptId());
-            }else {
+        if (!signUserId && !signDeptId) {
+            if (getRole().getId() == 1) {
+                wrapper.or().eq("host_id", 1);
+            } else if (getRole().getId() == 2) {
+                wrapper.eq("dept_id", getDeptId());
+            } else {
                 wrapper.eq("user_id", getUserId());
             }
         }
-        if (signHostId){
-            wrapper.or().eq("host_id",1);
+        if (signHostId) {
+            wrapper.or().eq("host_id", 1);
         }
     }
 
     @RequestMapping(value = "/priOnline2/add/auth")
     @ManagerAuth(memo = "娣诲姞鏍镐环绠$悊")
-    public R add(@RequestBody Map<String,Object> map) {
+    public R add(@RequestBody Map<String, Object> map) {
         PriOnline2 priOnline2 = new PriOnline2();
         priOnline2.setCreateTime(new Date());
         priOnline2.setTitle(map.get("title").toString());
@@ -170,7 +172,7 @@
         //鐘舵�侊紝鏈畬鎴�
         priOnline2.setStatus(0);
 
-        if (plan.getStatus()!=1){
+        if (plan.getStatus() != 1) {
             return R.error("姝よ鍒掑崟鐘舵�佹敼鍙橈紝璇峰埛鏂伴〉闈㈤噸鏂伴�夋嫨锛�");
         }
         priOnline2.setMemberId(getUserId());
@@ -188,18 +190,29 @@
 //        }
 
 //        String node="2-";
-//        PlanType planType = planTypeService.selectById(plan.getPlanType());
+        PlanType planType = planTypeService.selectById(plan.getPlanType());
 //        node = node+planType.getType();
-//        ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", node));//2锛氭牳浠锋祦绋�
+//        ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-1"));//2锛氭牳浠锋祦绋�
 //        User manager = userService.selectById(processPermissions.getUserId());       // 鑾峰彇鏍镐环娴佺▼鑺傜偣2纭浜�
 
-                                // 鑾峰彇涓氬姟鍛�
+        // 鑾峰彇涓氬姟鍛�
         List<String> initNames = new ArrayList<>();
         initNames.add("鎺ュ彇鏍镐环浠诲姟");
         initNames.add("瀹屾垚鏍镐环");
+        if (planType.getType().equals(2)) {
+            initNames.add("瀹屾垚鏍镐环");
+        }
 //        initNames.add("缁忕悊瀹℃牳");
         initNames.add("涓氬姟鍛樼‘璁�");
-        priOnline2.setSettleMsg(JSON.toJSONString(SettleDto.initSalesPricingPriOnline2(getUser(),userUp,initNames,2)));
+        List<User> users = new ArrayList<>();
+        users.add(getUser());
+        users.add(getUser());
+        if (planType.getType().equals(2)) {
+            users.add(userService.selectById(73));
+        }
+        users.add(userUp);
+        priOnline2.setSettleMsg(JSON.toJSONString(SettleDto.InItFlowPath(users, initNames, users.size())));
+        priOnline2.setSettleSize(users.size());
 
         //璁剧疆椤圭洰娴佺▼
         plan.setStep(2);
@@ -212,7 +225,7 @@
 
     @RequestMapping(value = "/priOnline2/addOther/auth")
     @ManagerAuth(memo = "鍙﹀瓨鏍镐环绠$悊")
-    public R addOther(@RequestBody Map<String,Object> map) {
+    public R addOther(@RequestBody Map<String, Object> map) {
         PriOnline2 online = priOnline2Service.selectById(Long.parseLong(map.get("id").toString()));
 
         PriOnline2 priOnline2 = new PriOnline2();
@@ -242,9 +255,9 @@
         return R.ok();
     }
 
-	@RequestMapping(value = "/priOnline2/update/auth")
-	@ManagerAuth(memo = "鏇存柊鏍镐环绠$悊")
-    public R update(@RequestBody Map<String,Object> map){
+    @RequestMapping(value = "/priOnline2/update/auth")
+    @ManagerAuth(memo = "鏇存柊鏍镐环绠$悊")
+    public R update(@RequestBody Map<String, Object> map) {
         PriOnline2 priOnline2 = priOnline2Service.selectById(Long.parseLong(map.get("id").toString()));
         if (priOnline2.getStatus() == 1) {
             return R.error("鏍镐环宸插畬鎴愶紝绂佹淇濆瓨");
@@ -262,7 +275,7 @@
     //鏇存柊鐘舵��
     @RequestMapping(value = "/priOnline2/updateForm/auth")
     @ManagerAuth(memo = "鏇存柊鏍镐环绠$悊鐘舵��")
-    public R updateForm(Long id,Integer status,String title,String templateName){
+    public R updateForm(Long id, Integer status, String title, String templateName) {
         PriOnline2 priOnline2 = priOnline2Service.selectById(id);
         priOnline2.setStatus(status);
         priOnline2.setUpdateTime(new Date());
@@ -276,7 +289,7 @@
     @ManagerAuth(memo = "涓婁紶璇环鏂囦欢")
     public R uploadCheck(@RequestParam("id") Integer id,
                          @RequestParam("checkData") String checkData,
-                         @RequestParam("file") MultipartFile[] files){
+                         @RequestParam("file") MultipartFile[] files) {
         PriOnline2 priOnline2 = priOnline2Service.selectById(id);
         if (priOnline2.getStatus() == 1) {
             return R.error("鏍镐环宸插畬鎴愶紝绂佹涓婁紶");
@@ -286,7 +299,7 @@
 
         MultipartFile file = files[0];
         SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd_HHmmss");
-        String path =  ClassUtils.getDefaultClassLoader().getResource("excel/uploadCheckData").getPath();
+        String path = ClassUtils.getDefaultClassLoader().getResource("excel/uploadCheckData").getPath();
         //鏂囦欢鍚庣紑鍚�
         String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
         //涓婁紶鏂囦欢鍚�
@@ -297,7 +310,7 @@
 
         //鏈嶅姟鍣ㄧ淇濆瓨鐨勬枃浠跺璞�
         File serverFile = new File(filepath);
-        if(!serverFile.exists()) {
+        if (!serverFile.exists()) {
             try {
                 //鍒涘缓鏂囦欢
                 serverFile.createNewFile();
@@ -343,14 +356,14 @@
 
     @RequestMapping(value = "/priOnline2/delete/auth")
     @ManagerAuth(memo = "鍒犻櫎鏍镐环绠$悊")
-    public R delete(Long[] ids){
-        try{
-            if (Cools.isEmpty(ids) || ids.length==0){
+    public R delete(Long[] ids) {
+        try {
+            if (Cools.isEmpty(ids) || ids.length == 0) {
                 return R.error();
             }
-            for (Long id : ids){
-                int  priQuote= priQuoteService.selectCount(new EntityWrapper<PriQuote>().eq("pri_online_id", id));
-                if (priQuote!=0){
+            for (Long id : ids) {
+                int priQuote = priQuoteService.selectCount(new EntityWrapper<PriQuote>().eq("pri_online_id", id));
+                if (priQuote != 0) {
                     return R.error("瀛樺湪鍏宠仈鐨勬姤浠峰崟锛岀姝㈠垹闄わ紒锛侊紒");
                 }
 //                int priSales = priSalesService.selectCount(new EntityWrapper<PriSales>().eq("pri_online2_id", id));
@@ -367,14 +380,14 @@
 
             priOnline2Service.deleteBatchIds(Arrays.asList(ids));
             return R.ok();
-        }catch (Exception e){
+        } catch (Exception e) {
             return R.error(e.getMessage());
         }
     }
 
     @RequestMapping(value = "/priOnline2/export/auth")
     @ManagerAuth
-    public R export(@RequestBody JSONObject param){
+    public R export(@RequestBody JSONObject param) {
         EntityWrapper<PriOnline2> wrapper = new EntityWrapper<>();
         List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
         Map<String, Object> map = excludeTrash(param.getJSONObject("priOnline"));
@@ -391,7 +404,7 @@
         wrapper.in("user_id", getUserRoleBelongsToUserId("allopen"));
         Page<PriOnline2> page = priOnline2Service.selectPage(new Page<>(0, 10), wrapper);
         List<Map<String, Object>> result = new ArrayList<>();
-        for (PriOnline2 priOnline2 : page.getRecords()){
+        for (PriOnline2 priOnline2 : page.getRecords()) {
             Map<String, Object> map = new HashMap<>();
             map.put("id", priOnline2.getId());
 //            map.put("value", priOnline2.getOrderNum() + "/" + priOnline2.getPlanId$() + "/" + priOnline2.getMemberId$());
@@ -409,7 +422,7 @@
         wrapper.in("user_id", getUserRoleBelongsToUserId("allopen"));
         Page<PriOnline2> page = priOnline2Service.selectPage(new Page<>(0, 10), wrapper);
         List<Map<String, Object>> result = new ArrayList<>();
-        for (PriOnline2 priOnline2 : page.getRecords()){
+        for (PriOnline2 priOnline2 : page.getRecords()) {
             Map<String, Object> map = new HashMap<>();
             map.put("id", priOnline2.getId());
 //            map.put("value", priOnline2.getOrderNum() + "/" + priOnline2.getPlanId$() + "/" + priOnline2.getMemberId$());
@@ -425,7 +438,7 @@
     @ManagerAuth
     public R query(@RequestBody JSONObject param) {
         Wrapper<PriOnline2> wrapper = new EntityWrapper<PriOnline2>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
-        if (null != priOnline2Service.selectOne(wrapper)){
+        if (null != priOnline2Service.selectOne(wrapper)) {
             return R.parse(BaseRes.REPEAT).add(getComment(PriOnline2.class, String.valueOf(param.get("key"))));
         }
         return R.ok();
@@ -448,26 +461,26 @@
         Date now = new Date();
         Long memberId = priOnline2.getMemberId();
         User member = userService.selectById(memberId);
-        if (!member.getId().equals(getUserId())){
+        if (!member.getId().equals(getUserId())) {
             return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄�");
         }
         List<SettleDto> planDtos = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
         List<SettleDto> planDtoList = new ArrayList<>();
         boolean sign = true;
         for (SettleDto dto : planDtos) {
-            if (dto.getStep().equals(1)){
+            if (dto.getStep().equals(1)) {
                 priOnline2.setMemberId(dto.getUserId());
             }
-            if (sign && dto.getUserId().equals(memberId) && priOnline2.getSettle()+1==dto.getStep()){
-                if (Cools.isEmpty(dto.getMsg())){
-                    dto.setMsg(DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒");
-                }else {
-                    dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒");
+            if (sign && dto.getUserId().equals(memberId) && priOnline2.getSettle() + 1 == dto.getStep()) {
+                if (Cools.isEmpty(dto.getMsg())) {
+                    dto.setMsg(DateUtils.convert(now) + " " + member.getNickname() + "鍥為��瀹℃壒");
+                } else {
+                    dto.setMsg(dto.getMsg() + PZH + DateUtils.convert(now) + " " + member.getNickname() + "鍥為��瀹℃壒");
                 }
                 sign = false;
             }
-            if (sign){
-                dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(now)+" "+member.getNickname()+"鍥為��瀹℃壒");
+            if (sign) {
+                dto.setMsg(dto.getMsg() + PZH + DateUtils.convert(now) + " " + member.getNickname() + "鍥為��瀹℃壒");
             }
 
             planDtoList.add(dto);
@@ -485,161 +498,69 @@
     @PostMapping(value = "/priOnline2/approval/auth")
     @ManagerAuth
     public R approvalBusinessTrip(@RequestParam Long priOnlineId,
-                                  @RequestParam(required = false) Long plannerId){
+                                  @RequestParam(required = false) Long plannerId) {
         PriOnline2 priOnline2 = priOnline2Service.selectById(priOnlineId);
         assert priOnline2 != null;
         Date now = new Date();
-        switch (priOnline2.getSettle()) {
-            case 0:
-                // 鏈儴闂ㄧ粡鐞嗗鏍�  鑺傜偣璐熻矗浜�
-                User user = userService.selectById(priOnline2.getMemberId());
+        Long nextUserId = getUserId();
+        User user = new User();
+        List<SettleDto> list = new ArrayList<>();
 
-                Plan plan1 = planService.selectById(priOnline2.getItemId());
-//                PlanType planType1 = planTypeService.selectById(plan1.getPlanType());
-//
-//                ProcessPermissions processPermissions1 = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType1.getType()));//2锛氭牳浠锋祦绋�
-//                User manager1 = userService.selectById(processPermissions1.getUserId());       // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜�
+        user = userService.selectById(priOnline2.getMemberId());
 
-                if (Cools.isEmpty(getUser())) {
-                    return R.error("鎶辨瓑锛屾偍娌℃湁鎻愪氦鐨勬潈闄�");
-                }
-                if (!getUserId().equals(user.getId())) {
-                    return R.error("鎶辨瓑锛屾偍娌℃湁鎻愪氦鐨勬潈闄�");
-                }
-                // 淇敼 settle 姝ラ鏁版嵁
-                List<SettleDto> list1 = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
-                for (SettleDto dto : list1) {
-                    switch (dto.getStep()) {
-                        case 0:
-                            dto.setCurr(Boolean.FALSE);
-                            break;
-                        case 1:
-                            dto.setCurr(Boolean.TRUE);
-                            if (Cools.isEmpty(dto.getMsg())){
-                                dto.setMsg(user.getNickname() + "鎻愪氦瀹屾垚");
-                            }else {
-                                dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" " + user.getNickname() + "鎻愪氦瀹屾垚");
-                            }
-                            dto.setTime(DateUtils.convert(now));
-                            break;
-                        default:
-                            break;
-                    }
-                }
-                priOnline2.setSettleMsg(JSON.toJSONString(list1));
-                // 淇敼瑙勫垝鍗曠姸鎬�
-                priOnline2.setSettle(1);
-                priOnline2.setUpdateUserId(getUserId());
-                priOnline2.setUpdateTime(now);
-                priOnline2.setMemberId(plan1.getUserId());
-
-                if (!priOnline2Service.updateById(priOnline2)) {
-                    throw new CoolException("鎻愪氦澶辫触锛岃鑱旂郴绠$悊鍛�");
-                }
-                break;
-//            case 1:
-//                // 鏈儴闂ㄧ粡鐞嗗鏍�  鑺傜偣璐熻矗浜�
-//                Plan plan = planService.selectById(priOnline2.getItemId());
-//                PlanType planType = planTypeService.selectById(plan.getPlanType());
-//
-//                ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 5).eq("process", "2-"+planType.getType()));//2锛氭姤浠锋祦绋�
-//                User manager = userService.selectById(processPermissions.getUserId());       // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣2纭浜�
-//
-////                User manager = new User();
-////                try{
-////                    manager = userService.getDeptManager(getHostId(), getUser().getDeptId());        // 鑾峰彇閮ㄩ棬棰嗗
-////                }catch (Exception e){
-////                    manager = user;
-////                }
-//                if (manager.getId().equals(getUserId())) {
-//
-//                    // 淇敼 settle 姝ラ鏁版嵁
-//                    List<SettleDto> list = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
-//                    for (SettleDto dto : list) {
-//                        switch (dto.getStep()) {
-//                            case 1:
-//                                dto.setCurr(Boolean.FALSE);
-//                                break;
-//                            case 2:
-//                                dto.setCurr(Boolean.TRUE);
-//                                if (Cools.isEmpty(dto.getMsg())){
-//                                    dto.setMsg(manager.getNickname() + "瀹℃壒閫氳繃");
-//                                }else {
-//                                    dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" " + manager.getNickname() + "瀹℃壒閫氳繃");
-//                                }
-//                                dto.setTime(DateUtils.convert(now));
-//                                break;
-//                            default:
-//                                break;
-//                        }
-//                    }
-//                    priOnline2.setSettleMsg(JSON.toJSONString(list));
-//
-//                    // 淇敼瑙勫垝鍗曠姸鎬�
-//                    priOnline2.setSettle(2);  // 鐢宠閫氳繃
-//                    priOnline2.setUpdateTime(now);
-//                    priOnline2.setUpdateUserId(getUserId());
-//                    priOnline2.setMemberId(plan.getUserId());
-//                    if (!priOnline2Service.updateById(priOnline2)) {
-//                        throw new CoolException("瀹℃牳澶辫触锛岃鑱旂郴绠$悊鍛�");
-//                    }
-//                } else {
-//                    return R.error("鎶辨瓑锛屾偍娌℃湁瀹℃牳鐨勬潈闄愶紒锛侊紒");
-//                }
-//                break;
-            case 1:
-                // 涓氬姟鍛�
-                User salesman0 = userService.selectById(priOnline2.getUserId());
-                if (!getUserId().equals(salesman0.getId())) {
-                    return R.error("鎶辨瓑锛屾偍鏃犻渶纭锛侊紒锛�");
-                }
-                // 淇敼 settle 姝ラ鏁版嵁
-                List<SettleDto> list2 = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
-                for (SettleDto dto : list2) {
-                    switch (dto.getStep()) {
-                        case 1:
-                            dto.setCurr(Boolean.TRUE);
-                            break;
-                        case 2:
-                            dto.setCurr(Boolean.TRUE);
-                            if (Cools.isEmpty(dto.getMsg())){
-                                dto.setMsg("涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃");
-                            }else {
-                                dto.setMsg(dto.getMsg()+PZH+DateUtils.convert(new Date())+" "+"涓氬姟鍛�" + salesman0.getNickname() + "瀹℃壒閫氳繃");
-                            }
-                            dto.setTime(DateUtils.convert(new Date()));
-                            break;
-                        default:
-                            break;
-                    }
-                }
-                priOnline2.setSettleMsg(JSON.toJSONString(list2));
-                // 淇敼瑙勫垝鍗曠姸鎬�
-                priOnline2.setSettle(2);  // 瀹℃壒閫氳繃
-                priOnline2.setStatus(1);
-                priOnline2.setUpdateTime(new Date());
-                priOnline2.setUpdateUserId(getUserId());
-
-                if (!priOnline2Service.updateById(priOnline2)) {
-                    throw new CoolException("纭澶辫触锛岃鑱旂郴绠$悊鍛�");
-                }
-                try{
-                    priQuoteAdd(priOnline2.getId(),plannerId);
-                }catch (Exception e){
-                    return R.error("鑷姩鐢熸垚鎶ヤ环鍗曞け璐�");
-                }
-                break;
-            default:
-                return R.error();
+        if (Cools.isEmpty(getUser()) || Cools.isEmpty(user)){
+            return R.error("鎶辨瓑锛屾偍鏃犻渶纭锛侊紒锛�");
         }
+
+        if (!getUserId().equals(user.getId())) {
+            return R.error("鎶辨瓑锛屾偍鏃犻渶纭锛侊紒锛�");
+        }
+        // 淇敼 settle 姝ラ鏁版嵁
+        list = JSON.parseArray(priOnline2.getSettleMsg(), SettleDto.class);
+        for (SettleDto dto : list) {
+            if (dto.getStep().equals(priOnline2.getSettle())) {
+                dto.setCurr(Boolean.TRUE);
+            } else if (dto.getStep().equals(priOnline2.getSettle() + 1)) {
+                dto.setCurr(Boolean.TRUE);
+                if (Cools.isEmpty(dto.getMsg())) {
+                    dto.setMsg(user.getNickname() + "瀹℃壒閫氳繃");
+                } else {
+                    dto.setMsg(dto.getMsg() + PZH + DateUtils.convert(new Date()) + " " + user.getNickname() + "瀹℃壒閫氳繃");
+                }
+                dto.setTime(DateUtils.convert(new Date()));
+            } else if (dto.getStep().equals(priOnline2.getSettle() + 2)) {
+                nextUserId=dto.getUserId();
+            }
+        }
+        priOnline2.setSettleMsg(JSON.toJSONString(list));
+        // 淇敼瑙勫垝鍗曠姸鎬�
+        priOnline2.setSettle(priOnline2.getSettle() + 1);  // 瀹℃壒閫氳繃
+        if (user.getId().equals(priOnline2.getUserId())) {
+            priOnline2.setStatus(1);
+        }
+        priOnline2.setUpdateTime(now);
+        priOnline2.setUpdateUserId(getUserId());
+        priOnline2.setMemberId(nextUserId);
+
+        if (!priOnline2Service.updateById(priOnline2)) {
+            throw new CoolException("纭澶辫触锛岃鑱旂郴绠$悊鍛�");
+        }
+        if (user.getId().equals(priOnline2.getUserId())) {
+            try {
+                priQuoteAdd(priOnline2.getId(), plannerId);
+            } catch (Exception e) {
+                return R.error("鑷姩鐢熸垚鎶ヤ环鍗曞け璐�");
+            }
+        }
+
         return R.ok("瀹℃壒鎴愬姛");
     }
 
-    public void priQuoteAdd(Long priOnlineId,Long priType){
+    public void priQuoteAdd(Long priOnlineId, Long priType) {
         Pri pri = null;
-        if (priType==1L){
+        if (priType == 1L) {
             pri = priService.selectById(114);
-        }else {
+        } else {
             pri = priService.selectById(115);
         }
 
@@ -676,16 +597,16 @@
 //        priQuote.setForm(JSON.toJSONString(map));     // 鑷畾涔夎〃鍗曞唴瀹�
         priQuote.setSettle(1);  // 1.寮�濮�
         User manager = new User();
-        try{
+        try {
             manager = userService.getDeptManager(getHostId(), getUser().getDeptId());        // 鑾峰彇閮ㄩ棬棰嗗
-        }catch (Exception e){
+        } catch (Exception e) {
             manager = getUser();
         }
         priQuote.setMemberId(manager.getId());
 
         ProcessPermissions processPermissions = processPermissionsService.selectOne(new EntityWrapper<ProcessPermissions>().eq("process_memo", 2).eq("process", "3-1"));//2锛氭姤浠锋祦绋�
         User president = userService.selectById(processPermissions.getUserId());       // 鑾峰彇鎶ヤ环娴佺▼鑺傜偣3-1纭浜�
-        priQuote.setSettleMsg(JSON.toJSONString(SettleDto.initPriQuote(plan, manager,president,getUser())));
+        priQuote.setSettleMsg(JSON.toJSONString(SettleDto.initPriQuote(plan, manager, president, getUser())));
 
         planService.updateById(plan);
 
@@ -694,7 +615,7 @@
 
     @PostMapping(value = "/priOnline2/priQuoteAdd/list/auth")
     @ManagerAuth
-    public R priOnline2priQuoteAdd(@RequestParam Long planId){
+    public R priOnline2priQuoteAdd(@RequestParam Long planId) {
         List<KeyValueVo> vos = new ArrayList<>();
         vos.add(new KeyValueVo("鎶ヤ环妯℃澘1", 1L));
         vos.add(new KeyValueVo("鎶ヤ环妯℃澘2", 2L));
diff --git a/src/main/java/com/zy/crm/manager/entity/PriOnline2.java b/src/main/java/com/zy/crm/manager/entity/PriOnline2.java
index e106de5..715860a 100644
--- a/src/main/java/com/zy/crm/manager/entity/PriOnline2.java
+++ b/src/main/java/com/zy/crm/manager/entity/PriOnline2.java
@@ -134,6 +134,13 @@
     private Integer settle;
 
     /**
+     * 杩涘害
+     */
+    @ApiModelProperty(value= "杩涘害")
+    @TableField("settle_size")
+    private Integer settleSize;
+
+    /**
      * 娴佺▼杩涘害
      */
     @ApiModelProperty(value= "娴佺▼杩涘害")
@@ -145,12 +152,13 @@
 
     public PriOnline2() {}
 
-    public PriOnline2(String title, String sheetData, Date createTime, String filepath,Integer settle) {
+    public PriOnline2(String title, String sheetData, Date createTime, String filepath,Integer settle,Integer settleSize) {
         this.title = title;
         this.sheetData = sheetData;
         this.createTime = createTime;
         this.filepath = filepath;
         this.settle = settle;
+        this.settleSize = settleSize;
     }
 
 //    PriOnline priOnline = new PriOnline(
@@ -167,6 +175,8 @@
             case 1:
                 return "绛夊緟纭";
             case 2:
+                return this.settleSize.equals(this.settle+1)? "瀹℃壒閫氳繃" : "绛夊緟纭";
+            case 3:
                 return "瀹℃壒閫氳繃";
             default:
                 return String.valueOf(this.settle);
diff --git a/src/main/java/com/zy/crm/manager/entity/ProcessPermissions.java b/src/main/java/com/zy/crm/manager/entity/ProcessPermissions.java
index 0ee9b17..a53c597 100644
--- a/src/main/java/com/zy/crm/manager/entity/ProcessPermissions.java
+++ b/src/main/java/com/zy/crm/manager/entity/ProcessPermissions.java
@@ -126,15 +126,15 @@
         if (null == this.processMemo){ return null; }
         switch (this.processMemo){
             case 1:
-                return "鏍镐环娴佺▼";
+                return "瑙勫垝娴佺▼";
             case 2:
                 return "鎶ヤ环娴佺▼";
             case 3:
                 return "鎶ラ攢娴佺▼";
             case 4:
-                return "鍑哄樊娴佺▼";
+                return "闆嗘垚鏍镐环娴佺▼";
             case 5:
-                return "鏍镐环娴佺▼";
+                return "璐ф灦鏍镐环娴佺▼";
             case 7:
                 return "鍚堝悓绠$悊";
             case 101:
diff --git a/src/main/java/com/zy/crm/manager/utils/SmsUtils.java b/src/main/java/com/zy/crm/manager/utils/SmsUtils.java
index 2a16160..c3a9b58 100644
--- a/src/main/java/com/zy/crm/manager/utils/SmsUtils.java
+++ b/src/main/java/com/zy/crm/manager/utils/SmsUtils.java
@@ -64,7 +64,7 @@
             headers.put("Authorization", "APPCODE " + APPCODE);
 
             param.put("templateId", "M6F3C81FE3");
-            param.put("receive", phone);
+            param.put("receive", "13083813523");
             param.put("tag", code);
 
             String response = new HttpHandler.Builder()
diff --git a/src/main/resources/mapper/CstmrMapper.xml b/src/main/resources/mapper/CstmrMapper.xml
index 75bcc3e..f3b9e68 100644
--- a/src/main/resources/mapper/CstmrMapper.xml
+++ b/src/main/resources/mapper/CstmrMapper.xml
@@ -104,12 +104,9 @@
                 and
                 (
                     <if test="userId != null and userId != ''">
-                        user_id = #{userId}
+                        user_id = #{userId} or
                     </if>
-                    <if test="userId == null or userId == ''">
-                        user_id is not null
-                    </if>
-                    or
+                    director = #{userId} or
                     mc.id in
                     (
                         select
@@ -640,59 +637,49 @@
         LEFT JOIN sys_dept sd ON mc.dept_id = sd.id
         WHERE 1=1
         and director is null
-        <choose>
-            <when test="deptId != null and deptId != ''">
-                AND ((CHARINDEX(','+#{deptId}+',', ','+sd.path+',') > 0 OR sd.id = #{deptId})
-                or
-                (
-                user_id = #{userId}
-                or
-                mc.id in
-                (
-                select
-                cstmr_id
-                from man_cstmr_foll
-                where 1=1
-                and user_id = #{userId}
-                )
-                ))
-            </when>
-            <otherwise>
-                and
-                (
-                <if test="userId != null and userId != ''">
-                    user_id = #{userId}
-                </if>
-                <if test="userId == null or userId == ''">
-                    user_id is not null
-                </if>
-                or
-                mc.id in
-                (
-                select
-                cstmr_id
-                from man_cstmr_foll
-                where 1=1
-                and user_id = #{userId}
-                )
-                )
-            </otherwise>
-        </choose>
+<!--        <choose>-->
+<!--            <when test="deptId != null and deptId != ''">-->
+<!--                AND ((CHARINDEX(','+#{deptId}+',', ','+sd.path+',') > 0 OR sd.id = #{deptId})-->
+<!--                or-->
+<!--                (-->
+<!--                user_id = #{userId}-->
+<!--                or-->
+<!--                mc.id in-->
+<!--                (-->
+<!--                select-->
+<!--                cstmr_id-->
+<!--                from man_cstmr_foll-->
+<!--                where 1=1-->
+<!--                and user_id = #{userId}-->
+<!--                )-->
+<!--                ))-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and-->
+<!--                (-->
+<!--                <if test="userId != null and userId != ''">-->
+<!--                    user_id = #{userId}-->
+<!--                </if>-->
+<!--                <if test="userId == null or userId == ''">-->
+<!--                    user_id is not null-->
+<!--                </if>-->
+<!--                or-->
+<!--                mc.id in-->
+<!--                (-->
+<!--                select-->
+<!--                cstmr_id-->
+<!--                from man_cstmr_foll-->
+<!--                where 1=1-->
+<!--                and user_id = #{userId}-->
+<!--                )-->
+<!--                )-->
+<!--            </otherwise>-->
+<!--        </choose>-->
         <if test="hostId != null">
             and mc.host_id = #{hostId}
         </if>
         <if test="condition != null and condition != ''">
-            and (
-            mc.uuid like concat('%',#{condition},'%')
-            or mc.name like concat('%',#{condition},'%')
-            or mc.simple like concat('%',#{condition},'%')
-            or mc.rela like concat('%',#{condition},'%')
-            or mc.tel like concat('%',#{condition},'%')
-            or mc.contacts like concat('%',#{condition},'%')
-            or mc.remarks like concat('%',#{condition},'%')
-            or mc.director like concat('%',#{condition},'%')
-            or mc.addr like concat('%',#{condition},'%')
-            )
+            and mc.name like concat('%',#{condition},'%')
         </if>
         ORDER BY mc.create_time DESC
     </select>
diff --git a/src/main/resources/mapper/PriOnline2Mapper.xml b/src/main/resources/mapper/PriOnline2Mapper.xml
index a8a9239..d1a7bd1 100644
--- a/src/main/resources/mapper/PriOnline2Mapper.xml
+++ b/src/main/resources/mapper/PriOnline2Mapper.xml
@@ -18,6 +18,7 @@
         <result column="update_time" property="updateTime" />
         <result column="check_data" property="checkData" />
         <result column="settle" property="settle" />
+        <result column="settle_size" property="settleSize" />
     </resultMap>
 
     <!-- 鏌ヨ缁撴灉涓嶅寘鍚玡xcel鏁版嵁data锛屼互鍏嶇粨鏋滈泦杩囧ぇ -->
@@ -34,6 +35,7 @@
         <result column="status" property="status" />
         <result column="update_time" property="updateTime" />
         <result column="settle" property="settle" />
+        <result column="settle_size" property="settleSize" />
     </resultMap>
 
     <select id="listByPage" resultMap="NoDataResultMap">
diff --git a/src/main/webapp/static/js/priOnline2/priOnline.js b/src/main/webapp/static/js/priOnline2/priOnline.js
index a3840db..f710787 100644
--- a/src/main/webapp/static/js/priOnline2/priOnline.js
+++ b/src/main/webapp/static/js/priOnline2/priOnline.js
@@ -5,7 +5,7 @@
     base: baseUrl + "/static/layui/lay/modules/"
 }).extend({
     cascader: 'cascader/cascader',
-}).use(['table','laydate', 'form', 'admin', 'xmSelect', 'element', 'cascader', 'tree', 'dropdown'], function() {
+}).use(['table', 'laydate', 'form', 'admin', 'xmSelect', 'element', 'cascader', 'tree', 'dropdown'], function () {
     var table = layui.table;
     var $ = layui.jquery;
     var layer = layui.layer;
@@ -104,7 +104,7 @@
                 hide: false
             }
             , {field: 'itemId', align: 'center', title: '瑙勫垝鍗曞彿', hide: true}
-            , {field: 'status$', align: 'center', title: '鐘舵��',hide : false}
+            , {field: 'status$', align: 'center', title: '鐘舵��', hide: false}
             // ,{field: 'memberId$', align: 'center',title: ''}
             , {
                 field: 'settle$',
@@ -114,12 +114,13 @@
                 event: 'more',
                 hide: false
             }
-            , {field: 'user$', align: 'center', title: '涓氬姟鍛�',hide : false}
-            , {field: 'deptId$', align: 'center', title: '閮ㄩ棬',hide : true}
-            , {field: 'checkDataStatus$', align: 'center', title: '鎶ヤ环鏁版嵁',hide : false}
-            , {field: 'createTime$', align: 'center', title: '鍒涘缓鏃堕棿',hide : true}
-            , {field: 'updateUserId$', align: 'center', title: '鏇存柊浜哄憳',hide : false}
-            , {field: 'updateTime$', align: 'center', title: '鏇存柊鏃堕棿',hide : false}
+            , {field: 'settleSize', align: 'center', title: '娴佺▼闀垮害', hide: true}
+            , {field: 'user$', align: 'center', title: '涓氬姟鍛�', hide: false}
+            , {field: 'deptId$', align: 'center', title: '閮ㄩ棬', hide: true}
+            , {field: 'checkDataStatus$', align: 'center', title: '鎶ヤ环鏁版嵁', hide: false}
+            , {field: 'createTime$', align: 'center', title: '鍒涘缓鏃堕棿', hide: true}
+            , {field: 'updateUserId$', align: 'center', title: '鏇存柊浜哄憳', hide: false}
+            , {field: 'updateTime$', align: 'center', title: '鏇存柊鏃堕棿', hide: false}
             , {fixed: 'right', title: '鎿嶄綔', align: 'center', toolbar: '#operate', width: 350}
         ]],
         request: {
@@ -267,6 +268,7 @@
                     title: data.name
                 }, function (i) {
                     layer.close(i);
+                    console.log(data)
                     approvalEnd(data.id);
                 });
                 break;
@@ -277,13 +279,14 @@
                     offset: '200px',
                     title: data.name
                 }, function (i) {
+                    console.log(data)
                     layer.close(i);
-                    // 鎸囧畾瑙勫垝鍛�
-                    if (data.settle === 1) {
+                    // 鎸囧畾妯℃澘
+                    if ((data.settle === 1 && data.settleSize===3) || (data.settle===2 && data.settleSize===4)) {
                         admin.open({
                             type: 1,
                             area: '300px',
-                            title: '閫夋嫨瑙勫垝鍛�',
+                            title: '閫夋嫨鎶ヤ环妯℃澘',
                             content: $('#plannerListDialog').html(),
                             success: function (layero, dIndex) {
                                 let plannerSel = xmSelect.render({
@@ -582,10 +585,11 @@
             }
         });
     }
-    function approvalEnd(planId, plannerId, dIdx) {
+
+    function approvalEnd(priOnlineId, plannerId, dIdx) {
         let loadIndex = layer.load(2);
         $.ajax({
-            url: baseUrl+"/priOnline2/approvalEnd/auth",
+            url: baseUrl + "/priOnline2/approvalEnd/auth",
             headers: {'token': localStorage.getItem('token')},
             data: {
                 priOnlineId: priOnlineId,
@@ -597,11 +601,11 @@
                     layer.close(dIdx);
                 }
                 layer.close(loadIndex);
-                if (res.code === 200){
+                if (res.code === 200) {
                     layer.msg(res.msg, {icon: 1});
                     tableReload();
-                } else if (res.code === 403){
-                    top.location.href = baseUrl+"/";
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/";
                 } else {
                     layer.msg(res.msg, {icon: 2});
                 }
@@ -612,7 +616,7 @@
     function approval(priOnlineId, plannerId, dIdx) {
         let loadIndex = layer.load(2);
         $.ajax({
-            url: baseUrl+"/priOnline2/approval/auth",
+            url: baseUrl + "/priOnline2/approval/auth",
             headers: {'token': localStorage.getItem('token')},
             data: {
                 priOnlineId: priOnlineId,
@@ -624,11 +628,11 @@
                     layer.close(dIdx);
                 }
                 layer.close(loadIndex);
-                if (res.code === 200){
+                if (res.code === 200) {
                     layer.msg(res.msg, {icon: 1});
                     tableReload();
-                } else if (res.code === 403){
-                    top.location.href = baseUrl+"/";
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/";
                 } else {
                     layer.msg(res.msg, {icon: 2});
                 }
@@ -639,13 +643,13 @@
 });
 
 // 鍏抽棴鍔ㄤ綔
-$(document).on('click','#data-detail-close', function () {
+$(document).on('click', '#data-detail-close', function () {
     parent.layer.closeAll();
 });
 
 function tableReload(child) {
     var searchData = {};
-    $.each($('#search-box [name]').serializeArray(), function() {
+    $.each($('#search-box [name]').serializeArray(), function () {
         searchData[this.name] = this.value;
     });
     (child ? parent.tableIns : tableIns).reload({
@@ -655,14 +659,14 @@
         },
         done: function (res, curr, count) {
             if (res.code === 403) {
-                top.location.href = baseUrl+"/";
+                top.location.href = baseUrl + "/";
             }
-            pageCurr=curr;
+            pageCurr = curr;
             if (res.data.length === 0 && count !== 0) {
                 tableIns.reload({
                     where: searchData,
                     page: {
-                        curr: pageCurr-1
+                        curr: pageCurr - 1
                     }
                 });
                 pageCurr -= 1;
@@ -676,9 +680,9 @@
     for (var val in data) {
         var find = el.find(":input[id='" + val + "']");
         find.val(data[val]);
-        if (showImg){
+        if (showImg) {
             var next = find.next();
-            if (next.get(0)){
+            if (next.get(0)) {
                 if (next.get(0).localName === "img") {
                     find.hide();
                     next.attr("src", data[val]);
@@ -698,13 +702,13 @@
 
 function detailScreen(index) {
     var detail = layer.getChildFrame('#data-detail', index);
-    var height = detail.height()+60;
-    if (height > ($(window).height()*0.9)) {
-        height = ($(window).height()*0.9);
+    var height = detail.height() + 60;
+    if (height > ($(window).height() * 0.9)) {
+        height = ($(window).height() * 0.9);
     }
     layer.style(index, {
-        top: (($(window).height()-height)/3)+"px",
-        height: height+'px'
+        top: (($(window).height() - height) / 3) + "px",
+        height: height + 'px'
     });
     $(".layui-layer-shade").remove();
 }
diff --git a/src/main/webapp/views/priOnline2/priOnline.html b/src/main/webapp/views/priOnline2/priOnline.html
index 73d1a00..75b5af2 100644
--- a/src/main/webapp/views/priOnline2/priOnline.html
+++ b/src/main/webapp/views/priOnline2/priOnline.html
@@ -1,103 +1,107 @@
 <!DOCTYPE html>
 <html lang="en">
 <head>
-  <meta charset="utf-8">
-  <title></title>
-  <meta name="renderer" content="webkit">
-  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
-  <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
-  <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
-  <link rel="stylesheet" href="../../static/css/cool.css" media="all">
-  <link rel="stylesheet" href="../../static/css/tree.css" media="all">
-  <link rel="stylesheet" href="../../static/layui/lay/modules/formDesigner/coolForm.css" />
-  <style>
-    .nav-box {
-      position: absolute;
-      top: 1px;
-      left: 5px;
-    }
-    .nav-box-item {
-      display: inline-block;
-      vertical-align: middle;
-      margin-right: 5px;
-    }
+    <meta charset="utf-8">
+    <title></title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+    <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
+    <link rel="stylesheet" href="../../static/css/cool.css" media="all">
+    <link rel="stylesheet" href="../../static/css/tree.css" media="all">
+    <link rel="stylesheet" href="../../static/layui/lay/modules/formDesigner/coolForm.css"/>
+    <style>
+        .nav-box {
+            position: absolute;
+            top: 1px;
+            left: 5px;
+        }
 
-  </style>
+        .nav-box-item {
+            display: inline-block;
+            vertical-align: middle;
+            margin-right: 5px;
+        }
+
+    </style>
 </head>
 <body>
 
 <div class="layui-fluid">
-  <div class="layui-card">
-    <div class="layui-card-body">
-      <div id="search-box" class="layui-form toolbar" style="display: flex;justify-content: flex-end;position: relative">
-        <div class="nav-box">
-          <div class="nav-box-item">
-            <i class="layui-icon" style="color: #1890ff;font-weight: bold">&#xe613;</i>
-          </div>
-          <div class="nav-box-item">
-            <button id="organization" style="border: none;padding-right: 35px;" class="layui-btn layui-btn-primary icon-btn">
-              鏈煡
-            </button>
-          </div>
-        </div>
-        <div class="layui-form-item">
-          <div class="layui-inline">
-            <div class="layui-input-inline">
-              <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off" style="border-color: #e1e1e1">
+    <div class="layui-card">
+        <div class="layui-card-body">
+            <div id="search-box" class="layui-form toolbar"
+                 style="display: flex;justify-content: flex-end;position: relative">
+                <div class="nav-box">
+                    <div class="nav-box-item">
+                        <i class="layui-icon" style="color: #1890ff;font-weight: bold">&#xe613;</i>
+                    </div>
+                    <div class="nav-box-item">
+                        <button id="organization" style="border: none;padding-right: 35px;"
+                                class="layui-btn layui-btn-primary icon-btn">
+                            鏈煡
+                        </button>
+                    </div>
+                </div>
+                <div class="layui-form-item">
+                    <div class="layui-inline">
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off"
+                                   style="border-color: #e1e1e1">
+                        </div>
+                    </div>
+                    <div class="layui-inline">&emsp;
+                        <button class="layui-btn icon-btn layui-btn-sm" lay-filter="search" lay-submit>
+                            <i class="layui-icon">&#xe615;</i>鎼滅储
+                        </button>
+                    </div>
+                </div>
             </div>
-          </div>
-          <div class="layui-inline">&emsp;
-            <button class="layui-btn icon-btn layui-btn-sm" lay-filter="search" lay-submit>
-              <i class="layui-icon">&#xe615;</i>鎼滅储
-            </button>
-          </div>
+            <table class="layui-hide" id="priOnline" lay-filter="priOnline"></table>
         </div>
-      </div>
-      <table class="layui-hide" id="priOnline" lay-filter="priOnline"></table>
     </div>
-  </div>
 </div>
 
 <script type="text/html" id="toolbar">
-  <div class="layui-btn-container">
-    <button class="layui-btn layui-btn-sm" lay-event="addBlank">鏂板鏍镐环</button>
-    <button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="deleteData">鍒犻櫎</button>
-  </div>
+    <div class="layui-btn-container">
+        <button class="layui-btn layui-btn-sm" lay-event="addBlank">鏂板鏍镐环</button>
+        <button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="deleteData">鍒犻櫎</button>
+    </div>
 </script>
 
-<form id="uploadFile" enctype="multipart/form-data" style="display: none;" >
-  <input type="file" name="file" id="uploadQuote">
-  <input type="button" onclick="upload()" value="涓婁紶"/>
+<form id="uploadFile" enctype="multipart/form-data" style="display: none;">
+    <input type="file" name="file" id="uploadQuote">
+    <input type="button" onclick="upload()" value="涓婁紶"/>
 </form>
 
 
 <script type="text/html" id="operate">
-  {{# if (d.settle == 0) { }}
+    {{# if ((d.settle == 0) || (d.settle == 1 && d.settleSize == 4)){ }}
     <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">鎻愪氦</a>
     <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
-  {{# } }}
-  {{# if (d.settle == 1) { }}
+    {{# } }}
+    {{# if ((d.settle == 1 && d.settleSize == 3) || (d.settle == 2 && d.settleSize == 4)){ }}
     <a class="layui-btn layui-btn-xs btn-edit" lay-event="approval">纭</a>
     <a class="layui-btn layui-btn-xs btn-edit" lay-event="approvalEnd">鍥為��瀹℃壒</a>
-  {{# } }}
-  <a class="layui-btn layui-btn-xs btn-edit" lay-event="check">鏍镐环</a>
-  <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">缂栬緫</a>
-  <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="upload">涓婁紶璇环</a>
-  <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="viewCheck">鏌ョ湅璇环</a>
+    {{# } }}
+    <a class="layui-btn layui-btn-xs btn-edit" lay-event="check">鏍镐环</a>
+    <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">缂栬緫</a>
+    <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="upload">涓婁紶璇环</a>
+    <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="viewCheck">鏌ョ湅璇环</a>
 </script>
 
 <script type="text/html" id="plannerListDialog">
-  <div class="layui-form admin-form">
-    <div class="model-form" style="padding: 30px">
-      <div id="plannerXmlSel"></div>
+    <div class="layui-form admin-form">
+        <div class="model-form" style="padding: 30px">
+            <div id="plannerXmlSel"></div>
+        </div>
+        <hr class="layui-bg-gray">
+        <div class="layui-form-item text-right" style="padding-right: 30px">
+            <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
+            <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+        </div>
     </div>
-    <hr class="layui-bg-gray">
-    <div class="layui-form-item text-right" style="padding-right: 30px">
-      <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
-      <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
-    </div>
-  </div>
 </script>
 
 <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
@@ -111,86 +115,99 @@
 <script type="text/javascript" src="../../static/js/priOnline2/priOnline.js" charset="utf-8"></script>
 <!-- 琛ㄥ崟寮圭獥 -->
 <script type="text/html" id="editDialog">
-  <div id="detail" lay-filter="detail" class="layui-form admin-form model-form">
-    <input name="id" type="hidden">
-    <div class="layui-row">
-      <div class="layui-col-md12">
-        <div class="layui-form-item">
-          <label class="layui-form-label layui-form-required">椤圭洰鍚�: </label>
-          <div class="layui-input-block cool-auto-complete">
-            <input class="layui-input" name="planId" placeholder="璇疯緭鍏ラ」鐩悕" style="display: none" lay-verify="required">
-            <input id="planId$" name="planId$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ラ」鐩悕" onfocus=this.blur()>
-            <div class="cool-auto-complete-window">
-              <input class="cool-auto-complete-window-input" data-key="planQueryNameToRobBydirector" onkeyup="autoLoad(this.getAttribute('data-key'))">
-              <select class="cool-auto-complete-window-select" data-key="planQueryNameToRobBydirectorSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
-              </select>
+    <div id="detail" lay-filter="detail" class="layui-form admin-form model-form">
+        <input name="id" type="hidden">
+        <div class="layui-row">
+            <div class="layui-col-md12">
+                <div class="layui-form-item">
+                    <label class="layui-form-label layui-form-required">椤圭洰鍚�: </label>
+                    <div class="layui-input-block cool-auto-complete">
+                        <input class="layui-input" name="planId" placeholder="璇疯緭鍏ラ」鐩悕" style="display: none"
+                               lay-verify="required">
+                        <input id="planId$" name="planId$" class="layui-input cool-auto-complete-div"
+                               onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ラ」鐩悕" onfocus=this.blur()>
+                        <div class="cool-auto-complete-window">
+                            <input class="cool-auto-complete-window-input" data-key="planQueryNameToRobBydirector"
+                                   onkeyup="autoLoad(this.getAttribute('data-key'))">
+                            <select class="cool-auto-complete-window-select"
+                                    data-key="planQueryNameToRobBydirectorSelect"
+                                    onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
+                            </select>
+                        </div>
+                    </div>
+                </div>
+
+                <div class="layui-form-item">
+                    <label class="layui-form-label layui-form-required">鏍镐环鍚�: </label>
+                    <div class="layui-input-block">
+                        <input class="layui-input" type="text" name="name" placeholder="鏍镐环鍚�" autocomplete="off">
+                    </div>
+                </div>
+
+                <div class="layui-form-item">
+                    <label class="layui-form-label layui-form-required">妯℃澘: </label>
+                    <div class="layui-input-block">
+                        <input type="radio" name="template" value="1" title="妯℃澘1" checked>
+                        <div class="layui-unselect layui-form-radio"><i class="layui-anim layui-icon">顦�</i>
+                            <div>妯℃澘1</div>
+                        </div>
+                        <input type="radio" name="template" value="2" title="妯℃澘2" disabled>
+                        <div class="layui-unselect layui-form-radio"><i class="layui-anim layui-icon">顦�</i>
+                            <div>妯℃澘2</div>
+                        </div>
+                    </div>
+                </div>
             </div>
-          </div>
         </div>
-
-        <div class="layui-form-item">
-          <label class="layui-form-label layui-form-required">鏍镐环鍚�: </label>
-          <div class="layui-input-block">
-            <input class="layui-input" type="text" name="name" placeholder="鏍镐环鍚�" autocomplete="off">
-          </div>
+        <hr class="layui-bg-gray">
+        <div class="layui-form-item text-right">
+            <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
+            <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
         </div>
-
-        <div class="layui-form-item">
-          <label class="layui-form-label layui-form-required">妯℃澘: </label>
-          <div class="layui-input-block">
-            <input type="radio" name="template" value="1" title="妯℃澘1" checked><div class="layui-unselect layui-form-radio"><i class="layui-anim layui-icon">顦�</i><div>妯℃澘1</div></div>
-            <input type="radio" name="template" value="2" title="妯℃澘2" disabled><div class="layui-unselect layui-form-radio"><i class="layui-anim layui-icon">顦�</i><div>妯℃澘2</div></div>
-          </div>
-        </div>
-      </div>
     </div>
-    <hr class="layui-bg-gray">
-    <div class="layui-form-item text-right">
-      <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
-      <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
-    </div>
-  </div>
 </script>
 
 <!-- 琛ㄥ崟寮圭獥 -->
 <script type="text/html" id="editStatus">
-  <div id="editStatusDetail" lay-filter="editStatusDetail" class="layui-form admin-form model-form">
-    <input name="id" type="hidden">
-    <div class="layui-row">
-      <div class="layui-col-md12">
-        <div class="layui-form-item">
-          <label class="layui-form-label layui-form-required">鐘舵��: </label>
-          <div class="layui-input-block">
-            <select name="status" lay-vertype="tips" lay-verify="required">
-              <option value="">璇烽�夋嫨鐘舵��</option>
-              <option value="1">宸插畬鎴�</option>
-              <option value="0">鏈畬鎴�</option>
-            </select>
-          </div>
-        </div>
+    <div id="editStatusDetail" lay-filter="editStatusDetail" class="layui-form admin-form model-form">
+        <input name="id" type="hidden">
+        <div class="layui-row">
+            <div class="layui-col-md12">
+                <div class="layui-form-item">
+                    <label class="layui-form-label layui-form-required">鐘舵��: </label>
+                    <div class="layui-input-block">
+                        <select name="status" lay-vertype="tips" lay-verify="required">
+                            <option value="">璇烽�夋嫨鐘舵��</option>
+                            <option value="1">宸插畬鎴�</option>
+                            <option value="0">鏈畬鎴�</option>
+                        </select>
+                    </div>
+                </div>
 
-        <div class="layui-form-item">
-          <label class="layui-form-label layui-form-required">鏍镐环鍚�: </label>
-          <div class="layui-input-block">
-            <input class="layui-input" name="templateName" placeholder="璇疯緭鍏ユ牳浠峰悕" autocomplete="off" lay-verify="required">
-          </div>
-        </div>
+                <div class="layui-form-item">
+                    <label class="layui-form-label layui-form-required">鏍镐环鍚�: </label>
+                    <div class="layui-input-block">
+                        <input class="layui-input" name="templateName" placeholder="璇疯緭鍏ユ牳浠峰悕" autocomplete="off"
+                               lay-verify="required">
+                    </div>
+                </div>
 
-        <div class="layui-form-item">
-          <label class="layui-form-label layui-form-required">琛ㄦ牸鏍囬: </label>
-          <div class="layui-input-block">
-            <input class="layui-input" name="title" placeholder="璇疯緭鍏ヨ〃鏍兼爣棰�" autocomplete="off" lay-verify="required">
-          </div>
-        </div>
+                <div class="layui-form-item">
+                    <label class="layui-form-label layui-form-required">琛ㄦ牸鏍囬: </label>
+                    <div class="layui-input-block">
+                        <input class="layui-input" name="title" placeholder="璇疯緭鍏ヨ〃鏍兼爣棰�" autocomplete="off"
+                               lay-verify="required">
+                    </div>
+                </div>
 
-      </div>
+            </div>
+        </div>
+        <hr class="layui-bg-gray">
+        <div class="layui-form-item text-right">
+            <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
+            <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
+        </div>
     </div>
-    <hr class="layui-bg-gray">
-    <div class="layui-form-item text-right">
-      <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
-      <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
-    </div>
-  </div>
 </script>
 </body>
 </html>
diff --git a/src/main/webapp/views/priOnline2/priOnline_check.html b/src/main/webapp/views/priOnline2/priOnline_check.html
index 0eb0b3b..6f88f29 100644
--- a/src/main/webapp/views/priOnline2/priOnline_check.html
+++ b/src/main/webapp/views/priOnline2/priOnline_check.html
@@ -1,271 +1,280 @@
 <!DOCTYPE html>
 <html>
 <head>
-  <meta charset="utf-8">
-  <title>excel</title>
-  <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
-  <link rel='stylesheet' href='../../static/plugins/css/pluginsCss.css' />
-  <link rel='stylesheet' href='../../static/plugins/plugins.css' />
-  <link rel='stylesheet' href='../../static/css/luckysheet.css' />
-  <link rel='stylesheet' href='../../static/assets/iconfont/iconfont.css' />
-  <script src="../../static/js/luckysheet_js/plugin.js"></script>
-  <script src="../../static/js/luckysheet_js/luckysheet.umd.js"></script>
-  <script src="../../static/js/luckysheet_js/luckyexcel.umd.js"></script>
-  <script src="../../static/js/luckysheet_js/exceljs.min.js"></script>
-  <script type="text/javascript" src="../../static/js/luckysheet_js/export.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/js/luckysheet_js/pako.es5.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/js/luckysheet_js/base64.min.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/js/luckysheet_js/print.min.js" charset="utf-8"></script>
+    <meta charset="utf-8">
+    <title>excel</title>
+    <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+    <link rel='stylesheet' href='../../static/plugins/css/pluginsCss.css'/>
+    <link rel='stylesheet' href='../../static/plugins/plugins.css'/>
+    <link rel='stylesheet' href='../../static/css/luckysheet.css'/>
+    <link rel='stylesheet' href='../../static/assets/iconfont/iconfont.css'/>
+    <script src="../../static/js/luckysheet_js/plugin.js"></script>
+    <script src="../../static/js/luckysheet_js/luckysheet.umd.js"></script>
+    <script src="../../static/js/luckysheet_js/luckyexcel.umd.js"></script>
+    <script src="../../static/js/luckysheet_js/exceljs.min.js"></script>
+    <script type="text/javascript" src="../../static/js/luckysheet_js/export.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/luckysheet_js/pako.es5.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/luckysheet_js/base64.min.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/luckysheet_js/print.min.js" charset="utf-8"></script>
 </head>
 <body>
 <div style="display: flex;position: absolute;top: 20px;left:30px;z-index: 9999;">
-  <!--  <div><button type="button" id="export">瀵煎嚭Execel</button></div>-->
-<!--  <div><button type="button" id="save">淇濆瓨鍒版湇鍔″櫒</button></div>-->
-<!--  <div><button type="button" id="otherSave">鍙︿繚瀛樺埌鏈嶅姟鍣�</button></div>-->
-  <div><button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="allprint">鍏ㄩ儴鎵撳嵃</button></div>
-  <div><button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="print">閫夊尯鎵撳嵃</button></div>
-  <div><button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="download">涓嬭浇</button></div>
+    <!--  <div><button type="button" id="export">瀵煎嚭Execel</button></div>-->
+    <!--  <div><button type="button" id="save">淇濆瓨鍒版湇鍔″櫒</button></div>-->
+    <!--  <div><button type="button" id="otherSave">鍙︿繚瀛樺埌鏈嶅姟鍣�</button></div>-->
+    <div>
+        <button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="allprint">鍏ㄩ儴鎵撳嵃</button>
+    </div>
+    <div>
+        <button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="print">閫夊尯鎵撳嵃</button>
+    </div>
+    <div>
+        <button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="download">涓嬭浇</button>
+    </div>
 </div>
-<div id="luckysheet" style="margin:0px;padding:0px;position:absolute;width:100%;height: 100vh;left: 0px;top: 0px;"></div>
+<div id="luckysheet"
+     style="margin:0px;padding:0px;position:absolute;width:100%;height: 100vh;left: 0px;top: 0px;"></div>
 <script>
-  $(function () {
-    var layer = layui.layer;
+    $(function () {
+        var layer = layui.layer;
 
-    //閰嶇疆椤�
-    var options = {
-      container: 'luckysheet' ,//luckysheet涓哄鍣╥d
-      title: '鏌ョ湅璇环', //宸ヤ綔绨垮悕绉�
-      lang: 'zh', //璁惧畾琛ㄦ牸璇█ 鍥介檯鍖栬缃紝鍏佽璁剧疆琛ㄦ牸鐨勮瑷�锛屾敮鎸佷腑鏂�("zh")鍜岃嫳鏂�("en")
-      allowEdit: true, //鏄惁鍏佽鍓嶅彴缂栬緫
-      sheetFormulaBar: true, //鏄惁鏄剧ず鍏紡鏍�
-      forceCalculation: true,//寮哄埗璁$畻鍏紡
-      myFolderUrl: '' //宸︿笂瑙�<杩斿洖鎸夐挳鐨勯摼鎺�
-    }
+        //閰嶇疆椤�
+        var options = {
+            container: 'luckysheet',//luckysheet涓哄鍣╥d
+            title: '鏌ョ湅璇环', //宸ヤ綔绨垮悕绉�
+            lang: 'zh', //璁惧畾琛ㄦ牸璇█ 鍥介檯鍖栬缃紝鍏佽璁剧疆琛ㄦ牸鐨勮瑷�锛屾敮鎸佷腑鏂�("zh")鍜岃嫳鏂�("en")
+            allowEdit: true, //鏄惁鍏佽鍓嶅彴缂栬緫
+            sheetFormulaBar: true, //鏄惁鏄剧ず鍏紡鏍�
+            forceCalculation: true,//寮哄埗璁$畻鍏紡
+            myFolderUrl: '' //宸︿笂瑙�<杩斿洖鎸夐挳鐨勯摼鎺�
+        }
 
-    let checkDataFile = "";
+        let checkDataFile = "";
 
-    if(getUrlParams('id') == false || getUrlParams('id') == undefined){
-      //鏂板
-      luckysheet.create(options)
-      $("#luckysheet_info_detail_update").hide()
-      $("#luckysheet_info_detail_save").hide()
-      $("#luckysheet_info_detail_title").hide()
-    }else{
-      //淇敼
-      $.ajax({
-        type:"get",
-        url: baseUrl + "/priOnline2/viewCheck/" + getUrlParams('id') + "/auth",
-        dataType:"json",
-        headers: {'token': localStorage.getItem('token')},
-        success:function(res) {
-          if (res.code == 200) {
-            checkDataFile = res.data.checkDataFile
-            options.data = unzip(res.data.checkData)
+        if (getUrlParams('id') == false || getUrlParams('id') == undefined) {
+            //鏂板
             luckysheet.create(options)
             $("#luckysheet_info_detail_update").hide()
             $("#luckysheet_info_detail_save").hide()
             $("#luckysheet_info_detail_title").hide()
-          }else {
-            layer.msg(res.msg,{time:1000})
-          }
+        } else {
+            //淇敼
+            $.ajax({
+                type: "get",
+                url: baseUrl + "/priOnline2/viewCheck/" + getUrlParams('id') + "/auth",
+                dataType: "json",
+                headers: {'token': localStorage.getItem('token')},
+                success: function (res) {
+                    if (res.code == 200) {
+                        checkDataFile = res.data.checkDataFile
+                        options.data = unzip(res.data.checkData)
+                        luckysheet.create(options)
+                        $("#luckysheet_info_detail_update").hide()
+                        $("#luckysheet_info_detail_save").hide()
+                        $("#luckysheet_info_detail_title").hide()
+                    } else {
+                        layer.msg(res.msg, {time: 1000})
+                    }
+                }
+            });
+
         }
-      });
 
-    }
-
-    $("#export").on("click",() => {
-      console.log('export')
-      exportExcel(luckysheet.getluckysheetfile()).then((e) => {
-        saveFile(e,'file');
-      })
-    })
-
-    //淇濆瓨鍒版湇鍔″櫒
-    $("#save").on("click",() => {
-      if(getUrlParams('id') == false || getUrlParams('id') == undefined){
-        //鏂板
-        $.ajax({
-          url: baseUrl + "/priOnline2/add/auth",
-          headers: {'token': localStorage.getItem('token')},
-          data: JSON.stringify({
-            title: luckysheet.toJson().title,
-            sheetData: zip(luckysheet.getAllSheets()),
-            itemId: getUrlParams('item_id'),
-            priId: getUrlParams('pri_id')
-          }),
-          method: 'POST',
-          dataType: "json",
-          contentType:'application/json;charset=UTF-8',
-          success: function (res) {
-            if (res.code == 200) {
-              layer.msg('淇濆瓨鎴愬姛',{time:1000},() => {
-                parent.location.reload()
-              })
-            }else{
-              layer.msg(res.msg,{time:1000})
-            }
-          }
+        $("#export").on("click", () => {
+            console.log('export')
+            exportExcel(luckysheet.getluckysheetfile()).then((e) => {
+                saveFile(e, 'file');
+            })
         })
-      }else {
-        //淇敼
-        $.ajax({
-          url: baseUrl + "/priOnline2/update/auth",
-          headers: {'token': localStorage.getItem('token')},
-          data: JSON.stringify({
-            id: getUrlParams('id'),
-            title: luckysheet.toJson().title,
-            sheetData: zip(luckysheet.getAllSheets())
-          }),
-          method: 'POST',
-          dataType: "json",
-          contentType:'application/json;charset=UTF-8',
-          success: function (res) {
-            if (res.code == 200) {
-              layer.msg('淇濆瓨鎴愬姛',{time:1000},() => {
-                parent.location.reload()
-              })
-            }else{
-              layer.msg(res.msg,{time:1000})
+
+        //淇濆瓨鍒版湇鍔″櫒
+        $("#save").on("click", () => {
+            if (getUrlParams('id') == false || getUrlParams('id') == undefined) {
+                //鏂板
+                $.ajax({
+                    url: baseUrl + "/priOnline2/add/auth",
+                    headers: {'token': localStorage.getItem('token')},
+                    data: JSON.stringify({
+                        title: luckysheet.toJson().title,
+                        sheetData: zip(luckysheet.getAllSheets()),
+                        itemId: getUrlParams('item_id'),
+                        priId: getUrlParams('pri_id')
+                    }),
+                    method: 'POST',
+                    dataType: "json",
+                    contentType: 'application/json;charset=UTF-8',
+                    success: function (res) {
+                        if (res.code == 200) {
+                            layer.msg('淇濆瓨鎴愬姛', {time: 1000}, () => {
+                                parent.location.reload()
+                            })
+                        } else {
+                            layer.msg(res.msg, {time: 1000})
+                        }
+                    }
+                })
+            } else {
+                //淇敼
+                $.ajax({
+                    url: baseUrl + "/priOnline2/update/auth",
+                    headers: {'token': localStorage.getItem('token')},
+                    data: JSON.stringify({
+                        id: getUrlParams('id'),
+                        title: luckysheet.toJson().title,
+                        sheetData: zip(luckysheet.getAllSheets())
+                    }),
+                    method: 'POST',
+                    dataType: "json",
+                    contentType: 'application/json;charset=UTF-8',
+                    success: function (res) {
+                        if (res.code == 200) {
+                            layer.msg('淇濆瓨鎴愬姛', {time: 1000}, () => {
+                                parent.location.reload()
+                            })
+                        } else {
+                            layer.msg(res.msg, {time: 1000})
+                        }
+                    }
+                })
             }
-          }
         })
-      }
+
+        $("#download").on("click", () => {
+            window.open(baseUrl + "/priOnline2/checkDataDownload/" + checkDataFile)
+        })
+
     })
 
-    $("#download").on("click",() => {
-      window.open(baseUrl + "/priOnline2/checkDataDownload/" +checkDataFile)
+    $("#allprint").on("click", () => {
+        printExcel()
     })
 
-  })
+    $("#print").on("click", () => {
+        let src = luckysheet.getScreenshot(); // 鐢熸垚base64鍥剧墖
+        const style = '@page {margin:0 10mm};'
+        printJS({
+            printable: src,
+            type: 'image',
+            style: style
+        }) // Print.js鎻掍欢
+    })
 
-  $("#allprint").on("click",() => {
-    printExcel()
-  })
+    // 鑾峰彇琛ㄦ牸涓寘鍚唴瀹圭殑row锛宑olumn
+    function getExcelRowColumn() {
+        const sheetData = luckysheet.getSheetData();
+        let objRowColumn = {
+            row: [null, null], //琛�
+            column: [null, null], //鍒�
+        };
+        sheetData.forEach((item, index) => {
+            //琛屾暟
+            item.forEach((it, itemIndex) => {
+                if (it !== null) {
+                    if (objRowColumn.row[0] == null) objRowColumn.row[0] = index; // row绗竴浣�
+                    objRowColumn.row[1] = index; //row绗簩浣�
+                    if (objRowColumn.column[0] == null)
+                        objRowColumn.column[0] = itemIndex; //column绗竴浣�
+                    objRowColumn.column[1] = itemIndex; //column绗簩浣�
+                }
+            });
+        });
+        return objRowColumn;
+    }
 
-  $("#print").on("click",() => {
-    let src = luckysheet.getScreenshot(); // 鐢熸垚base64鍥剧墖
-    const style = '@page {margin:0 10mm};'
-    printJS({
-      printable: src,
-      type: 'image',
-      style: style
-    }) // Print.js鎻掍欢
-  })
+    function printExcel() {
+        let RowColumn = this.getExcelRowColumn() // 鑾峰彇鏈夊�肩殑琛屽拰鍒�
+        RowColumn.column[0] = 0 //鍥犻渶瑕佹墦鍗板乏杈圭殑杈规锛岄渶閲嶆柊璁剧疆
+        luckysheet.setRangeShow(RowColumn) // 杩涜閫夊尯鎿嶄綔
+        let src = luckysheet.getScreenshot(); // 鐢熸垚base64鍥剧墖
+        const style = '@page {margin:0 10mm};'
+        printJS({
+            printable: src,
+            type: 'image',
+            style: style
+        }) // Print.js鎻掍欢
+    }
 
-  // 鑾峰彇琛ㄦ牸涓寘鍚唴瀹圭殑row锛宑olumn
-  function getExcelRowColumn() {
-    const sheetData = luckysheet.getSheetData();
-    let objRowColumn = {
-      row: [null, null], //琛�
-      column: [null, null], //鍒�
-    };
-    sheetData.forEach((item, index) => {
-      //琛屾暟
-      item.forEach((it, itemIndex) => {
-        if (it !== null) {
-          if (objRowColumn.row[0] == null) objRowColumn.row[0] = index; // row绗竴浣�
-          objRowColumn.row[1] = index; //row绗簩浣�
-          if (objRowColumn.column[0] == null)
-            objRowColumn.column[0] = itemIndex; //column绗竴浣�
-          objRowColumn.column[1] = itemIndex; //column绗簩浣�
+    function getUrlParams(name) {
+        var url = window.location.search;
+        if (url.indexOf('?') == -1) {
+            return false;
         }
-      });
-    });
-    return objRowColumn;
-  }
-
-  function printExcel() {
-    let RowColumn = this.getExcelRowColumn() // 鑾峰彇鏈夊�肩殑琛屽拰鍒�
-    RowColumn.column[0] = 0 //鍥犻渶瑕佹墦鍗板乏杈圭殑杈规锛岄渶閲嶆柊璁剧疆
-    luckysheet.setRangeShow(RowColumn) // 杩涜閫夊尯鎿嶄綔
-    let src = luckysheet.getScreenshot(); // 鐢熸垚base64鍥剧墖
-    const style = '@page {margin:0 10mm};'
-    printJS({
-      printable: src,
-      type: 'image',
-      style: style
-    }) // Print.js鎻掍欢
-  }
-
-  function getUrlParams(name) {
-    var url = window.location.search;
-    if (url.indexOf('?') == -1) { return false; }
-    url = url.substr(1);
-    url = url.split('&');
-    var name = name || '';
-    var nameres;
-    for (var i = 0; i < url.length; i++) {
-      var info = url[i].split('=');
-      var obj = {};
-      obj[info[0]] = decodeURI(info[1]);
-      url[i] = obj;
-    }
-    if (name) {
-      for (var i = 0; i < url.length; i++) {
-        for (var key in url[i]) {
-          if (key == name) {
-            nameres = url[i][key];
-          }
+        url = url.substr(1);
+        url = url.split('&');
+        var name = name || '';
+        var nameres;
+        for (var i = 0; i < url.length; i++) {
+            var info = url[i].split('=');
+            var obj = {};
+            obj[info[0]] = decodeURI(info[1]);
+            url[i] = obj;
         }
-      }
-    } else {
-      nameres = url;
+        if (name) {
+            for (var i = 0; i < url.length; i++) {
+                for (var key in url[i]) {
+                    if (key == name) {
+                        nameres = url[i][key];
+                    }
+                }
+            }
+        } else {
+            nameres = url;
+        }
+        return nameres;
     }
-    return nameres;
-  }
 
-  // 鍘嬬缉
-  function zip(data) {
-    if (!data) return data
-    // 鍒ゆ柇鏁版嵁鏄惁闇�瑕佽浆涓篔SON
-    const dataJson = typeof data !== 'string' && typeof data !== 'number' ? JSON.stringify(data) : data
+    // 鍘嬬缉
+    function zip(data) {
+        if (!data) return data
+        // 鍒ゆ柇鏁版嵁鏄惁闇�瑕佽浆涓篔SON
+        const dataJson = typeof data !== 'string' && typeof data !== 'number' ? JSON.stringify(data) : data
 
-    // 浣跨敤Base64.encode澶勭悊瀛楃缂栫爜锛屽吋瀹逛腑鏂�
-    const str = Base64.encode(dataJson)
-    let binaryString = pako.gzip(str);
-    let arr = Array.from(binaryString);
-    let s = "";
-    arr.forEach((item, index) => {
-      s += String.fromCharCode(item)
-    })
-    return btoa(s)
-  }
-
-  // 瑙e帇
-  function unzip(b64Data) {
-    let strData = atob(b64Data);
-    let charData = strData.split('').map(function (x) {
-      return x.charCodeAt(0);
-    });
-    let binData = new Uint8Array(charData);
-    let data = pako.ungzip(binData);
-
-    // 鈫撳垏鐗囧鐞嗘暟鎹紝闃叉鍐呭瓨婧㈠嚭鎶ラ敊鈫�
-    let str = '';
-    const chunk = 8 * 1024
-    let i;
-    for (i = 0; i < data.length / chunk; i++) {
-      str += String.fromCharCode.apply(null, data.slice(i * chunk, (i + 1) * chunk));
+        // 浣跨敤Base64.encode澶勭悊瀛楃缂栫爜锛屽吋瀹逛腑鏂�
+        const str = Base64.encode(dataJson)
+        let binaryString = pako.gzip(str);
+        let arr = Array.from(binaryString);
+        let s = "";
+        arr.forEach((item, index) => {
+            s += String.fromCharCode(item)
+        })
+        return btoa(s)
     }
-    str += String.fromCharCode.apply(null, data.slice(i * chunk));
-    // 鈫戝垏鐗囧鐞嗘暟鎹紝闃叉鍐呭瓨婧㈠嚭鎶ラ敊鈫�
 
-    const unzipStr = Base64.decode(str);
-    let result = ''
+    // 瑙e帇
+    function unzip(b64Data) {
+        let strData = atob(b64Data);
+        let charData = strData.split('').map(function (x) {
+            return x.charCodeAt(0);
+        });
+        let binData = new Uint8Array(charData);
+        let data = pako.ungzip(binData);
 
-    // 瀵硅薄鎴栨暟缁勮繘琛孞SON杞崲
-    try {
-      result = JSON.parse(unzipStr)
-    } catch (error) {
-      if (/Unexpected token o in JSON at position 0/.test(error)) {
-        // 濡傛灉娌℃湁杞崲鎴愬姛锛屼唬琛ㄥ�间负鍩烘湰鏁版嵁锛岀洿鎺ヨ祴鍊�
-        result = unzipStr
-      }
+        // 鈫撳垏鐗囧鐞嗘暟鎹紝闃叉鍐呭瓨婧㈠嚭鎶ラ敊鈫�
+        let str = '';
+        const chunk = 8 * 1024
+        let i;
+        for (i = 0; i < data.length / chunk; i++) {
+            str += String.fromCharCode.apply(null, data.slice(i * chunk, (i + 1) * chunk));
+        }
+        str += String.fromCharCode.apply(null, data.slice(i * chunk));
+        // 鈫戝垏鐗囧鐞嗘暟鎹紝闃叉鍐呭瓨婧㈠嚭鎶ラ敊鈫�
+
+        const unzipStr = Base64.decode(str);
+        let result = ''
+
+        // 瀵硅薄鎴栨暟缁勮繘琛孞SON杞崲
+        try {
+            result = JSON.parse(unzipStr)
+        } catch (error) {
+            if (/Unexpected token o in JSON at position 0/.test(error)) {
+                // 濡傛灉娌℃湁杞崲鎴愬姛锛屼唬琛ㄥ�间负鍩烘湰鏁版嵁锛岀洿鎺ヨ祴鍊�
+                result = unzipStr
+            }
+        }
+        return result
     }
-    return result
-  }
 </script>
 </body>
 </html>
\ No newline at end of file
diff --git a/src/main/webapp/views/priOnline2/priOnline_detail.html b/src/main/webapp/views/priOnline2/priOnline_detail.html
index 48b2494..87695c2 100644
--- a/src/main/webapp/views/priOnline2/priOnline_detail.html
+++ b/src/main/webapp/views/priOnline2/priOnline_detail.html
@@ -1,340 +1,352 @@
 <!DOCTYPE html>
 <html>
 <head>
-  <meta charset="utf-8">
-  <title>excel</title>
-  <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
-  <link rel='stylesheet' href='../../static/plugins/css/pluginsCss.css' />
-  <link rel='stylesheet' href='../../static/plugins/plugins.css' />
-  <link rel='stylesheet' href='../../static/css/luckysheet.css' />
-  <link rel='stylesheet' href='../../static/assets/iconfont/iconfont.css' />
-  <script src="../../static/js/luckysheet_js/plugin.js"></script>
-  <script src="../../static/js/luckysheet_js/luckysheet.umd.js"></script>
-  <script src="../../static/js/luckysheet_js/luckyexcel.umd.js"></script>
-  <script src="../../static/js/luckysheet_js/exceljs.min.js"></script>
-  <script type="text/javascript" src="../../static/js/luckysheet_js/export.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/js/luckysheet_js/pako.es5.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/js/luckysheet_js/base64.min.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
-  <script type="text/javascript" src="../../static/js/luckysheet_js/print.min.js" charset="utf-8"></script>
+    <meta charset="utf-8">
+    <title>excel</title>
+    <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+    <link rel='stylesheet' href='../../static/plugins/css/pluginsCss.css'/>
+    <link rel='stylesheet' href='../../static/plugins/plugins.css'/>
+    <link rel='stylesheet' href='../../static/css/luckysheet.css'/>
+    <link rel='stylesheet' href='../../static/assets/iconfont/iconfont.css'/>
+    <script src="../../static/js/luckysheet_js/plugin.js"></script>
+    <script src="../../static/js/luckysheet_js/luckysheet.umd.js"></script>
+    <script src="../../static/js/luckysheet_js/luckyexcel.umd.js"></script>
+    <script src="../../static/js/luckysheet_js/exceljs.min.js"></script>
+    <script type="text/javascript" src="../../static/js/luckysheet_js/export.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/luckysheet_js/pako.es5.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/luckysheet_js/base64.min.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/luckysheet_js/print.min.js" charset="utf-8"></script>
 </head>
 <body>
 <div style="display: flex;position: absolute;top: 20px;left:30px;z-index: 9999;">
-<!--  <div>涓婁紶Execel锛�<input type="file" id="Luckyexcel-demo-file" /></div>-->
-<!--  <div><button type="button" id="export">瀵煎嚭Execel</button></div>-->
-  <div><button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="save">淇濆瓨</button></div>
-  <div><button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="otherSave">鍙﹀瓨涓�</button></div>
-  <div><button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="allprint">鍏ㄩ儴鎵撳嵃</button></div>
-  <div><button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="print">閫夊尯鎵撳嵃</button></div>
+    <!--  <div>涓婁紶Execel锛�<input type="file" id="Luckyexcel-demo-file" /></div>-->
+    <!--  <div><button type="button" id="export">瀵煎嚭Execel</button></div>-->
+    <div>
+        <button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="save">淇濆瓨</button>
+    </div>
+    <div>
+        <button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="otherSave">鍙﹀瓨涓�</button>
+    </div>
+    <div>
+        <button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="allprint">鍏ㄩ儴鎵撳嵃</button>
+    </div>
+    <div>
+        <button type="button" class="layui-btn layui-btn-primary layui-btn-xs btn-edit" id="print">閫夊尯鎵撳嵃</button>
+    </div>
 </div>
-<div id="luckysheet" style="margin:0px;padding:0px;position:absolute;width:100%;height: 100vh;left: 0px;top: 0px;"></div>
+<div id="luckysheet"
+     style="margin:0px;padding:0px;position:absolute;width:100%;height: 100vh;left: 0px;top: 0px;"></div>
 <script>
-  $(function () {
-    var layer = layui.layer;
+    $(function () {
+        var layer = layui.layer;
 
-    //閰嶇疆椤�
-    var options = {
-      container: 'luckysheet' ,//luckysheet涓哄鍣╥d
-      title: '鍦ㄧ嚎鏍镐环', //宸ヤ綔绨垮悕绉�
-      lang: 'zh', //璁惧畾琛ㄦ牸璇█ 鍥介檯鍖栬缃紝鍏佽璁剧疆琛ㄦ牸鐨勮瑷�锛屾敮鎸佷腑鏂�("zh")鍜岃嫳鏂�("en")
-      allowEdit: true, //鏄惁鍏佽鍓嶅彴缂栬緫
-      sheetFormulaBar: true, //鏄惁鏄剧ず鍏紡鏍�
-      forceCalculation: true,//寮哄埗璁$畻鍏紡
-      myFolderUrl: '' //宸︿笂瑙�<杩斿洖鎸夐挳鐨勯摼鎺�
-    }
+        //閰嶇疆椤�
+        var options = {
+            container: 'luckysheet',//luckysheet涓哄鍣╥d
+            title: '鍦ㄧ嚎鏍镐环', //宸ヤ綔绨垮悕绉�
+            lang: 'zh', //璁惧畾琛ㄦ牸璇█ 鍥介檯鍖栬缃紝鍏佽璁剧疆琛ㄦ牸鐨勮瑷�锛屾敮鎸佷腑鏂�("zh")鍜岃嫳鏂�("en")
+            allowEdit: true, //鏄惁鍏佽鍓嶅彴缂栬緫
+            sheetFormulaBar: true, //鏄惁鏄剧ず鍏紡鏍�
+            forceCalculation: true,//寮哄埗璁$畻鍏紡
+            myFolderUrl: '', //宸︿笂瑙�<杩斿洖鎸夐挳鐨勯摼鎺�
+            allowEdit: true // 鏄惁鍏佽鍓嶅彴缂栬緫
+        }
 
-    if(getUrlParams('id') == false || getUrlParams('id') == undefined){
-      //鏂板
-      if(getUrlParams('template') == false || getUrlParams('template') == undefined){
-        luckysheet.create(options)
-        $("#luckysheet_info_detail_update").hide()
-        $("#luckysheet_info_detail_save").hide()
-        $("#luckysheet_info_detail_title").hide()
-      }else {
-        $.ajax({
-          type:"get",
-          url: baseUrl + "/static/js/priOnline2/data" + getUrlParams('template') + ".txt",
-          success:function(sheetData) {
-            options.data = unzip(sheetData)
-            options.title = getUrlParams('name')
-            luckysheet.create(options)
-            $("#luckysheet_info_detail_update").hide()
-            $("#luckysheet_info_detail_save").hide()
-            $("#luckysheet_info_detail_title").hide()
-          }
+        if (getUrlParams('id') == false || getUrlParams('id') == undefined) {
+            //鏂板
+            if (getUrlParams('template') == false || getUrlParams('template') == undefined) {
+                luckysheet.create(options)
+                $("#luckysheet_info_detail_update").hide()
+                $("#luckysheet_info_detail_save").hide()
+                $("#luckysheet_info_detail_title").hide()
+            } else {
+                $.ajax({
+                    type: "get",
+                    url: baseUrl + "/static/js/priOnline2/data" + getUrlParams('template') + ".txt",
+                    success: function (sheetData) {
+                        options.data = unzip(sheetData)
+                        options.title = getUrlParams('name')
+                        luckysheet.create(options)
+                        $("#luckysheet_info_detail_update").hide()
+                        $("#luckysheet_info_detail_save").hide()
+                        $("#luckysheet_info_detail_title").hide()
+                    }
+                });
+            }
+        } else {
+            //淇敼
+            $.ajax({
+                type: "get",
+                url: baseUrl + "/priOnline2/" + getUrlParams('id') + "/auth",
+                dataType: "json",
+                headers: {'token': localStorage.getItem('token')},
+                success: function (res) {
+                    options.data = unzip(res.data.sheetData)
+                    options.title = res.data.title
+                    luckysheet.create(options)
+                    $("#luckysheet_info_detail_update").hide()
+                    $("#luckysheet_info_detail_save").hide()
+                    $("#luckysheet_info_detail_title").hide()
+                }
+            });
+
+        }
+
+        $("#Luckyexcel-demo-file").on("change", (evt) => {
+            var files = evt.target.files;
+            if (files == null || files.length == 0) {
+                alert("No files wait for import");
+                return;
+            }
+
+            let name = files[0].name;
+            let suffixArr = name.split("."), suffix = suffixArr[suffixArr.length - 1];
+            if (suffix != "xlsx") {
+                alert("Currently only supports the import of xlsx files");
+                return;
+            }
+            LuckyExcel.transformExcelToLucky(files[0], function (exportJson, luckysheetfile) {
+
+                if (exportJson.sheets == null || exportJson.sheets.length == 0) {
+                    alert("Failed to read the content of the excel file, currently does not support xls files!");
+                    return;
+                }
+                window.luckysheet.destroy();
+
+                window.luckysheet.create({
+                    container: 'luckysheet', //luckysheet is the container id
+                    data: exportJson.sheets,
+                    title: exportJson.info.name,
+                    userInfo: exportJson.info.name.creator,
+                    lang: 'zh', //璁惧畾琛ㄦ牸璇█ 鍥介檯鍖栬缃紝鍏佽璁剧疆琛ㄦ牸鐨勮瑷�锛屾敮鎸佷腑鏂�("zh")鍜岃嫳鏂�("en")
+                    allowEdit: true, //鏄惁鍏佽鍓嶅彴缂栬緫
+                    sheetFormulaBar: true, //鏄惁鏄剧ず鍏紡鏍�
+                    forceCalculation: true,//寮哄埗璁$畻鍏紡
+                });
+            });
+        })
+
+        $("#export").on("click", () => {
+            console.log('export')
+            exportExcel(luckysheet.getluckysheetfile()).then((e) => {
+                saveFile(e, 'file');
+            })
+        })
+
+        //淇濆瓨鍒版湇鍔″櫒
+        $("#save").on("click", () => {
+            if (getUrlParams('id') == false || getUrlParams('id') == undefined) {
+                //鏂板
+                $.ajax({
+                    url: baseUrl + "/priOnline2/add/auth",
+                    headers: {'token': localStorage.getItem('token')},
+                    data: JSON.stringify({
+                        title: luckysheet.toJson().title,
+                        sheetData: zip(luckysheet.getAllSheets()),
+                        itemId: getUrlParams('item_id'),
+                        priId: getUrlParams('pri_id')
+                    }),
+                    method: 'POST',
+                    dataType: "json",
+                    contentType: 'application/json;charset=UTF-8',
+                    success: function (res) {
+                        if (res.code == 200) {
+                            layer.msg('淇濆瓨鎴愬姛', {time: 1000}, () => {
+                                parent.location.reload()
+                            })
+                        } else {
+                            layer.msg(res.msg, {time: 1000})
+                        }
+                    }
+                })
+            } else {
+                //淇敼
+                $.ajax({
+                    url: baseUrl + "/priOnline2/update/auth",
+                    headers: {'token': localStorage.getItem('token')},
+                    data: JSON.stringify({
+                        id: getUrlParams('id'),
+                        title: luckysheet.toJson().title,
+                        sheetData: zip(luckysheet.getAllSheets())
+                    }),
+                    method: 'POST',
+                    dataType: "json",
+                    contentType: 'application/json;charset=UTF-8',
+                    success: function (res) {
+                        if (res.code == 200) {
+                            layer.msg('淇濆瓨鎴愬姛', {time: 1000}, () => {
+                                parent.location.reload()
+                            })
+                        } else {
+                            layer.msg(res.msg, {time: 1000})
+                        }
+                    }
+                })
+            }
+        })
+
+        $("#otherSave").on("click", () => {
+            if (getUrlParams('id') == false || getUrlParams('id') == undefined) {
+                //鏂板缓鏂囦欢
+                $("#save").trigger("click")
+            } else {
+                //鍙﹀瓨
+                $.ajax({
+                    url: baseUrl + "/priOnline2/addOther/auth",
+                    headers: {'token': localStorage.getItem('token')},
+                    data: JSON.stringify({
+                        id: getUrlParams('id'),
+                        title: luckysheet.toJson().title,
+                        sheetData: zip(luckysheet.getAllSheets())
+                    }),
+                    method: 'POST',
+                    dataType: "json",
+                    contentType: 'application/json;charset=UTF-8',
+                    success: function (res) {
+                        if (res.code == 200) {
+                            layer.msg('鍙﹀瓨鎴愬姛', {time: 1000}, () => {
+                                parent.location.reload()
+                            })
+                        } else {
+                            layer.msg('淇濆瓨澶辫触', {time: 1000})
+                        }
+                    }
+                })
+            }
+        })
+
+    })
+
+    $("#allprint").on("click", () => {
+        printExcel()
+    })
+
+    $("#print").on("click", () => {
+        let src = luckysheet.getScreenshot(); // 鐢熸垚base64鍥剧墖
+        const style = '@page {margin:0 10mm};'
+        printJS({
+            printable: src,
+            type: 'image',
+            style: style
+        }) // Print.js鎻掍欢
+    })
+
+    // 鑾峰彇琛ㄦ牸涓寘鍚唴瀹圭殑row锛宑olumn
+    function getExcelRowColumn() {
+        const sheetData = luckysheet.getSheetData();
+        let objRowColumn = {
+            row: [null, null], //琛�
+            column: [null, null], //鍒�
+        };
+        sheetData.forEach((item, index) => {
+            //琛屾暟
+            item.forEach((it, itemIndex) => {
+                if (it !== null) {
+                    if (objRowColumn.row[0] == null) objRowColumn.row[0] = index; // row绗竴浣�
+                    objRowColumn.row[1] = index; //row绗簩浣�
+                    if (objRowColumn.column[0] == null)
+                        objRowColumn.column[0] = itemIndex; //column绗竴浣�
+                    objRowColumn.column[1] = itemIndex; //column绗簩浣�
+                }
+            });
         });
-      }
-    }else{
-      //淇敼
-      $.ajax({
-        type:"get",
-        url: baseUrl + "/priOnline2/" + getUrlParams('id') + "/auth",
-        dataType:"json",
-        headers: {'token': localStorage.getItem('token')},
-        success:function(res) {
-          options.data = unzip(res.data.sheetData)
-          options.title = res.data.title
-          luckysheet.create(options)
-          $("#luckysheet_info_detail_update").hide()
-          $("#luckysheet_info_detail_save").hide()
-          $("#luckysheet_info_detail_title").hide()
-        }
-      });
-
+        return objRowColumn;
     }
 
-    $("#Luckyexcel-demo-file").on("change",(evt) => {
-      var files = evt.target.files;
-      if(files==null || files.length==0){
-        alert("No files wait for import");
-        return;
-      }
+    function printExcel() {
+        let RowColumn = this.getExcelRowColumn() // 鑾峰彇鏈夊�肩殑琛屽拰鍒�
+        RowColumn.column[0] = 0 //鍥犻渶瑕佹墦鍗板乏杈圭殑杈规锛岄渶閲嶆柊璁剧疆
+        luckysheet.setRangeShow(RowColumn) // 杩涜閫夊尯鎿嶄綔
+        let src = luckysheet.getScreenshot(); // 鐢熸垚base64鍥剧墖
+        const style = '@page {margin:0 10mm};'
+        printJS({
+            printable: src,
+            type: 'image',
+            style: style
+        }) // Print.js鎻掍欢
+    }
 
-      let name = files[0].name;
-      let suffixArr = name.split("."), suffix = suffixArr[suffixArr.length-1];
-      if(suffix!="xlsx"){
-        alert("Currently only supports the import of xlsx files");
-        return;
-      }
-      LuckyExcel.transformExcelToLucky(files[0], function(exportJson, luckysheetfile){
-
-        if(exportJson.sheets==null || exportJson.sheets.length==0){
-          alert("Failed to read the content of the excel file, currently does not support xls files!");
-          return;
+    function getUrlParams(name) {
+        var url = window.location.search;
+        if (url.indexOf('?') == -1) {
+            return false;
         }
-        window.luckysheet.destroy();
+        url = url.substr(1);
+        url = url.split('&');
+        var name = name || '';
+        var nameres;
+        for (var i = 0; i < url.length; i++) {
+            var info = url[i].split('=');
+            var obj = {};
+            obj[info[0]] = decodeURI(info[1]);
+            url[i] = obj;
+        }
+        if (name) {
+            for (var i = 0; i < url.length; i++) {
+                for (var key in url[i]) {
+                    if (key == name) {
+                        nameres = url[i][key];
+                    }
+                }
+            }
+        } else {
+            nameres = url;
+        }
+        return nameres;
+    }
 
-        window.luckysheet.create({
-          container: 'luckysheet', //luckysheet is the container id
-          data:exportJson.sheets,
-          title:exportJson.info.name,
-          userInfo:exportJson.info.name.creator,
-          lang: 'zh', //璁惧畾琛ㄦ牸璇█ 鍥介檯鍖栬缃紝鍏佽璁剧疆琛ㄦ牸鐨勮瑷�锛屾敮鎸佷腑鏂�("zh")鍜岃嫳鏂�("en")
-          allowEdit: true, //鏄惁鍏佽鍓嶅彴缂栬緫
-          sheetFormulaBar: true, //鏄惁鏄剧ず鍏紡鏍�
-          forceCalculation: true,//寮哄埗璁$畻鍏紡
+    // 鍘嬬缉
+    function zip(data) {
+        if (!data) return data
+        // 鍒ゆ柇鏁版嵁鏄惁闇�瑕佽浆涓篔SON
+        const dataJson = typeof data !== 'string' && typeof data !== 'number' ? JSON.stringify(data) : data
+
+        // 浣跨敤Base64.encode澶勭悊瀛楃缂栫爜锛屽吋瀹逛腑鏂�
+        const str = Base64.encode(dataJson)
+        let binaryString = pako.gzip(str);
+        let arr = Array.from(binaryString);
+        let s = "";
+        arr.forEach((item, index) => {
+            s += String.fromCharCode(item)
+        })
+        return btoa(s)
+    }
+
+    // 瑙e帇
+    function unzip(b64Data) {
+        let strData = atob(b64Data);
+        let charData = strData.split('').map(function (x) {
+            return x.charCodeAt(0);
         });
-      });
-    })
+        let binData = new Uint8Array(charData);
+        let data = pako.ungzip(binData);
 
-    $("#export").on("click",() => {
-      console.log('export')
-      exportExcel(luckysheet.getluckysheetfile()).then((e) => {
-        saveFile(e,'file');
-      })
-    })
-
-    //淇濆瓨鍒版湇鍔″櫒
-    $("#save").on("click",() => {
-      if(getUrlParams('id') == false || getUrlParams('id') == undefined){
-        //鏂板
-        $.ajax({
-          url: baseUrl + "/priOnline2/add/auth",
-          headers: {'token': localStorage.getItem('token')},
-          data: JSON.stringify({
-            title: luckysheet.toJson().title,
-            sheetData: zip(luckysheet.getAllSheets()),
-            itemId: getUrlParams('item_id'),
-            priId: getUrlParams('pri_id')
-          }),
-          method: 'POST',
-          dataType: "json",
-          contentType:'application/json;charset=UTF-8',
-          success: function (res) {
-            if (res.code == 200) {
-              layer.msg('淇濆瓨鎴愬姛',{time:1000},() => {
-                parent.location.reload()
-              })
-            }else{
-              layer.msg(res.msg,{time:1000})
-            }
-          }
-        })
-      }else {
-        //淇敼
-        $.ajax({
-          url: baseUrl + "/priOnline2/update/auth",
-          headers: {'token': localStorage.getItem('token')},
-          data: JSON.stringify({
-            id: getUrlParams('id'),
-            title: luckysheet.toJson().title,
-            sheetData: zip(luckysheet.getAllSheets())
-          }),
-          method: 'POST',
-          dataType: "json",
-          contentType:'application/json;charset=UTF-8',
-          success: function (res) {
-            if (res.code == 200) {
-              layer.msg('淇濆瓨鎴愬姛',{time:1000},() => {
-                parent.location.reload()
-              })
-            }else{
-              layer.msg(res.msg,{time:1000})
-            }
-          }
-        })
-      }
-    })
-
-    $("#otherSave").on("click",() => {
-      if(getUrlParams('id') == false || getUrlParams('id') == undefined){
-        //鏂板缓鏂囦欢
-        $("#save").trigger("click")
-      }else {
-        //鍙﹀瓨
-        $.ajax({
-          url: baseUrl + "/priOnline2/addOther/auth",
-          headers: {'token': localStorage.getItem('token')},
-          data: JSON.stringify({
-            id: getUrlParams('id'),
-            title: luckysheet.toJson().title,
-            sheetData: zip(luckysheet.getAllSheets())
-          }),
-          method: 'POST',
-          dataType: "json",
-          contentType:'application/json;charset=UTF-8',
-          success: function (res) {
-            if (res.code == 200) {
-              layer.msg('鍙﹀瓨鎴愬姛',{time:1000},() => {
-                parent.location.reload()
-              })
-            }else{
-              layer.msg('淇濆瓨澶辫触',{time:1000})
-            }
-          }
-        })
-      }
-    })
-
-  })
-
-  $("#allprint").on("click",() => {
-    printExcel()
-  })
-
-  $("#print").on("click",() => {
-    let src = luckysheet.getScreenshot(); // 鐢熸垚base64鍥剧墖
-    const style = '@page {margin:0 10mm};'
-    printJS({
-      printable: src,
-      type: 'image',
-      style: style
-    }) // Print.js鎻掍欢
-  })
-
-  // 鑾峰彇琛ㄦ牸涓寘鍚唴瀹圭殑row锛宑olumn
-  function getExcelRowColumn() {
-    const sheetData = luckysheet.getSheetData();
-    let objRowColumn = {
-      row: [null, null], //琛�
-      column: [null, null], //鍒�
-    };
-    sheetData.forEach((item, index) => {
-      //琛屾暟
-      item.forEach((it, itemIndex) => {
-        if (it !== null) {
-          if (objRowColumn.row[0] == null) objRowColumn.row[0] = index; // row绗竴浣�
-          objRowColumn.row[1] = index; //row绗簩浣�
-          if (objRowColumn.column[0] == null)
-            objRowColumn.column[0] = itemIndex; //column绗竴浣�
-          objRowColumn.column[1] = itemIndex; //column绗簩浣�
+        // 鈫撳垏鐗囧鐞嗘暟鎹紝闃叉鍐呭瓨婧㈠嚭鎶ラ敊鈫�
+        let str = '';
+        const chunk = 8 * 1024
+        let i;
+        for (i = 0; i < data.length / chunk; i++) {
+            str += String.fromCharCode.apply(null, data.slice(i * chunk, (i + 1) * chunk));
         }
-      });
-    });
-    return objRowColumn;
-  }
+        str += String.fromCharCode.apply(null, data.slice(i * chunk));
+        // 鈫戝垏鐗囧鐞嗘暟鎹紝闃叉鍐呭瓨婧㈠嚭鎶ラ敊鈫�
 
-  function printExcel() {
-    let RowColumn = this.getExcelRowColumn() // 鑾峰彇鏈夊�肩殑琛屽拰鍒�
-    RowColumn.column[0] = 0 //鍥犻渶瑕佹墦鍗板乏杈圭殑杈规锛岄渶閲嶆柊璁剧疆
-    luckysheet.setRangeShow(RowColumn) // 杩涜閫夊尯鎿嶄綔
-    let src = luckysheet.getScreenshot(); // 鐢熸垚base64鍥剧墖
-    const style = '@page {margin:0 10mm};'
-    printJS({
-      printable: src,
-      type: 'image',
-      style: style
-    }) // Print.js鎻掍欢
-  }
+        const unzipStr = Base64.decode(str);
+        let result = ''
 
-  function getUrlParams(name) {
-    var url = window.location.search;
-    if (url.indexOf('?') == -1) { return false; }
-    url = url.substr(1);
-    url = url.split('&');
-    var name = name || '';
-    var nameres;
-    for (var i = 0; i < url.length; i++) {
-      var info = url[i].split('=');
-      var obj = {};
-      obj[info[0]] = decodeURI(info[1]);
-      url[i] = obj;
-    }
-    if (name) {
-      for (var i = 0; i < url.length; i++) {
-        for (var key in url[i]) {
-          if (key == name) {
-            nameres = url[i][key];
-          }
+        // 瀵硅薄鎴栨暟缁勮繘琛孞SON杞崲
+        try {
+            result = JSON.parse(unzipStr)
+        } catch (error) {
+            if (/Unexpected token o in JSON at position 0/.test(error)) {
+                // 濡傛灉娌℃湁杞崲鎴愬姛锛屼唬琛ㄥ�间负鍩烘湰鏁版嵁锛岀洿鎺ヨ祴鍊�
+                result = unzipStr
+            }
         }
-      }
-    } else {
-      nameres = url;
+        return result
     }
-    return nameres;
-  }
-
-  // 鍘嬬缉
-  function zip(data) {
-    if (!data) return data
-    // 鍒ゆ柇鏁版嵁鏄惁闇�瑕佽浆涓篔SON
-    const dataJson = typeof data !== 'string' && typeof data !== 'number' ? JSON.stringify(data) : data
-
-    // 浣跨敤Base64.encode澶勭悊瀛楃缂栫爜锛屽吋瀹逛腑鏂�
-    const str = Base64.encode(dataJson)
-    let binaryString = pako.gzip(str);
-    let arr = Array.from(binaryString);
-    let s = "";
-    arr.forEach((item, index) => {
-      s += String.fromCharCode(item)
-    })
-    return btoa(s)
-  }
-
-  // 瑙e帇
-  function unzip(b64Data) {
-    let strData = atob(b64Data);
-    let charData = strData.split('').map(function (x) {
-      return x.charCodeAt(0);
-    });
-    let binData = new Uint8Array(charData);
-    let data = pako.ungzip(binData);
-
-    // 鈫撳垏鐗囧鐞嗘暟鎹紝闃叉鍐呭瓨婧㈠嚭鎶ラ敊鈫�
-    let str = '';
-    const chunk = 8 * 1024
-    let i;
-    for (i = 0; i < data.length / chunk; i++) {
-      str += String.fromCharCode.apply(null, data.slice(i * chunk, (i + 1) * chunk));
-    }
-    str += String.fromCharCode.apply(null, data.slice(i * chunk));
-    // 鈫戝垏鐗囧鐞嗘暟鎹紝闃叉鍐呭瓨婧㈠嚭鎶ラ敊鈫�
-
-    const unzipStr = Base64.decode(str);
-    let result = ''
-
-    // 瀵硅薄鎴栨暟缁勮繘琛孞SON杞崲
-    try {
-      result = JSON.parse(unzipStr)
-    } catch (error) {
-      if (/Unexpected token o in JSON at position 0/.test(error)) {
-        // 濡傛灉娌℃湁杞崲鎴愬姛锛屼唬琛ㄥ�间负鍩烘湰鏁版嵁锛岀洿鎺ヨ祴鍊�
-        result = unzipStr
-      }
-    }
-    return result
-  }
 </script>
 </body>
 </html>
\ No newline at end of file
diff --git a/src/main/webapp/views/priOnline2/priOnline_more.html b/src/main/webapp/views/priOnline2/priOnline_more.html
index cc8f88b..cc60c8e 100644
--- a/src/main/webapp/views/priOnline2/priOnline_more.html
+++ b/src/main/webapp/views/priOnline2/priOnline_more.html
@@ -3,6 +3,7 @@
     #formAdvForm {
         background-color: #f3f3f3;
     }
+
     #formAdvForm .layui-form-item {
         margin-top: 20px;
         margin-bottom: 0;
@@ -31,7 +32,8 @@
             <div class="layui-card-header" style="padding-top: 5px; padding-bottom: 5px">
                 <div>
                     <i class="layui-icon" style="font-size: 20px;color: #1890ff;font-weight: bold">&#xe656;</i>
-                    <span id="form-name" style="margin: 0 6px;font-size: 18px;font-weight: bold;letter-spacing: 1px"></span>
+                    <span id="form-name"
+                          style="margin: 0 6px;font-size: 18px;font-weight: bold;letter-spacing: 1px"></span>
                     <span style="opacity: .5;font-size: small;margin-left: 5px">鏍镐环鍗�</span>
                 </div>
             </div>
@@ -74,7 +76,8 @@
     </div>
 
     <div class="form-group-bottom text-right">
-        <button class="layui-btn" lay-filter="refresh" lay-submit><i class="layui-icon">&#xe666;</i>&emsp;鍒锋柊&emsp;</button>
+        <button class="layui-btn" lay-filter="refresh" lay-submit><i class="layui-icon">&#xe666;</i>&emsp;鍒锋柊&emsp;
+        </button>
     </div>
 
 </form>
@@ -132,7 +135,8 @@
         form.render('select');
 
         init();
-        function init(){
+
+        function init() {
             notice.msg('姝e湪杞藉叆鏁版嵁......', {icon: 4, position: "topRight"});
             $.ajax({
                 url: baseUrl + "/priOnline2/" + priOnlineId + "/auth",
@@ -175,6 +179,7 @@
                 type: 'datetime'
             });
         }
+
         layDateRender();
 
         /* 鐩戝惉琛ㄥ崟鎻愪氦 */
diff --git a/src/main/webapp/views/processPermissions/processPermissions.html b/src/main/webapp/views/processPermissions/processPermissions.html
index 97b7349..786fde3 100644
--- a/src/main/webapp/views/processPermissions/processPermissions.html
+++ b/src/main/webapp/views/processPermissions/processPermissions.html
@@ -40,11 +40,11 @@
                         <div class="layui-input-block">
                             <select name="process_memo">
                                 <option value="">璇烽�夋嫨鐘舵��</option>
-                                <option value="1">鏍镐环娴佺▼</option>
+                                <option value="1">瑙勫垝娴佺▼</option>
                                 <option value="2">鎶ヤ环娴佺▼</option>
                                 <option value="3">鎶ラ攢娴佺▼</option>
-<!--                                <option value="4">鍑哄樊娴佺▼</option>-->
-                                <option value="5">鏍镐环娴佺▼</option>
+                                <option value="4">闆嗘垚鏍镐环娴佺▼</option>
+                                <option value="5">璐ф灦鏍镐环娴佺▼</option>
                                 <option value="7">鍚堝悓绠$悊</option>
                                 <option value="101">鍏跺畠瑙勫垝鍛�</option>
                             </select>

--
Gitblit v1.9.1