CitImportExcelController.java 5.74 KB
Newer Older
1 2
package pwc.taxtech.atms.controller;

3
import com.alibaba.fastjson.JSONArray;
4 5 6 7 8
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
zhkwei's avatar
zhkwei committed
9
import pwc.taxtech.atms.constant.enums.EnumCitImportType;
10
import pwc.taxtech.atms.dto.ApiResultDto;
zhkwei's avatar
zhkwei committed
11
import pwc.taxtech.atms.dto.CitJournalAdjustDto;
12
import pwc.taxtech.atms.dto.OperationResultDto;
13 14 15
import pwc.taxtech.atms.service.impl.CitImportExcelServiceImpl;

import java.io.InputStream;
16
import java.util.List;
zhkwei's avatar
zhkwei committed
17 18

import static pwc.taxtech.atms.constant.enums.EnumCitImportType.JournalAdjust;
19 20

/**
21
 * @Description CIT文件导入Controller
22 23 24 25 26 27 28 29 30 31
 * @Author zhikai.z.wei
 */
@RestController
@RequestMapping("/api/v1/citImport/")
public class CitImportExcelController {
    private static Logger logger = LoggerFactory.getLogger(CitImportExcelController.class);

    @Autowired
    private CitImportExcelServiceImpl citImportExcelService;

32 33 34 35 36 37 38 39 40
    /**
     * CIT文件导入
     * @param file
     * @param orgIds
     * @param periodDate
     * @param importType
     * @param importFileType
     * @return
     */
zhkwei's avatar
zhkwei committed
41
    @RequestMapping(value = "/citImportExcel", method = RequestMethod.POST)
42
    public @ResponseBody
43
    OperationResultDto citImportExcel(@RequestParam MultipartFile file, @RequestParam(required = false) String orgIds,
44 45
                                      @RequestParam String periodDate,
                                      @RequestParam Integer importType,
46 47
                                      @RequestParam Integer importFileType,
                                      @RequestParam(required = false) Integer month){
48
        logger.info("CIT文件导入");
49
        OperationResultDto opeResultDto = new OperationResultDto();
50 51
        try{
            if (file == null || file.getSize() <= 0) {
52 53
                opeResultDto.setResult(false);
                opeResultDto.setResultMsg("没有获取到文件");
54
                logger.warn("没有获取到文件");
55
                return opeResultDto;
56 57
            }
            logger.debug("file name: " + file.getOriginalFilename());
58
            List<String> orgList = (List<String>) JSONArray.parse(orgIds);
59
            opeResultDto = citImportExcelService.citImportExcel(file, orgList, file.getOriginalFilename(), periodDate, importType, importFileType, month);
60
            return opeResultDto;
61
        }catch (Exception e){
62
            logger.error("文件导入失败,错误信息如下:");
63
            e.printStackTrace();
64
            opeResultDto.setResult(false);
65
            opeResultDto.setResultMsg("文件导入失败");
66
            return opeResultDto;
67 68 69
        }
    }

zhkwei's avatar
zhkwei committed
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105

    /**
     * CIT调整版日记账导入
     * @return
     */
//    @RequestMapping(value = "/journalAdjustImport", method = RequestMethod.POST)
//    public @ResponseBody
//    ApiResultDto journalAdjustImport(@RequestParam MultipartFile file,@RequestParam String periodDate,@RequestParam Integer importType){
//        logger.info("CIT调整版日记账导入");
//        ApiResultDto apiResultDto = new ApiResultDto();
//        try{
//            if (file == null || file.getSize() <= 0) {
//                apiResultDto.setCode(-1);
//                apiResultDto.setMessage("没有获取到文件");
//                logger.warn("没有获取到文件");
//                return apiResultDto;
//            }
//            logger.debug("file name: " + file.getOriginalFilename());
//            InputStream input = null;
//
//            input = file.getInputStream();
//            //调用资产导入业务逻辑
//            citImportExcelService.importJournalAdjust(input, file.getOriginalFilename(), periodDate, importType);
//
//            apiResultDto.setCode(1);
//            apiResultDto.setMessage("资产导入成功");
//            return apiResultDto;
//        }catch (Exception e){
//            logger.error("资产导入失败,错误信息如下:");
//            e.printStackTrace();
//            apiResultDto.setCode(0);
//            apiResultDto.setMessage("资产导入失败");
//            return apiResultDto;
//        }
//    }

106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
    /**
     * 获取导入的调整日记账版本
     * @return
     */
    @RequestMapping(value = "/getJournalAdjust", method = RequestMethod.GET)
    public ApiResultDto getJournalAdjust(){
        logger.info("获取CIT调整版日记账");
        ApiResultDto apiResultDto = new ApiResultDto();
        apiResultDto.setCode(1);
        apiResultDto.setData(citImportExcelService.getJournalAdjust());
        return apiResultDto;
    }

    /**
     * 根据导入类型获取导入记录
     * @param type
     * @return
     */
    @RequestMapping(value = "/getCitDataImportLog", method = RequestMethod.GET)
    public ApiResultDto getCitDataImportLog(Integer type){
126
        logger.info("获取CIT导入记录");
127 128 129 130 131 132
        ApiResultDto apiResultDto = new ApiResultDto();
        apiResultDto.setCode(1);
        apiResultDto.setData(citImportExcelService.getCitDataImportLog(type));
        return apiResultDto;
    }

zhkwei's avatar
zhkwei committed
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
    @RequestMapping(value = "/generateTb", method = RequestMethod.POST)
    public OperationResultDto generateTb(@RequestBody CitJournalAdjustDto citJournalAdjustDto){
        logger.info("处理日记账并生成TB");
        OperationResultDto operationResultDto = new OperationResultDto();
        try{
            operationResultDto.setResult(true);
            citImportExcelService.generateTb(citJournalAdjustDto.getProjectId());
            operationResultDto.setResultMsg("Success");
            return operationResultDto;
        }catch (Exception e){
            operationResultDto.setResult(false);
            operationResultDto.setResultMsg("Fail");
            return operationResultDto;
        }

    }
149 150

}