| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186 |
- package cn.com.lzt.useractiviti.overtime.controller;
- import cn.com.lzt.arrangedutyoperate.dto.UserAndUserPersonnelDto;
- import cn.com.lzt.common.service.TSysFileServiceI;
- import cn.com.lzt.common.util.DictUtil;
- import cn.com.lzt.common.view.JsonDataModelAndView;
- import cn.com.lzt.cost.activiti.tmpcompany.entity.TBActivitiCostPayTmpCompanyEntity;
- import cn.com.lzt.exchangeaccount.service.TBExchangeAccountServiceI;
- import cn.com.lzt.message.data.dao.MessageDataDao;
- import cn.com.lzt.overtimebudget.service.TBOvertimeBudgetServiceI;
- import cn.com.lzt.sign.entity.TBRequestEntity;
- import cn.com.lzt.sign.entity.TBRequestFeedbackEntity;
- import cn.com.lzt.useractiviti.data.controller.ActivitiToolsController;
- import cn.com.lzt.useractiviti.data.util.ActivitiPdfExport;
- import cn.com.lzt.useractiviti.data.util.ActivitiTools;
- import cn.com.lzt.useractiviti.overtime.entity.TBusActivitiOvertimeAuditEntity;
- import cn.com.lzt.useractiviti.overtime.entity.TBusActivitiOvertimeEntity;
- import cn.com.lzt.useractiviti.overtime.entity.TBusActivitiOvertimeVacationEntity;
- import cn.com.lzt.useractiviti.overtime.service.TBusActivitiOvertimeServiceI;
- import cn.com.lzt.useractiviti.overtime.page.TBusActivitiOvertimePage;
- import cn.com.lzt.useractiviti.overtime.entity.TBusActivitiOvertimeDetailEntity;
- import java.math.BigDecimal;
- import java.text.ParseException;
- import java.util.*;
- import java.text.SimpleDateFormat;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import cn.com.lzt.userwagestrategy.service.UserWagestrategyServiceI;
- import com.alibaba.fastjson.JSONObject;
- import com.lowagie.text.pdf.PdfPTable;
- import com.jeecg.qianbao.util.FormProcUtil;
- import com.xcgl.weixin.entity.WXAjaxJson;
- import org.apache.commons.lang.xwork.StringUtils;
- import org.apache.log4j.Logger;
- import org.hibernate.Session;
- import org.jeecgframework.core.util.*;
- import org.jeecgframework.tag.vo.datatable.SortDirection;
- import org.jeecgframework.web.system.pojo.base.TSBaseUser;
- import org.jeecgframework.web.system.pojo.base.TSUser;
- import org.jeecgframework.web.system.pojo.base.TSUserOrg;
- import org.jeecgframework.web.system.util.Tool;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.servlet.ModelAndView;
- import org.jeecgframework.core.common.exception.BusinessException;
- import org.jeecgframework.core.common.hibernate.qbc.CriteriaQuery;
- import org.jeecgframework.core.common.model.json.AjaxJson;
- import org.jeecgframework.core.common.model.json.DataGrid;
- import org.jeecgframework.core.constant.Globals;
- import org.jeecgframework.tag.core.easyui.TagUtil;
- import org.jeecgframework.web.system.service.SystemService;
- import org.jeecgframework.poi.excel.ExcelImportUtil;
- import org.jeecgframework.poi.excel.entity.ExportParams;
- import org.jeecgframework.poi.excel.entity.ImportParams;
- import org.jeecgframework.poi.excel.entity.vo.NormalExcelConstants;
- import org.springframework.ui.ModelMap;
- import org.springframework.web.multipart.MultipartFile;
- import org.springframework.web.multipart.MultipartHttpServletRequest;
- import java.io.IOException;
- import org.springframework.http.ResponseEntity;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestMethod;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.http.HttpHeaders;
- import org.springframework.http.HttpStatus;
- import org.jeecgframework.core.beanvalidator.BeanValidators;
- import javax.servlet.http.HttpSession;
- import javax.validation.ConstraintViolation;
- import javax.validation.Validator;
- import java.net.URI;
- import org.springframework.http.MediaType;
- import org.springframework.web.util.UriComponentsBuilder;
- /**
- * @author onlineGenerator
- * @version V1.0
- * @Title: Controller
- * @Description: 加班申请
- * @date 2019-10-13 12:00:22
- */
- @Controller
- @RequestMapping("/tBusActivitiOvertimeController")
- public class TBusActivitiOvertimeController extends ActivitiToolsController {
- /**
- * Logger for this class
- */
- private static final Logger logger = Logger.getLogger(TBusActivitiOvertimeController.class);
- @Autowired
- private TBusActivitiOvertimeServiceI tBusActivitiOvertimeService;
- @Autowired
- private SystemService systemService;
- @Autowired
- private Validator validator;
- @Autowired
- private UserWagestrategyServiceI userWageStrategyService;
- @Autowired
- private TBExchangeAccountServiceI tbExchangeAccountService;
- private static final Integer[] ruleList = new Integer[]{1, 2, 3, 5, 6, 7};
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- SimpleDateFormat simpleDateFormatYMDHM = new SimpleDateFormat("yyyy-MM-dd HH:mm");
- SimpleDateFormat simpleDateFormatYMD = new SimpleDateFormat("yyyy-MM-dd");
- /**
- * 加班申请列表 页面跳转
- *
- * @return
- */
- @RequestMapping(params = "list")
- public ModelAndView list(HttpServletRequest request) {
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeList");
- }
- /**
- * @return
- * @Author刘梦祥
- * @Date 2021年11月30日11:01:14
- * 加班审核列表 页面跳转
- * @version 1.0 (初始化)
- */
- @RequestMapping(params = "auditList")
- public ModelAndView auditList(HttpServletRequest request) {
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeAuditList");
- }
- /**
- * @return
- * @Author刘梦祥
- * @Date 2021年12月7日16:47:25
- * 休假审核列表 页面跳转
- * @version 1.0 (初始化)
- */
- @RequestMapping(params = "vacationList")
- public ModelAndView vacationList(HttpServletRequest request) {
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeVacationList");
- }
- /**
- * 获取当前登录人的审批权限集合
- *
- * @return
- * @author刘梦祥
- * @Date 2021年11月29日00:42:57
- */
- public Map<String, List<String>> getUserRuleMap() {
- // 获取当前操作人的信息
- TSUser user = ResourceUtil.getSessionUser();
- CriteriaQuery criteriaQuery = new CriteriaQuery(TSUserOrg.class, new DataGrid());
- criteriaQuery.eq("tsUser.id", user.getId());
- criteriaQuery.add();
- List<TSUserOrg> tsUserOrgList = this.systemService.getListByCriteriaQuery(criteriaQuery, true);
- DataGrid dataGrid1 = new DataGrid();
- CriteriaQuery criteriaQuery1 = new CriteriaQuery(UserAndUserPersonnelDto.class, dataGrid1);
- criteriaQuery1.eq("userid", user.getId());
- criteriaQuery1.add();
- List<UserAndUserPersonnelDto> userAndUserPersonnelDtoList = this.systemService.getListByCriteriaQuery(criteriaQuery1, true);
- Map<String, List<String>> ruleMap = new HashMap<>();
- // 得到登录人的职位
- List<String> departidList = new ArrayList<>();
- if (tsUserOrgList != null && tsUserOrgList.size() > 0) {
- for (TSUserOrg tsUserOrg : tsUserOrgList) {
- departidList.add(tsUserOrg.getTsDepart().getId());
- }
- }
- // 得到操作人的岗位
- List<String> inPostidList = new ArrayList<>();
- if (userAndUserPersonnelDtoList != null && userAndUserPersonnelDtoList.size() > 0) {
- for (UserAndUserPersonnelDto userInfoDto : userAndUserPersonnelDtoList) {
- if (StringUtil.isNotEmpty(userInfoDto.getInPostid())) {
- if (!inPostidList.contains(userInfoDto.getInPostid())) {
- inPostidList.add(userInfoDto.getInPostid());
- }
- }
- }
- }
- ruleMap.put("departId", departidList);
- ruleMap.put("inPostid", inPostidList);
- return ruleMap;
- }
- /**
- * 加班申请初始化请求
- *
- * @param response
- * @param dataGrid
- * @author刘梦祥
- * @Date 2021年11月25日16:05:09
- */
- @RequestMapping(params = "datagrid")
- public void datagrid(HttpServletResponse response, HttpServletRequest request, DataGrid dataGrid) {
- try {
- Map<String, String> queryMap = new HashMap<>();
- String queryStr = " where 1 = 1 ";
- if (StringUtil.isNotEmpty(request.getParameter("departId"))) {
- queryMap.put("depart_id", request.getParameter("departId"));
- }
- if (StringUtil.isNotEmpty(request.getParameter("requestStatus"))) {
- queryMap.put("request_status", request.getParameter("requestStatus"));
- }
- for (String queryKey : queryMap.keySet()) {
- queryStr += " and " + queryKey + " = \"" + queryMap.get(queryKey) + "\" ";
- }
- List<Map<String, Object>> dataGridList = this.systemService.toDataGridByDataGrid("t_bus_activiti_overtime", "agent_user_id", "request_id", "create_date", dataGrid, queryStr);
- dataGrid.setResults(dataGridList);
- TagUtil.datagrid(response, dataGrid);
- } catch (Exception e) {
- throw new BusinessException(e.getMessage());
- }
- }
- /**
- * 休假申请初始化请求
- *
- * @param response
- * @param dataGrid
- * @author刘梦祥
- * @Date 2021年11月25日16:05:09
- */
- @RequestMapping(params = "vacationDatagrid")
- public void vacationDatagrid(HttpServletResponse response, HttpServletRequest request, DataGrid dataGrid) {
- try {
- StringBuffer queryStr = new StringBuffer();
- queryStr.append(" where 1 = 1 ");
- // 根据条件处理userid(既有用户名称又有科室id)
- if (StringUtil.isNotEmpty(request.getParameter("userRealName")) && StringUtil.isNotEmpty(request.getParameter("departId"))) {
- queryStr.append(" and user_id in (select tsbu.id as userIds from t_s_base_user tsbu LEFT JOIN t_s_user_org tsuo on tsuo.user_id = tsbu.ID where tsbu.realname like \"%" + request.getParameter("userRealName") + "%\" and tsuo.org_id = \"" + request.getParameter("departId") + "\") group by tsbu.id ");
- // 只有用户名称
- } else if (StringUtil.isNotEmpty(request.getParameter("userRealName"))) {
- queryStr.append(" and user_id in (select tsbu.id as userIds from t_s_base_user tsbu where tsbu.realname like \"%" + request.getParameter("userRealName") + "%\" group by tsbu.id ) ");
- // 只有科室id
- } else if (StringUtil.isNotEmpty(request.getParameter("departId"))) {
- queryStr.append(" and user_id in (select tsuo.user_id as userIds from t_s_user_org tsuo where tsuo.org_id = \"" + request.getParameter("departId") + "\" group by tsuo.user_id ) ");
- }
- // 封装审批状态查询条件
- if (StringUtil.isNotEmpty(request.getParameter("requestStatus"))) {
- queryStr.append(" and request_status = \"" + request.getParameter("requestStatus") + "\"");
- }
- // 封装休假类型查询条件
- if (StringUtil.isNotEmpty(request.getParameter("vacationType"))) {
- queryStr.append(" and vacation_type = " + request.getParameter("vacationType"));
- }
- // 封装休假期间查询条件
- if (StringUtil.isNotEmpty(request.getParameter("vacationDate_begin")) && StringUtil.isNotEmpty(request.getParameter("vacationDate_end"))) {
- queryStr.append(" and vacation_start_date >= \"" + request.getParameter("vacationDate_begin") + "\"");
- queryStr.append(" and vacation_end_date >= \"" + request.getParameter("vacationDate_end") + "\"");
- }
- // 封装申请日期查询条件
- if (StringUtil.isNotEmpty(request.getParameter("createTime_begin")) && StringUtil.isNotEmpty(request.getParameter("createTime_end"))) {
- queryStr.append(" and create_time between \"" + request.getParameter("createTime_begin") + "\" and \"" + request.getParameter("createTime_end") + "\" ");
- }
- List<Map<String, Object>> dataGridList = this.systemService.toDataGridByDataGrid("t_bus_activiti_overtime_vacation", "create_user", "request_id", "create_time", dataGrid, queryStr.toString());
- // 自定义时间字段赋值,根据UserId得到科室信息
- if (dataGridList != null && dataGridList.size() > 0) {
- for (Map<String, Object> dataGridItem : dataGridList) {
- if (dataGridItem.containsKey("vacationStartDate")) {
- dataGridItem.put("vacationStartDateStr", simpleDateFormatYMDHM.format(dataGridItem.get("vacationStartDate")));
- }
- if (dataGridItem.containsKey("vacationEndDate")) {
- dataGridItem.put("vacationEndDateStr", simpleDateFormatYMDHM.format(dataGridItem.get("vacationEndDate")));
- }
- if (dataGridItem.containsKey("userId")) {
- String getOrgIdByUserIdSqlStr = "select org_id from t_s_user_org where user_id = \"" + dataGridItem.get("userId") + "\" limit 1;";
- Map<String, Object> getOrgIdByUserIdSqlData = systemService.findOneForJdbc(getOrgIdByUserIdSqlStr);
- if (getOrgIdByUserIdSqlData.containsKey("org_id")) {
- dataGridItem.put("departId", getOrgIdByUserIdSqlData.get("org_id"));
- }
- }
- }
- }
- dataGrid.setResults(dataGridList);
- TagUtil.datagrid(response, dataGrid);
- } catch (Exception e) {
- throw new BusinessException(e.getMessage());
- }
- }
- /**
- * 根据流程id返回按钮权限
- *
- * @param requestId
- * @param btuRule
- * @return
- * @author 刘梦祥
- * @Date 2021年12月1日14:58:22
- */
- public Integer getRequestBtuNumber(String requestId, Integer btuRule) {
- if (requestId != null) {
- // 获取当前操作人的信息
- Map<String, List<String>> ruleMap = this.getUserRuleMap();
- // 获取审批流id查询审批人信息
- TBRequestEntity tbRequestEntity = this.systemService.getEntity(TBRequestEntity.class, requestId);
- if (tbRequestEntity != null && tbRequestEntity.getCurrentRulerId() != null && !"".equals(tbRequestEntity.getCurrentRulerId())) {
- JSONObject currentRulerMap = JSONObject.parseObject(tbRequestEntity.getCurrentRulerId());
- if (currentRulerMap.containsKey("userId")) {
- if (currentRulerMap.get("userId").equals(ResourceUtil.getSessionUser().getId())) {
- btuRule += 2;
- }
- } else {
- if (ruleMap != null) {
- if (currentRulerMap.containsKey("departId") && ruleMap.get("departId").contains(currentRulerMap.get("departId").toString()) && currentRulerMap.containsKey("inPostid") && ruleMap.get("inPostid").contains(currentRulerMap.get("inPostid").toString())) {
- btuRule += 2;
- }
- }
- }
- }
- // 获取撤回流程权限,权限标识为4(根据流程id查询一下t_b_request_feedback:流程进度反馈表中的记录,没有数据或者最后一条状态是已驳回就可以撤回)也就是说前端只有按钮权限为5、7
- CriteriaQuery criteriaQuery = new CriteriaQuery(TBRequestFeedbackEntity.class, new DataGrid());
- criteriaQuery.eq("requestId", requestId);
- criteriaQuery.addOrder("createdAt", SortDirection.desc);
- criteriaQuery.add();
- List<TBRequestFeedbackEntity> tbRequestFeedbackEntityList = this.systemService.getListByCriteriaQuery(criteriaQuery, true);
- if (tbRequestFeedbackEntityList != null && tbRequestFeedbackEntityList.size() > 0) {
- // 存在审批数据,且最后的审批结果为“已驳回”的话就可以撤回流程
- if (tbRequestFeedbackEntityList.get(tbRequestFeedbackEntityList.size() - 1).getFeedbackStatus().contains("驳回")) {
- btuRule += 4;
- }
- } else {
- // 不存在审批数据
- btuRule += 4;
- }
- }
- return btuRule;
- }
- /**
- * 加班申请初始化请求
- *
- * @param response
- * @param dataGrid
- * @author刘梦祥
- * @Date 2021年11月25日16:05:09
- */
- @RequestMapping(params = "AutidDatagrid")
- public void AutidDatagrid(HttpServletResponse response, DataGrid dataGrid) {
- try {
- List<TBusActivitiOvertimeAuditEntity> tbas = this.systemService.getListByCriteriaQuery(new CriteriaQuery(TBusActivitiOvertimeAuditEntity.class, new DataGrid()), true);
- List<String> noIds = new ArrayList<>();
- for (TBusActivitiOvertimeAuditEntity tbasiTem : tbas) {
- noIds.add(tbasiTem.getOvertimeIds());
- }
- CriteriaQuery cq = new CriteriaQuery(TBusActivitiOvertimeEntity.class, dataGrid);
- cq.eq("requestStatus", "已通过");
- cq.notin("id", noIds.toArray());
- cq.add();
- // 获取表中所有的加班申请数据
- List<TBusActivitiOvertimeEntity> TBusActivitiOvertimeEntityList = this.tBusActivitiOvertimeService.getListByCriteriaQuery(cq, true);
- HttpSession session = ContextHolderUtils.getSession();
- TSUser tuser = (TSUser) session.getAttribute("LOCAL_CLINET_USER");
- for (TBusActivitiOvertimeEntity tboe : TBusActivitiOvertimeEntityList) {
- tboe.setVoucherUserId(tuser.getId());
- }
- dataGrid.setTotal(TBusActivitiOvertimeEntityList.size());
- dataGrid.setResults(TBusActivitiOvertimeEntityList);
- TagUtil.datagrid(response, dataGrid);
- } catch (Exception e) {
- throw new BusinessException(e.getMessage());
- }
- }
- /**
- * 加班审核初始化请求
- *
- * @param response
- * @param dataGrid
- * @author刘梦祥
- * @Date 2021年11月25日16:05:09
- */
- @RequestMapping(params = "auditDatagrid")
- public void auditDatagrid(HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) {
- try {
- Map<String, String> queryMap = new HashMap<>();
- String queryStr = " where 1 = 1 ";
- if (StringUtil.isNotEmpty(request.getParameter("departId"))) {
- queryMap.put("depart_id", request.getParameter("departId"));
- }
- if (StringUtil.isNotEmpty(request.getParameter("requestStatus"))) {
- queryMap.put("request_status", request.getParameter("requestStatus"));
- }
- for (String queryKey : queryMap.keySet()) {
- queryStr += " and " + queryKey + " = \"" + queryMap.get(queryKey) + "\" ";
- }
- if (StringUtil.isNotEmpty(request.getParameter("createTime_begin")) && StringUtil.isNotEmpty(request.getParameter("createTime_end"))) {
- queryStr += " and create_time between \"" + request.getParameter("createTime_begin") + "\" and \"" + request.getParameter("createTime_end") + "\" ";
- }
- List<Map<String, Object>> dataGridList = this.systemService.toDataGridByDataGrid("t_bus_activiti_overtime_audit", "create_user", "request_id", "create_time", dataGrid, queryStr);
- if (dataGridList != null && dataGridList.size() > 0) {
- for (Map<String, Object> dataGridItem : dataGridList) {
- // 根据id获取对应的加班详情数据
- if (dataGridItem.containsKey("overtimeIds")) {
- String overTimeId = String.valueOf(dataGridItem.get("overtimeIds"));
- TBusActivitiOvertimeEntity tBusActivitiOvertime = this.systemService.getEntity(TBusActivitiOvertimeEntity.class, overTimeId);
- TBusActivitiOvertimeAuditEntity tbao = new TBusActivitiOvertimeAuditEntity();
- // 科室
- dataGridItem.put("departId", tBusActivitiOvertime.getDepartId());
- // 加班人数
- dataGridItem.put("overTimeNumber", tBusActivitiOvertime.getUserCount());
- // 备注
- dataGridItem.put("remake", tBusActivitiOvertime.getReason());
- // 总加班费
- dataGridItem.put("overTimeTotalAmount", tBusActivitiOvertime.getTotalMoney());
- // 加班类型
- dataGridItem.put("overTimeType", tBusActivitiOvertime.getOvertimeSettlementType());
- }
- }
- }
- dataGrid.setResults(dataGridList);
- TagUtil.datagrid(response, dataGrid);
- } catch (Exception e) {
- throw new BusinessException(e.getMessage());
- }
- }
- /**
- * 删除加班申请
- *
- * @return
- */
- @RequestMapping(params = "doDel")
- @ResponseBody
- public AjaxJson doDel(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest request) {
- AjaxJson j = new AjaxJson();
- tBusActivitiOvertime = systemService.getEntity(TBusActivitiOvertimeEntity.class, tBusActivitiOvertime.getId());
- String message = "加班申请删除成功";
- try {
- tBusActivitiOvertimeService.delMain(tBusActivitiOvertime);
- systemService.addLog(message, Globals.Log_Type_DEL, Globals.Log_Leavel_INFO);
- } catch (Exception e) {
- e.printStackTrace();
- message = "加班申请删除失败";
- throw new BusinessException(e.getMessage());
- }
- j.setMsg(message);
- return j;
- }
- /**
- * 删除加班审核
- *
- * @return AjaxJson
- * @Author 刘梦祥
- * @Date 2021年11月30日16:39:54
- */
- @RequestMapping(params = "doAuditDel")
- @ResponseBody
- public AjaxJson doAuditDel(TBusActivitiOvertimeAuditEntity tBusAudit, HttpServletRequest request) {
- AjaxJson j = new AjaxJson();
- try {
- this.systemService.deleteEntityById(TBusActivitiOvertimeAuditEntity.class, tBusAudit.getId());
- systemService.addLog("加班审核记录删除成功!", Globals.Log_Type_DEL, Globals.Log_Leavel_INFO);
- j.setMsg("加班审核记录删除成功!");
- } catch (Exception e) {
- e.printStackTrace();
- j.setSuccess(false);
- j.setMsg("加班审核记录删除失败!");
- throw new BusinessException(e.getMessage());
- }
- return j;
- }
- /**
- * 删除休假审核
- *
- * @return AjaxJson
- * @Author 刘梦祥
- * @Date 2021年12月9日19:07:09
- */
- @RequestMapping(params = "doVacationDel")
- @ResponseBody
- public AjaxJson doVacationDel(TBusActivitiOvertimeVacationEntity tBusAudit, HttpServletRequest request) {
- AjaxJson j = new AjaxJson();
- try {
- this.systemService.deleteEntityById(TBusActivitiOvertimeVacationEntity.class, tBusAudit.getId());
- systemService.addLog("休假申请记录删除成功!", Globals.Log_Type_DEL, Globals.Log_Leavel_INFO);
- j.setMsg("休假申请记录删除成功!");
- } catch (Exception e) {
- e.printStackTrace();
- j.setSuccess(false);
- j.setMsg("休假申请记录删除失败!");
- throw new BusinessException(e.getMessage());
- }
- return j;
- }
- /**
- * 批量删除加班申请
- *
- * @return
- */
- @RequestMapping(params = "doBatchDel")
- @ResponseBody
- public AjaxJson doBatchDel(String ids, HttpServletRequest request) {
- AjaxJson j = new AjaxJson();
- String message = "加班申请删除成功";
- try {
- for (String id : ids.split(",")) {
- TBusActivitiOvertimeEntity tBusActivitiOvertime = systemService.getEntity(TBusActivitiOvertimeEntity.class,
- id
- );
- tBusActivitiOvertimeService.delMain(tBusActivitiOvertime);
- systemService.addLog(message, Globals.Log_Type_DEL, Globals.Log_Leavel_INFO);
- }
- } catch (Exception e) {
- e.printStackTrace();
- message = "加班申请删除失败";
- throw new BusinessException(e.getMessage());
- }
- j.setMsg(message);
- return j;
- }
- /**
- * 添加加班申请
- *
- * @return
- */
- @RequestMapping(params = "doAdd")
- @ResponseBody
- public AjaxJson doAdd(TBusActivitiOvertimeEntity tBusActivitiOvertime, TBusActivitiOvertimePage tBusActivitiOvertimePage, HttpServletRequest request) {
- // update操作
- if (StringUtils.isNotBlank(tBusActivitiOvertime.getId())) {
- return doUpdate(tBusActivitiOvertime, tBusActivitiOvertimePage, request);
- }
- AjaxJson j = new AjaxJson();
- String message = "添加成功";
- try {
- // 审批状态初始化
- tBusActivitiOvertime.setRequestStatus("待提交");
- tBusActivitiOvertime.setAgentUserId(ResourceUtil.getSessionUser().getId());
- tBusActivitiOvertimeService.addMain(tBusActivitiOvertime, tBusActivitiOvertimePage.getTBusActivitiOvertimeDetailList());
- systemService.addLog(message, Globals.Log_Type_INSERT, Globals.Log_Leavel_INFO);
- } catch (Exception e) {
- e.printStackTrace();
- message = "加班申请添加失败";
- throw new BusinessException(e.getMessage());
- }
- j.setMsg(message);
- return j;
- }
- /**
- * 添加休假申请
- *
- * @return AjaxJson
- * @Author 刘梦祥
- * @Date 2021年12月9日13:29:46
- */
- @RequestMapping(params = "doVacationAdd")
- @ResponseBody
- public AjaxJson doVacationAdd(TBusActivitiOvertimeVacationEntity tBVacationItem) {
- AjaxJson j = new AjaxJson();
- try {
- if (StringUtil.isNotEmpty(tBVacationItem.getId())) {
- // 更新操作
- tBVacationItem.setUpdateUser(ResourceUtil.getSessionUser().getId());
- tBVacationItem.setUpdateTime(new Date());
- j.setMsg("休假申请更新成功");
- } else {
- // 新增操作
- tBVacationItem.setId(UUID.randomUUID().toString());
- tBVacationItem.setRequestStatus("待提交");
- tBVacationItem.setCreateUser(ResourceUtil.getSessionUser().getId());
- tBVacationItem.setCreateTime(new Date());
- j.setMsg("休假申请新增成功");
- }
- this.systemService.saveOrUpdate(tBVacationItem);
- } catch (Exception e) {
- e.printStackTrace();
- j.setSuccess(false);
- j.setMsg("休假申请操作失败");
- throw new BusinessException(e.getMessage());
- }
- return j;
- }
- /**
- * 更新加班申请
- *
- * @return
- */
- @RequestMapping(params = "doUpdate")
- @ResponseBody
- public AjaxJson doUpdate(TBusActivitiOvertimeEntity tBusActivitiOvertime, TBusActivitiOvertimePage tBusActivitiOvertimePage, HttpServletRequest request) {
- List<TBusActivitiOvertimeDetailEntity> tBusActivitiOvertimeDetailList = tBusActivitiOvertimePage.getTBusActivitiOvertimeDetailList();
- AjaxJson j = new AjaxJson();
- String message = "更新成功";
- try {
- tBusActivitiOvertime.setUserCount(tBusActivitiOvertimeDetailList.size());
- tBusActivitiOvertimeService.updateMain(tBusActivitiOvertime, tBusActivitiOvertimeDetailList);
- systemService.addLog(message, Globals.Log_Type_UPDATE, Globals.Log_Leavel_INFO);
- if (StringUtil.isNotEmpty(request.getParameter("pagePath")) && "add".equals(request.getParameter("pagePath"))) {
- // 向加班审批表中插入数据
- TBusActivitiOvertimeAuditEntity tBusActivitiOvertimeAuditEntity = new TBusActivitiOvertimeAuditEntity();
- tBusActivitiOvertimeAuditEntity.setId(UUID.randomUUID().toString());
- tBusActivitiOvertimeAuditEntity.setOvertimeIds(tBusActivitiOvertime.getId());
- tBusActivitiOvertimeAuditEntity.setDepartId(tBusActivitiOvertime.getDepartId());
- tBusActivitiOvertimeAuditEntity.setRemake(tBusActivitiOvertime.getReason());
- tBusActivitiOvertimeAuditEntity.setRequestStatus("待提交");
- HttpSession session = ContextHolderUtils.getSession();
- TSUser tuser = (TSUser) session.getAttribute("LOCAL_CLINET_USER");
- tBusActivitiOvertimeAuditEntity.setCreateUser(tuser.getId());
- tBusActivitiOvertimeAuditEntity.setCreateTime(new Date());
- this.tBusActivitiOvertimeService.saveOrUpdate(tBusActivitiOvertimeAuditEntity);
- message = "添加成功";
- }
- } catch (Exception e) {
- e.printStackTrace();
- message = "更新加班申请失败";
- throw new BusinessException(e.getMessage());
- }
- j.setMsg(message);
- return j;
- }
- /**
- * 加班申请新增页面跳转
- *
- * @return
- */
- @RequestMapping(params = "goAdd")
- public ModelAndView goAdd(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest req) {
- if (StringUtil.isNotEmpty(tBusActivitiOvertime.getId())) {
- tBusActivitiOvertime = tBusActivitiOvertimeService.getEntity(TBusActivitiOvertimeEntity.class, tBusActivitiOvertime.getId());
- req.setAttribute("tBusActivitiOvertimePage", tBusActivitiOvertime);
- }
- String userId = ResourceUtil.getSessionUser().getId();
- req.setAttribute("userId", userId);
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
- req.setAttribute("month", format.format(new Date()));
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertime-add");
- }
- /**
- * @return ModelAndView
- * @Title: goVacationAdd
- * @Description: 休假申请录入以及编辑页面跳转
- * @author 刘梦祥
- * @date 2021年12月9日10:27:54
- */
- @RequestMapping(params = "goVacationAdd")
- public ModelAndView goVacationAdd(TBusActivitiOvertimeVacationEntity tbItem, HttpServletRequest req) {
- if (StringUtil.isNotEmpty(tbItem.getId())) {
- tbItem = this.systemService.getEntity(TBusActivitiOvertimeVacationEntity.class, tbItem.getId());
- if (tbItem != null && StringUtil.isNotEmpty(tbItem.getUserId())) {
- // 得到科室信息
- CriteriaQuery criteriaQuery = new CriteriaQuery(TSUserOrg.class, new DataGrid());
- criteriaQuery.eq("tsUser.id", tbItem.getUserId());
- criteriaQuery.add();
- List<TSUserOrg> tsUserOrgList = this.systemService.getListByCriteriaQuery(criteriaQuery, true);
- if (tsUserOrgList != null && tsUserOrgList.size() > 0) {
- tbItem.setDepartId(tsUserOrgList.get(0).getTsDepart().getId());
- } else {
- tbItem.setDepartId("科室信息获取异常");
- }
- // 得到工龄
- TSUser tsUser = this.systemService.getEntity(TSUser.class, tbItem.getUserId());
- if (tsUser.getEmploymentDate() != null) {
- long workTime = new Date().getTime() - tsUser.getEmploymentDate().getTime();
- tbItem.setWorkYear(String.valueOf(Math.floor(workTime / (365L * 24 * 60 * 60 * 1000))));
- } else {
- tbItem.setWorkYear("该员工入职日期获取失败");
- }
- TSBaseUser tsBaseUser = this.systemService.getEntity(TSBaseUser.class, tbItem.getUserId());
- // 得到真实姓名
- tbItem.setUserRealName(tsBaseUser.getRealName());
- }
- // 计算休假总天数(首先获取休假类型)
- // if (StringUtil.isNotEmpty(tbItem.getVacationType())) {
- // long vacationTime = tbItem.getVacationEndDate().getTime() - tbItem.getVacationStartDate().getTime();
- // if ("7".equals(tbItem.getVacationType())) {
- // tbItem.setVacationTotalDay(String.valueOf(Math.floor(vacationTime / (60 * 60 * 1000))));
- // } else {
- // tbItem.setVacationTotalDay(String.valueOf(Math.floor(vacationTime / (24 * 60 * 60 * 1000))));
- // }
- // } else {
- // tbItem.setVacationTotalDay("休假总天数计算异常");
- // }
- req.setAttribute("entity", tbItem);
- if (StringUtil.isNotEmpty(req.getParameter("pageType"))) {
- req.setAttribute("pageType", req.getParameter("pageType"));
- } else {
- req.setAttribute("pageType", "Detail");
- }
- }
- // 返回当前用户的科室id
- if (ResourceUtil.getSessionUser() != null) {
- if (StringUtil.isNotEmpty(ResourceUtil.getSessionUser().getDepartid())) {
- req.setAttribute("departid", ResourceUtil.getSessionUser().getDepartid());
- }
- }
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeVacationList-AUD");
- }
- /**
- * 加班审核选取页面跳转
- *
- * @return
- */
- @RequestMapping(params = "goAuditAdd")
- public ModelAndView goAuditAdd(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest req) {
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertime_AutidAddWindow");
- }
- /**
- * @return ModelAndView
- * @Title: goWorkingHoursAdd
- * @Description: 按工时结算页面跳转
- * @author 刘梦祥
- * @date 2021年11月3日15:04:05
- */
- @RequestMapping(params = "goWorkingHoursAdd")
- public ModelAndView goWorkingHoursAdd(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest req) {
- String userId = ResourceUtil.getSessionUser().getId();
- req.setAttribute("userId", userId);
- // 编辑或查看页面
- if (StringUtil.isNotEmpty(tBusActivitiOvertime.getId())) {
- tBusActivitiOvertime = tBusActivitiOvertimeService.getEntity(TBusActivitiOvertimeEntity.class, tBusActivitiOvertime.getId());
- req.setAttribute("tBusActivitiOvertimePage", tBusActivitiOvertime);
- } else {
- // 添加页面
- // 根据userid获取用户科室
- TSBaseUser tsBaseUser = this.systemService.getEntity(TSBaseUser.class, userId);
- tBusActivitiOvertime.setDepartId(tsBaseUser.getDepartid());
- req.setAttribute("tBusActivitiOvertimePage", tBusActivitiOvertime);
- }
- req.setAttribute("overtimeSettlementType", "1");
- req.setAttribute("pageType", "Add");
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
- req.setAttribute("month", format.format(new Date()));
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeWorkingHours-add");
- }
- /**
- * @return ModelAndView
- * @Title: goTonnageAdd
- * @Description: 按吨数结算页面跳转
- * @author 刘梦祥
- * @date 2021年11月3日15:04:05
- */
- @RequestMapping(params = "goTonnageAdd")
- public ModelAndView goTonnageAdd(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest req) {
- String userId = ResourceUtil.getSessionUser().getId();
- req.setAttribute("userId", userId);
- if (StringUtil.isNotEmpty(tBusActivitiOvertime.getId())) {
- tBusActivitiOvertime = tBusActivitiOvertimeService.getEntity(TBusActivitiOvertimeEntity.class, tBusActivitiOvertime.getId());
- req.setAttribute("tBusActivitiOvertimePage", tBusActivitiOvertime);
- } else {
- // 根据userid获取用户科室
- TSBaseUser tsBaseUser = this.systemService.getEntity(TSBaseUser.class, userId);
- tBusActivitiOvertime.setDepartId(tsBaseUser.getDepartid());
- req.setAttribute("tBusActivitiOvertimePage", tBusActivitiOvertime);
- }
- req.setAttribute("overtimeSettlementType", "2");
- req.setAttribute("pageType", "Add");
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
- req.setAttribute("month", format.format(new Date()));
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeWorkingHours-add");
- }
- /**
- * 加班申请编辑页面跳转
- *
- * @return
- */
- @RequestMapping(params = "goUpdate")
- public ModelAndView goUpdate(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest req) {
- if (StringUtil.isNotEmpty(tBusActivitiOvertime.getId())) {
- tBusActivitiOvertime = tBusActivitiOvertimeService.getEntity(TBusActivitiOvertimeEntity.class, tBusActivitiOvertime.getId());
- req.setAttribute("tBusActivitiOvertimePage", tBusActivitiOvertime);
- req.setAttribute("overtimeSettlementType", tBusActivitiOvertime.getOvertimeSettlementType());
- req.setAttribute("pageType", "Update");
- }
- String userId = ResourceUtil.getSessionUser().getId();
- if (StringUtil.isNotEmpty(req.getParameter("pagePath"))) {
- req.setAttribute("pagePath", req.getParameter("pagePath"));
- }
- req.setAttribute("userId", userId);
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeWorkingHours-add");
- }
- /**
- * 加班申请编辑页面跳转
- *
- * @return
- */
- @RequestMapping(params = "goDetail")
- public ModelAndView goDetail(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest req) {
- if (StringUtil.isNotEmpty(req.getParameter("pageTo")) && "Audit".equals(req.getParameter("pageTo"))) {
- TBusActivitiOvertimeAuditEntity tBusActivitiOvertimeAuditEntity = this.systemService.getEntity(TBusActivitiOvertimeAuditEntity.class, tBusActivitiOvertime.getId());
- if (tBusActivitiOvertimeAuditEntity != null) {
- tBusActivitiOvertime = tBusActivitiOvertimeService.getEntity(TBusActivitiOvertimeEntity.class, tBusActivitiOvertimeAuditEntity.getOvertimeIds());
- req.setAttribute("tBusActivitiOvertimePage", tBusActivitiOvertime);
- req.setAttribute("overtimeSettlementType", tBusActivitiOvertime.getOvertimeSettlementType());
- req.setAttribute("pageType", "Detail");
- }
- } else if (StringUtil.isNotEmpty(tBusActivitiOvertime.getId())) {
- tBusActivitiOvertime = tBusActivitiOvertimeService.getEntity(TBusActivitiOvertimeEntity.class, tBusActivitiOvertime.getId());
- req.setAttribute("tBusActivitiOvertimePage", tBusActivitiOvertime);
- req.setAttribute("overtimeSettlementType", tBusActivitiOvertime.getOvertimeSettlementType());
- req.setAttribute("pageType", "Detail");
- }
- String userId = ResourceUtil.getSessionUser().getId();
- req.setAttribute("userId", userId);
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeWorkingHours-add");
- }
- /**
- * 加载明细列表[加班详情]
- *
- * @return
- */
- @RequestMapping(params = "tBusActivitiOvertimeDetailList")
- public ModelAndView tBusActivitiOvertimeDetailList(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest req) {
- //===================================================================================
- //获取参数
- Object id0 = tBusActivitiOvertime.getId();
- String overtimeSettlementType = tBusActivitiOvertime.getOvertimeSettlementType();
- TBusActivitiOvertimeEntity overtimeEntity = systemService.getEntity(TBusActivitiOvertimeEntity.class, id0.toString());
- //===================================================================================
- //查询-加班详情
- String hql0 = "from TBusActivitiOvertimeDetailEntity where 1 = 1 AND overtimeId =? ";
- try {
- List<TBusActivitiOvertimeDetailEntity> tBusActivitiOvertimeDetailEntityList = systemService.findHql(hql0, id0);
- for (TBusActivitiOvertimeDetailEntity t : tBusActivitiOvertimeDetailEntityList) {
- t.setDepartId(overtimeEntity.getDepartId());
- }
- req.setAttribute("tBusActivitiOvertimeDetailList", tBusActivitiOvertimeDetailEntityList);
- req.setAttribute("overtimeSettlementType", overtimeSettlementType);
- if (StringUtil.isNotEmpty(req.getParameter("pagePath"))) {
- req.setAttribute("pagePath", req.getParameter("pagePath"));
- }
- } catch (Exception e) {
- logger.info(e.getMessage());
- }
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertimeDetailList");
- }
- /**
- * 导出excel
- *
- * @param request
- * @param response
- */
- @RequestMapping(params = "exportXls")
- public String exportXls(TBusActivitiOvertimeEntity tBusActivitiOvertime, HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid, ModelMap map) {
- CriteriaQuery cq = new CriteriaQuery(TBusActivitiOvertimeEntity.class, dataGrid);
- //查询条件组装器
- org.jeecgframework.core.extend.hqlsearch.HqlGenerateUtil.installHql(cq, tBusActivitiOvertime);
- try {
- //自定义追加查询条件
- } catch (Exception e) {
- throw new BusinessException(e.getMessage());
- }
- cq.add();
- List<TBusActivitiOvertimeEntity> list = this.tBusActivitiOvertimeService.getListByCriteriaQuery(cq, false);
- List<TBusActivitiOvertimePage> pageList = new ArrayList<TBusActivitiOvertimePage>();
- if (list != null && list.size() > 0) {
- for (TBusActivitiOvertimeEntity entity : list) {
- try {
- TBusActivitiOvertimePage page = new TBusActivitiOvertimePage();
- MyBeanUtils.copyBeanNotNull2Bean(entity, page);
- Object id0 = entity.getId();
- String hql0 = "from TBusActivitiOvertimeDetailEntity where 1 = 1 AND oVERTIME_ID =? ";
- List<TBusActivitiOvertimeDetailEntity> tBusActivitiOvertimeDetailEntityList = systemService.findHql(hql0, id0);
- page.setTBusActivitiOvertimeDetailList(tBusActivitiOvertimeDetailEntityList);
- pageList.add(page);
- } catch (Exception e) {
- logger.info(e.getMessage());
- }
- }
- }
- map.put(NormalExcelConstants.FILE_NAME, "加班申请");
- map.put(NormalExcelConstants.CLASS, TBusActivitiOvertimePage.class);
- map.put(NormalExcelConstants.PARAMS, new ExportParams("加班申请列表", "导出人:Jeecg",
- "导出信息"));
- map.put(NormalExcelConstants.DATA_LIST, pageList);
- return NormalExcelConstants.JEECG_EXCEL_VIEW;
- }
- /**
- * 通过excel导入数据
- *
- * @param request
- * @param
- * @return
- */
- @RequestMapping(params = "importExcel", method = RequestMethod.POST)
- @ResponseBody
- public AjaxJson importExcel(HttpServletRequest request, HttpServletResponse response) {
- AjaxJson j = new AjaxJson();
- MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
- Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
- for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
- MultipartFile file = entity.getValue();// 获取上传文件对象
- ImportParams params = new ImportParams();
- params.setTitleRows(2);
- params.setHeadRows(2);
- params.setNeedSave(true);
- try {
- List<TBusActivitiOvertimePage> list = ExcelImportUtil.importExcel(file.getInputStream(), TBusActivitiOvertimePage.class, params);
- TBusActivitiOvertimeEntity entity1 = null;
- for (TBusActivitiOvertimePage page : list) {
- entity1 = new TBusActivitiOvertimeEntity();
- MyBeanUtils.copyBeanNotNull2Bean(page, entity1);
- tBusActivitiOvertimeService.addMain(entity1, page.getTBusActivitiOvertimeDetailList());
- }
- j.setMsg("文件导入成功!");
- } catch (Exception e) {
- j.setMsg("文件导入失败!");
- logger.error(ExceptionUtil.getExceptionMessage(e));
- } finally {
- try {
- file.getInputStream().close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- return j;
- }
- /**
- * 导出excel 使模板
- */
- @RequestMapping(params = "exportXlsByT")
- public String exportXlsByT(ModelMap map) {
- map.put(NormalExcelConstants.FILE_NAME, "加班申请");
- map.put(NormalExcelConstants.CLASS, TBusActivitiOvertimePage.class);
- map.put(NormalExcelConstants.PARAMS, new ExportParams("加班申请列表", "导出人:" + ResourceUtil.getSessionUser().getRealName(),
- "导出信息"));
- map.put(NormalExcelConstants.DATA_LIST, new ArrayList());
- return NormalExcelConstants.JEECG_EXCEL_VIEW;
- }
- /**
- * 导入功能跳转
- *
- * @return
- */
- @RequestMapping(params = "upload")
- public ModelAndView upload(HttpServletRequest req) {
- req.setAttribute("controller_name", "tBusActivitiOvertimeController");
- return new ModelAndView("common/upload/pub_excel_upload");
- }
- @RequestMapping(method = RequestMethod.GET)
- @ResponseBody
- public List<TBusActivitiOvertimeEntity> list() {
- List<TBusActivitiOvertimeEntity> listTBusActivitiOvertimes = tBusActivitiOvertimeService.getList(TBusActivitiOvertimeEntity.class);
- return listTBusActivitiOvertimes;
- }
- @RequestMapping(value = "/{id}", method = RequestMethod.GET)
- @ResponseBody
- public ResponseEntity<?> get(@PathVariable("id") String id) {
- TBusActivitiOvertimeEntity task = tBusActivitiOvertimeService.get(TBusActivitiOvertimeEntity.class, id);
- if (task == null) {
- return new ResponseEntity(HttpStatus.NOT_FOUND);
- }
- return new ResponseEntity(task, HttpStatus.OK);
- }
- @RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
- @ResponseBody
- public ResponseEntity<?> create(@RequestBody TBusActivitiOvertimePage tBusActivitiOvertimePage, UriComponentsBuilder uriBuilder) {
- //调用JSR303 Bean Validator进行校验,如果出错返回含400错误码及json格式的错误信息.
- Set<ConstraintViolation<TBusActivitiOvertimePage>> failures = validator.validate(tBusActivitiOvertimePage);
- if (!failures.isEmpty()) {
- return new ResponseEntity(BeanValidators.extractPropertyAndMessage(failures), HttpStatus.BAD_REQUEST);
- }
- //保存
- List<TBusActivitiOvertimeDetailEntity> tBusActivitiOvertimeDetailList = tBusActivitiOvertimePage.getTBusActivitiOvertimeDetailList();
- TBusActivitiOvertimeEntity tBusActivitiOvertime = new TBusActivitiOvertimeEntity();
- try {
- MyBeanUtils.copyBeanNotNull2Bean(tBusActivitiOvertime, tBusActivitiOvertimePage);
- } catch (Exception e) {
- logger.info(e.getMessage());
- }
- tBusActivitiOvertimeService.addMain(tBusActivitiOvertime, tBusActivitiOvertimeDetailList);
- //按照Restful风格约定,创建指向新任务的url, 也可以直接返回id或对象.
- String id = tBusActivitiOvertimePage.getId();
- URI uri = uriBuilder.path("/rest/tBusActivitiOvertimeController/" + id).build().toUri();
- HttpHeaders headers = new HttpHeaders();
- headers.setLocation(uri);
- return new ResponseEntity(headers, HttpStatus.CREATED);
- }
- @RequestMapping(value = "/{id}", method = RequestMethod.PUT, consumes = MediaType.APPLICATION_JSON_VALUE)
- public ResponseEntity<?> update(@RequestBody TBusActivitiOvertimePage tBusActivitiOvertimePage) {
- //调用JSR303 Bean Validator进行校验,如果出错返回含400错误码及json格式的错误信息.
- Set<ConstraintViolation<TBusActivitiOvertimePage>> failures = validator.validate(tBusActivitiOvertimePage);
- if (!failures.isEmpty()) {
- return new ResponseEntity(BeanValidators.extractPropertyAndMessage(failures), HttpStatus.BAD_REQUEST);
- }
- //保存
- List<TBusActivitiOvertimeDetailEntity> tBusActivitiOvertimeDetailList = tBusActivitiOvertimePage.getTBusActivitiOvertimeDetailList();
- TBusActivitiOvertimeEntity tBusActivitiOvertime = new TBusActivitiOvertimeEntity();
- try {
- MyBeanUtils.copyBeanNotNull2Bean(tBusActivitiOvertime, tBusActivitiOvertimePage);
- } catch (Exception e) {
- logger.info(e.getMessage());
- }
- tBusActivitiOvertimeService.updateMain(tBusActivitiOvertime, tBusActivitiOvertimeDetailList);
- //按Restful约定,返回204状态码, 无内容. 也可以返回200状态码.
- return new ResponseEntity(HttpStatus.NO_CONTENT);
- }
- @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
- @ResponseStatus(HttpStatus.NO_CONTENT)
- public void delete(@PathVariable("id") String id) {
- TBusActivitiOvertimeEntity tBusActivitiOvertime = tBusActivitiOvertimeService.get(TBusActivitiOvertimeEntity.class, id);
- tBusActivitiOvertimeService.delMain(tBusActivitiOvertime);
- }
- //审批
- @RequestMapping(params = "goView")
- public ModelAndView goView(TBusActivitiOvertimeEntity entity, HttpServletRequest req) {
- String userid = "";
- if (StringUtil.isNotEmpty(entity.getId())) {
- entity = tBusActivitiOvertimeService.getEntity(TBusActivitiOvertimeEntity.class, entity.getId());
- req.setAttribute("tBusActivitiOvertimePage", entity);
- }
- String taskId = oConvertUtils.getString(req.getParameter("taskId"));
- if (oConvertUtils.isNotEmpty(taskId)) {
- FormProcUtil.initWorkflowParam(req);
- req.setAttribute("taskId", taskId);
- }
- req.setAttribute("in_process", true);
- //加班预算
- /*String depId = entity.getDepartId();
- String month = entity.getMonth();
- double budget = tBOvertimeBudgetService.getMonthLeftBudget(depId, month);
- req.setAttribute("budget", budget);*/
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/tBusActivitiOvertime-add");
- }
- //手机审批
- @RequestMapping(params = "goViewMobile")
- public ModelAndView goViewMobile(TBusActivitiOvertimeEntity entity, HttpServletRequest req) {
- goView(entity, req);
- Map<String, Object> data = new HashMap<>();
- data.put("entity", req.getAttribute("tBusActivitiOvertimePage"));
- return new JsonDataModelAndView(WXAjaxJson.success(data));
- // return new ModelAndView("cn/com/lzt/useractiviti/overtime/overtime_view_mobile");
- }
- @RequestMapping(params = "getBaseHourWage")
- @ResponseBody
- public BigDecimal getBaseHourWage(@RequestParam("userId") String userId) {
- try {
- BigDecimal wage = userWageStrategyService.getBaseHourWage(userId);
- return wage;
- } catch (Exception e) {
- e.printStackTrace();
- }
- return BigDecimal.ZERO;
- }
- @RequestMapping(params = "exportDetailPdf4Mobile")
- public void exportDetailPdf4Mobile(@RequestParam("procInstId") String procInstId, HttpServletResponse response) {
- ActivitiTools tools = ActivitiTools.getInstance(procInstId, true);
- // ActivitiPdfExport pdfExport = tools.getPdfExport();
- // exportPdf(pdfExport,tools.getBusId());
- // pdfExport.procInstId(null);
- tools.view(response);
- }
- private void exportPdf(ActivitiPdfExport pdfExport, String id) {
- TBusActivitiOvertimeEntity entity = systemService.getEntity(TBusActivitiOvertimeEntity.class, id);
- pdfExport
- .table()
- .cell("申请人", entity.getCreateName())
- .cell("加班项目", entity.getDepName())
- .cell("加班月份", entity.getMonth())
- .cell("总时长", entity.getTotalHour().toString())
- .cell("总金额", entity.getTotalMoney().toString())
- .cell("加班原因", entity.getReason())
- ;
- List<TBusActivitiOvertimeDetailEntity> detailEntityList = systemService.findByProperty(TBusActivitiOvertimeDetailEntity.class, "overtimeId", id);
- pdfExport.cell("");
- PdfPTable detailTableHeader = pdfExport.createTable(7);
- detailTableHeader.setWidthPercentage(100);
- pdfExport.cell(detailTableHeader, "加班员工", true);
- pdfExport.cell(detailTableHeader, "开始时间", true);
- pdfExport.cell(detailTableHeader, "结束时间", true);
- pdfExport.cell(detailTableHeader, "加班时长", true);
- pdfExport.cell(detailTableHeader, "补偿方式", true);
- pdfExport.cell(detailTableHeader, "加班费", true);
- pdfExport.cell(detailTableHeader, "调休余额", true);
- pdfExport.cell(detailTableHeader);
- String yearMonth = entity.getMonth();
- SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
- String year = null;
- try {
- Date date = format.parse(yearMonth);
- year = tbExchangeAccountService.getYear(date);
- } catch (ParseException e) {
- e.printStackTrace();
- }
- int i = 0;
- for (TBusActivitiOvertimeDetailEntity detailEntity : detailEntityList) {
- i++;
- PdfPTable detailTable = pdfExport.createTable(7);
- pdfExport.cell(detailTable, detailEntity.getRealName(), false);
- pdfExport.cell(detailTable, DataUtils.formatDate(detailEntity.getStartTime(), "yyyy-MM-dd HH:mm:ss"), false);
- pdfExport.cell(detailTable, DataUtils.formatDate(detailEntity.getEndTime(), "yyyy-MM-dd HH:mm:ss"), false);
- pdfExport.cell(detailTable, detailEntity.getHour().toString(), false);
- pdfExport.cell(detailTable, DictUtil.formatToTypeName(detailEntity.getCompensate(), "overtime_compensate"), false);
- pdfExport.cell(detailTable, detailEntity.getMoney().toString(), false);
- Double accountBalance = tbExchangeAccountService.getBalance(detailEntity.getUserid(), year, detailEntity.getCreateDate());
- pdfExport.cell(detailTable, accountBalance.toString(), false);
- pdfExport.cell("加班明细" + i, true);
- pdfExport.cell(detailTable);
- }
- }
- @RequestMapping(params = "list4all")
- public ModelAndView list4all(HttpServletRequest request) {
- return new ModelAndView("cn/com/lzt/useractiviti/overtime/overtime_list_all");
- }
- /**
- * easyui AJAX请求数据
- *
- * @param request
- * @param response
- * @param dataGrid
- */
- @RequestMapping(params = "datagrid4all")
- public void datagrid4all(TBusActivitiOvertimeEntity entity, HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) {
- CriteriaQuery cq = new CriteriaQuery(TBusActivitiOvertimeEntity.class, dataGrid);
- if (StringUtils.isNotBlank(entity.getDepName())) {
- cq.like("depName", "%" + entity.getDepName() + "%");
- entity.setDepName(null);
- }
- if (StringUtils.isNotBlank(entity.getCreateName())) {
- cq.like("createName", "%" + entity.getCreateName() + "%");
- entity.setCreateName(null);
- }
- //查询条件组装器
- org.jeecgframework.core.extend.hqlsearch.HqlGenerateUtil.installHql(cq, entity, request.getParameterMap());
- try {
- //自定义追加查询条件
- TSUser user = ResourceUtil.getSessionUser();
- } catch (Exception e) {
- throw new BusinessException(e.getMessage());
- }
- cq.add();
- this.tBusActivitiOvertimeService.getDataGridReturn(cq, true);
- TagUtil.datagrid(response, dataGrid);
- }
- }
|