| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683 |
- package com.ydtech.modules.esm.controller;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.ydtech.constants.SysConstants;
- import com.ydtech.core.page.BaseController;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.core.page.PageRequest;
- import com.ydtech.core.page.PageResult;
- import com.ydtech.modules.admin.model.SysUser;
- import com.ydtech.modules.admin.service.SysUserService;
- import com.ydtech.modules.esm.model.*;
- import com.ydtech.modules.esm.service.*;
- import com.ydtech.modules.esm.vo.*;
- import com.ydtech.modules.ins.model.InsOrder;
- import com.ydtech.modules.ins.service.InsOrderService;
- import com.ydtech.security.utils.PasswordUtils;
- import com.ydtech.utils.StringUtils;
- import com.ydtech.utils.idgen.IdGenerate;
- import io.swagger.annotations.ApiOperation;
- import org.apache.poi.util.StringUtil;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.security.access.prepost.PreAuthorize;
- import org.springframework.web.bind.annotation.*;
- import java.math.BigDecimal;
- import java.util.*;
- /**
- * ---------------------------
- * 人员管理 (EsmUserController)
- * ---------------------------
- * 作者:qfl
- * ---------------------------
- */
- @RestController
- @RequestMapping("esmUserInternal")
- public class EsmUserInternalController extends BaseController {
- @Autowired
- private SysUserService sysUserService;
- @Autowired
- private EsmUserInternalService esmUserInternalService;
- @Autowired
- private EsmUserAgentService esmUserAgentService;
- @Autowired
- private SysUserCheckService sysUserCheckService;
- @Autowired
- private EsmUserInternalCheckService esmUserInternalCheckService;
- @Autowired
- private EsmUserAgentCheckService esmUserAgentCheckService;
- @Autowired
- InsOrderService insOrderService;
- /**
- * 更新人员银行卡等信息
- *
- * @param record
- * @return
- */
- @PostMapping(value = "/saveUser")
- public HttpResult save(@RequestBody EsmUserInternal record) {
- if (StringUtils.isNullOrEmpty(record.getId())) {
- return HttpResult.error("id不能为空");
- }
- esmUserInternalService.updateSelective(record);
- return HttpResult.ok("保存成功");
- }
- @PreAuthorize("hasAuthority('sys:user:delete')")
- @PostMapping(value = "/delete")
- public HttpResult delete(@RequestBody List<SysUser> records) {
- List<EsmUserInternal> esmUserInternals = new ArrayList<>();
- List<EsmUserAgent> esmUserAgents = new ArrayList<>();
- List<SysUserCheck> sysUserChecks = new ArrayList<>();
- List<EsmUserInternalCheck> esmUserInternalChecks = new ArrayList<>();
- List<EsmUserAgentCheck> esmUserAgentChecks = new ArrayList<>();
- for (SysUser record : records) {
- SysUser sysUser = sysUserService.selectByPk(record.getId());
- if (sysUser != null && SysConstants.ADMIN.equalsIgnoreCase(sysUser.getName())) {
- return HttpResult.error("超级管理员不允许删除!");
- }
- EsmUserInternal esmUserInternal = new EsmUserInternal();
- esmUserInternal.setId(record.getId());
- esmUserInternals.add(esmUserInternal);
- EsmUserAgent esmUserAgent = new EsmUserAgent();
- esmUserAgent.setId(record.getId());
- esmUserAgents.add(esmUserAgent);
- EsmUserInternalCheck esmUserInternalCheck = new EsmUserInternalCheck();
- esmUserInternalCheck.setId(record.getId());
- esmUserInternalChecks.add(esmUserInternalCheck);
- EsmUserAgentCheck esmUserAgentCheck = new EsmUserAgentCheck();
- esmUserAgentCheck.setId(record.getId());
- esmUserAgentChecks.add(esmUserAgentCheck);
- SysUserCheck sysUserCheck = new SysUserCheck();
- sysUserCheck.setId(record.getId());
- sysUserChecks.add(sysUserCheck);
- }
- //EsmUserInternal esmUserInternal = esmUserInternalService.selectByPk(record.getId());
- sysUserService.delete(records);
- esmUserInternalService.delete(esmUserInternals);
- esmUserAgentService.delete(esmUserAgents);
- sysUserCheckService.delete(sysUserChecks);
- esmUserInternalCheckService.delete(esmUserInternalChecks);
- esmUserAgentCheckService.delete(esmUserAgentChecks);
- return HttpResult.ok("删除成功");
- }
- /**
- * 基础分页查询
- *
- * @param pageRequest
- * @return
- */
- @PostMapping(value = "/findPage")
- public HttpResult findPage(@RequestBody PageRequest pageRequest) {
- int pageNum = pageRequest.getPageNum();
- int pageSize = pageRequest.getPageSize();
- String name = pageRequest.getColumnFilterValue(pageRequest, "name");
- String deptId = pageRequest.getColumnFilterValue(pageRequest, "deptId");
- String usertype = pageRequest.getColumnFilterValue(pageRequest, "usertype");
- String status = pageRequest.getColumnFilterValue(pageRequest, "status");
- String isteamleader = pageRequest.getColumnFilterValue(pageRequest, "isteamleader");
- String mobile = pageRequest.getColumnFilterValue(pageRequest, "mobile");
- String id = pageRequest.getColumnFilterValue(pageRequest, "id");
- String startdate = pageRequest.getColumnFilterValue(pageRequest, "startdate");
- String enddate = pageRequest.getColumnFilterValue(pageRequest, "enddate");
- StringBuffer whereStr = new StringBuffer(" where 1=1 ");
- ArrayList<Object> params = new ArrayList<Object>();
- if (!StringUtils.isNullOrEmpty(name)) {
- whereStr.append(" and t1.name like ?");
- params.add("%" + name + "%");
- }
- if (!StringUtils.isNullOrEmpty(mobile)) {
- whereStr.append(" and t1.mobile = ?");
- params.add(mobile);
- }
- if (!StringUtils.isNullOrEmpty(id)) {
- whereStr.append(" and t1.id = ?");
- params.add(id);
- }
- if (deptId != null) {
- String containsSubDept = pageRequest.getColumnFilterValue(pageRequest, "containsSubDept");
- if (containsSubDept != null && containsSubDept.equalsIgnoreCase("1")) {
- whereStr.append(" and t1.dept_id like ?");
- params.add(deptId + "%");
- } else {
- whereStr.append(" and t1.dept_id = ?");
- params.add(deptId);
- }
- }
- if (status != null) {
- //ArrayList<String> ls = new ArrayList<>();
- String andStr = " and t2.status in (";
- String pre = "";
- String[] sa = status.split(",");
- for (String s : sa) {
- andStr += pre + "'" + s.trim() + "'";
- pre = ",";
- }
- andStr += ")";
- whereStr.append(andStr);
- }
- if (!StringUtils.isNullOrEmpty(isteamleader)) {
- whereStr.append(" and t2.isteamleader = ?");
- params.add(isteamleader.trim());
- }
- if (!StringUtils.isNullOrEmpty(startdate)) {
- whereStr.append(" and DATE_FORMAT(t2.intime,'%Y-%m-%d') >= date ?");
- params.add(startdate);
- }
- if (!StringUtils.isNullOrEmpty(enddate)) {
- whereStr.append(" and DATE_FORMAT(t2.intime,'%Y-%m-%d') <= date ?");
- params.add(enddate);
- }
- //后线人员 usertype为A
- if (usertype != null) {
- whereStr.append(" and usertype = ?");
- params.add(usertype.trim());
- }
- //过滤离司人员 这里del_flag用作离司
- whereStr.append(" and t1.del_flag <> ?");
- params.add("1");
- //传入查询条件
- PageResult pageResult = esmUserInternalService.selectPagingCustom(pageNum, pageSize, whereStr.toString(), params.toArray());
- return HttpResult.ok(pageResult);
- }
- /**
- * 根据机构查询推荐人列表
- */
- @PostMapping("/queryRecommender")
- public HttpResult queryRecommender(@RequestParam String comcode) {
- StringBuffer whereStr = new StringBuffer(" where 1=1 ");
- ArrayList<String> params = new ArrayList<>();
- if (comcode != null) {
- whereStr.append(" and dept_id = ?");
- params.add(comcode);
- }
- List<SysUser> list = sysUserService.selectList(whereStr.toString(), params.toArray());
- return HttpResult.ok(list);
- }
- /**
- * 根据选择的推荐人代码,查询推荐人的上三级信息返回
- */
- @GetMapping("/getSuperior")
- public HttpResult getSuperior(@RequestParam String id) {
- List<SysUser> userList = new ArrayList<SysUser>();
- // for(int i=0;i<3;i++){
- // StringBuffer whereStr = new StringBuffer(" where 1=1 ");
- // ArrayList<String> params = new ArrayList<String>();
- // if(id != null){
- // whereStr.append(" and id = ?");
- // params.add(id);
- // }
- // List<EsmUserAgent> list = esmUserAgentService.selectList(whereStr.toString(),params.toArray());
- // if(list != null && list.size()>0){
- // id = list.get(0).getRecommenderid(); //上级推荐人代码
- // if(StringUtils.isNullOrEmpty(id)){
- // break;
- // }
- // SysUser user = sysUserService.selectByPk(id);
- // userList.add(user);
- // }
- // }
- userList = esmUserInternalService.getSuperior(id);
- return HttpResult.ok(userList);
- }
- /**
- * 查询团队人数:我的团队人数,一级团队人数,二级团队人数,三级团队人数,临时用户人数
- *
- * @param record
- * @return
- */
- @PostMapping("/queryTeamNum")
- public HttpResult queryTeamNum(@RequestBody TeamUserQryVO record) {
- List<TeamUserVO> teamList = new ArrayList<TeamUserVO>();
- StringBuffer sbStr = new StringBuffer(" where 1=1 ");
- ArrayList<String> paramList = new ArrayList<String>();
- if (!StringUtils.isNullOrEmpty(record.getId())) {
- sbStr.append(" and id = ?");
- paramList.add(record.getId());
- }
- if (!StringUtils.isNullOrEmpty(record.getName())) {
- sbStr.append(" and name = ?");
- paramList.add(record.getName());
- }
- if (!StringUtils.isNullOrEmpty(record.getMobile())) {
- sbStr.append(" and mobile = ?");
- paramList.add(record.getMobile());
- }
- String dateStr = "";
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- }
- List<SysUser> users = sysUserService.selectList(sbStr.toString(), paramList.toArray());
- for (SysUser user : users) {
- TeamUserVO teamUserVO = new TeamUserVO();
- teamUserVO.setId(user.getId());
- teamUserVO.setName(user.getName());
- teamUserVO.setDeptid(user.getDeptId());
- teamUserVO.setDeptname("");
- teamUserVO.setSex(user.getSex());
- teamUserVO.setMobile(user.getMobile());
- teamUserVO.setJobcode(user.getJobCode());
- //判断是否团队长
- // EsmUserInternal userInternal = esmUserInternalService.selectByPk(user.getId());
- // if("1".equals(userInternal.getIsteamleader())){
- // // 查询团队人数
- // ArrayList<String> param = new ArrayList<>();
- // param.add(user.getDeptId());
- // List<SysUser> ls = sysUserService.selectList(" where dept_id=?", param.toArray());
- // teamUserVO.setTeamnum(ls==null?0:ls.size());
- // //临时用户人数
- // teamUserVO.setTempnum(esmUserInternalService.queryTempNum(user.getDeptId()));
- // }
- //一级人数
- StringBuffer whereStr = new StringBuffer();
- ArrayList<String> params = new ArrayList<String>();
- whereStr.append(" where recommenderid=? ");
- params.add(user.getId());
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStr.append("and exists (select 1 from esm_user_internal a where t.id=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- params.add(record.getStartdate());
- params.add(record.getEnddate());
- }
- List<EsmUserAgent> list = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
- JSONArray objects = JSONObject.parseArray(JSONObject.toJSONString(list));
- System.out.println("一级用户" + objects);
- double sum1 = 0;
- int outSingle1 = 0;
- if (list != null && list.size() > 0) {
- Map map = queryPrice(record, list);
- sum1 = (double) map.get("sum");
- outSingle1 = (int) map.get("OutSingle");
- }
- BigDecimal bs = new BigDecimal(sum1);
- double f = bs.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
- teamUserVO.setList1Premium(f);
- teamUserVO.setOutSingle1(outSingle1);
- teamUserVO.setLevel1num(list == null ? 0 : list.size());
- //二级人数
- List<EsmUserAgent> list2 = new ArrayList<>();
- double sum2 = 0;
- int outSingle2 = 0;
- List<EsmUserAgent> ls = null;
- for (EsmUserAgent agent : list) {
- whereStr = new StringBuffer();
- params = new ArrayList<String>();
- whereStr.append(" where recommenderid=? ");
- params.add(agent.getId());
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStr.append("and exists (select 1 from esm_user_internal a where t.id=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- params.add(record.getStartdate());
- params.add(record.getEnddate());
- }
- ls = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
- list2.addAll(ls);
- }
- if (list2 != null && list2.size() > 0) {
- Map map = queryPrice(record, list2);
- sum2 = (double) map.get("sum");
- outSingle2 = (int) map.get("OutSingle");
- }
- JSONArray objects1 = JSONObject.parseArray(JSONObject.toJSONString(list2));
- BigDecimal b = new BigDecimal(sum2);
- double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
- System.out.println("二级用户" + objects1);
- teamUserVO.setLevel2num(list2.size());
- teamUserVO.setList2Premium(f1);
- teamUserVO.setOutSingle2(outSingle2);
- double sum3 = 0;
- int outSingle3 = 0;
- //三级人数
- List<EsmUserAgent> list3 = new ArrayList<>();
- for (EsmUserAgent agent : list2) {
- whereStr = new StringBuffer();
- params = new ArrayList<String>();
- whereStr.append(" where recommenderid=? ");
- params.add(agent.getId());
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStr.append("and exists (select 1 from esm_user_internal a where t.id=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- params.add(record.getStartdate());
- params.add(record.getEnddate());
- }
- ls = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
- list3.addAll(ls);
- }
- JSONArray objects3 = JSONObject.parseArray(JSONObject.toJSONString(list3));
- System.out.println("三级用户" + objects3);
- if (list3 != null && list3.size() > 0) {
- Map map = queryPrice(record, list3);
- sum3 = (double) map.get("sum");
- outSingle3 = (int) map.get("OutSingle");
- }
- BigDecimal bs3 = new BigDecimal(sum3);
- double f3 = bs3.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
- teamUserVO.setLevel3num(list3.size());
- teamUserVO.setList3Premium(f3);
- teamUserVO.setOutSingle3(outSingle3);
- //临时用户:推荐的未生效人员
- List<String> lss = esmUserInternalService.queryTeamUser(user.getId());
- teamUserVO.setTempnum(lss == null ? 0 : lss.size());
- int teamnum = teamUserVO.getLevel1num() + teamUserVO.getLevel2num() + teamUserVO.getLevel3num() + teamUserVO.getTempnum();
- teamUserVO.setTeamnum(teamnum);
- BigDecimal countPre = new BigDecimal(teamUserVO.getList1Premium() + teamUserVO.getList2Premium() + teamUserVO.getList3Premium());
- double countPremium = countPre.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
- teamUserVO.setCountPremium(countPremium);
- teamUserVO.setCountSingle(teamUserVO.getOutSingle1() + teamUserVO.getOutSingle2() + teamUserVO.getOutSingle3());
- teamList.add(teamUserVO);
- }
- return HttpResult.ok(teamList);
- }
- /**
- * 通过工号查询该人员所有下级人员信息(一级、二级、三级、临时团队)
- *
- * @param record
- * @return
- */
- @PostMapping("/queryTeamUser")
- public HttpResult queryTeamUser(@RequestBody TeamUserQryVO record) {
- List<VoEsmUserInternal> level1List = new ArrayList<VoEsmUserInternal>();
- List<VoEsmUserInternal> level2List = new ArrayList<VoEsmUserInternal>();
- List<VoEsmUserInternal> level3List = new ArrayList<VoEsmUserInternal>();
- List<VoEsmUserInternalCheck> tempList = new ArrayList<VoEsmUserInternalCheck>();
- SysUser user = sysUserService.selectByPk(record.getId());
- //一级人数
- // List<EsmUserAgent> list = esmUserAgentService.selectList(" where recommenderid=?",new Object[]{id});
- StringBuffer whereStr = new StringBuffer();
- ArrayList<String> params = new ArrayList<String>();
- whereStr.append(" where recommenderid=? ");
- params.add(user.getId());
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStr.append("and exists (select 1 from esm_user_internal a where t.id=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- params.add(record.getStartdate());
- params.add(record.getEnddate());
- }
- List<EsmUserAgent> list = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
- //二级人数
- List<EsmUserAgent> list2 = new ArrayList<>();
- for (EsmUserAgent agent : list) {
- // level1List.add(findUserById(agent.getId()));
- level1List.add(findUserBy(agent.getId(), record, list));
- whereStr = new StringBuffer();
- params = new ArrayList<String>();
- whereStr.append(" where recommenderid=? ");
- params.add(agent.getId());
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStr.append("and exists (select 1 from esm_user_internal a where t.id=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- params.add(record.getStartdate());
- params.add(record.getEnddate());
- }
- List<EsmUserAgent> ls = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
- // List<EsmUserAgent> ls = esmUserAgentService.selectList(" where recommenderid=?",new Object[]{agent.getId()});
- list2.addAll(ls);
- }
- //三级人数
- List<EsmUserAgent> list3 = new ArrayList<>();
- for (EsmUserAgent agent : list2) {
- // level2List.add(findUserById(agent.getId()));
- level2List.add(findUserBy(agent.getId(), record, list2));
- whereStr = new StringBuffer();
- params = new ArrayList<String>();
- whereStr.append(" where recommenderid=? ");
- params.add(agent.getId());
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStr.append("and exists (select 1 from esm_user_internal a where t.id=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- params.add(record.getStartdate());
- params.add(record.getEnddate());
- }
- List<EsmUserAgent> ls = esmUserAgentService.selectList(whereStr.toString(), params.toArray());
- // List<EsmUserAgent> ls = esmUserAgentService.selectList(" where recommenderid=?",new Object[]{agent.getId()});
- list3.addAll(ls);
- }
- //三级人员信息
- for (EsmUserAgent agent : list3) {
- // level3List.add(findUserById(agent.getId()));
- level3List.add(findUserBy(agent.getId(), record, list3));
- }
- //临时用户:推荐的未生效人员
- List<String> ls = esmUserInternalService.queryTeamUser(record.getId());
- for (String userId : ls) {
- SysUserCheck sysUser = sysUserCheckService.selectByPk(userId);
- if (sysUser != null) {
- sysUser.setPassword("");
- sysUser.setSalt("");
- }
- EsmUserInternalCheck esmUserInternal = esmUserInternalCheckService.selectByPk(userId);
- EsmUserAgentCheck esmUserAgent = esmUserAgentCheckService.selectByPk(userId);
- VoEsmUserInternalCheck voEsmUserInternal = new VoEsmUserInternalCheck();
- voEsmUserInternal.setSysUser(sysUser);
- voEsmUserInternal.setEsmUserInternal(esmUserInternal);
- voEsmUserInternal.setEsmUserAgent(esmUserAgent);
- tempList.add(voEsmUserInternal);
- }
- Map map = new HashMap<>();
- map.put("level1", level1List);
- map.put("level2", level2List);
- map.put("level3", level3List);
- map.put("temp", tempList);
- return HttpResult.ok(map);
- }
- /**
- * 根据主键查询
- *
- * @param id
- * @return
- */
- @GetMapping(value = "/findById")
- public HttpResult findById(@RequestParam String id) {
- VoEsmUserInternal voEsmUserInternal = findUserById(id);
- return HttpResult.ok(voEsmUserInternal);
- }
- public VoEsmUserInternal findUserById(String id) {
- SysUser sysUser = sysUserService.selectByPk(id);
- sysUser.setPassword("");
- sysUser.setSalt("");
- EsmUserInternal esmUserInternal = esmUserInternalService.selectByPk(id);
- EsmUserAgent esmUserAgent = esmUserAgentService.selectByPk(id);
- VoEsmUserInternal voEsmUserInternal = new VoEsmUserInternal();
- voEsmUserInternal.setSysUser(sysUser);
- voEsmUserInternal.setEsmUserInternal(esmUserInternal);
- voEsmUserInternal.setEsmUserAgent(esmUserAgent);
- return voEsmUserInternal;
- }
- public Map queryPrice(TeamUserQryVO record, List<EsmUserAgent> list) {
- Map map = new HashMap();
- List<InsOrder> orderList = null;
- double sum = 0;
- int count = 0;
- if (list != null && list.size() > 0) {
- for (int i = 0; i < list.size(); i++) {
- StringBuffer whereStrs = new StringBuffer();
- ArrayList<String> param = new ArrayList<String>();
- whereStrs = new StringBuffer();
- param = new ArrayList<String>();
- whereStrs.append(" where orderstatus=7 ");
- whereStrs.append(" and userid=? ");
- param.add(list.get(i).getId());
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStrs.append("and exists (select 1 from esm_user_internal a where t.userid=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- param.add(record.getStartdate());
- param.add(record.getEnddate());
- }
- orderList = insOrderService.selectList(whereStrs.toString(), param.toArray());
- if (orderList != null && orderList.size() > 0) {
- count = count + 1;
- for (int j = 0; j < orderList.size(); j++) {
- double sumpremium = orderList.get(j).getSumpremium();
- double taxamount = orderList.get(j).getTaxamount();
- if (sumpremium > 0) {
- sum = sum + sumpremium - taxamount;
- }
- }
- System.out.println("大小" + orderList.size());
- }
- }
- }
- map.put("OutSingle", count);
- map.put("sum", sum);
- System.out.println("总共===" + count);
- return map;
- }
- private TeamUserCountPriceVO queryBillPrice(TeamUserQryVO record, String id) {
- Map map = new HashMap();
- List<InsOrder> orderList = null;
- int count = 0;
- TeamUserCountPriceVO teamUserCountPriceVO = new TeamUserCountPriceVO();
- List listteam = new ArrayList();
- StringBuffer whereStrs = new StringBuffer();
- ArrayList<String> param = new ArrayList<String>();
- whereStrs = new StringBuffer();
- param = new ArrayList<String>();
- whereStrs.append(" where orderstatus=7 ");
- whereStrs.append(" and userid=? ");
- param.add(id);
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStrs.append("and exists (select 1 from esm_user_internal a where t.userid=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- param.add(record.getStartdate());
- param.add(record.getEnddate());
- }
- //查询签单保费
- orderList = insOrderService.selectList(whereStrs.toString(), param.toArray());
- if (orderList != null && orderList.size() > 0) {
- double sum = 0;
- whereStrs = new StringBuffer();
- param = new ArrayList<String>();
- whereStrs.append(" where orderstatus=7 ");
- whereStrs.append(" and userid=? ");
- param.add(id);
- if (!StringUtils.isNullOrEmpty(record.getStartdate()) && !StringUtils.isNullOrEmpty(record.getEnddate())) {
- whereStrs.append("and exists (select 1 from esm_user_internal a where t.userid=a.id and DATE_FORMAT(a.intime,'%Y-%m-%d') >= date ? and DATE_FORMAT(a.intime,'%Y-%m-%d') <= date ?)");
- param.add(record.getStartdate());
- param.add(record.getEnddate());
- }
- //查询出单笔数
- Integer count1 = insOrderService.count(whereStrs.toString(), param.toArray());
- whereStrs.replace(19, 20, "5");
- //查询核保笔数
- Integer underwriting = insOrderService.count(whereStrs.toString(), param.toArray());
- teamUserCountPriceVO.setId(id);
- teamUserCountPriceVO.setIssue(count1);
- teamUserCountPriceVO.setUnderwriting(underwriting);
- count = count + 1;
- for (int j = 0; j < orderList.size(); j++) {
- double sumpremium = orderList.get(j).getSumpremium();
- double taxamount = orderList.get(j).getTaxamount();
- if (sumpremium > 0) {
- sum = sum + sumpremium - taxamount;
- }
- }
- BigDecimal b = new BigDecimal(sum);
- double price = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
- teamUserCountPriceVO.setBillPrice(price);
- // listteam.add(teamUserCountPriceVO);
- System.out.println("大小" + orderList.size());
- }
- JSONArray objects3 = JSONObject.parseArray(JSONObject.toJSONString(listteam));
- System.out.println("listteam==================" + objects3);
- return teamUserCountPriceVO;
- }
- public VoEsmUserInternal findUserBy(String id, TeamUserQryVO record, List<EsmUserAgent> list) {
- SysUser sysUser = sysUserService.selectByPk(id);
- sysUser.setPassword("");
- sysUser.setSalt("");
- EsmUserInternal esmUserInternal = esmUserInternalService.selectByPk(id);
- EsmUserAgent esmUserAgent = esmUserAgentService.selectByPk(id);
- TeamUserCountPriceVO teamUserCountPriceVO = queryBillPrice(record, id);
- VoEsmUserInternal voEsmUserInternal = new VoEsmUserInternal();
- voEsmUserInternal.setSysUser(sysUser);
- voEsmUserInternal.setEsmUserInternal(esmUserInternal);
- voEsmUserInternal.setEsmUserAgent(esmUserAgent);
- voEsmUserInternal.setTeamUserCountPriceVO(teamUserCountPriceVO);
- return voEsmUserInternal;
- }
- }
|