123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539 |
- package com.liang.controller;
- import cn.hutool.core.date.DatePattern;
- import cn.hutool.core.date.DateTime;
- import cn.hutool.core.date.DateUtil;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import com.liang.common.base.BaseController;
- import com.liang.common.base.BaseResult;
- import com.liang.common.enums.PostInfoEnum;
- import com.liang.entity.*;
- import com.liang.service.PrjApproverecordService;
- import com.liang.service.StaBudgetapprovalService;
- import com.liang.service.SysDictInfoService;
- import io.swagger.annotations.ApiOperation;
- import org.springframework.data.domain.Page;
- import org.springframework.data.domain.PageRequest;
- import org.springframework.format.annotation.DateTimeFormat;
- import org.springframework.http.ResponseEntity;
- import org.springframework.stereotype.Controller;
- import org.springframework.transaction.annotation.Transactional;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.*;
- import javax.annotation.Resource;
- import java.text.DateFormat;
- import java.time.format.DateTimeFormatter;
- import java.util.*;
- /**
- * 科技项目审批(PrjApproverecord)表控制层
- *
- * @author makejava
- * @since 2023-05-03 13:23:09
- */
- @Controller
- @RequestMapping("prjApproverecord")
- public class PrjApproverecordController extends BaseController {
- /**
- * 服务对象
- */
- @Resource
- private PrjApproverecordService prjApproverecordService;
- @Resource
- private SysDictInfoService sysDictInfoService;
- @Resource
- private StaBudgetapprovalService staBudgetapprovalService;
- /**
- * 分页查询
- *
- * @param prjApproverecord 筛选条件
- * @param pageRequest 分页对象
- * @return 查询结果
- */
- @GetMapping
- public ResponseEntity<Page<PrjApproverecord>> queryByPage(PrjApproverecord prjApproverecord, PageRequest pageRequest) {
- return ResponseEntity.ok(this.prjApproverecordService.queryByPage(prjApproverecord, pageRequest));
- }
- /**
- * 通过主键查询单条数据
- *
- * @param id 主键
- * @return 单条数据
- */
- @GetMapping("{id}")
- public ResponseEntity<PrjApproverecord> queryById(@PathVariable("id") Integer id) {
- return ResponseEntity.ok(this.prjApproverecordService.queryById(id));
- }
- /**
- * 删除数据
- *
- * @param id 主键
- * @return 删除是否成功
- */
- @DeleteMapping
- public ResponseEntity<Boolean> deleteById(Integer id) {
- return ResponseEntity.ok(this.prjApproverecordService.deleteById(id));
- }
- @ApiOperation(value = "页面初始化", notes = "页面初始化")
- @RequestMapping(value = "/init", method = RequestMethod.GET)
- public String init(Model model) {
- //状态
- List<Map<String, String>> approveList = sysDictInfoService.queryByCode("kybg_status");
- approveList.addAll(sysDictInfoService.queryByCode("approve_status"));
- model.addAttribute("approveList", approveList);
- return "prjapproverecord/list";
- }
- @ResponseBody
- @RequestMapping(value = "/list", method = RequestMethod.POST)
- public BaseResult list(@RequestParam("page") Integer pageNum,
- @RequestParam("limit") Integer pageSize,
- @RequestParam(required = false, defaultValue = "", value = "xm") String xm,
- @RequestParam(required = false, defaultValue = "", value = "zt") String zt,
- @RequestParam(required = false, defaultValue = "", value = "wc") String wc,
- @RequestParam(required = false, defaultValue = "", value = "tablename") String tablename,
- @RequestParam(required = false, defaultValue = "", value = "sortName") String sortName,
- @RequestParam(required = false, defaultValue = "", value = "sortOrder") String sortOrder) {
- PageHelper.startPage(pageNum, pageSize);
- Map<String, String> paraMap = new HashMap<>();
- paraMap.put("sortName", sortName);
- paraMap.put("sortOrder", sortOrder);
- paraMap.put("xm", xm);
- paraMap.put("zt", zt);
- paraMap.put("wc", wc);
- paraMap.put("tablename", tablename);
- SysUserInfo userInfo = getSysUserInfo();
- if (!userInfo.getAccount().equals("admin")) {
- paraMap.put("userId", userInfo.getUserId().toString());
- }
- List<PrjApproverecord> list = prjApproverecordService.getApproveList(paraMap);
- for (int i = 0; i < list.size(); i++) {
- list.get(i).setSpzt(list.get(i).getZt());
- }
- PageInfo<PrjApproverecord> pageinfo = new PageInfo<>(list);
- //取出查询结果
- List<PrjApproverecord> rows = pageinfo.getList();
- int total = (int) pageinfo.getTotal();
- Map<String, Object> result = new HashMap<>();
- result.put(RESULT_ROWS, rows);
- result.put(RESULT_TOTAL, total);
- return BaseResult.success(result);
- }
- /**
- * 保存数据(提交审批:可研报告,任务书,年度预算,报账)
- *
- * @return
- */
- @ResponseBody
- @RequestMapping(value = "/doAddApprove", method = RequestMethod.POST)
- public BaseResult doAddApprove(PrjApproverecord approverecord) {
- List<PrjApproverecord> recordList = new ArrayList<>();
- PrjApproverecord record1 = new PrjApproverecord();
- record1.setXm(approverecord.getXm());
- record1.setXmid(approverecord.getXmid());
- record1.setZt(approverecord.getZt());
- record1.setTablename(approverecord.getTablename());
- record1.setSpcz(approverecord.getSpcz());
- record1.setTjr(approverecord.getTjr());
- record1.setTjsj(approverecord.getTjsj());
- record1.setShr(record1.getTjr());
- record1.setShsj(record1.getTjsj());
- record1.setSfsjsh(true);//是否需要上级审核
- record1.setSjshr(approverecord.getSjshr());
- record1.setSjshgw(approverecord.getSjshgw());//上级审核岗位
- record1.setSffh(false);//是否返回
- record1.setYcshr(false);//隐藏审核人
- record1.setWc(true);//完成
- recordList.add(record1);
- PrjApproverecord record2 = new PrjApproverecord();
- record2.setXm(approverecord.getXm());
- record2.setXmid(approverecord.getXmid());
- record2.setTablename(approverecord.getTablename());
- record2.setTjr(approverecord.getTjr());
- record2.setTjsj(approverecord.getTjsj());
- if ("sta_FeasibilityReport".equals(approverecord.getTablename()) || "prj_Project".equals(approverecord.getTablename())) {
- record2.setZt(PostInfoEnum.KYJHZZ.postName() + "审批");//状态
- } else {
- record2.setZt(PostInfoEnum.KJXMGLZZ.postName() + "审批");//状态
- }
- record2.setWc(false);//完成
- record2.setShr(approverecord.getSjshr());//审核人
- record2.setShgw(approverecord.getSjshgw());//审核岗位
- recordList.add(record2);
- int num = prjApproverecordService.insertBatch(recordList);
- if (num > 0) {
- return BaseResult.success("保存成功!", approverecord);
- } else {
- return BaseResult.failure("保存失败!");
- }
- }
- /**
- * 保存数据(提交审批:费用申请)
- *
- * @return
- */
- @ResponseBody
- @RequestMapping(value = "/doAddApproveFysq", method = RequestMethod.POST)
- public BaseResult doAddApproveFysq(PrjApproverecord approverecord) {
- List<PrjApproverecord> recordList = new ArrayList<>();
- PrjApproverecord record1 = new PrjApproverecord();
- record1.setXm(approverecord.getXm());
- record1.setXmid(approverecord.getXmid());
- record1.setZt(approverecord.getZt());
- record1.setTablename(approverecord.getTablename());
- record1.setSpcz(approverecord.getSpcz());
- record1.setTjr(approverecord.getTjr());
- record1.setTjsj(approverecord.getTjsj());
- record1.setShr(record1.getTjr());
- record1.setShsj(record1.getTjsj());
- record1.setSfsjsh(true);//是否需要上级审核
- record1.setSjshr(approverecord.getSjshr());
- record1.setSjshgw(approverecord.getSjshgw());//上级审核岗位
- record1.setSffh(false);//是否返回
- record1.setYcshr(false);//隐藏审核人
- record1.setWc(true);//完成
- recordList.add(record1);
- PrjApproverecord record2 = new PrjApproverecord();
- record2.setXm(approverecord.getXm());
- record2.setXmid(approverecord.getXmid());
- record2.setTablename(approverecord.getTablename());
- record2.setTjr(approverecord.getTjr());
- record2.setTjsj(approverecord.getTjsj());
- record2.setZt(PostInfoEnum.BMZR.postName() + "审批");//状态
- record2.setWc(false);//完成
- record2.setShr(approverecord.getSjshr());//审核人
- record2.setShgw(approverecord.getSjshgw());//审核岗位
- recordList.add(record2);
- int num = prjApproverecordService.insertBatch(recordList);
- if (num > 0) {
- return BaseResult.success("保存成功!", approverecord);
- } else {
- return BaseResult.failure("保存失败!");
- }
- }
- /**
- * 保存数据(提交审批:付款申请)
- *
- * @return
- */
- @ResponseBody
- @RequestMapping(value = "/doAddApproveFksq", method = RequestMethod.POST)
- public BaseResult doAddApproveFksq(PrjApproverecord approverecord) {
- List<PrjApproverecord> recordList = new ArrayList<>();
- PrjApproverecord record1 = new PrjApproverecord();
- record1.setXm(approverecord.getXm());
- record1.setXmid(approverecord.getXmid());
- record1.setZt(approverecord.getZt());
- record1.setTablename(approverecord.getTablename());
- record1.setSpcz(approverecord.getSpcz());
- record1.setTjr(approverecord.getTjr());
- record1.setTjsj(approverecord.getTjsj());
- record1.setShr(record1.getTjr());
- record1.setShsj(record1.getTjsj());
- record1.setSfsjsh(true);//是否需要上级审核
- record1.setSjshr(approverecord.getSjshr());
- record1.setSjshgw(approverecord.getSjshgw());//上级审核岗位
- record1.setSffh(false);//是否返回
- record1.setYcshr(false);//隐藏审核人
- record1.setWc(true);//完成
- recordList.add(record1);
- PrjApproverecord record2 = new PrjApproverecord();
- record2.setXm(approverecord.getXm());
- record2.setXmid(approverecord.getXmid());
- record2.setTablename(approverecord.getTablename());
- record2.setTjr(approverecord.getTjr());
- record2.setTjsj(approverecord.getTjsj());
- record2.setZt(PostInfoEnum.KJXMGLZZ1.postName() + "审批");//状态
- record2.setWc(false);//完成
- record2.setShr(approverecord.getSjshr());//审核人
- record2.setShgw(approverecord.getSjshgw());//审核岗位
- recordList.add(record2);
- int num = prjApproverecordService.insertBatch(recordList);
- if (num > 0) {
- return BaseResult.success("保存成功!", approverecord);
- } else {
- return BaseResult.failure("保存失败!");
- }
- }
- /**
- * 编辑数据(提交审批:可研报告,任务书,年度预算,报账)
- *
- * @return
- */
- @ResponseBody
- @RequestMapping(value = "/doUpdateApprove", method = RequestMethod.POST)
- public BaseResult doUpdateApprove(PrjApproverecord approverecord) {
- List<PrjApproverecord> recordList = new ArrayList<>();
- PrjApproverecord record1 = new PrjApproverecord();
- record1.setId(approverecord.getId());
- record1.setSpcz(approverecord.getSpcz());
- record1.setShr(approverecord.getShr());
- record1.setShsj(approverecord.getShsj());
- if (approverecord.getSpcz().equals("返回修改")) {
- record1.setSffh(true);//是否返回
- record1.setYj(approverecord.getYj());
- } else {
- record1.setSffh(false);//是否返回
- if (!approverecord.getSpcz().equals("提交审批"))
- record1.setYj(approverecord.getYj());
- //是否需要上级审核
- if (approverecord.getZt().equals(PostInfoEnum.KJXMGLZZ.postName() + "审批")) {
- record1.setSfsjsh(false);
- } else {
- record1.setSfsjsh(true);
- record1.setSjshr(approverecord.getSjshr());
- record1.setSjshgw(approverecord.getSjshgw());
- }
- }
- record1.setYcshr(false);//隐藏审核人
- record1.setWc(true);//完成
- recordList.add(record1);
- if (approverecord.getZt().equals("未提交(返回)") || approverecord.getSpcz().equals("返回修改")) {
- PrjApproverecord record2 = new PrjApproverecord();
- record2.setXm(approverecord.getXm());
- record2.setXmid(approverecord.getXmid());
- record2.setTablename(approverecord.getTablename());
- record2.setTjr(approverecord.getTjr());
- record2.setTjsj(approverecord.getTjsj());
- if (approverecord.getSpcz().equals("返回修改")) {
- record2.setZt("未提交(返回)");
- record2.setShr(approverecord.getTjr());//审核人
- } else {
- record2.setZt(PostInfoEnum.KJXMGLZZ.postName() + "审批");
- record2.setShr(approverecord.getSjshr());//审核人
- record2.setShgw(approverecord.getSjshgw());//审核岗位
- }
- record2.setWc(false);
- recordList.add(record2);
- }
- int num = prjApproverecordService.insertApprove(recordList);
- if (num > 0) {
- return BaseResult.success("保存成功!");
- } else {
- return BaseResult.failure("保存失败!");
- }
- }
- /**
- * 编辑数据(提交审批:费用申请)
- *
- * @return
- */
- @ResponseBody
- @RequestMapping(value = "/doUpdateApproveFysq", method = RequestMethod.POST)
- public BaseResult doUpdateApproveFysq(PrjApproverecord approverecord) {
- List<PrjApproverecord> recordList = new ArrayList<>();
- PrjApproverecord record1 = new PrjApproverecord();
- record1.setId(approverecord.getId());
- record1.setSpcz(approverecord.getSpcz());
- record1.setShr(approverecord.getShr());
- record1.setShsj(DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN));
- double dmoney = approverecord.getSqje();
- if (approverecord.getSpcz().equals("返回修改")) {
- record1.setSffh(true);//是否返回
- record1.setYj(approverecord.getYj());
- } else {
- record1.setSffh(false);//是否返回
- if (!approverecord.getSpcz().equals("提交审批")) {
- record1.setYj(approverecord.getYj());
- }
- //是否需要上级审核
- if (approverecord.getZt().equals(PostInfoEnum.YZ.postName() + "审批") || approverecord.getZt().equals(PostInfoEnum.ZGYLD.postName() + "审批") && dmoney < 1000000) {
- record1.setSfsjsh(false);
- } else {
- record1.setSfsjsh(true);
- record1.setSjshr(approverecord.getSjshr());
- record1.setSjshgw(approverecord.getSjshgw());
- }
- }
- record1.setYcshr(false);//隐藏审核人
- record1.setWc(true);//完成
- recordList.add(record1);
- if (!(approverecord.getZt().equals(PostInfoEnum.YZ.postName() + "审批") || approverecord.getZt().equals(PostInfoEnum.ZGYLD.postName() + "审批") && dmoney < 1000000)
- || approverecord.getSpcz().equals("返回修改")) {
- PrjApproverecord record2 = new PrjApproverecord();
- record2.setXm(approverecord.getXm());
- record2.setXmid(approverecord.getXmid());
- record2.setTablename(approverecord.getTablename());
- record2.setTjr(approverecord.getTjr());
- record2.setTjsj(approverecord.getTjsj());
- if (approverecord.getSpcz().equals("返回修改")) {
- record2.setZt("未提交(返回)");
- record2.setShr(approverecord.getTjr());//审核人
- } else {
- if (approverecord.getZt().equals(PostInfoEnum.BMZR.postName() + "审批"))
- record2.setZt(PostInfoEnum.KJXMGLZZ.postName() + "审批");
- else if (approverecord.getZt().equals(PostInfoEnum.KJXMGLZZ.postName() + "审批"))
- record2.setZt(PostInfoEnum.KJBBMZR.postName() + "审批");
- else if (approverecord.getZt().equals(PostInfoEnum.KJBBMZR.postName() + "审批"))
- record2.setZt(PostInfoEnum.ZGYLD.postName() + "审批");
- else if (approverecord.getZt().equals(PostInfoEnum.ZGYLD.postName() + "审批"))
- record2.setZt(PostInfoEnum.YZ.postName() + "审批");
- else
- record2.setZt(PostInfoEnum.BMZR.postName() + "审批");
- record2.setShr(approverecord.getSjshr());//审核人
- record2.setShgw(approverecord.getSjshgw());//审核岗位
- }
- record2.setWc(false);
- recordList.add(record2);
- }
- int num = prjApproverecordService.insertApprove(recordList);
- if (num > 0) {
- return BaseResult.success("保存成功!");
- } else {
- return BaseResult.failure("保存失败!");
- }
- }
- /**
- * 编辑数据(提交审批:付款申请)
- *
- * @return
- */
- @ResponseBody
- @RequestMapping(value = "/doUpdateApproveFksq", method = RequestMethod.POST)
- @Transactional
- public BaseResult doUpdateApproveFksq(PrjApproverecord approverecord) {
- List<PrjApproverecord> recordList = new ArrayList<>();
- PrjApproverecord record1 = new PrjApproverecord();
- record1.setId(approverecord.getId());
- record1.setSpcz(approverecord.getSpcz());
- record1.setShr(approverecord.getShr());
- record1.setShsj(DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN));
- if (approverecord.getSpcz().equals("返回修改")) {
- record1.setSffh(true);//是否返回
- record1.setYj(approverecord.getYj());
- } else {
- record1.setSffh(false);//是否返回
- if (!approverecord.getSpcz().equals("提交审批"))
- record1.setYj("同意。");
- //是否需要上级审核
- if (approverecord.getZt().equals(PostInfoEnum.KJBBMZR.postName() + "审批")) {
- record1.setSfsjsh(false);
- } else {
- record1.setSfsjsh(true);
- record1.setSjshr(approverecord.getSjshr());
- record1.setSjshgw(approverecord.getSjshgw());
- }
- }
- record1.setYcshr(false);//隐藏审核人
- record1.setWc(true);//完成
- recordList.add(record1);
- if (!(approverecord.getZt().equals(PostInfoEnum.KJBBMZR.postName() + "审批")) || approverecord.getSpcz().equals("返回修改")) {
- PrjApproverecord record2 = new PrjApproverecord();
- record2.setXm(approverecord.getXm());
- record2.setXmid(approverecord.getXmid());
- record2.setTablename(approverecord.getTablename());
- record2.setTjr(approverecord.getTjr());
- record2.setTjsj(approverecord.getTjsj());
- if (approverecord.getSpcz().equals("返回修改")) {
- record2.setZt("未提交(返回)");
- record2.setShr(approverecord.getTjr());//审核人
- } else {
- if (approverecord.getZt().equals(PostInfoEnum.KJXMGLZZ1.postName() + "审批")) {
- record2.setZt(PostInfoEnum.KJXMGLZZ2.postName() + "审批");
- } else if (approverecord.getZt().equals(PostInfoEnum.KJXMGLZZ2.postName() + "审批")) {
- record2.setZt(PostInfoEnum.KJBBMZR.postName() + "审批");
- } else {
- record2.setZt(PostInfoEnum.KJXMGLZZ1.postName() + "审批");
- }
- record2.setShr(approverecord.getSjshr());//审核人
- record2.setShgw(approverecord.getSjshgw());//审核岗位
- }
- record2.setWc(false);
- recordList.add(record2);
- }
- int num = prjApproverecordService.insertApprove(recordList);
- if (num > 0) {
- return BaseResult.success("保存成功!");
- } else {
- return BaseResult.failure("保存失败!");
- }
- }
- @ResponseBody
- @RequestMapping(value = "/spList/{xmid}/{tableName}", method = RequestMethod.POST)
- public BaseResult spList(@PathVariable("xmid") String xmid,
- @PathVariable("tableName") String tableName,
- @RequestParam("page") Integer pageNum,
- @RequestParam("limit") Integer pageSize,
- @RequestParam(required = false, defaultValue = "", value = "sortName") String sortName,
- @RequestParam(required = false, defaultValue = "", value = "sortOrder") String sortOrder) {
- PageHelper.startPage(pageNum, pageSize);
- Map<String, String> paraMap = new HashMap<>();
- paraMap.put("sortName", sortName);
- paraMap.put("sortOrder", sortOrder);
- paraMap.put("xmid", xmid.toString());
- paraMap.put("tableName", tableName.toString());
- List<PrjApproverecord> list = prjApproverecordService.getApproveByXmId2(paraMap);
- //判断备用金是否关联项目
- if (list.get(0).getTablename().equals("sta_BudgetApproval")) {
- PrjApproverecord prjApproverecord = new PrjApproverecord();
- StaBudgetapproval staBudgetapproval = staBudgetapprovalService.queryById(list.get(0).getXmid());
- System.out.println(staBudgetapproval.toString());
- if (staBudgetapproval.getSfbyj() == true && staBudgetapproval.getXmmc() != null) {
- prjApproverecord.setWc(true);
- prjApproverecord.setZt("该备用金已关联项目");
- list.add(prjApproverecord);
- } else if (staBudgetapproval.getSfbyj() == true && staBudgetapproval.getXmmc() == null && "审批结束".equals(staBudgetapproval.getSpzt()) || "".equals(staBudgetapproval.getXmmc())) {
- prjApproverecord.setWc(false);
- prjApproverecord.setZt("该备用金暂未关联项目");
- prjApproverecord.setShrxm(PostInfoEnum.KJXMGLZZ.postName());
- list.add(prjApproverecord);
- }
- }
- PageInfo<PrjApproverecord> pageinfo = new PageInfo<>(list);
- //取出查询结果
- List<PrjApproverecord> rows = pageinfo.getList();
- int total = (int) pageinfo.getTotal();
- Map<String, Object> result = new HashMap<>();
- result.put(RESULT_ROWS, rows);
- result.put(RESULT_TOTAL, total);
- return BaseResult.success(result);
- }
- }
|