diff --git a/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/biz/ApproveRoleBiz.java b/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/biz/ApproveRoleBiz.java index 430e1ddcd864dfbb3e1c7236586ed866a0fac727..ccd4153c33501cf734d3045c1ef10ae937eaa124 100644 --- a/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/biz/ApproveRoleBiz.java +++ b/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/biz/ApproveRoleBiz.java @@ -152,6 +152,47 @@ public class ApproveRoleBiz extends BaseBiz { return list; } + public List exportApprove(Query query, String staffId) { + ApproveRoleVo approveRoleVo = new ApproveRoleVo(); + approveRoleVo.setStaffId(staffId); + List roleIds = new ArrayList<>(); + List bxztStrs = new ArrayList<>(); + roleIds = super.selectList(approveRoleVo); + if (roleIds != null && roleIds.size() != 0) { + + for (ApproveRoleVo item : roleIds) { + // 查询页面和审批页面各角色可见范围 + // 如果是负责人,则只能看见自己部门的人员 + String roleId = item.getRoleId(); + String deptCode = item.getDeptCode(); + if ("1".equals(roleId)) { + query.put("staffId", staffId); + query.put("querytype", "approve"); + query.put("rolebmfzr", true); + } else if ("2".equals(roleId)) { + bxztStrs.add("3"); + query.put("querytype", "approve"); + query.put("rolezjl", true); + } else if ("3".equals(roleId)) { + bxztStrs.add("4"); + query.put("querytype", "approve"); + query.put("rolekj", true); + } else if ("4".equals(roleId)) { + bxztStrs.add("6"); + query.put("querytype", "approve"); + query.put("rolecwzj", true); + } + } + if (bxztStrs.size() != 0) { + query.put("bxzts", bxztStrs); + } + } + //Query query = new Query(query); + + List list = approveRoleMapper.page(query); + return list; + } + /** * 获取每种报销类型的待审批总条数 * */ diff --git a/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/biz/RibsBiz.java b/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/biz/RibsBiz.java index 98ada299050c1d3812b48bcd4089cd8647ed829c..b2d4b0f68b93f11f3d407b8d7c350aef10058cb7 100644 --- a/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/biz/RibsBiz.java +++ b/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/biz/RibsBiz.java @@ -11,6 +11,7 @@ import com.gitee.neuray.security.wb.ribs.util.wechat.entity.AccessToken; import com.gitee.neuray.security.wb.ribs.vo.*; import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -89,6 +90,14 @@ public class RibsBiz extends BaseBiz { } System.out.println("STEP5-------------------------------------"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); //插入历史表 + //如果是经理特批的提交,则代表是部门负责人提交,则历史表里新增一条提交操作 + if("3".equals(ribsVo.getBxzt()) && "2".equals(ribsVo.getTp())){ + RibsVo ribsVoCopy = new RibsVo(); + BeanUtils.copyProperties(ribsVo,ribsVoCopy); + ribsVoCopy.setBxzt("2"); + ribsVo.setYj("同意"); + insertHistory(ribsVoCopy,null,userId); + } insertHistory(ribsVo,null,userId); System.out.println("STEP6-------------------------------------"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); @@ -123,7 +132,7 @@ public class RibsBiz extends BaseBiz { cyfVo.setBxdh(bxdh); cyfVo.setStaffId(staffId); List cyfVos = cyfBiz.queryCyf(cyfVo); - ret.put("detail",cyfVos); + ret.put("data",cyfVos); ret.put("type","cyf"); //市内交通费 }else if("2".equals(ribsVo.getBxlx())){ @@ -131,7 +140,7 @@ public class RibsBiz extends BaseBiz { jtfVo.setBxdh(bxdh); jtfVo.setStaffId(staffId); List jtfVos = jtfBiz.queryJtf(jtfVo); - ret.put("detail",jtfVos); + ret.put("data",jtfVos); ret.put("type","jtf"); } @@ -160,7 +169,7 @@ public class RibsBiz extends BaseBiz { // String roleId = roleIds.get(0).getRoleId(); insertHistory(ribsVo,roleId,staffId); //驳回发送消息 - this.sendWxMsg(ribsVo,ribsVo.getBxyj(),ribsVo.getStaffId()); + this.sendWxMsg(ribsVo,ribsVo.getBxyj(),ribsVo.getStaffId(),staffId); //super.deleteById(ribsVo.getId()); return; } @@ -191,7 +200,7 @@ public class RibsBiz extends BaseBiz { }else if("4".equals(roleId)){ ribsVo.setBxzt("7"); } - this.sendWxMsg(ribsVo,ribsVo.getBxyj(),ribsVo.getStaffId()); + this.sendWxMsg(ribsVo,ribsVo.getBxyj(),ribsVo.getStaffId(),staffId); /*ApproveRoleVo approveRoleVo = new ApproveRoleVo(); approveRoleVo.setStaffId(ribsVo.getStaffId()); @@ -284,7 +293,7 @@ public class RibsBiz extends BaseBiz { return historyMapper.historyQuery(historyVo); } - public void sendWxMsg(RibsVo ribsVo,String type,String userId){ + public void sendWxMsg(RibsVo ribsVo,String type,String userId,String staffId){ Map staff = new HashMap(); staff.put("id",userId); @@ -293,7 +302,7 @@ public class RibsBiz extends BaseBiz { String wxUserId = staffInfos.get(0).get("qyhid").toString(); Map staffApprove = new HashMap(); - staffApprove.put("id",ribsVo.getStaffId()); + staffApprove.put("id",staffId); TableResultResponse staffApproveInfo = staffFeign.getStaffInfo(staffApprove); List staffApproveInfos = staffApproveInfo.getResult().getData(); String approveName = staffApproveInfos.get(0).get("name").toString(); diff --git a/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/controller/RibsController.java b/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/controller/RibsController.java index 2c4f142db5099643c6a4bf52fd8a1635829ac9bc..371075457194694f9fd5f3cfd94c4cec260c56d5 100644 --- a/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/controller/RibsController.java +++ b/neuray-pm-provider/neuray-pm-provider-wb/src/main/java/com/gitee/neuray/security/wb/ribs/controller/RibsController.java @@ -377,6 +377,22 @@ public class RibsController { ExcelUtils.export(response, "报销列表查询", execlData, RibsPageExcelVo.class); } + @RequestMapping(value = "exportApprove", method = RequestMethod.GET) + public void exportApprove(@RequestParam Map params, HttpServletResponse response, HttpServletRequest request) + throws Exception { + Query query = new Query(params); + /*List data = ribsBiz.nopage(query);*/ + String userId = request.getHeader("userid"); + //params.put("staffId",userId); + // 查询列表数据 + String type = "approve"; + List list = approveRoleBiz.exportApprove(query,userId); + List execlData = JSONObject.parseArray(JSONObject.toJSONString(list),RibsPageExcelVo.class); + /*List execlData = + JSONArray.parseArray(JSONObject.toJSONString(data), RibsPageExcelVo.class);*/ + ExcelUtils.export(response, "报销列表查询", execlData, RibsPageExcelVo.class); + } + /** * 查询当前登陆人审批角色 * @param map diff --git a/neuray-pm-provider/neuray-pm-provider-wb/src/main/resources/mapper/ribs/ApproRoleMapper.xml b/neuray-pm-provider/neuray-pm-provider-wb/src/main/resources/mapper/ribs/ApproRoleMapper.xml index 622b6a56291668c83bef2b4e7ae07e94b9f7384b..8340ccebfb824f60b33a59e4b6588406ea7c2e70 100644 --- a/neuray-pm-provider/neuray-pm-provider-wb/src/main/resources/mapper/ribs/ApproRoleMapper.xml +++ b/neuray-pm-provider/neuray-pm-provider-wb/src/main/resources/mapper/ribs/ApproRoleMapper.xml @@ -37,7 +37,7 @@ and bxzt.name = 'BXZT' and ast.id = b.STAFF_ID ) ret - + @@ -125,16 +125,15 @@ and bxzt.name = 'BXZT' and ast.id = b.STAFF_ID and astt.id = b.STAFF_ID - and b.STAFF_ID != #{staffId} ) aa - + or ( aa.bxlx = #{bxlx} and aa.bxzt = '2' and aa.STAFF_ID - in (SELECT astt.ID,astt.name + in (SELECT astt.ID from NeurayPM_Admin.ADMIN_STAFF astt, NEURAYPM_ADMIN.ADMIN_ORG aoo where astt.DEPT_CODE = aoo.ID @@ -146,7 +145,6 @@ and ast.DEPT_CODE = ao.id),'%') and astt.ID != #{staffId})) - ) or( diff --git a/neuray-pm-provider/neuray-pm-provider-wb/src/main/resources/mapper/ribs/HistoryMapper.xml b/neuray-pm-provider/neuray-pm-provider-wb/src/main/resources/mapper/ribs/HistoryMapper.xml index 96fadefbcfc7c420bc93fc3c0baa20141fa8f637..818cb6c27d8a2f13384a571d2a2cee2d52e7e342 100644 --- a/neuray-pm-provider/neuray-pm-provider-wb/src/main/resources/mapper/ribs/HistoryMapper.xml +++ b/neuray-pm-provider/neuray-pm-provider-wb/src/main/resources/mapper/ribs/HistoryMapper.xml @@ -22,7 +22,7 @@ LEFT JOIN NEURAYPM_ADMIN.ADMIN_STAFF asff on twbh.CRT_USER = asff.ID where twbh.bxdh = #{bxdh} - order by twbh.CRT_TIME + order by twbh.CRT_TIME,twbh.BXZT