fengjin
2022-11-01 3d8f0071da8fd8282f7dc77d8482e3c3076efafb
1.修改搜索bug2.修改自动分配逻辑
6个文件已修改
71 ■■■■ 已修改文件
flower_city/src/main/java/com/dg/core/api/GuideRepairOrderAppletsController.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/WxUtil.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/OrganizationChartMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/TransactionEventMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/GuideRepairOrderAppletsController.java
@@ -9,6 +9,7 @@
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.manual.mapper.util.ConstantPropertiesUtil;
import com.dg.core.service.IGuideEvolveService;
import com.dg.core.service.IGuideRepairOrderService;
import com.dg.core.service.IOrganizationChartService;
@@ -20,6 +21,7 @@
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
@@ -44,6 +46,9 @@
    @Resource
    IOrganizationChartService iOrganizationChartService;
    @Resource(name = "stringRedisTemplate")
    private StringRedisTemplate stringRedisTemplate;
    private static String guideRepairOrderCompleteTemplateId = "7ZCHHii87rWPwVkdhZnvNiYbYi_Buq0NXO10cmUhAFk";
@@ -184,7 +189,7 @@
            WxUtil wxUtil=new WxUtil();
            String accessToken="0";
            try {
                accessToken= wxUtil.getBatteryCarAccessToken();
                accessToken= stringRedisTemplate.boundValueOps("access_token:access_token:" + ConstantPropertiesUtil.WX_OPEN_APP_ID).get().toString();
            } catch (Exception e) {
                throw new RuntimeException(e);
            }
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
@@ -7,6 +7,7 @@
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.*;
import com.dg.core.db.manual.mapper.util.ConstantPropertiesUtil;
import com.dg.core.service.IGuideEvolveService;
import com.dg.core.service.IGuideRepairOrderService;
import com.dg.core.service.IOrganizationChartService;
@@ -18,6 +19,7 @@
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
@@ -42,6 +44,9 @@
    @Autowired
    IOrganizationChartService iOrganizationChartService;
    @Resource(name = "stringRedisTemplate")
    private StringRedisTemplate stringRedisTemplate;
    private static String guideRepairOrderCompleteTemplateId = "7ZCHHii87rWPwVkdhZnvNiYbYi_Buq0NXO10cmUhAFk";
@@ -231,7 +236,7 @@
                WxUtil wxUtil=new WxUtil();
                String accessToken="0";
                try {
                    accessToken= wxUtil.getBatteryCarAccessToken();
                    accessToken= stringRedisTemplate.boundValueOps("access_token:access_token:" + ConstantPropertiesUtil.WX_OPEN_APP_ID).get().toString();
                } catch (Exception e) {
                    throw new RuntimeException(e);
                }
flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java
@@ -7,6 +7,7 @@
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.*;
import com.dg.core.db.gen.mapper.*;
import com.dg.core.db.manual.mapper.util.ConstantPropertiesUtil;
import com.dg.core.service.IGuideRepairOrderService;
import com.dg.core.service.ISysSettingsService;
import com.dg.core.util.SmsUtil;
@@ -14,8 +15,10 @@
import com.dg.core.util.TestDate;
import com.dg.core.util.WxUtil;
import com.iceyyy.workday.WorkUtils;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.time.LocalDateTime;
@@ -46,8 +49,15 @@
    @Resource
    private AutomessageSysSettingsMapper iSysSettingsMapper;
    @Resource
    SmsUtil smsUtil;
    @Resource(name = "stringRedisTemplate")
    private StringRedisTemplate stringRedisTemplate;
    private static WxUtil wxUtil;
    @Override
    public int addOrder(GuideRepairOrder guideRepairOrder) {
@@ -90,11 +100,24 @@
                            departmentIds = this.getDepartmentIds(organizationChartEntitiesUser, departmentIds);
                    }
                    sysUsers = sysUserMapper.selectListByDepartmentId(departmentIds, "," + transactionEvent.getClassifyId(), transactionEvent.getClassifyId() + ",");//获取导半人员
                    if (sysUsers.size() == 0) {//如果其下级部门仍没有该分类的导半人员则查询所以该所属地区的导办人员
                    if (sysUsers.size() == 0) {//如果该所属地区没有导办人员则为获取其上級地区有没有相关分类导办人员
                        List<String> departmentIdsParent = new ArrayList<>();
                        departmentIdsParent.addAll(departmentIds);
                        for (String departmentId : departmentIdsParent) {
                            OrganizationChartEntity organizationChart = organizationChartMapper.selectOne(new QueryWrapper<OrganizationChartEntity>().lambda().eq(OrganizationChartEntity::getId, departmentId));
                            OrganizationChartEntity organizationChartParent = organizationChartMapper.selectOne(new QueryWrapper<OrganizationChartEntity>().lambda().eq(OrganizationChartEntity::getId, organizationChart.getParentId()));
                            departmentIds.add(organizationChartParent.getId().toString());
                        }
                        sysUsers = sysUserMapper.selectListByDepartmentId(departmentIds, "," + transactionEvent.getClassifyId(), transactionEvent.getClassifyId() + ",");//获取导半人员
                        if (sysUsers.size() == 0) {
                        sysUsers = sysUserMapper.selectListByDepartmentId(departmentIds, null, null);//获取导半人员
                        if (sysUsers.size() == 0)//如果该所属地区没有导办人员则为特殊单据需要手动分配
                            if (sysUsers.size() == 0) {
                                //如果该所属地区没有导办人员则为特殊单据需要手动分配
                            guideRepairOrder.setState("1");
                    }
                        }
                    }
                }
                if (sysUsers.size() > 0) {//系统分配导办人员
                    SysUser sysUser = sysUsers.get(0);//因为sql用了升序排序所以第一条就是待办结最少的人员之一
@@ -338,7 +361,7 @@
        WxUtil wxUtil = new WxUtil();
        String accessToken = "0";
        try {
            accessToken = wxUtil.getBatteryCarAccessToken();
            accessToken = stringRedisTemplate.boundValueOps("access_token:access_token:" + ConstantPropertiesUtil.WX_OPEN_APP_ID).get().toString();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
@@ -370,14 +393,13 @@
        WxUtil wxUtil = new WxUtil();
        String accessToken = "0";
        try {
            accessToken = wxUtil.getBatteryCarAccessToken();
            accessToken = stringRedisTemplate.boundValueOps("access_token:access_token:" + ConstantPropertiesUtil.WX_OPEN_APP_ID).get().toString();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        for (GuideRepairOrder guideRepairOrder:guideRepairOrders) {
            SysUser sysUser = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, guideRepairOrder.getGuideUserId()));
            if (sysUser!=null)
            {
            if (sysUser != null) {
                smsUtil.sendSmsOvertime(sysUser.getPhonenumber(), sysUser.getUserName());
                wxUtil.sendGuideRepairOrderOvertime(sysUser.getOpenid(),accessToken,"86JgWHhR8b1XxD72WYqMnndyfkiMtSSoCk9NFMwLEZ8",sysUser);
                guideRepairOrder.setIsPush(1);
flower_city/src/main/java/com/dg/core/util/WxUtil.java
@@ -2,6 +2,7 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.dg.core.annotation.Authorization;
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.dg.core.db.gen.entity.SysUser;
@@ -17,7 +18,9 @@
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.io.BufferedReader;
import java.io.IOException;
@@ -32,8 +35,16 @@
    private static String miniprogramState="trial";//trial 为测试版  formal 为正式版 切记发布版本时候改为正式版
    @Resource
    StringRedisTemplate stringRedisTemplate;
    @Resource(name = "stringRedisTemplate")
    private StringRedisTemplate stringRedisTemplate;
    private static WxUtil wxUtil;
    @PostConstruct
    public void init() {
        wxUtil = this;
        wxUtil.stringRedisTemplate = this.stringRedisTemplate;
    }
    /**
     * 获取花城token,(ps:0=token获取失败)
@@ -55,7 +66,7 @@
//        } catch (IOException ioe) {
//            ioe.printStackTrace();
//        }
        accessToken =stringRedisTemplate.boundValueOps("access_token:access_token:" + ConstantPropertiesUtil.WX_OPEN_APP_ID).get().toString();
        accessToken =wxUtil.stringRedisTemplate.boundValueOps("access_token:access_token:" + ConstantPropertiesUtil.WX_OPEN_APP_ID).get().toString();
        return accessToken;
    }
flower_city/src/main/resources/mapper/OrganizationChartMapper.xml
@@ -102,9 +102,9 @@
    <select id="selectByKeyWord" resultMap="OrganizationChartResult">
        <include refid="selectOrganizationChartVo"/>
        where organization_name like concat('%', #{keyWord}, '%')
        where grade=1 and ( organization_name like concat('%', #{keyWord}, '%')
        or((detailed_address like concat('%', #{keyWord}, '%')  )     and TRIM(detailed_address)  !='')
        or((resume like concat('%', #{keyWord}, '%')  ) and  TRIM(resume)  !=  '' )
        or((resume like concat('%', #{keyWord}, '%')  ) and  TRIM(resume)  !=  '' ))
    </select>
    <select id="selectByCode" resultMap="OrganizationChartResult">
flower_city/src/main/resources/mapper/TransactionEventMapper.xml
@@ -431,7 +431,7 @@
    <select id="selectSearch" resultType="com.dg.core.db.manual.pojo.Search">
        select  id,title,content,views, type FROM(
                 select  id,organization_name title,resume content,null views,1 type  from   automessage_organization_chart  UNION
                 select  id,organization_name title,resume content,null views,1 type  from   automessage_organization_chart where grade=1  UNION
                 select  id,matter_name title,concat((select classify_name from  automessage_classify_administration
                                                      where id=(select parent_id from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)),
                                                     '>',(select classify_name from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)) content,