Administrator
2021-08-21 75d710137ad9098e36e41f6ce8f2ccde0b6becc4
src/main/java/org/springblade/modules/apply/controller/ApplyController.java
@@ -1,5 +1,6 @@
package org.springblade.modules.apply.controller;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@@ -16,6 +17,8 @@
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.FTP.FtpUtil;
import org.springblade.modules.FTP.OutJson;
import org.springblade.modules.apply.entity.Apply;
import org.springblade.modules.apply.excel.ApplyExcel;
import org.springblade.modules.apply.excel.ApplyImporter;
@@ -33,9 +36,14 @@
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import static org.springblade.common.constant.FtpConstant.*;
/**
 * @author zhongrj
@@ -97,6 +105,10 @@
         user1.setId(apply.getUserId());
         user1.setIsApply(1);
         userService.updateById(user1);
         //内网数据同步
         saveApply(apply,user1);
         return R.data(200,"报名成功");
      }else {
         if (1==user.getIsApply()){
@@ -114,10 +126,35 @@
            user1.setId(apply.getUserId());
            user1.setIsApply(1);
            userService.updateById(user1);
            //内网数据同步
            saveApply(apply,user1);
            return R.data(200,"报名成功");
         }
      }
      return R.data(202,"报名失败");
   }
   /**
    * 报名
    */
   private void saveApply(Apply apply,User user1){
      String formatStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
      Long id = apply.getId();
      String s = "insert into sys_apply(id,user_id,apply_time,apply_status,is_exam) " +
         "values(" + "'" + id + "'" + "," + "'" + apply.getUserId() + "'" + "," + "'" + formatStr +
         "'" + "," + "'" + apply.getApplyStatus() + "'" + "," +"'" + apply.getIsExam() + "'" + ");" +
         "update blade_user set is_apply = " + user1.getIsApply() + " " +"where id = " + "'" + user1.getId() + "'";
      String json = JSON.toJSONString(s);
      OutJson.createJsonFile(json, "d:/", "wsql");
      FileInputStream in = null;
      try {
         in = new FileInputStream(new File("D:\\" + fileName));
      } catch (FileNotFoundException e) {
         e.printStackTrace();
      }
      FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", "/", fileName, in);
   }
@@ -329,7 +366,6 @@
    */
   @PostMapping("/remove")
   public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) {
      //arg.sendPostRemoveByIds(arg.url+"/apply/remove",ids);
      return R.status(applyService.removeByIds(Func.toLongList(ids)));
   }
@@ -389,9 +425,14 @@
         //修改保安报名状态
         user.setIsApply(2);
         userService.updateById(user);
         //取消报名同步
         cancelApplySync(apply,user);
         if (status){
            return R.data(200,"取消报名成功");
         }
      }else {
         if(user.getIsApply()==1){
            apply.setApplyStatus(4);
@@ -399,6 +440,10 @@
            //修改保安报名状态
            user.setIsApply(2);
            userService.updateById(user);
            //取消报名同步
            cancelApplySync(apply,user);
            if (status){
               return R.data(200,"取消报名成功");
            }
@@ -407,6 +452,24 @@
         }
      }
      return R.data(202,"取消报名失败");
   }
   /**
    * 取消报名同步
    */
   private void cancelApplySync(Apply apply,User user){
      String s =
         "update sys_apply set apply_status = " + apply.getApplyStatus() + " " +"where id = " + "'" + apply.getId() + "';" +
            "update blade_user set is_apply = " + user.getIsApply() + " " +"where id = " + "'" + user.getId() + "'";
      String json = JSON.toJSONString(s);
      OutJson.createJsonFile(json, "d:/", "wsql");
      FileInputStream in = null;
      try {
         in = new FileInputStream(new File("D:\\" + fileName));
      } catch (FileNotFoundException e) {
         e.printStackTrace();
      }
      FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, "anbao/", "/", fileName, in);
   }
@@ -426,6 +489,10 @@
         //修改保安报名状态
         user.setIsApply(2);
         userService.updateById(user);
         //取消报名同步
         cancelApplySync(apply1,user);
         if (status){
            return R.data(200,"取消报名成功");
         }
@@ -439,6 +506,10 @@
            //修改保安报名状态
            user.setIsApply(2);
            userService.updateById(user);
            //取消报名同步
            cancelApplySync(apply1,user);
            if (status){
               return R.data(200,"取消报名成功");
            }
@@ -470,6 +541,9 @@
               //修改保安报名状态
               user.setIsApply(1);
               userService.updateById(user);
               //内网数据同步
               saveApply(apply1,user);
            } else {
               if (user.getIsApply() != 1) {
                  Apply apply1 = new Apply();
@@ -482,13 +556,15 @@
                  //修改保安报名状态
                  user.setIsApply(1);
                  userService.updateById(user);
                  //内网数据同步
                  saveApply(apply1,user);
               }
            }
         });
      }else {
         //查询所有未报名的人员
         List<User> users = userService.getNotApplyIdList(deptId);
         System.out.println("users = " + users.size());
         if (users.size()>0){
            users.forEach(user ->{
               //未报名的新增,已报名的不做处理
@@ -503,6 +579,9 @@
                  //修改保安报名状态
                  user.setIsApply(1);
                  userService.updateById(user);
                  //内网数据同步
                  saveApply(apply1,user);
               } else {
                  if (user.getIsApply() != 1) {
                     Apply apply1 = new Apply();
@@ -515,6 +594,9 @@
                     //修改保安报名状态
                     user.setIsApply(1);
                     userService.updateById(user);
                     //内网数据同步
                     saveApply(apply1,user);
                  }
               }
            });