package com.zjrs.ggfw.rlzysc.controller;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.mohrss.leaf.core.framework.persistens.PageResult;
import org.mohrss.leaf.core.framework.web.controller.AjaxResponse;
import org.mohrss.leaf.core.framework.web.exception.AppException;
import com.zjrs.ggfw.annotation.IsHmdValid;
import com.zjrs.ggfw.rlzysc.bpo.GrqzBPO;
import com.zjrs.ggfw.rlzysc.dto.*;
import com.zjrs.ggfw.rlzysc.dto.common.PageDTO;
import com.zjrs.ggfw.rlzysc.dto.grzxjlxx.*;
import com.zjrs.ggfw.rlzysc.po.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.validation.BindingResult;
import org.springframework.validation.FieldError;
import org.springframework.web.bind.annotation.*;

import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Valid;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


@Api("个人求职")
@RestController
@RequestMapping("/api/rlzysc/grqz")
public class GrqzController {
    private static final Logger LOG = LoggerFactory.getLogger(GrqzController.class);

    @Resource
    private GrqzBPO grqzBPO;

    /**
     * 头像上传
     *
     * @param dto
     * @param bindingResult
     * @return
     */
    @ApiOperation(value = "头像上传", notes = "头像上传")
    @PostMapping("/grxxzz/txxx/upload")
    public AjaxResponse uploadPhoto(@RequestBody @Valid GrqzGrtxUploadDTO dto, BindingResult bindingResult) {
        LOG.info("头像上传开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }

        try {
            Map<String, String> resultMap = this.grqzBPO.uploadPhoto(dto);
            ajaxResponse.setAppcode(resultMap.get("code"));
            ajaxResponse.setMsg(resultMap.get("msg"));
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("头像上传结束");
        return ajaxResponse;
    }

    /**
     * 头像查询
     *
     * @param dto
     * @param bindingResult
     * @return
     */
    @ApiOperation(value = "头像查询", notes = "头像查询")
    @PostMapping("/grxxzz/txxx/query")
    public AjaxResponse queryPhoto(@RequestBody @Valid GrqzGrxxQueryDTO dto, BindingResult bindingResult) {
        LOG.info("头像查询开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }
        try {
            JlxxPO jlxxPO = this.grqzBPO.queryPhoto(dto);
            ajaxResponse.setData("data", jlxxPO);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("头像查询结束");
        return ajaxResponse;
    }

    /**
     * 视频上传
     *
     * @param dto
     * @param bindingResult
     * @return
     */
    @ApiOperation(value = "视频上传", notes = "视频上传")
    @PostMapping("/grxxzz/spxx/upload")
    public AjaxResponse uploadVideo(@RequestBody @Valid GrqzGrspUploadDTO dto, BindingResult bindingResult) {
        LOG.info("视频上传开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }

        try {
            Map<String, String> resultMap = this.grqzBPO.uploadVideo(dto);
            ajaxResponse.setAppcode(resultMap.get("code"));
            ajaxResponse.setMsg(resultMap.get("msg"));
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("视频上传结束");
        return ajaxResponse;
    }

    /**
     * 视频查询
     *
     * @param dto
     * @param bindingResult
     * @return
     */
    @ApiOperation(value = "视频查询", notes = "视频查询")
    @PostMapping("/grxxzz/spxx/query")
    public AjaxResponse queryVideo(@RequestBody @Valid GrqzGrxxQueryDTO dto, BindingResult bindingResult) {
        LOG.info("视频查询开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }
        try {
            JlxxPO jlxxPO = this.grqzBPO.queryVideo(dto);
            ajaxResponse.setData("data", jlxxPO);

        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("视频查询结束");
        return ajaxResponse;
    }


    /**
     * 获取岗位信息列表
     *
     * @param dto
     * @param bindingResult
     * @return
     */
    @ApiOperation(value = "获取岗位信息列表", notes = "获取岗位信息列表")
    @PostMapping("/gwxx/list")
    public AjaxResponse queryGwxxList(@RequestBody @Valid GrqzGwxxQueryDTO dto, BindingResult bindingResult) {
        LOG.info("获取岗位信息列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }

        Integer pagenum = Math.toIntExact(dto.getPagenum());
        Integer pagesize = Math.toIntExact(dto.getPagesize());
        try {
            PageResult pageResult = grqzBPO.queryGwxxList(dto, pagenum, pagesize);
            ajaxResponse.setData("data", pageResult);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取岗位信息列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "删除岗位信息", notes = "删除岗位信息")
    @PostMapping("/gwxx/delete")
    public AjaxResponse deleteGwxx(@RequestBody @Valid GrqzGwxxDeleteDTO dto, BindingResult bindingResult) {
        LOG.info("删除岗位信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }

        try {
            this.grqzBPO.deleteGwxx(dto.getRsrlzygwxxlsh());
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");

        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除岗位信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取关注公司列表", notes = "获取关注公司列表")
    @PostMapping("/gzgs/list")
    public AjaxResponse queryGzgsList(@RequestBody @Valid GrqzGzgsQueryDTO dto, BindingResult bindingResult) {
        LOG.info("获取关注公司列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }
        Integer pagenum = Math.toIntExact(dto.getPagenum());
        Integer pagesize = Math.toIntExact(dto.getPagesize());
        try {
            PageResult pageResult = grqzBPO.queryGzgsList(dto, pagenum, pagesize);
            ajaxResponse.setData("data", pageResult);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取关注公司列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "关注公司", notes = "关注公司")
    @PostMapping("/gzgs/add")
    public AjaxResponse addGzgs(@RequestBody @Valid GrqzGzgsDTO dto, BindingResult bindingResult) {
        LOG.info("关注公司开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }
        try {
            this.grqzBPO.addGzgs(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");

        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("关注公司结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "取消关注公司", notes = "取消关注公司")
    @PostMapping("/gzgs/delete")
    public AjaxResponse deleteGzgs(@RequestBody @Valid GrqzGzgsDeleteDTO dto, BindingResult bindingResult) {
        LOG.info("取消关注公司开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }

        try {
            this.grqzBPO.deleteGzgs(dto.getRsrlzygzgslsh());
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");

        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("取消关注公司结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取屏蔽设置列表", notes = "获取屏蔽设置列表")
    @PostMapping("/pbsz/list")
    public AjaxResponse queryPbszList(@RequestBody @Valid GrqzPbszQueryDTO dto, BindingResult bindingResult) {
        LOG.info("获取屏蔽设置列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }
        Integer pagenum = Math.toIntExact(dto.getPagenum());
        Integer pagesize = Math.toIntExact(dto.getPagesize());
        try {
            PageResult pageResult = grqzBPO.queryPbszList(dto, pagenum, pagesize);
            ajaxResponse.setData("data", pageResult);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取屏蔽设置列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "新增屏蔽设置", notes = "新增屏蔽设置")
    @PostMapping("/pbsz/save")
    public AjaxResponse addPbsz(@RequestBody @Valid GrqzPbszDTO dto, BindingResult bindingResult) {
        LOG.info("新增屏蔽设置开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }
        try {
            this.grqzBPO.addPbsz(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");

        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("新增屏蔽设置结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "屏蔽设置", notes = "屏蔽设置")
    @PostMapping("/pbsz/delete")
    public AjaxResponse deletePbsz(@RequestBody @Valid GrqzPbszDeleteDTO dto, BindingResult bindingResult) {
        LOG.info("屏蔽设置开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }

        try {
            this.grqzBPO.deletePbsz(dto.getRsrlzypbszlsh());
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");

        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("屏蔽设置结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "获取职业搜索器列表", notes = "获取职业搜索器列表")
    @PostMapping("/zyssq/list")
    public AjaxResponse queryPbszList(@RequestBody GrqzZyssqDTO dto) {
        LOG.info("获取职业搜索器列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        Integer pagenum = Math.toIntExact(dto.getPagenum());
        Integer pagesize = Math.toIntExact(dto.getPagesize());
        try {
            PageResult pageResult = grqzBPO.queryZyssqList(dto, pagenum, pagesize);
            ajaxResponse.setData("data", pageResult);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职业搜索器列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "查询职业搜索器详情", notes = "查询职业搜索器详情")
    @PostMapping("/zyssq/getbyid")
    public AjaxResponse getsyssqbyid(@RequestBody @Valid GrqzZyssqDTO dto, BindingResult bindingResult) {
        LOG.info("查询职业搜索器详情开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }

        try {
            ZyssqPO zyssqPO = this.grqzBPO.getZyssqById(dto.getRsrlzyzyssqlsh());
            ajaxResponse.setData("data", zyssqPO);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("查询职业搜索器详情结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "删除职业搜索器", notes = "删除职业搜索器")
    @PostMapping("/zyssq/delete")
    public AjaxResponse deleteZyssq(@RequestBody @Valid GrqzZyssqDeleteDTO dto, BindingResult bindingResult) {
        LOG.info("删除职业搜索器开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        //校验入参
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(bindingResult.getFieldError().getDefaultMessage());
            return ajaxResponse;
        }

        try {
            this.grqzBPO.deleteZyssqById(dto.getRsrlzyzyssqlsh());
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");

        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除职业搜索器结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "保存职业搜索器", notes = "保存职业搜索器")
    @PostMapping("/zyssq/save")
    public AjaxResponse addZyssq(@RequestBody GrqzZyssqDTO dto) {
        LOG.info("保存职业搜索器开始");
        AjaxResponse ajaxResponse = new AjaxResponse();

        try {
            if ("".equals(dto.getRsrlzyzyssqlsh()) || dto.getRsrlzyzyssqlsh() == null) {
                LOG.info("保存职业搜索器,新增");
                if (this.grqzBPO.countZyssq() >= 10) {
                    ajaxResponse.setAppcode("0");
                    ajaxResponse.setErrorMsg("操作失败，个人职业搜索器不能超过10！");
                    return ajaxResponse;
                } else {
                    this.grqzBPO.addZyssq(dto);
                }

            } else {
                LOG.info("保存职业搜索器,更新");
                this.grqzBPO.updateZyssq(dto);
            }

            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");

        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("保存职业搜索器结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取工作经验列表", notes = "获取工作经验列表")
    @PostMapping("/jlxx/gzjy/list")
    public AjaxResponse getgzjyList(@RequestBody @Valid JlxxWhDTO dto) {
        LOG.info("获取工作经验列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<JlxxGzjyUDTO> result = this.grqzBPO.getgzjyList(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取工作经验列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取教育经历列表", notes = "获取教育经历列表")
    @PostMapping("/jlxx/jyjl/list")
    public AjaxResponse getjyjlList(@RequestBody @Valid JlxxWhDTO dto) {
        LOG.info("获取教育经历列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<JlxxJyjlUDTO> result = this.grqzBPO.getjyjlList(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取教育经历列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取培训经历列表", notes = "获取培训经历列表")
    @PostMapping("/jlxx/pxjl/list")
    public AjaxResponse getpxjlList(@RequestBody @Valid JlxxWhDTO dto) {
        LOG.info("获取培训经历列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<JlxxPxjlUDTO> result = this.grqzBPO.getpxjlList(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取培训经历列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取职业技能列表", notes = "获取职业技能列表")
    @PostMapping("/jlxx/zyjn/list")
    public AjaxResponse getzyjnList(@RequestBody @Valid JlxxWhDTO dto) {
        LOG.info("获取职业技能列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<JlxxZyjnUDTO> result = this.grqzBPO.getzyjnList(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职业技能列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取所获证书列表", notes = "获取所获证书列表")
    @PostMapping("/jlxx/shzs/list")
    public AjaxResponse getshzsList(@RequestBody @Valid JlxxWhDTO dto) {
        LOG.info("获取所获证书列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<JlxxShzsUDTO> result = this.grqzBPO.getshzsList(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取所获证书列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取获奖情况列表", notes = "获取获奖情况列表")
    @PostMapping("/jlxx/hjqk/list")
    public AjaxResponse gethjqkList(@RequestBody @Valid JlxxWhDTO dto) {
        LOG.info("获取获奖情况列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<JlxxHjqkUDTO> result = this.grqzBPO.gethjqkList(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取获奖情况列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取职称情况列表", notes = "获取职称情况列表")
    @PostMapping("/jlxx/zcqk/list")
    public AjaxResponse getzcqkList(@RequestBody @Valid JlxxWhDTO dto) {
        LOG.info("获取职称情况列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<JlxxZcqkUDTO> result = this.grqzBPO.getzcqkList(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职称情况列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取工作经验信息", notes = "获取工作经验信息")
    @PostMapping("/jlxx/gzjy/query")
    public AjaxResponse getJlgzjy(@RequestBody @Valid ZjQueryDTO dto) {
        LOG.info("获取工作经验信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            Map result = this.grqzBPO.getJlgzjy(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取工作经验信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取工作经验维护列表", notes = "获取工作经验维护列表")
    @PostMapping("/jlxx/gzjy/wh/list")
    public AjaxResponse getgzjyWhList(@RequestBody JlxxWDTO dto) {
        LOG.info("获取工作经验维护列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        Integer pagenum = dto.getPagenum();
        Integer pagesize = dto.getPagesize();
        try {
            PageResult result = this.grqzBPO.getgzjyWhList(pagenum, pagesize, dto);
            ajaxResponse.setData("data", result);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取工作经验维护列表结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "保存工作经验信息", notes = "保存工作经验信息")
    @PostMapping(value = "/jlxx/gzjy/save")
    public AjaxResponse saveGzjyXx(@RequestBody @Valid JlxxGzjyUDTO dto, BindingResult bindingResult) {
        LOG.info("保存工作经验信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.saveGzjyXx(dto));
            ajaxResponse.setMsg("操作成功");
            ajaxResponse.setAppcode("0");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("保存工作经验信息结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "删除工作经验信息", notes = "删除工作经验信息")
    @PostMapping("/jlxx/gzjy/delete/{id}")
    public AjaxResponse deleteGzjyById(@PathVariable String id) {
        LOG.info("删除工作经验信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteById(id);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
            ajaxResponse.setAppcode("1");
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除工作经验信息结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "删除工作经验维护信息", notes = "删除工作经验维护信息")
    @PostMapping("/jlxx/gzjy/wh/delete")
    public AjaxResponse deleteGzjyWhById(@RequestBody SelectJlxxDTO dto) {
        LOG.info("删除工作经验维护信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteGzjyWhById(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除工作经验维护信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取工作经验维护内容", notes = "获取工作经验维护内容")
    @GetMapping("/jlxx/gzjy/wh/query/{id}")
    public AjaxResponse getGzjyNrById(@PathVariable String id) {
        LOG.info("获取工作经验维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyGzjyPO> result = this.grqzBPO.getGzjyNrById(id);
            ajaxResponse.setData("data", result);
            ajaxResponse.setAppcode("0");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取工作经验维护内容结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "新增工作经验维护内容", notes = "新增工作经验维护内容")
    @PostMapping("/jlxx/gzjy/addGzjy")
    public AjaxResponse addgzjynr(@RequestBody SelectJlxxDTO dto) {
        LOG.info("新增工作经验维护内容结束");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.addgzjynr(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("新增工作经验维护内容结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取教育经历维护列表", notes = "获取教育经历维护列表")
    @PostMapping("/jlxx/jyjl/wh/list")
    public AjaxResponse getjyjlWhList(@RequestBody JlxxWDTO dto) {
        LOG.info("获取教育经历维护列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        Integer pagenum = dto.getPagenum();
        Integer pagesize = dto.getPagesize();
        try {
            PageResult result = this.grqzBPO.getjyjlWhList(pagenum, pagesize, dto);
            ajaxResponse.setData("data", result);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取教育经历维护列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取教育经历信息", notes = "获取教育经历信息")
    @PostMapping("/jlxx/jyjl/query")
    public AjaxResponse getJljyjl(@RequestBody @Valid ZjQueryDTO dto) {
        LOG.info("获取教育经历信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            Map result = this.grqzBPO.getJljyjl(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取教育经历信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取教育经历维护内容", notes = "获取教育经历维护内容")
    @GetMapping("/jlxx/jyjl/wh/query/{id}")
    public AjaxResponse getJyjlNrById(@PathVariable String id) {
        LOG.info("获取教育经历维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyJyjlPO> result = this.grqzBPO.getJyjlNrById(id);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取教育经历维护内容结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "保存教育经历信息", notes = "保存教育经历信息")
    @PostMapping(value = "/jlxx/jyjl/save")
    public AjaxResponse saveJyjlXx(@RequestBody @Valid JlxxJyjlUDTO dto, BindingResult bindingResult) {
        LOG.info("保存教育经历信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.saveJyjlXx(dto));
            ajaxResponse.setMsg("操作成功");
            ajaxResponse.setAppcode("0");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            e.printStackTrace();
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("保存教育经历信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "新增教育经历维护内容", notes = "新增教育经历维护内容")
    @PostMapping("/jlxx/jyjl/addJyjl")
    public AjaxResponse addjyjlnr(@RequestBody SelectJlxxDTO dto) {
        LOG.info("新增教育经历维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.addjyjlnr(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("新增教育经历维护结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除教育经历信息", notes = "删除教育经历信息")
    @PostMapping("/jlxx/jyjl/delete/{id}")
    public AjaxResponse deleteJyjlById(@PathVariable String id) {
        LOG.info("删除教育经历信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteJyjlById(id);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
            ajaxResponse.setAppcode("1");
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除教育经历信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除教育经历维护信息", notes = "删除教育经历维护信息")
    @PostMapping("/jlxx/jyjl/wh/delete")
    public AjaxResponse deleteJyjlWhById(@RequestBody SelectJlxxDTO dto) {
        LOG.info("删除教育经历维护信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteJyjlWhById(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除教育经历维护信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取培训经历维护列表", notes = "获取培训经历维护列表")
    @PostMapping("/jlxx/pxjl/wh/list")
    public AjaxResponse getpxjlWhList(@RequestBody JlxxWDTO dto) {
        LOG.info("获取培训经历维护列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        Integer pagenum = dto.getPagenum();
        Integer pagesize = dto.getPagesize();
        try {
            PageResult result = this.grqzBPO.getpxjlWhList(pagenum, pagesize, dto);
            ajaxResponse.setData("data", result);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取培训经历维护列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取培训经历信息", notes = "获取培训经历信息")
    @PostMapping("/jlxx/pxjl/query")
    public AjaxResponse getJlpxjl(@RequestBody @Valid ZjQueryDTO dto) {
        LOG.info("获取培训经历信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            Map result = this.grqzBPO.getJlpxjl(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取培训经历信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取培训经历维护内容", notes = "获取培训经历维护内容")
    @GetMapping("/jlxx/pxjl/wh/query/{id}")
    public AjaxResponse getPxjlNrById(@PathVariable String id) {
        LOG.info("获取培训经历维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyPxjlPO> result = this.grqzBPO.getPxjlNrById(id);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取培训经历维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "新增培训经历维护内容", notes = "新增培训经历维护内容")
    @PostMapping("/jlxx/pxjl/addPxjl")
    public AjaxResponse addpxjlnr(@RequestBody SelectJlxxDTO dto) {
        LOG.info("新增培训经历维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.addpxjlnr(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("新增培训经历维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "保存培训经历信息", notes = "保存培训经历信息")
    @PostMapping("/jlxx/pxjl/save")
    public AjaxResponse savePxjlXx(@RequestBody @Valid JlxxPxjlUDTO dto, BindingResult bindingResult) {
        LOG.info("保存培训经历信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.savePxjlXx(dto));
            ajaxResponse.setMsg("操作成功");
            ajaxResponse.setAppcode("0");
            LOG.info("保存培训经历信息成功");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("保存培训经历信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除培训经历信息", notes = "删除培训经历信息")
    @PostMapping("/jlxx/pxjl/delete/{id}")
    public AjaxResponse deletePxjlById(@PathVariable String id) {
        LOG.info("删除培训经历信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deletePxjlById(id);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
            LOG.info("删除培训经历信息成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
            ajaxResponse.setAppcode("1");
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除培训经历信息结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "删除培训经历维护信息", notes = "删除培训经历维护信息")
    @PostMapping("/jlxx/pxjl/wh/delete")
    public AjaxResponse deletePxjlWhById(@RequestBody SelectJlxxDTO dto) {
        LOG.info("删除培训经历维护信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deletePxjlWhById(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
            LOG.info("删除培训经历维护信息成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
            ajaxResponse.setAppcode("1");
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除培训经历维护信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取职业技能维护列表", notes = "获取职业技能维护列表")
    @PostMapping("/jlxx/zyjn/wh/list")
    public AjaxResponse getzyjnWhList(@RequestBody JlxxWDTO dto) {
        LOG.info("获取职业技能维护列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        Integer pagenum = dto.getPagenum();
        Integer pagesize = dto.getPagesize();
        try {
            PageResult result = this.grqzBPO.getzyjnWhList(pagenum, pagesize, dto);
            ajaxResponse.setData("data", result);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职业技能维护列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取职业技能信息", notes = "获取职业技能信息")
    @PostMapping("/jlxx/zyjn/query")
    public AjaxResponse getJlzyjn(@RequestBody @Valid ZjQueryDTO dto) {
        LOG.info("获取职业技能信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            Map result = this.grqzBPO.getJlzyjn(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职业技能信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取职业技能维护内容", notes = "获取职业技能维护内容")
    @GetMapping("/jlxx/zyjn/wh/query/{id}")
    public AjaxResponse getZyjnNrById(@PathVariable String id) {
        LOG.info("获取职业技能维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyZyjnPO> result = this.grqzBPO.getZyjnNrById(id);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职业技能维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "新增职业技能维护内容", notes = "新增职业技能维护内容")
    @PostMapping("/jlxx/zyjn/addZyjn")
    public AjaxResponse addzyjnnr(@RequestBody SelectJlxxDTO dto) {
        LOG.info("新增职业技能维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.addzyjnnr(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("新增职业技能维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "保存职业技能信息", notes = "保存职业技能信息")
    @PostMapping("/jlxx/zyjn/save")
    public AjaxResponse saveZyjnXx(@RequestBody JlxxZyjnUDTO dto, BindingResult bindingResult) {
        LOG.info("保存职业技能信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.saveZyjnXx(dto));
            ajaxResponse.setMsg("操作成功");
            ajaxResponse.setAppcode("0");
            LOG.info("保存职业技能信息成功");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("保存职业技能信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除职业技能信息", notes = "删除职业技能信息")
    @PostMapping("/jlxx/zyjn/delete/{id}")
    public AjaxResponse deleteZyjnById(@PathVariable String id) {
        LOG.info("删除职业技能信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteZyjnById(id);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
            LOG.info("删除职业技能信息成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
            ajaxResponse.setAppcode("1");
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除职业技能信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除职业技能维护信息", notes = "删除职业技能维护信息")
    @PostMapping("/jlxx/zyjn/wh/delete")
    public AjaxResponse deleteZyjnWhById(@RequestBody SelectJlxxDTO dto) {
        LOG.info("删除职业技能维护信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteZyjnWhById(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
            LOG.info("删除职业技能维护信息成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除职业技能维护信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取所获证书维护列表", notes = "获取所获证书维护列表")
    @PostMapping("/jlxx/shzs/wh/list")
    public AjaxResponse getshzsWhList(@RequestBody JlxxWDTO dto) {
        LOG.info("获取所获证书维护列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        Integer pagenum = dto.getPagenum();
        Integer pagesize = dto.getPagesize();
        try {
            PageResult result = this.grqzBPO.getshzsWhList(pagenum, pagesize, dto);
            ajaxResponse.setData("data", result);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取所获证书维护列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取所获证书信息", notes = "获取所获证书信息")
    @PostMapping("/jlxx/shzs/query")
    public AjaxResponse getJlshzs(@RequestBody @Valid ZjQueryDTO dto) {
        LOG.info("获取所获证书信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            Map result = this.grqzBPO.getJlshzs(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取所获证书信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取所获证书维护内容", notes = "获取所获证书维护内容")
    @GetMapping("/jlxx/shzs/wh/query/{id}")
    public AjaxResponse getShzsNrById(@PathVariable String id) {
        LOG.info("获取所获证书维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyShzsPO> result = this.grqzBPO.getShzsNrById(id);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取所获证书维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "新增所获证书维护内容", notes = "新增所获证书维护内容")
    @PostMapping("/jlxx/shzs/addShzs")
    public AjaxResponse addshzsnr(@RequestBody SelectJlxxDTO dto) {
        LOG.info("新增所获证书维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.addshzsnr(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("新增所获证书维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "保存所获证书信息", notes = "保存所获证书信息")
    @PostMapping("/jlxx/shzs/save")
    public AjaxResponse saveShzsXx(@RequestBody @Valid JlxxShzsUDTO dto, BindingResult bindingResult) {
        LOG.info("保存所获证书信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.saveShzsXx(dto));
            ajaxResponse.setMsg("操作成功");
            ajaxResponse.setAppcode("0");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("保存所获证书信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除所获证书信息", notes = "删除所获证书信息")
    @PostMapping("/jlxx/shzs/delete/{id}")
    public AjaxResponse deleteShzsById(@PathVariable String id) {
        LOG.info("删除所获证书信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteShzsById(id);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
            ajaxResponse.setAppcode("1");
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除所获证书信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除所获证书维护信息", notes = "删除所获证书维护信息")
    @PostMapping("/jlxx/shzs/wh/delete")
    public AjaxResponse deleteShzsWhById(@RequestBody SelectJlxxDTO dto) {
        LOG.info("删除所获证书维护信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteShzsWhById(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除所获证书维护信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取获奖情况维护列表", notes = "获取获奖情况维护列表")
    @PostMapping("/jlxx/hjqk/wh/list")
    public AjaxResponse getHjqkWhList(@RequestBody JlxxWDTO dto) {
        LOG.info("获取获奖情况维护列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        Integer pagenum = dto.getPagenum();
        Integer pagesize = dto.getPagesize();
        try {
            PageResult result = this.grqzBPO.getHjqkWhList(pagenum, pagesize, dto);
            ajaxResponse.setData("data", result);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取获奖情况维护列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取获奖情况信息", notes = "获取获奖情况信息")
    @PostMapping("/jlxx/hjqk/query")
    public AjaxResponse getJlhjqk(@RequestBody @Valid ZjQueryDTO dto) {
        LOG.info("获取获奖情况信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            Map result = this.grqzBPO.getJlhjqk(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取获奖情况信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取获奖情况维护内容", notes = "获取获奖情况维护内容")
    @GetMapping("/jlxx/hjqk/wh/query/{id}")
    public AjaxResponse getHjqkNrById(@PathVariable String id) {
        LOG.info("获取获奖情况维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyHjqkPO> result = this.grqzBPO.getHjqkNrById(id);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取获奖情况维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "新增获奖情况维护内容", notes = "新增获奖情况维护内容")
    @PostMapping("/jlxx/hjqk/addHjqk")
    public AjaxResponse addhjqknr(@RequestBody SelectJlxxDTO dto) {
        LOG.info("新增获奖情况维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.addhjqknr(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("新增获奖情况维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "保存获奖情况信息", notes = "保存获奖情况信息")
    @PostMapping("/jlxx/hjqk/save")
    public AjaxResponse saveHjqkXx(@RequestBody @Valid JlxxHjqkUDTO dto, BindingResult bindingResult) {
        LOG.info("保存获奖情况信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.saveHjqkXx(dto));
            ajaxResponse.setMsg("操作成功");
            ajaxResponse.setAppcode("0");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("保存获奖情况信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除获奖情况信息", notes = "删除获奖情况信息")
    @PostMapping("/jlxx/hjqk/delete/{id}")
    public AjaxResponse deleteHjqkById(@PathVariable String id) {
        LOG.info("删除获奖情况信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteHjqkById(id);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
            ajaxResponse.setAppcode("1");
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除获奖情况信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除获奖情况维护信息", notes = "删除获奖情况维护信息")
    @PostMapping("/jlxx/hjqk/wh/delete")
    public AjaxResponse deleteHjqkWhById(@RequestBody SelectJlxxDTO dto) {
        LOG.info("删除获奖情况维护信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteHjqkWhById(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除获奖情况维护信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取职称情况列表", notes = "获取职称情况列表")
    @PostMapping("/jlxx/zcqk/query")
    public AjaxResponse getJlzcqk(@RequestBody @Valid ZjQueryDTO dto) {
        LOG.info("获取职称情况列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            Map result = this.grqzBPO.getJlzcqk(dto);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职称情况列表结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取职称情况维护内容", notes = "获取职称情况维护内容")
    @GetMapping("/jlxx/zcqk/wh/query/{id}")
    public AjaxResponse getZcqkNrById(@PathVariable String id) {
        LOG.info("获取职称情况维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyZcqkPO> result = this.grqzBPO.getZcqkNrById(id);
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职称情况维护内容结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "新增职称情况维护内容", notes = "新增职称情况维护内容")
    @PostMapping("/jlxx/zcqk/addZcqk")
    public AjaxResponse addzcqknr(@RequestBody SelectJlxxDTO dto) {
        LOG.info("新增职称情况维护内容开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.addzcqknr(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("新增职称情况维护内容结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "保存职称情况信息", notes = "保存职称情况信息")
    @PostMapping("/jlxx/zcqk/save")
    public AjaxResponse saveZcqkXx(@RequestBody @Valid JlxxZcqkUDTO dto, BindingResult bindingResult) {
        LOG.info("保存职称情况信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.saveZcqkXx(dto));
            ajaxResponse.setMsg("操作成功");
            ajaxResponse.setAppcode("0");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("保存职称情况信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取职称情况维护列表", notes = "获取职称情况维护列表")
    @PostMapping("/jlxx/zcqk/wh/list")
    public AjaxResponse getZcqkWhList(@RequestBody JlxxWDTO dto) {
        LOG.info("获取职称情况维护列表开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        Integer pagenum = dto.getPagenum();
        Integer pagesize = dto.getPagesize();
        try {
            PageResult result = this.grqzBPO.getZcqkWhList(pagenum, pagesize, dto);
            ajaxResponse.setData("data", result);
            ajaxResponse.setData("pagesize", pagesize);
            ajaxResponse.setData("pagenum", pagenum);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职称情况维护列表结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除职称情况信息", notes = "删除职称情况信息")
    @PostMapping("/jlxx/zcqk/delete/{id}")
    public AjaxResponse deleteZcqkById(@PathVariable String id) {
        LOG.info("删除职称情况信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteZcqkById(id);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
            ajaxResponse.setAppcode("1");
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除职称情况信息结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除职称情况维护信息", notes = "删除职称情况维护信息")
    @PostMapping("/jlxx/zcqk/wh/delete")
    public AjaxResponse deleteZcqkWhById(@RequestBody SelectJlxxDTO dto) {
        LOG.info("删除职称情况维护信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            this.grqzBPO.deleteZcqkWhById(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("删除职称情况维护信息结束");
        return ajaxResponse;
    }

    //    个人求职*个人中心
    @ApiOperation(value = "获取智能推荐职位", notes = "获取智能推荐职位")
    @GetMapping("/grzx/zntj/list")
    public AjaxResponse getZwzntjList() {
        LOG.info("获取职位智能推荐开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyZwxxPO> result = this.grqzBPO.getZwzntjList();
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取职位智能推荐结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取人工推荐职位", notes = "获取人工推荐职位")
    @GetMapping("/grzx/rgtj/list")
    public AjaxResponse getRgtjList() {
        LOG.info("获取人工推荐职位开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            List<RsRlzyZwxxPO> result = this.grqzBPO.getRgtjzw();
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取人工推荐职位结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "关注公司的数量", notes = "关注公司的数量")
    @GetMapping("/grzx/gzgs/num")
    public AjaxResponse getGzgsNum() {
        LOG.info("关注公司的数量开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            int result = this.grqzBPO.getGzgsNum();
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("关注公司的数量结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "收藏职位的数量", notes = "收藏职位的数量")
    @GetMapping("/grzx/sczw/num")
    public AjaxResponse getSczwNum() {
        LOG.info("关注公司的数量开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            int result = this.grqzBPO.getSczwNum();
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("关注公司的数量结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "申请的职位数量", notes = "申请的职位数量")
    @GetMapping("/grzx/sqzw/num")
    public AjaxResponse getSqzwNum() {
        LOG.info("申请的职位数量开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            int result = this.grqzBPO.getSqzwNum();
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("申请的职位数量结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "获取默认简历信息", notes = "获取默认简历信息")
    @GetMapping("/grzx/index/mrjl")
    public AjaxResponse getMrjl() {
        LOG.info("获取默认简历信息开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            JlxxPO result = this.grqzBPO.getMrjllsh();
            ajaxResponse.setData("data", result);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("获取默认简历信息结束");
        return ajaxResponse;
    }

    @ApiOperation(value = "个人中心主界面", notes = "个人中心主界面")
    @PostMapping("/grzx/index")
    public AjaxResponse getGrzxIndex(@RequestBody @Valid PageDTO dto) {
        LOG.info("个人中心主界面开始");

        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            int gzgsNum = this.grqzBPO.getGzgsNum();//关注公司数量
            int sczwNum = this.grqzBPO.getSczwNum();//收藏职位数量
            int sqzwNum = this.grqzBPO.getSqzwNum();//申请职位数量
            List<RsRlzyZwxxPO> zwzntj = this.grqzBPO.getZwzntjList();//职位智能推荐列表
            List<RsRlzyZwxxPO> zwrgtj = this.grqzBPO.getRgtjzw();//职位人工推荐列表
            JlxxPO yhmrjlxx = this.grqzBPO.getMrjllsh();//获取用户默认简历
            Map jljbxx = new HashMap();
            if (null == yhmrjlxx){//若用户的默认简历为空，则取最新简历
                JlxxPO yhzxjlxx = this.grqzBPO.getzxJlxx();//获取用户最新简历
            if (yhzxjlxx != null && (!"".equals(yhzxjlxx.getRsrlzyjlxxlsh()))) {
                ZjQueryDTO dto1 = new ZjQueryDTO();
                dto1.setFlag("view");
                dto1.setZjlsh(yhzxjlxx.getRsrlzyjlxxlsh());
                jljbxx = this.grqzBPO.getGrzxJljbxx(dto1);
                ajaxResponse.setData("jljbxx", jljbxx);
            }
            ajaxResponse.setData("yhzxjlxx", yhzxjlxx);
            }else{
                ZjQueryDTO dto1 = new ZjQueryDTO();
                dto1.setFlag("view");
                dto1.setZjlsh(yhmrjlxx.getRsrlzyjlxxlsh());
                jljbxx = this.grqzBPO.getGrzxJljbxx(dto1);
                ajaxResponse.setData("jljbxx", jljbxx);
                ajaxResponse.setData("yhmrjlxx", yhmrjlxx);
            }
//            Map jljbxx = new HashMap();
//            if (yhzxjlxx != null && (!"".equals(yhzxjlxx.getRsrlzyjlxxlsh()))) {
//                ZjQueryDTO dto1 = new ZjQueryDTO();
//                dto1.setFlag("view");
//                dto1.setZjlsh(yhzxjlxx.getRsrlzyjlxxlsh());
//                jljbxx = this.grqzBPO.getJljbxx(dto1);
//            }
            ajaxResponse.setData("jljbxx", jljbxx);
            ajaxResponse.setData("zwrgtj", zwrgtj);
            ajaxResponse.setData("gzgsNum", gzgsNum);
            ajaxResponse.setData("sczwNum", sczwNum);
            ajaxResponse.setData("sqzwNum", sqzwNum);
            ajaxResponse.setData("zwzntj", zwzntj);
            ajaxResponse.setData("jlxxlsit", grqzBPO.getMyJlxxlist(dto));//简历信息列表
            ajaxResponse.setData("pagenum", dto.getPagenum());
            ajaxResponse.setData("pagesize", dto.getPagesize());
        } catch (AppException e) {
            e.printStackTrace();
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            e.printStackTrace();
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("个人中心主界面结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "收藏职位", notes = "收藏职位")
    @PostMapping("/sczw/add")
    public AjaxResponse getSczw(@RequestBody @Valid GrqzSczwDTO dto, BindingResult bindingResult) {
        LOG.info("收藏职位开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            this.grqzBPO.getSczw(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
        }
        LOG.info("收藏职位结束");
        return ajaxResponse;
    }


    @ApiOperation(value = "申请职位", notes = "申请职位")
    @PostMapping("/sqzw")
    public AjaxResponse Sqzw(@RequestBody @Valid GrqzSczwDTO dto, BindingResult bindingResult) {
        LOG.info("申请职位开始");
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            this.grqzBPO.Sqzw(dto);
            ajaxResponse.setAppcode("0");
            ajaxResponse.setMsg("操作成功");
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            e.printStackTrace();
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            LOG.error(e.getMessage());
            ajaxResponse.setAppcode("1");
            ajaxResponse.setErrorMsg("系统异常");
            e.printStackTrace();
        }
        LOG.info("申请职位结束");
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "保存个人视频提交审核", notes = "湛江人力资源市场*个人求职*个人信息*保存个人视频提交审核")
    @PostMapping(value = "/grxx/toGrspTjsh")
    public AjaxResponse toGrspTjsh(@RequestBody @Valid DwTxSpQueryDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            grqzBPO.toGrspTjsh(dto);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "保存个人头像提交审核", notes = "保存个人头像提交审核")
    @PostMapping(value = "/grxx/toGrtxTjsh")
    public AjaxResponse toGrtxTjsh(@RequestBody @Valid DwTxSpQueryDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            grqzBPO.toGrtxTjsh(dto);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }


    /**
     * lzl---------
     *
     * @param dto
     * @param bindingResult
     * @return
     */
    @ApiOperation(value = "获取简历列表", notes = "湛江人力资源市场*个人求职*我的简历*获取简历列表")
    @PostMapping(value = "/jlxx/list")
    public AjaxResponse getMyJlxxlist(@RequestBody @Valid PageDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.getMyJlxxlist(dto));
            ajaxResponse.setData("pagenum", dto.getPagenum());
            ajaxResponse.setData("pagesize", dto.getPagesize());
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @ApiOperation(value = "获取默认简历列表", notes = "湛江人力资源市场*个人求职*我的简历*获取默认简历列表")
    @PostMapping(value = "/jlxx/getMyJlxxMrlist")
    public AjaxResponse getMyJlxxMrlist(@RequestBody @Valid PageDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.getMyJlxxMrlist(dto));
            ajaxResponse.setData("pagenum", dto.getPagenum());
            ajaxResponse.setData("pagesize", dto.getPagesize());
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "删除简历信息", notes = "湛江人力资源市场*个人求职*我的简历*删除简历信息")
    @PostMapping(value = "/jlxx/delete/{id}")
    public AjaxResponse deleteMyJlxx(@PathVariable String id) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            grqzBPO.deleteMyJlxx(id);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "更新简历默认状态", notes = "湛江人力资源市场*个人求职*我的简历*更新简历默认状态")
    @PostMapping(value = "/jlxx/state/update")
    public AjaxResponse updateMyJlmrzt(@RequestBody @Valid MrjlUDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            grqzBPO.updateMyJlmrzt(dto);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "复制简历信息", notes = "湛江人力资源市场*个人求职*我的简历*复制简历信息")
    @PostMapping(value = "/jlxx/copy")
    public AjaxResponse copyMyJlxx(@RequestBody @Valid CopyJlDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            grqzBPO.copyMyJlxx(dto);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @ApiOperation(value = "导出简历信息", notes = "湛江人力资源市场*个人求职*我的简历*导出简历信息")
    @PostMapping(value = "/jlxx/export")
    public void exportMyJlxx(@RequestBody @Valid ExportJlDTO dto, HttpServletResponse res) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        try {
            grqzBPO.exportMyJlxx(dto, res);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
    }

    @ApiOperation(value = "获取简历信息", notes = "湛江人力资源市场*个人求职*我的简历*获取简历信息")
    @PostMapping(value = "/jlxx/query")
    public AjaxResponse getJlxx(@RequestBody @Valid JltotalDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.getJlxx(dto));
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }


    @ApiOperation(value = "保存简历基本信息", notes = "湛江人力资源市场*个人求职*我的简历*保存简历基本信息")
    @PostMapping(value = "/jlxx/jbxx/save")
    public AjaxResponse saveJljbxx(@RequestBody @Valid GrqzWdjlJbxxDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.saveJljbxx(dto));
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }


    @ApiOperation(value = "获取简历基本信息", notes = "湛江人力资源市场*个人求职*我的简历*获取简历基本信息")
    @PostMapping(value = "/jlxx/jbxx/query")
    public AjaxResponse getJljbxx(@RequestBody @Valid JljbxxDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.getJljbxx(dto));
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }


    @ApiOperation(value = "保存求职意向信息", notes = "湛江人力资源市场*个人求职*我的简历*保存求职意向信息")
    @PostMapping(value = "/jlxx/qzyx/save")
    public AjaxResponse saveJlqzyx(@RequestBody @Valid GrqzWdjlQzyxDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.saveJlqzyx(dto));
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @ApiOperation(value = "获取求职意向信息", notes = "湛江人力资源市场*个人求职*我的简历*获取求职意向信息")
    @PostMapping(value = "/jlxx/qzyx/query")
    public AjaxResponse getJlqzyx(@RequestBody @Valid ZjQueryDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            ajaxResponse.setData("data", grqzBPO.getJlqzyx(dto));
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "简历发布与取消发布", notes = "湛江人力资源市场*个人求职*我的简历*简历发布与取消发布")
    @PostMapping(value = "/jlxx/updateFbzt")
    public AjaxResponse updateFbzt(@RequestBody @Valid ZjUDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            grqzBPO.updateFbzt(dto);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "简历提交审核", notes = "湛江人力资源市场*个人求职*我的简历*简历提交审核")
    @PostMapping(value = "/jlxx/toNwsh")
    public AjaxResponse toNwsh(@RequestBody @Valid ZjDTO dto, BindingResult bindingResult) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        if (bindingResult.hasErrors()) {
            ajaxResponse.setAppcode("1");
            List<FieldError> fieldErrors = bindingResult.getFieldErrors();
            String errmsg = "";
            for (int i = 0; i < fieldErrors.size(); i++) {
                if (i == 0) {
                    errmsg = errmsg + fieldErrors.get(i).getDefaultMessage();
                } else {
                    errmsg = errmsg + "；" + fieldErrors.get(i).getDefaultMessage();
                }
            }
            ajaxResponse.setErrorMsg(errmsg);
            return ajaxResponse;
        }
        try {
            grqzBPO.toNwsh(dto);
        } catch (AppException e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg(e.getMessage());
        } catch (Exception e) {
            ajaxResponse.setAppcode("1");
            LOG.error(e.getMessage());
            ajaxResponse.setErrorMsg("系统异常");
        }
        return ajaxResponse;
    }

    @IsHmdValid
    @ApiOperation(value = "申请职位时审核通过简历数为0时新增简历", notes = "湛江人力资源市场*职位申请")
    @PostMapping(value = "/jlxx/saveAndApply")
    public AjaxResponse saveAndApply(@RequestBody @Valid GrJlxxDTO dto) {
        AjaxResponse ajaxResponse = new AjaxResponse();
        ajaxResponse.setData("data", grqzBPO.saveJljbxx(dto));
        return ajaxResponse;
    }
}

