flower_city/src/main/java/com/dg/core/controller/ClassifyAdministrationController.java
@@ -77,13 +77,14 @@ @Authorization public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum, @RequestParam(value = "pageSize",required = false) Integer pageSize, @RequestParam(value = "name",required = false) String name) @RequestParam(value = "name",required = false) String name, @RequestParam(value = "classifyGrade",required = false) String classifyGrade) { Assert.notNull(pageNum, "pageNum can not be empty"); Assert.notNull(pageSize, "pageSize can not be empty"); Page<ClassifyAdministration> pageParam = new Page<>(pageNum,pageSize); List<ClassifyAdministration> list = iClassifyAdministrationService.selectConfigList(pageParam,pageSize,name,""); int num=iClassifyAdministrationService.countNum(name,""); List<ClassifyAdministration> list = iClassifyAdministrationService.selectConfigList(pageParam,pageSize,name,classifyGrade); int num=iClassifyAdministrationService.countNum(name,classifyGrade); return getDataTable(list,num); } flower_city/src/main/java/com/dg/core/controller/ElseAccessoryController.java
@@ -41,13 +41,13 @@ @Authorization public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum, @RequestParam(value = "pageSize",required = false) Integer pageSize, @RequestParam(value = "Name",required = false) String Name, @RequestParam(value = "name",required = false) String name, @CurrentUser SysUser sysUser) { Page<ElseAccessoryEntity> pageParam = new Page<>(pageNum,pageSize); List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId()); List<ElseAccessoryEntity> list = iElseAccessoryService.selectConfigList(pageParam,pageSize,Name,ids); int num=iElseAccessoryService.countNum(Name,ids); List<ElseAccessoryEntity> list = iElseAccessoryService.selectConfigList(pageParam,pageSize,name,ids); int num=iElseAccessoryService.countNum(name,ids); return getDataTable(list,num); } flower_city/src/main/java/com/dg/core/controller/HomeStatisticsController.java
@@ -129,19 +129,19 @@ { // 好评率=评价为满意的导办工单数量/已办结状态工单数量 String goodReputationEfficiency=weekDf.format((float)(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,"1",null) /bj)); /(float)bj)); entity.setGoodReputationEfficiency(goodReputationEfficiency); // 解决率=已解决状态的导办工单数量/已办结状态工单数量 String resolveEfficiency=weekDf.format((float)(iGuideRepairOrderService.countStatisticsNum("7",null,null,null,null,null) /bj)); /(float)bj)); entity.setResolveEfficiency(resolveEfficiency); if(allNum!=0) { // 办结率=待评价+已办结状态的导办工单数量/总工单数量 String workEfficiency=weekDf.format((float)((iGuideRepairOrderService.countStatisticsNum("4",null,null,null,null,null) +bj)/allNum)); +bj)/(float)allNum)); entity.setWorkEfficiency(workEfficiency); } } @@ -152,7 +152,7 @@ // 超时办结率=超时状态下的待评价+已办结状态的导办工单数量/超时状态的导办工单数量 String timeoutEfficiency=weekDf.format((float)((iGuideRepairOrderService.countStatisticsNum("4",null,null,"2",null,null) +iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null)) /cs)); /(float)cs)); entity.setTimeoutEfficiency(timeoutEfficiency); } @@ -161,7 +161,7 @@ { // 回复率=最新进展里0条回复的导办工单数量/总工单数量 //状态(1待分配 2 待办结 3 已办结 4 待评价 5 已取消 6未解决 7已解决 8 系统自动分配 9 回复 10转派 11手动分配) String reversionRate=weekDf.format((float)(iGuideEvolveService.countStatisticsNum("9",null)/allNum)); String reversionRate=weekDf.format((float)(iGuideEvolveService.countStatisticsNum("9",null)/(float)allNum)); entity.setReversionRate(reversionRate); } flower_city/src/main/java/com/dg/core/controller/ReplyTemplateController.java
@@ -39,7 +39,7 @@ @Authorization public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum, @RequestParam(value = "pageSize",required = false) Integer pageSize, @RequestParam(value = "Name",required = false) String Name, @RequestParam(value = "name",required = false) String Name, @CurrentUser SysUser sysUser) { Page<ReplyTemplateEntity> pageParam = new Page<>(pageNum,pageSize); flower_city/src/main/java/com/dg/core/controller/UserController.java
@@ -4,11 +4,13 @@ import com.dg.core.HttpStatus; import com.dg.core.ResultData; import com.dg.core.annotation.Authorization; import com.dg.core.annotation.CurrentUser; import com.dg.core.db.gen.entity.HuaChengSysUser; import com.dg.core.db.gen.entity.SysUser; import com.dg.core.manager.TokenManager; import com.dg.core.service.IHuaChengSysUserService; import com.dg.core.util.SmsUtil; import com.dg.core.util.Snowflake; import com.dg.core.util.TableDataInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -173,9 +175,9 @@ Assert.notNull(pageNum, "pageNum can not be empty"); Assert.notNull(pageSize, "pageSize can not be empty"); Page<SysUser> pageParam = new Page<>(pageNum,pageSize); List<SysUser> list = IUserService.selectConfigList(pageParam,pageSize,"1"); List<SysUser> list = IUserService.selectConfigList(pageParam,pageSize,"3"); int num=IUserService.selectNum("1"); int num=IUserService.selectNum("3"); return getDataTable(list,num); } @@ -189,7 +191,7 @@ @ApiOperation("新增用户接口") @PostMapping("/add") @Authorization public ResultData insertConfig(@RequestBody SysUser config) public ResultData insertConfig(@RequestBody SysUser config, @CurrentUser SysUser sysUser) { Assert.notNull(config, "parameter can not be empty"); @@ -208,12 +210,20 @@ return error("昵称不能为空"); } SysUser user = IUserService.getUserByAccount(config.getLoginName()); if(StringUtils.isEmpty(config.getPhonenumber())) { return error("手机号不能为空"); } SysUser user = IUserService.selectData("",config.getPhonenumber()); if (user != null) { //提示用户名或密码错误 return error("该账户已存在!"); } config.setCreateBy(sysUser.getUserId()+""); config.setUserId(Snowflake.getId()); config.setUserType("3"); config.setCreateTime(LocalDateTime.now()); @@ -231,11 +241,11 @@ @ApiOperation("修改用户接口") @PostMapping("/update") @Authorization public ResultData updateConfig(@RequestBody SysUser config) public ResultData updateConfig(@RequestBody SysUser config,@CurrentUser SysUser sys) { if(config.getUserId()==null) if(config.getId()==null) { return error("userId不能为空"); return error("Id不能为空"); } if(StringUtils.isEmpty(config.getLoginName())) @@ -244,6 +254,8 @@ } config.setUserType("3"); config.setUpdateBy(sys.getUserId()+""); return toAjax(IUserService.updateConfig(config)); } @@ -321,6 +333,8 @@ return error("输入密码与原密码不能相同!"); } return toAjax(IUserService.updateConfig(config)); } flower_city/src/main/java/com/dg/core/db/gen/entity/SysUser.java
@@ -253,5 +253,10 @@ private String roleName; @TableField(exist = false) @ApiModelProperty("创建人名称") private String createName; } flower_city/src/main/java/com/dg/core/db/gen/entity/TransactionEvent.java
@@ -247,6 +247,15 @@ private String commonProblemName; @ApiModelProperty("办理区域") private String transactionArea; @ApiModelProperty("办理区域url") private String transactionAreaUrl; @ApiModelProperty("办理区域文件名称") private String transactionAreaName; @TableField(exist = false) @ApiModelProperty(name = "sumTransactionNum", value = "导办服务数量") @@ -268,6 +277,7 @@ @ApiModelProperty(name = "operationalGuidelineName", value = "操作指南名称") private String operationalGuidelineName; @ApiModelProperty(name = "classifyIds", value = "前端使用") private String classifyIds; } flower_city/src/main/java/com/dg/core/service/ISysUserService.java
@@ -78,6 +78,7 @@ */ ResultData loginByPhonenumber(String phonenumber); /** * 查询用户列表(不分页) * @param userType 用户类型 flower_city/src/main/resources/mapper/ClassifyAdministrationMapper.xml
@@ -50,7 +50,9 @@ <if test="departmentId!=null"> and id in ( select classify_id from automessage_transaction_event where department_id=#{departmentId} UNION select parent_id from automessage_classify_administration where id in (select classify_id FROM automessage_transaction_event where department_id=#{departmentId}) ) select parent_id from automessage_classify_administration where id in (select classify_id FROM automessage_transaction_event where department_id=#{departmentId})) </if> </where> </select> @@ -104,9 +106,6 @@ </where> </select> <select id="selectParent" resultType="string"> select id from automessage_classify_administration <where> @@ -124,8 +123,5 @@ </if> </where> </select> </mapper> flower_city/src/main/resources/mapper/ReplyTemplateMapper.xml
@@ -50,7 +50,7 @@ <include refid="selectReplyTemplateVo"/> <where> <if test="Name != null and Name != ''"> AND name=#{Name} AND automessage_reply_template.name like concat('%', #{Name}, '%') </if> <if test="ids != null"> and department_id IN flower_city/src/main/resources/mapper/SysUserMapper.xml
@@ -72,6 +72,7 @@ transaction_ids, transaction_names, openid, (select user_name from automessage_sys_user where automessage_sys_user.user_id=create_by) as createName, transaction_num, (select role_name from automessage_role_management where automessage_role_management.id=role_ids) as roleName, (select permission from automessage_role_management where automessage_role_management.id=role_ids) as permission, @@ -264,7 +265,7 @@ <if test="openid != null and openid != '' ">,openid=#{openid}</if> ,update_time=sysdate() </set> where id= #{id} where user_id= #{userId} </update> <delete id="deleteConfigById" parameterType="string"> flower_city/src/main/resources/mapper/TransactionEventMapper.xml
@@ -44,6 +44,10 @@ <id property="commonProblemName" column="common_problem_name" /> <id property="operationalGuidelineVideoName" column="operational_guideline_video_name" /> <id property="operationalGuidelineName" column="operational_guideline_name" /> <id property="transactionArea" column="transaction_area" /> <id property="transactionAreaUrl" column="transaction_area_url" /> <id property="transactionAreaName" column="transaction_area_name" /> <id property="classifyIds" column="classify_ids" /> </resultMap> @@ -51,8 +55,14 @@ SELECT id, department_id, (select detailed_address from automessage_organization_chart where automessage_organization_chart.id=department_id) department_area, concat( IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select city from automessage_organization_chart where automessage_organization_chart.id=department_id)),''), IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select district from automessage_organization_chart where automessage_organization_chart.id=department_id)),''), IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select village from automessage_organization_chart where automessage_organization_chart.id=department_id)),'') ) AS department_area, (select contact_number from automessage_organization_chart where automessage_organization_chart.id=department_id) as contactNumber, classify_id, matter_name, @@ -88,6 +98,10 @@ operational_guideline_video_url, operational_guideline_video_name, operational_guideline_name, transaction_area, transaction_area_url, transaction_area_name, classify_ids, (IF((select classify_grade from automessage_classify_administration where automessage_classify_administration.id=automessage_transaction_event.classify_id)='2', (select classify_name from automessage_classify_administration where automessage_classify_administration.id=(select parent_id from automessage_classify_administration where automessage_classify_administration.id=automessage_transaction_event.classify_id)), @@ -193,6 +207,10 @@ <if test="commonProblemName != null and commonProblemName != '' ">common_problem_name,</if> <if test="operationalGuidelineVideoName != null and operationalGuidelineVideoName != '' ">operational_guideline_video_name,</if> <if test="operationalGuidelineName != null and operationalGuidelineName != '' ">operational_guideline_name,</if> <if test="transactionArea != null ">transaction_area,</if> <if test="transactionAreaUrl != null ">transaction_area_url,</if> <if test="transactionAreaName != null ">transaction_area_name,</if> <if test="classifyIds != null ">classify_ids,</if> update_time, create_time )values( @@ -231,6 +249,10 @@ <if test="commonProblemName != null and commonProblemName != '' ">#{commonProblemName},</if> <if test="operationalGuidelineVideoName != null and operationalGuidelineVideoName != '' ">#{operationalGuidelineVideoName},</if> <if test="operationalGuidelineName != null and operationalGuidelineName != '' ">#{operationalGuidelineName},</if> <if test="transactionArea != null ">#{transactionArea},</if> <if test="transactionAreaUrl != null ">#{transactionAreaUrl},</if> <if test="transactionAreaName != null ">#{transactionAreaName},</if> <if test="classifyIds != null ">#{classifyIds},</if> sysdate(), sysdate() ) @@ -274,6 +296,10 @@ <if test="operationalGuidelineVideoUrl != null ">operational_guideline_video_url=#{operationalGuidelineVideoUrl},</if> <if test="operationalGuidelineVideoName != null and operationalGuidelineVideoName != '' ">operational_guideline_video_name=#{operationalGuidelineVideoName},</if> <if test="operationalGuidelineName != null and operationalGuidelineName != '' ">operational_guideline_name=#{operationalGuidelineName},</if> <if test="transactionArea != null ">transaction_area=#{transactionArea},</if> <if test="transactionAreaUrl != null ">transaction_area_url=#{transactionAreaUrl},</if> <if test="transactionAreaName != null ">transaction_area_name=#{transactionAreaName},</if> <if test="classifyIds != null ">classify_ids=#{classifyIds},</if> update_time=sysdate() </set> where id= #{id} springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/Constants.java
@@ -252,6 +252,10 @@ public static final String QUERY="query"; public static final String DELETE="delete"; public static final String VILLAGE="村"; /** * 超管街道id * */ public static final Integer ADMIN_STREET_ID=999999999; /** * 天府通办解密私钥 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/EventRateVO.java
@@ -15,5 +15,6 @@ private BigDecimal rate; @ApiModelProperty("数量") private Integer count; private Integer currentProcessType; private Integer type; } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventController.java
@@ -316,8 +316,7 @@ @ApiOperation("事件各种状态(处理状态1待处理2待验证3专家已受理4专家未受理,拒绝5调解中6已结案归档7调解取消8 已删除)数据统计") @GetMapping("/status/calculate") public R calculate() { comEventService.calculate(getLoginUserInfo()); return R.ok(); return R.ok(comEventService.calculate(getLoginUserInfo())); } /** @@ -337,4 +336,22 @@ public R eventIndexData(@RequestParam Integer type) { return comEventService.eventIndexData(type); } /** *可选街道列表 * */ @GetMapping("/streetList") public R getStreetId(){ return comEventService.listStreetScreen(); } /** *可选社区列表 * */ @GetMapping("/communityList") public R getCommunityList(){ return comEventService.listCommunityScreen(); } } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoExpertApi.java
@@ -155,6 +155,14 @@ return R.fail(); } /** * 导入专家信息 * */ @PostMapping("/importExpert") public R importExpert(){ return R.ok(); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComEventMapper.java
@@ -51,9 +51,9 @@ */ List<ComEvent> listByComEvent(@Param("comEvent") ComEvent comEvent,@Param("requestUserId") Long requestUserId); List<ComEventCalculateVO> calculate(ComEvent comEvent); List<ComEventCalculateVO> calculate(@Param("comEvent") ComEvent comEvent); int caculateSum(ComEvent comEvent); int caculateSum(@Param("comEvent")ComEvent comEvent); /** * 大屏事件统计 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComEventTransferRecord.java
@@ -78,7 +78,7 @@ private Integer processType; /**创建时间*/ @ApiModelProperty(name = "createAt", value = "创建时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private Date createAt; /**选择调解专家ID*/ @ApiModelProperty(name = "specialistId", value = "选择调解专家ID") springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/IComEventService.java
@@ -102,4 +102,8 @@ * 修改流转记录状态 * */ void updateEventStransferRecord(Long id); R listStreetScreen(); R listCommunityScreen(); } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java
@@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.panzhihua.common.constants.Constants; import com.panzhihua.common.constants.ReturnMsgConstants; import com.panzhihua.common.enums.SanShuoEventStatusEnum; import com.panzhihua.common.model.dtos.community.sanshuo.IndexDateDTO; @@ -84,7 +85,6 @@ @Override public R pageByComEvent(ComEvent comEvent, Page pagination,LoginUserInfoVO loginUserInfoVO) { log.info("=================当前登陆的用户信息,用户类型"+loginUserInfoVO.getType()+"社区id"+loginUserInfoVO.getCommunityId()); Boolean isExpertCheck=false; Long expertId=null; Boolean isStretAccount = isStreetAccount(loginUserInfoVO); @@ -127,14 +127,12 @@ comEvent.setCommunityIds(cids); } } // if (nonNull(loginUserInfoVO.getAccount())){ // if (loginUserInfoVO.getAccount().equals("admin")){ // comEvent.setUserType(null); // } // } if (nonNull(loginUserInfoVO.getAccount())){ if (loginUserInfoVO.getAccount().equals("admin")){ comEvent.setUserType(9); } } IPage<ComEvent> list=null; log.info("=====================当前的userType"+comEvent.getUserType()); log.info("=====================是否专家账号查看"+isExpertCheck); //是否为专家查看自己发布的事件 if (isExpertCheck && comEvent.getUserType()!=1){ if (nonNull(comEventMapper.listEventIds(expertId))){ @@ -143,7 +141,6 @@ }else{ list = baseMapper.pageByComEvent(comEvent, pagination); } if (list.getRecords().size() < 1) { return R.ok(Collections.emptyList()); } @@ -157,10 +154,8 @@ ComMediateType category = commediateTypeService.getById(comEvent1.getEventCategory()); comEvent1.setEventCategoryName(category.getName()); comEvent1.setHasPerm(hasPermission(comEvent1,loginUserInfoVO )); if (!comEvent.getUserType().equals(1)){ this.accountMenu(comEvent1,comEvent.getUserType(),loginUserInfoVO,isStretAccount); } }); this.accountMenu(comEvent1,comEvent.getUserType(),loginUserInfoVO,isStretAccount); }); return R.ok(list); } @@ -186,7 +181,7 @@ public void accountMenu(ComEvent comEvent,Integer userType,LoginUserInfoVO loginUserInfoVO,Boolean isStreet){ //四个账号级别 Boolean isAdmin=false; if (isNull(userType)){ if (userType.equals(9)){ isAdmin=true; } comEvent.setDelete(1); @@ -222,12 +217,13 @@ comEvent.setSolve(0); return; }//未上报,根据状态决定权限 if (comEvent.getEventProcessStatus().equals(1) || comEvent.getEventProcessStatus().equals(2)){ if (comEvent.getEventProcessStatus().equals(1)){ //待受理和待验证状态,仅有查看和受理权限,可能为用户选择该专家或上级单位分配给该专家 //关闭调解和归档 comEvent.setArchive(0); comEvent.setConciliation(0); } else if (comEvent.getEventProcessStatus().equals(5)){ } else if (comEvent.getEventProcessStatus().equals(5)){ //调解中,可以查看,调解 comEvent.setArchive(0); comEvent.setSolve(0); @@ -246,13 +242,23 @@ //如果未上报到街道,当前事件权限和专家一样 if (comEvent.getCurrentProcessType().equals(5)){ //根据事件状态决定权限 if (comEvent.getEventProcessStatus().equals(1) || comEvent.getEventProcessStatus().equals(2)){ if (comEvent.getEventProcessStatus().equals(1) ){ //待受理和待验证状态,可以受理,分配专家 //关闭调解和归档 comEvent.setArchive(0); comEvent.setConciliation(0); comEvent.setChangeExpert(0); } else if (comEvent.getEventProcessStatus().equals(5)){ } else if(comEvent.getEventProcessStatus().equals(2)){ //待分配和待验证状态,可以受理,分配专家 //关闭调解和归档 comEvent.setArchive(0); comEvent.setConciliation(0); comEvent.setChangeExpert(0); if (comEvent.getSpecialistName().equals("待分配")){ comEvent.setSolve(0); } } else if (comEvent.getEventProcessStatus().equals(5)){ //调解中,可以查看,调解,更换专家,删除 comEvent.setDistribution(0); comEvent.setSolve(0); @@ -323,13 +329,22 @@ }else if (userType.equals(3)){ //分配行业分中心操作权限 //是否上报到行业分中心 if (comEvent.getReportCenter().equals(1) || comEvent.getCurrentProcessType().equals(1)){ if (comEvent.getCurrentProcessType().equals(1)){ //已经报到行业分中心 if (comEvent.getEventProcessStatus().equals(1) || comEvent.getEventProcessStatus().equals(2)){ if (comEvent.getEventProcessStatus().equals(1) ){ //待受理和待验证状态,可以受理,分配专家 //关闭调解和归档 comEvent.setArchive(0); comEvent.setConciliation(0); }else if(comEvent.getEventProcessStatus().equals(2)){ //待分配和待验证状态,可以受理,分配专家 //关闭调解和归档 comEvent.setArchive(0); comEvent.setConciliation(0); comEvent.setChangeExpert(0); if (comEvent.getSpecialistName().equals("待分配")){ comEvent.setSolve(0); } } else if (comEvent.getEventProcessStatus().equals(3)){ //分配新专家后 @@ -367,9 +382,9 @@ }else if (userType.equals(5) || isStreet){ //街道权限,操作街道下属社区的所有事件 //是否上报到街道 if (comEvent.getReportStreet().equals(1) || comEvent.getCurrentProcessType().equals(3)){ if (comEvent.getCurrentProcessType().equals(3)){ //已上报到街道 if (comEvent.getEventProcessStatus().equals(1) || comEvent.getEventProcessStatus().equals(2)){ if (comEvent.getEventProcessStatus().equals(1) ){ //待受理和待验证状态,可以受理,分配专家 //关闭调解和归档 comEvent.setArchive(0); @@ -377,7 +392,16 @@ comEvent.setChangeExpert(0); //comEvent.setDistribution(0); comEvent.setSolve(0); } else if (comEvent.getEventProcessStatus().equals(5)){ } else if(comEvent.getEventProcessStatus().equals(2)){ //待分配和待验证状态,可以受理,分配专家 //关闭调解和归档 comEvent.setArchive(0); comEvent.setConciliation(0); comEvent.setChangeExpert(0); if (comEvent.getSpecialistName().equals("待分配")){ comEvent.setSolve(0); } }else if (comEvent.getEventProcessStatus().equals(5)){ //调解中,可以查看,调解,更换专家,删除 comEvent.setDistribution(0); comEvent.setArchive(0); @@ -410,8 +434,14 @@ comEvent.setChangeExpert(0); comEvent.setConciliation(0); } }else{ }else if (comEvent.getCurrentProcessType().equals(4)){ //未上报到街道,仅查看 comEvent.setSolve(0); comEvent.setDistribution(0); comEvent.setChangeExpert(0); comEvent.setConciliation(0); }else { comEvent.setArchive(0); comEvent.setSolve(0); comEvent.setDistribution(0); @@ -423,14 +453,24 @@ // 是否上报到三说会堂 if (comEvent.getCurrentProcessType().equals(4) || comEvent.getReportHall().equals(1)){ //已上报到三说会堂,可以操作 if (comEvent.getEventProcessStatus().equals(1) || comEvent.getEventProcessStatus().equals(2)){ if (comEvent.getEventProcessStatus().equals(1)){ //待受理和待验证状态,可以受理,分配专家 //关闭调解和归档 comEvent.setArchive(0); comEvent.setSolve(0); comEvent.setConciliation(0); comEvent.setChangeExpert(0); } else if (comEvent.getEventProcessStatus().equals(3)){ } else if(comEvent.getEventProcessStatus().equals(2)){ //待分配和待验证状态,可以受理,分配专家 //关闭调解和归档 comEvent.setArchive(0); comEvent.setConciliation(0); comEvent.setChangeExpert(0); if (comEvent.getSpecialistName().equals("待分配")){ comEvent.setSolve(0); } }else if (comEvent.getEventProcessStatus().equals(3)){ //新分配给专家并且专家还未受理 comEvent.setDistribution(0); comEvent.setArchive(0); @@ -811,26 +851,24 @@ @Override public R calculate(LoginUserInfoVO loginUserInfoVO) { ComEvent comEvent=new ComEvent(); comEvent.setUserType(3); Boolean isExpertCheck=false; Long expertId=null; Boolean isStretAccount = isStreetAccount(loginUserInfoVO); if (nonNull(comEvent.getUserType())){ if (loginUserInfoVO.getType().equals(13) || loginUserInfoVO.getType().equals(11)){ if (loginUserInfoVO.getType().equals(13) || loginUserInfoVO.getType().equals(11)){ ComSanshuoExpert expert=new ComSanshuoExpert(); //专家账号权限(后台) if (nonNull(loginUserInfoVO.getPhone())){ //专家后台账号 if (nonNull(loginUserInfoVO.getPhone())){ expert = comSanShuoExpertService.getOne(new QueryWrapper<ComSanshuoExpert>().lambda().eq(ComSanshuoExpert::getPhone, loginUserInfoVO.getPhone())); }else{ }else{ //账号获取 expert = comSanShuoExpertService.getOne(new QueryWrapper<ComSanshuoExpert>().lambda().eq(ComSanshuoExpert::getAccount, loginUserInfoVO.getAccount())); } comEvent.setUserType(2); if (nonNull(expert)){ } comEvent.setUserType(2); if (nonNull(expert)){ comEvent.setSpecialistId(expert.getId()); isExpertCheck=true; expertId=expert.getId(); } } }else if (loginUserInfoVO.getType().equals(12)){ //行业分中心权限 comEvent.setUserType(3); @@ -849,18 +887,17 @@ List<Long> cids = comActDAO.selectCommunityByStreetId(loginUserInfoVO.getStreetId()); comEvent.setUserType(5); comEvent.setCommunityIds(cids); } } if (isExpertCheck && comEvent.getUserType()!=1){ if (nonNull(comEventMapper.listEventIds(expertId))){ } if (isExpertCheck){ if(nonNull(comEventMapper.listEventIds(expertId))){ List<Long> eventIds = comEventMapper.listEventIds(expertId); //获取该专家的所有事件 comEvent.setEventIds(eventIds); } } if (nonNull(loginUserInfoVO.getAccount())){ if (loginUserInfoVO.getAccount().equals("admin")){ comEvent.setUserType(null); comEvent.setUserType(9); } } List<ComEventCalculateVO> calculateList = baseMapper.calculate(comEvent); @@ -940,13 +977,13 @@ @Override public R eventIndexData(Integer type) { //获取事件总数 Integer eventCount = comEventMapper.selectCount(new QueryWrapper<ComEvent>().notIn("event_process_status", (7), (8))); Integer eventCount = comEventMapper.selectCount(new QueryWrapper<ComEvent>().notIn("event_process_status",(9))); if (type.equals(1)){ //受理级别占比 List<EventRateVO> eventRateVOS = comEventMapper.eventRate(); for (EventRateVO eventRateVO : eventRateVOS) { if (nonNull(eventRateVO)){ eventRateVO.setName(typeToName(eventRateVO.getType())); eventRateVO.setName(typeToName(eventRateVO.getCurrentProcessType())); if (nonNull(eventCount) && !eventCount.equals(0)){ //计算占比 eventRateVO.setRate(NumberUtil.div(eventRateVO.getCount(),eventCount,2)); @@ -988,16 +1025,28 @@ comEventMapper.updateLog(id,comEvent.getSpecialistId()); } @Override public R listStreetScreen() { return R.ok(comStreetDAO.selectList(new QueryWrapper<ComStreetDO>().eq("app_id", "wx0cef797390444b75"))); } @Override public R listCommunityScreen() { return null; } public String typeToName(Integer type){ switch (type){ case 1: return "行业分中心受理"; case 2: return "街道调解站受理"; case 3: return "街道调解站受理"; case 2: return "社区调解站受理"; case 4: return "区三说会堂受理"; case 5: return "专家受理"; } return null; } springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComEventMapper.xml
@@ -162,17 +162,16 @@ from com_sanshuo_event_info <where> event_process_status not in (9) <if test="comEvent.eventIds != null"> AND id in <foreach collection="comEvent.eventIds" item="id" separator="," open="(" close=")"> #{id} </foreach> </if> <if test="comEvent.userType == 1"> AND request_user_id=#{comEvent.requestUserId} </if> <if test="comEvent.userType == 2"> AND specialist_id=#{comEvent.specialistId} <if test="comEvent.eventIds != null"> AND id in <foreach collection="comEvent.eventIds" item="id" separator="," open="(" close=")"> #{id} </foreach> </if> </if> <if test="comEvent.userType == 3"> AND center_id=#{comEvent.centerId} @@ -194,17 +193,17 @@ from com_sanshuo_event_info <where> event_process_status not in (9) <if test="comEvent.eventIds != null"> AND id in <foreach collection="comEvent.eventIds" item="id" separator="," open="(" close=")"> #{id} </foreach> </if> <if test="comEvent.userType == 1"> AND request_user_id=#{comEvent.requestUserId} </if> <if test="comEvent.userType == 2"> AND specialist_id=#{comEvent.specialistId} <if test="comEvent.eventIds != null"> AND id in <foreach collection="comEvent.eventIds" item="id" separator="," open="(" close=")"> #{id} </foreach> </if> </if> <if test="comEvent.userType == 3"> AND center_id=#{comEvent.centerId} @@ -226,292 +225,288 @@ where event_process_status in (3,5,6) AND user_event_status not in(3,4) <if test="dto.type == 2"> AND type=1 AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND type=4 AND current_process_type=4 </if> ) as accept, (SELECT count(id) FROM com_sanshuo_event_info where event_process_status = 5 AND user_event_status not in(3,4) <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type == 2"> AND type=1 AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if>) as accepting, (SELECT count(id) FROM com_sanshuo_event_info where event_process_status = 6 AND user_event_status not in(3) <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type == 2"> AND type=1 AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if>) as accepted, (SELECT count(id) FROM com_sanshuo_event_info where event_process_status in (6,7) AND user_event_status not in(3,4) <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type == 2"> AND type=1 AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if>) as expirences, (select count(id) FROM com_sanshuo_event_info where event_result=1 AND user_event_status not in(3,4) <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type == 2"> AND type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if>) as success, (select count(id) FROM com_sanshuo_event_info where event_result=2 AND user_event_status not in(3,4) <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type == 2"> AND type=1 AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if>) as success, (select count(id) FROM com_sanshuo_event_info where event_result=1 AND user_event_status not in(3,4) <if test="dto.type == 2"> AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if>) as fail, (select count(id) from com_sanshuo_expert where `status`=1 and del_flag=1 AND user_event_status not in(3,4) <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type == 2"> AND type=1 AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if>) as expert, (select count(id) from com_sanshuo_event_info WHERE create_at BETWEEN DATE_FORMAT(#{beginDate}, '%Y-%m-%d 00:00:00') AND DATE_FORMAT(#{endDate}, '%Y-%m-%d 23:59:59') AND event_process_status not in (8) <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type == 2"> AND type=1 AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if>) as monthIncrease, (select count(id) from com_sanshuo_event_info WHERE create_at BETWEEN DATE_FORMAT(#{beginDate}, '%Y-%m-%d 00:00:00') AND DATE_FORMAT(#{endDate}, '%Y-%m-%d 23:59:59') AND event_process_status not in (8) AND event_process_status = 6 <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type == 2"> AND type=1 AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if>) as monthFinish FROM com_sanshuo_event_info limit 1 </select> <select id="dateAnalysisY" resultType="java.lang.Integer"> SELECT COUNT(id) FROM com_sanshuo_event_info WHERE create_at BETWEEN DATE_FORMAT(#{beginDate}, '%Y-%m-%d 00:00:00') AND DATE_FORMAT(#{endDate}, '%Y-%m-%d 23:59:59') <if test="dto.type != null"> <if test="dto.type == 1"> AND type=4 <if test="dto.type == 2"> AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> <if test="dto.type==2"> AND type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> <if test="dto.type == 3"> AND type=2 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> <if test="dto.type == 4"> AND type=3 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if> </select> <select id="dateAnalysisYTwo" resultType="java.lang.Integer"> SELECT COUNT(id) FROM com_sanshuo_event_info WHERE create_at BETWEEN DATE_FORMAT(#{beginDate}, '%Y-%m-%d 00:00:00') AND DATE_FORMAT(#{endDate}, '%Y-%m-%d 23:59:59') AND event_process_status=6 <if test="dto.type != null"> <if test="dto.type == 1"> AND type=4 </if> <if test="dto.type==2"> AND type=1 <if test="dto.type == 2"> AND current_process_type=1 <if test="dto.id != null"> AND center_id=#{dto.id} </if> </if> <if test="dto.type == 3"> AND type=2 AND current_process_type=3 <if test="dto.id != null"> AND request_user_community in (select com_act.community_id from com_act where street_id=#{dto.id}) </if> </if> <if test="dto.type == 4"> AND type=3 AND current_process_type=2 OR current_process_type=5 <if test="dto.id != null"> AND request_user_community=#{dto.id} </if> </if> <if test="dto.type == 1"> AND current_process_type=4 </if> </select> <select id="eventRate" resultType="com.panzhihua.common.model.vos.sanshuo.EventRateVO"> select count(id) as count,type from com_sanshuo_event_info where event_process_status not in(7.8) group by type select count(id) as count,current_process_type from com_sanshuo_event_info where event_process_status not in(7,8,9) group by current_process_type </select> <select id="expertRate" resultType="com.panzhihua.common.model.vos.sanshuo.EventRateVO"> select count(t.id) as count,t1.level as type from com_sanshuo_event_info t left join com_sanshuo_expert t1 on t.specialist_id=t1.id where t.event_process_status not in(7.8) where t.event_process_status not in(7,8,9) group by t1.level having type is not null </select> <select id="mediateTypeRate" resultType="com.panzhihua.common.model.vos.sanshuo.EventRateVO"> select count(t.id) as count,t1.name from com_sanshuo_event_info t left join com_mediate_type t1 on t.event_category=t1.id where t.event_process_status not in(7.8) where t.event_process_status not in(7,8,9) group by t.event_category </select> springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -18,6 +18,7 @@ import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.*; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.fasterxml.jackson.core.JsonProcessingException; @@ -223,6 +224,10 @@ sysUserDO1.setPassword(encode); sysUserDO1.setType(1); sysUserDO1.setAppId(appId); //设置默认头像地址 sysUserDO1.setImageUrl("https://www.psciio.com//idcard/f15c91f940624ed59537ecced1059f18.jpg"); //设置默认用户名 sysUserDO1.setNickName("用户" + RandomUtil.randomString(8)); num = userDao.insert(sysUserDO1); } else { String encode = new BCryptPasswordEncoder().encode(UserConstants.PASSWORD); @@ -326,6 +331,9 @@ return R.fail(); } LoginUserInfoVO loginUserInfoVO = new LoginUserInfoVO(); if (nonNull(sysUserDO.getStreetId())){ loginUserInfoVO.setStreetId(sysUserDO.getStreetId()); } loginUserInfoVO.setUserId(sysUserDO.getUserId()); loginUserInfoVO.setName(sysUserDO.getName()); loginUserInfoVO.setPassword(sysUserDO.getPassword());