huanghongfa
2021-09-27 5c70b1f8fd59e1d35014c08d63a28f58b7aa9249
Merge remote-tracking branch 'origin/test' into test
8个文件已添加
27个文件已修改
863 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageElderAuthRecordsDTO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/ConvenientMerchantDTO.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/DisableOrEnableConvenientMerchantDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/PageEventManageDTO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/user/ConvenientResetPasswordDTO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/convenient/ConvenientProductVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationDAO.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComElderAuthRecordsServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationHouseServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActCommitteeMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActFourMemberMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComElderAuthRecordsMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComMngPopulationDOMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComPropertyMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientMerchantMapper.xml 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientProductMapper.xml 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientServiceCategoryMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/pom.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/config/KafkaConfig.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/CallForward.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/CallForwardDto.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/CustomBtn.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/DeviceInfoDto.java 255 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/TaskDetail.java 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/TaskInfo.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/listener/OrderListener.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/message/AlarmMessage.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/resources/bootstrap.yml 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/ConvenientApi.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/filter/StoreValidFilter.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/PageElderAuthRecordsDTO.java
@@ -52,4 +52,6 @@
    @ApiModelProperty(value = "认证方式(1.视频认证 2.人脸认证 3.线下认证)")
    private String authMethod;
    private String idCard;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/ConvenientMerchantDTO.java
@@ -52,7 +52,7 @@
    private String idCard;
    @ApiModelProperty("咨询电话")
    @Pattern(groups = {AddGroup.class}, message = "咨询电话格式错误", regexp = "(1[3|4|5|7|8][0-9]\\d{8})|(\\d{3}-\\d{8}|\\d{4}-\\d{7})")
    @Pattern(groups = {AddGroup.class}, message = "咨询电话格式错误", regexp = "^(13[0-9]|14[01456879]|15[0-3,5-9]|16[2567]|17[0-8]|18[0-9]|19[0-3,5-9])\\d{8}$")
    private String phone;
    @ApiModelProperty("商家地址")
@@ -94,14 +94,12 @@
    private Integer businessStatus;
    @ApiModelProperty("管理账号")
    @Pattern(groups = {AddGroup.class}, message = "请输入6-10位管理账号,由英文或数字组成", regexp = "^[0-9A-Za-z]{6,10}$")
    @NotBlank(groups = {AddGroup.class}, message = "管理账号不能为空")
    private String account;
    @ApiModelProperty("登陆密码")
//    @Pattern(groups = {AddGroup.class}, message = "请输入8-12位登陆密码,由英文,数字和特殊符号组成",
//            regexp = "^(?=.*[A-Za-z])(?=.*\\d)(?=.*[$@$!%*#?&])[A-Za-z\\d$@$!%*#?&]{8,12}$")
    @Pattern(groups = {AddGroup.class}, message = "请输入8-12位登陆密码,由英文,数字和特殊符号组成",
            regexp = "^(?=.*[A-Za-z])(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s).{8,}$")
            regexp = "^(?=.*[A-Za-z])(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s).{8,12}$")
    private String password;
    @ApiModelProperty(value = "所属社区id")
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/convenient/DisableOrEnableConvenientMerchantDTO.java
@@ -30,4 +30,7 @@
    @ApiModelProperty(value = "处理人", hidden = true)
    private Long updatedBy;
    @ApiModelProperty(value = "被禁用商家关联用户id", hidden = true)
    private List<Long> userIds;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/PageEventManageDTO.java
@@ -46,6 +46,8 @@
    @ApiModelProperty(value = "事件分类:1治安隐患、2公共服务、3矛盾纠纷、4不稳定因素、5突发事件", hidden = false, example = "1")
    // @NotNull(message = "事件分类不能为空")
    private Integer eventType;
    @ApiModelProperty(value = "事件类型")
    private String eventClazz;
    @Max(127)
    @ApiModelProperty(value = "危险级别", hidden = false, example = "1")
    private Integer dangerLevel;
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/user/ConvenientResetPasswordDTO.java
@@ -26,6 +26,6 @@
    @ApiModelProperty("新密码")
    @Pattern(groups = {AddGroup.class}, message = "请输入8-12位登陆密码,由英文,数字和特殊符号组成",
            regexp = "^(?=.*[A-Za-z])(?=.*\\d)(?=.*[$@$!%*#?&])[A-Za-z\\d$@$!%*#?&]{8,12}$")
            regexp = "^(?=.*[A-Za-z])(?=(.*[\\d]){1,})(?=(.*[\\W]){1,})(?!.*\\s).{8,12}$")
    private String newPassword;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/convenient/ConvenientProductVO.java
@@ -50,4 +50,8 @@
    @ApiModelProperty("浏览量")
    private Integer viewNum;
    public void setOnShelf(Boolean onShelf) {
        this.onShelf = onShelf ? 1 : 0;
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMngPopulationDAO.java
@@ -181,7 +181,7 @@
    AreaAddressVO getAreaAddress(@Param("provinceCode") String provinceCode, @Param("cityCode") String cityCode,
        @Param("districtCode") String districtCode);
    @Select("select count(id) as populationTotal "
    @Select("select count(cmpct.id) as populationTotal "
        + ",(select count(cmpct.id) from com_mng_population_community_tags cmpct left join com_mng_population cmp on cmpct.population_id = cmp.id where cmpct.community_id = #{communityId} and cmp.out_or_local = 1) as localTotal "
        + ",(select count(cmpct.id) from com_mng_population_community_tags cmpct left join com_mng_population cmp on cmpct.population_id = cmp.id where cmpct.community_id = #{communityId} and cmp.out_or_local = 2) as outTotal "
        + ",(select count(cmpct.id) from com_mng_population_community_tags cmpct left join com_mng_population cmp on cmpct.population_id = cmp.id where cmpct.community_id = #{communityId} and IFNULL(cmpct.label,'') != '') as specialTotal "
@@ -195,7 +195,7 @@
        + ",(select count(id) from com_mng_population_community_tags where community_id = #{communityId} and label LIKE CONCAT('%','退役军人','%')) as veteransTotal "
        + ",(select count(id) from com_mng_population_community_tags where community_id = #{communityId} and label LIKE CONCAT('%','残疾人','%')) as disabilityTotal "
        + ",(select count(id) from com_mng_population_community_tags where community_id = #{communityId} and label LIKE CONCAT('%','低保户','%')) as lowSecurityTotal "
        + " from com_mng_population_community_tags as cmpct where community_id = #{communityId}")
        + " from com_mng_population_community_tags as cmpct inner join com_mng_population as cmp on cmp.id = cmpct.population_id where community_id = #{communityId}")
    ComMngPopulationTotalVO getPopulationTotalByAdmin(@Param("communityId") Long communityId);
    @Select("select count(id) as populationTotal," +
@@ -594,6 +594,12 @@
        + "</foreach>" + " </script>")
    Integer getPopulationVisitingCount(@Param("ids") List<Long> ids);
    /**
     * 综治后台删除居民,并清理人口与社区绑定关系
     * @param ids   需要删除的人口id集合
     */
    void deletePopulaitonRelation(@Param("ids") List<Long> ids);
    @Select("<script> " + "SELECT " + "   cmp.id, " + "   cmp.`name`, " + "   cmp.card_no as idCard, "
        + "   cmpct.label, " + "   cmp.sex, " + "   IFNULL( cmp.phone, '暂无' ) as phone, " + "   cmp.address, "
        + "   cmp.political_outlook " + "  FROM "
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComElderAuthRecordsServiceImpl.java
@@ -100,6 +100,15 @@
        }
        page.setSize(pageSize);
        page.setCurrent(pageNum);
        try {
            //关键词为空时需要进行加密,通过加密去检索身份证号筛选高龄认证记录
            String idCard = AESUtil.encrypt128(pageElderAuthRecordsDTO.getSearchKey(), aesKey);
            pageElderAuthRecordsDTO.setIdCard(idCard);
        }catch (Exception e){
            log.error("查询高龄认证记录转换身份证号失败");
        }
        IPage<ComElderAuthRecordVO> iPage = comElderAuthRecordsDAO.pageElderAuthRecords(page, pageElderAuthRecordsDTO);
        if (!iPage.getRecords().isEmpty()) {
            iPage.getRecords().forEach(comElderAuthRecordVO -> {
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationHouseServiceImpl.java
@@ -389,7 +389,7 @@
            }
            // 查询该房屋的住户信息
            List<PopulationListVO> populationList =
                this.baseMapper.getGridVillageBuildingPopulationList(buildingHouseDetailVO.getId(), null, 1);
                this.baseMapper.getGridVillageBuildingPopulationList(buildingHouseDetailVO.getId(), null, null);
            if (!populationList.isEmpty()) {
                populationList.forEach(population -> {
                    try {
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngPopulationServiceImpl.java
@@ -7604,6 +7604,8 @@
            return R.fail("您选择的数据中存在被引用的,无法删除");
        }
        this.baseMapper.deleteBatchIds(ids);
        //删除人口并删除人口和社区关联关系
        this.baseMapper.deletePopulaitonRelation(ids);
        return R.ok("删除成功");
    }
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java
@@ -8,10 +8,10 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import com.panzhihua.common.model.vos.community.convenient.ExportMerchantVO;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -39,6 +39,7 @@
import com.panzhihua.common.model.vos.community.convenient.ConvenientProductSpecificationVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientProductVO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientViewStatisticsVO;
import com.panzhihua.common.model.vos.community.convenient.ExportMerchantVO;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.service_community.dao.ComActDAO;
import com.panzhihua.service_community.dao.ConvenientConsultationStatisticsDAO;
@@ -141,6 +142,7 @@
            });
        }
        BeanUtils.copyProperties(convenientMerchantDTO, convenientMerchantDO);
        convenientMerchantDO.setIntroduction(convenientMerchantDTO.getIntroduction());
        this.baseMapper.updateById(convenientMerchantDO);
        return R.ok();
    }
@@ -182,6 +184,10 @@
    @Override
    public R disableOrEnableMerchant(DisableOrEnableConvenientMerchantDTO disableOrEnableConvenientMerchantDTO) {
        List<ConvenientMerchantDO> convenientMerchantDOList = this.baseMapper.selectList(new QueryWrapper<ConvenientMerchantDO>()
                .lambda().in(ConvenientMerchantDO::getId, disableOrEnableConvenientMerchantDTO.getIds()));
        List<Long> userIds = convenientMerchantDOList.stream().map(ConvenientMerchantDO::getUserId).collect(Collectors.toList());
        disableOrEnableConvenientMerchantDTO.setUserIds(userIds);
        R result = userService.disableOrEnableMerchantUsers(disableOrEnableConvenientMerchantDTO);
        if (R.isOk(result)) {
            return R.ok();
@@ -239,10 +245,16 @@
        SimpleDateFormat dayFormat = new SimpleDateFormat("yyyy-MM-dd");
        String moth = mothFormat.format(nowDate);
        String day = dayFormat.format(nowDate);
        int consultationCount = convenientConsultationStatisticsDAO.selectCount(new QueryWrapper<ConvenientConsultationStatisticsDO>()
                .lambda().eq(ConvenientConsultationStatisticsDO::getMerchantId, merchantId));
        int monthConsultationVolume = convenientConsultationStatisticsDAO.selectMonthConsultationVolume(merchantId, moth);
        int dayConsultationVolume = convenientConsultationStatisticsDAO.selectDayConsultationVolume(merchantId, day);
        Integer viewCount = convenientViewStatisticsDAO.selectCount(new QueryWrapper<ConvenientViewStatisticsDO>()
                .lambda().eq(ConvenientViewStatisticsDO::getMerchantId, merchantId));
        int monthViewNum = convenientViewStatisticsDAO.selectMonthViewNum(merchantId, moth);
        int dayViewNum = convenientViewStatisticsDAO.selectDayViewNum(merchantId, day);
        convenientMerchantVO.setConsultationVolume(consultationCount);
        convenientMerchantVO.setViewNum(viewCount);
        convenientMerchantVO.setMonthConsultationVolume(monthConsultationVolume);
        convenientMerchantVO.setDayConsultationVolume(dayConsultationVolume);
        convenientMerchantVO.setMonthViewNum(monthViewNum);
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActCommitteeMapper.xml
@@ -14,7 +14,7 @@
    </resultMap>
    <select id="pageList" resultType="com.panzhihua.common.model.vos.community.ComActCommiteeVO">
        select t.*,t1.account,t1.password,t2.name as areaName,t3.role_id as roleId from com_act_committee t
        select t.*,t1.account,t1.password,t2.address as areaName,t3.role_id as roleId from com_act_committee t
        left join sys_user t1 on t.user_id = t1.user_id
        left join com_mng_village t2 on t.area_id = t2.village_id
        left join sys_user_role t3 on t.user_id = t3.user_id
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActFourMemberMapper.xml
@@ -31,7 +31,7 @@
                and t.position like concat(#{commonPage.position},'%')
            </if>
            <if test="commonPage.keyword !=null and commonPage.keyword !=''">
                and (t1.name like concat(#{commonPage.keyword},'%') or t1.phone like concat(#{commonPage.keyword},'%') or t.jurisdiction_content like concat(#{commonPage.keyword},'%'))
                and (t1.name like concat(#{commonPage.keyword},'%') or t1.phone like concat(#{commonPage.keyword},'%') or t.jurisdiction_content like concat('%',#{commonPage.keyword},'%'))
            </if>
            <if test="commonPage.status !=null">
                and t1.status =#{commonPage.status}
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComElderAuthRecordsMapper.xml
@@ -84,7 +84,8 @@
        </if>
        <if test="pageElderAuthRecordsDTO.searchKey != null and pageElderAuthRecordsDTO.searchKey != ''">
            and (ceae.`name` like concat ('%', #{pageElderAuthRecordsDTO.searchKey}, '%')
            or  cear.mark like concat ('%', #{pageElderAuthRecordsDTO.searchKey}, '%'))
            or cear.mark like concat ('%', #{pageElderAuthRecordsDTO.searchKey}, '%')
            or ceae.id_card = #{pageElderAuthRecordsDTO.idCard})
        </if>
        order by cear.create_at desc
    </select>
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComMngPopulationDOMapper.xml
@@ -270,4 +270,11 @@
        select t.village_id as villageId,concat(t.alley,t.house_num,'号') as villageName,t1.id,concat(t1.unit_no,'栋',t1.floor,'单元',t1.code,'号') as name  from com_mng_village t left join com_mng_population_house t1 on t.village_id = t1.village_id where t.community_id=#{communityId} and t1.id is not null
    </select>
    <delete id="deletePopulaitonRelation">
        delete from com_mng_population_community_tags where population_id in
        <foreach item="item" collection="ids" separator="," open="(" close=")" index="">
            #{item}
        </foreach>
    </delete>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComPropertyMapper.xml
@@ -16,7 +16,7 @@
    </resultMap>
    <select id="pageList" resultType="com.panzhihua.common.model.vos.community.ComPropertyVO">
        select t.*,t1.account,t1.password,t2.name as areaName,t3.role_id as roleId from com_property t
        select t.*,t1.account,t1.password,t2.address as areaName,t3.role_id as roleId from com_property t
        left join sys_user t1 on t.user_id = t1.user_id
        left join com_mng_village t2 on t.area_id = t2.village_id
        left join sys_user_role t3 on t.user_id = t3.user_id
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientMerchantMapper.xml
@@ -54,9 +54,11 @@
            AND ccm.business_status = #{pageConvenientMerchantDTO.businessStatus}
        </if>
        <if test="pageConvenientMerchantDTO.keyword != null and pageConvenientMerchantDTO.keyword != &quot;&quot;">
            AND ccm.name LIKE CONCAT('%', #{pageConvenientMerchantDTO.keyword}, '%')
            AND ccm.address LIKE CONCAT('%', #{pageConvenientMerchantDTO.keyword}, '%')
            AND ccm.phone LIKE CONCAT('%', #{pageConvenientMerchantDTO.keyword}, '%')
            AND (
                    ccm.name LIKE CONCAT('%', #{pageConvenientMerchantDTO.keyword}, '%')
                    OR ccm.address LIKE CONCAT('%', #{pageConvenientMerchantDTO.keyword}, '%')
                    OR ccm.phone LIKE CONCAT('%', #{pageConvenientMerchantDTO.keyword}, '%')
                )
        </if>
        GROUP BY ccm.id
    </select>
@@ -77,7 +79,7 @@
            FROM com_convenient_merchants ccm
            LEFT JOIN com_convenient_consultation_statistics cccs ON ccm.id = cccs.merchant_id
            LEFT JOIN com_convenient_service_scope ccss ON ccm.id = ccss.merchant_id
            WHERE ccm.community_id = #{communityId} AND (cccs.statistic_date LIKE #{currentMon} OR cccs.statistic_date IS NULL) GROUP BY cccs.id
            WHERE ccm.community_id = #{communityId} AND ccm.business_status = 1 AND (cccs.statistic_date LIKE #{currentMon} OR cccs.statistic_date IS NULL) GROUP BY cccs.id
        ) temp GROUP BY temp.id ORDER BY SUM(temp.consultation_volume) DESC
    </select>
    <select id="getClassifyMerchants" resultType="com.panzhihua.common.model.vos.community.convenient.ConvenientMerchantVO">
@@ -90,7 +92,7 @@
            FROM com_convenient_merchants ccm
            LEFT JOIN com_convenient_consultation_statistics cccs ON ccm.id = cccs.merchant_id
            LEFT JOIN com_convenient_service_scope ccss ON ccm.id = ccss.merchant_id
            WHERE ccm.community_id = #{pageClassifyMerchantDTO.communityId} AND ccss.service_category_id = #{pageClassifyMerchantDTO.serviceId}
            WHERE ccm.community_id = #{pageClassifyMerchantDTO.communityId} AND ccm.business_status = 1 AND ccss.service_category_id = #{pageClassifyMerchantDTO.serviceId}
                AND (cccs.statistic_date LIKE #{currentMon} OR cccs.statistic_date IS NULL) GROUP BY cccs.id
        ) temp GROUP BY temp.id ORDER BY SUM(temp.consultation_volume) DESC
    </select>
@@ -103,7 +105,7 @@
                ccm.id, ccm.name, ccm.introduction, ccm.logo, ccm.phone, ccm.begin_at, ccm.end_at, ccm.period,
                ccm.address, ccm.lat, ccm.lon, cccs.consultation_volume,GROUP_CONCAT(ccss.service_name) AS serviceScope
            FROM com_convenient_merchants ccm
            INNER JOIN com_convenient_consultation_statistics cccs ON ccm.id = cccs.merchant_id
            LEFT JOIN com_convenient_consultation_statistics cccs ON ccm.id = cccs.merchant_id
            LEFT JOIN com_convenient_service_scope ccss ON ccm.id = ccss.merchant_id
            WHERE ccm.id = #{merchantId} AND (cccs.statistic_date LIKE #{currentMon} OR cccs.statistic_date IS NULL) GROUP BY cccs.id
        ) temp GROUP BY temp.id ORDER BY SUM(temp.consultation_volume) DESC
@@ -119,7 +121,7 @@
            FROM com_convenient_merchants ccm
            INNER JOIN com_convenient_consultation_statistics cccs ON ccm.id = cccs.merchant_id
            LEFT JOIN com_convenient_service_scope ccss ON ccm.id = ccss.merchant_id
            WHERE ccm.community_id = #{pageSearchDTO.communityId} AND ccm.`name` LIKE CONCAT('%', #{pageSearchDTO.keyword}, '%')
            WHERE ccm.community_id = #{pageSearchDTO.communityId} AND ccm.business_status = 1 AND ccm.`name` LIKE CONCAT('%', #{pageSearchDTO.keyword}, '%')
                AND ccm.is_del = 0 AND (cccs.statistic_date LIKE #{currentMon} OR cccs.statistic_date IS NULL) GROUP BY cccs.id
        ) temp GROUP BY temp.id ORDER BY SUM(temp.consultation_volume) DESC
    </select>
@@ -140,9 +142,11 @@
            AND ccm.business_status = #{exportMerchantDTO.businessStatus}
        </if>
        <if test="exportMerchantDTO.keyword != null and exportMerchantDTO.keyword != &quot;&quot;">
            AND ccm.name LIKE CONCAT('%', #{exportMerchantDTO.keyword}, '%')
            AND ccm.address LIKE CONCAT('%', #{exportMerchantDTO.keyword}, '%')
            AND ccm.phone LIKE CONCAT('%', #{exportMerchantDTO.keyword}, '%')
            AND (
                    ccm.name LIKE CONCAT('%', #{exportMerchantDTO.keyword}, '%')
                    OR ccm.address LIKE CONCAT('%', #{exportMerchantDTO.keyword}, '%')
                    OR ccm.phone LIKE CONCAT('%', #{exportMerchantDTO.keyword}, '%')
                )
        </if>
        GROUP BY ccm.id
    </select>
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientProductMapper.xml
@@ -71,6 +71,8 @@
        SELECT ccp.id,ccp.`name`,ccp.category_id,ccp.merchant_id,ccp.introduction
        FROM com_convenient_products ccp
        LEFT JOIN com_convenient_merchants ccm  ON  ccp.merchant_id = ccm.id
        WHERE ccm.community_id = #{pageSearchDTO.communityId} AND ccp.`name` LIKE CONCAT('%', #{pageSearchDTO.keyword}, '%')
        INNER JOIN com_convenient_product_specifications ccps ON ccp.id = ccps.product_id
        WHERE ccm.community_id = #{pageSearchDTO.communityId} AND ccp.is_del = 0
        AND ccp.on_shelf = 1 AND ccps.is_del = 0 AND ccp.`name` LIKE CONCAT('%', #{pageSearchDTO.keyword}, '%') GROUP BY ccp.id
    </select>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ConvenientServiceCategoryMapper.xml
@@ -50,6 +50,6 @@
        FROM com_convenient_service_categories ccsc
        INNER JOIN com_convenient_service_scope ccss ON ccsc.id = ccss.service_category_id
        LEFT JOIN com_convenient_merchants ccm ON ccss.merchant_id = ccm.id
        WHERE ccsc.is_del = 0 AND ccm.is_del = 0 AND ccm.community_id = #{communityId} GROUP BY ccsc.id
        WHERE ccsc.is_del = 0 AND ccm.is_del = 0 AND ccm.community_id = #{communityId} AND ccm.business_status = 1 GROUP BY ccsc.id
    </select>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventMapper.xml
@@ -480,6 +480,9 @@
            <if test="pageEventManageDTO.yellowCard!=null">
                AND e.yellow_card = #{pageEventManageDTO.yellowCard}
            </if>
            <if test="pageEventManageDTO.eventClazz != null and pageEventManageDTO.eventClazz != &quot;&quot;">
                AND e.event_clazz like concat('%',#{pageEventDTO.eventClazz},'%')
            </if>
            <if test="pageEventManageDTO.urgent!=null">
                AND e.urgent = #{pageEventManageDTO.urgent}
            </if>
springcloud_k8s_panzhihuazhihuishequ/service_property/pom.xml
@@ -111,6 +111,23 @@
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!--kafka依赖 -->
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka</artifactId>
            <version>2.7.6</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka-test</artifactId>
            <scope>test</scope>
            <version>2.7.6</version>
        </dependency>
        <!--json转换工具包依赖 -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
        </dependency>
    </dependencies>
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/config/KafkaConfig.java
New file
@@ -0,0 +1,31 @@
package com.panzhihua.service_property.config;
import org.apache.kafka.clients.admin.NewTopic;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.annotation.EnableKafka;
import org.springframework.kafka.config.TopicBuilder;
/**
 * @author manailin
 * @version 1.0
 * @description kafka配置类 开启Kafka监听器标注的端点
 * @date 2021/9/26 15:33
 */
@Configuration
@EnableKafka
public class KafkaConfig {
    @Value("${kafka.topic.kafka-demo-topic}")
    private String orderTopic;
    /** 条件匹配,如果配置kafka.topic.autoCreate=true的话,该配置类生效,反之则无效 */
    @Bean
    @ConditionalOnProperty(name = "kafka.topic.autoCreate", havingValue = "true")
    public NewTopic orderTopic() {
        return TopicBuilder.name(orderTopic).build();
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/CallForward.java
New file
@@ -0,0 +1,70 @@
package com.panzhihua.service_property.dto;
import lombok.Data;
/**
 * 应用模块名称
 * <p>
 * * 应用模块名称
 * <p>
 * 订阅一键报警的设备信息主题返回的对象 代码描述
 * <p>
 * Copyright; Copyright (C) 2021 XXX, Inc. All rights reserved.
 * <p>
 * Company; 成都呐喊信息技术有限公司
 * <p>
 *
 * @author manailin
 * @since 2021/9/26 16;33
 */
@Data
public class CallForward {
    /**
     * 呼叫转移记录GUID
     */
    private String CallForwardId;
    /**
     * 呼叫者GUID
     */
    private String Caller;
    /**
     * 呼叫顺序
     */
    private String Order;
    /**
     * 被呼叫者GUID
     */
    private String Callee;
    /**
     * 预定的呼叫时间
     */
    private String CallDateTime;
    /**
     * 呼叫次数
     */
    private String CallNums;
    /**
     * 呼叫持续时间
     */
    private String CallSeconds;
    /**
     * 呼叫策略
     */
    private String CallStrate;
    /**
     * 策略名称
     */
    private String ProName;
    /**
     * 是否自动接听
     */
    private String AutoAnswer;
    /**
     * 呼叫等待mp3文件id
     */
    private String WaitMp3Id;
    /**
     * 呼叫应答mp3文件id
     */
    private String CallMp3Id;
}
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/CallForwardDto.java
New file
@@ -0,0 +1,45 @@
package com.panzhihua.service_property.dto;
import lombok.Data;
/**
 * 应用模块名称
 * <p>
 * 订阅一键报警的设备信息主题返回的对象 代码描述
 * <p>
 * Copyright: Copyright (C) 2021 XXX, Inc. All rights reserved.
 * <p>
 * Company: 成都呐喊信息技术有限公司
 * <p>
 *
 * @author manailin
 * @since 2021/9/26 16:23
 */
@Data
public class CallForwardDto {
    private String CallForwardId;
    /** 呼叫转移记录GUID */
    private String Caller;
    /** 呼叫者GUID */
    private String Order;
    /** 呼叫顺序 */
    private String Callee;
    /** 被呼叫者GUID */
    private String CallDateTime;
    /** 预定的呼叫时间 */
    private String CallNums;
    /** 呼叫次数 */
    private String CallSeconds;
    /** 呼叫持续时间 */
    private String CallStratus;
    /** 呼叫策略 */
    private String ProName;
    /** 策略名称 */
    private String AutoAnswer;
    /** 是否自动接听 */
    private String WaitMp3Id;
    /** 呼叫等待mp3文件id */
    private String CallMp3Id;
    /** 呼叫应答mp3文件id */
}
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/CustomBtn.java
New file
@@ -0,0 +1,69 @@
package com.panzhihua.service_property.dto;
import lombok.Data;
/**
 * 应用模块名称
 * <p>
 * 代码描述
 * <p>
 * Copyright: Copyright (C) 2021 XXX, Inc. All rights reserved.
 * <p>
 * Company: 成都呐喊信息技术有限公司
 * <p>
 *
 * @author manailin
 * @since 2021/9/26 16:23
 */
@Data
public class CustomBtn {
    /**
     * 按键所属终端id
     */
    private String TerminalId;
    /**
     * 按键编码
     */
    private String BtnCode;
    /**
     * 按键任务guid
     */
    private String TskGuid;
    /**
     * 按键对应的响应终端id
     */
    private String ResTerminalId;
    /**
     * 播放曲目文件id
     */
    private String FileId;
    /**
     * 播放音量
     */
    private String SoundVol;
    /**
     * 灯光模式
     */
    private String LightMode;
    /**
     * 报警强切
     */
    private String CutAlarm;
    /**
     * 短路输出1
     */
    private String IoOut1;
    /**
     * 短路输出2
     */
    private String IoOut2;
    /**
     * 终端短路输出频率
     */
    private String IoOutFreQuency;
    /**
     * 终端短路输出持续时间
     */
    private String IoOutDuration;
}
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/DeviceInfoDto.java
New file
@@ -0,0 +1,255 @@
package com.panzhihua.service_property.dto;
import java.util.ArrayList;
import lombok.*;
/**
 * 应用模块名称
 * <p>
 * 订阅一键报警的设备信息主题返回的对象 代码描述
 * <p>
 * Copyright;Copyright (C) 2021 XXX Inc. All rights reserved.
 * <p>
 * Company;成都呐喊信息技术有限公司
 * <p>
 *
 * @author manailin
 * @since 2021/9/26 16:33
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class DeviceInfoDto {
    private String DeviceType;
    /**
     * 设备类型
     */
    private String DeviceName;
    /**
     * 设备用户名
     */
    private String DeviceNickName;
    /**
     * 设备用户昵称
     */
    private String DeviceGuid;
    /**
     * 设备GUID
     */
    private String DevicePwd;
    /**
     * 设备用户密码
     */
    private String DeviceAreaId;
    /**
     * 用户所在分区GUID
     */
    private String DeviceIp;
    /**
     * 设备IP
     */
    private String DevicePriority;
    /**
     * 设备用户级别
     */
    private String DeviceStatus;
    /**
     * 设备用户状态
     */
    private String HasVid;
    /**
     * 有无视频
     */
    private String HasTalk;
    /**
     * 有无对讲
     */
    private String RtspUrl;
    /**
     * 关联rtsp相机流地址
     */
    private String IoInCnt;
    /**
     * IO输入口数量
     */
    private String IoIn1State;
    /**
     * IO输入口1状态
     */
    private String IoIn2State;
    /**
     * IO输入口2状态
     */
    private String IoIn3State;
    /**
     * IO输入口3状态
     */
    private String IoIn4State;
    /**
     * IO输入口4状态
     */
    private String IoIn5State;
    /**
     * IO输入口5状态
     */
    private String IoIn6State;
    /**
     * IO输入口6状态
     */
    private String IoIn2Tp;
    /**
     * 报警输入2类型
     */
    private String IoOutCnt;
    /**
     * IO输出口数量
     */
    private String IoOut1State;
    /**
     * IO输出口1状态
     */
    private String IoOut2State;
    /**
     * IO输出口2状态
     */
    private String IoOut3State;
    /**
     * IO输出口3状态
     */
    private String IoOut4State;
    /**
     * IO输出口4状态
     */
    private String IoOut5State;
    /**
     * IO输出口5状态
     */
    private String IoOut6State;
    /**
     * IO输出口6状态
     */
    private String PlayTalkVol;
    /**
     * 对讲的播放音量
     */
    private String PlayBcVol;
    /**
     * 广播的播放音量
     */
    private String PlayBellVol;
    /**
     * 铃声的播放音量
     */
    private String CollTalkVol;
    /**
     * 采集的对讲音量
     */
    private String CollWatchVol;
    /**
     * 采集的监视音量
     */
    private String DeviceSerialNumber;
    /**
     * 设备序列号
     */
    private String ManufactureDate;
    /**
     * 出厂日期
     */
    private String DbAlarm;
    /**
     * 喧哗报警阈值
     */
    private String Model;
    /**
     * 设备模式
     */
    private String MoDet1;
    /**
     * 设备模式
     */
    private String MoDet2;
    /**
     * 设备模式
     */
    private String DeamonTime;
    /**
     * ARM守护程序发布时间
     */
    private String CompileTime;
    /**
     * ARM主程序发布时间
     */
    private String DeviceAbility;
    /**
     * 设备功能
     */
    private String DeviceCode;
    /**
     * 设备编码
     */
    private String DeviceDesc;
    /**
     * 设备描述
     */
    private String DeviceToken;
    /**
     * 加密狗id
     */
    private String TimeStamp;
    /**
     * 当前时间戳
     */
    private String DeviceVer;
    /**
     * 设备版本
     */
    private String CurrentTaskGuid;
    /**
     * 当前执行的任务guid
     */
    private String CurrentSoundSrc;
    /**
     * 当前音源
     */
    private String SipUsr;
    /**
     * sip账号
     */
    private String SipPwd;
    /**
     * sip密码
     */
    private String ProtocalType;
    /**
     * 协议类型 1:私有协议 2:sip协议 3:都有
     */
    private String TaskStatus;
    /**
     * 任务状态
     */
    private String CtlType;
    /**
     * 更改类型 1 添加 2 更新 3 删除 4权限改变
     */
    private String ReservedField1;
    /**
     * 扩展字段1
     */
    private String ReservedField2;
    /**
     * 扩展字段2
     */
    private String ReservedField3;
    /**
     * 扩展字段3
     */
    private ArrayList<CallForwardDto> CallForwardList;
    private ArrayList<CustomBtn> customBtns;
}
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/TaskDetail.java
New file
@@ -0,0 +1,130 @@
package com.panzhihua.service_property.dto;
import java.util.ArrayList;
import lombok.Data;
/**
 * 应用模块名称
 * <p>
 * 一键报警kafka 订阅主题 任务消息对象 代码描述
 * <p>
 * Copyright;Copyright (C) 2021 XXX Inc. All rights reserved.
 * <p>
 * Company;成都呐喊信息技术有限公司
 * <p>
 *
 * @author manailin
 * @since 2021/9/26 16:33
 */
@Data
public class TaskDetail {
    /**
     * 对讲服务地址
     */
    private String TalkServer;
    /**
     * 对讲服务端口
     */
    private String TalkPort;
    /**
     * 任务拨号时间
     */
    private String TskCallStartTime;
    /**
     * 任务启动时间
     */
    private String TskStartTime;
    /**
     * 任务guid
     */
    private String TskGuid;
    /**
     * 任务级别
     */
    private String TskPrio;
    /**
     * 呼叫者guid
     */
    private String CallerGuid;
    /**
     * 被呼叫者guid
     */
    private String CalleeGuid;
    /**
     * 呼叫者等级
     */
    private String CallerLevel;
    /**
     * 任务状态
     */
    private String TskStatus;
    /**
     * 任务参数:通道号
     */
    private String ChIdx;
    /**
     * 任务参数:传输方式
     */
    private String TransProto;
    /**
     * 任务参数:数据类型
     */
    private String MdTp;
    /**
     * 对讲音量
     */
    private String TalkVolumn;
    /**
     * 第三方厂家策略
     */
    private String CustomJson;
    /**
     * 呼叫转移记录GUID
     */
    private ArrayList<CallForward> CallForwardList;
    /**
     * 任务超时时间unix时间戳
     */
    private String TskTimeout;
    /**
     * 码流属性,0主码流 1子码流
     */
    private String StrmMode;
    /**
     * 是否已处理 1未 2已
     */
    private String AlreadyDeal;
    /**
     * 创建者guid
     */
    private String Creater;
    /**
     * 启动者guid
     */
    private String Starter;
    /**
     * 呼叫者名字
     */
    private String CallerName;
    /**
     * 被呼叫者名字
     */
    private String CalleeName;
    /**
     * 协议类型 1:私有协议 2:sip协议 3:都有
     */
    private String ProtocalType;
    /**
     * 扩展字段1 发起者类型 1 ARM 2 PC
     */
    private String ReservedField1;
    /**
     * 扩展字段2
     */
    private String ReservedField2;
    /**
     * 扩展字段3
     */
    private String ReservedField3;
}
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/dto/TaskInfo.java
New file
@@ -0,0 +1,28 @@
package com.panzhihua.service_property.dto;
import lombok.Data;
/**
 * 应用模块名称
 * <p>
 * 一键报警kafka 订阅主题 任务消息对象 代码描述
 * <p>
 * Copyright: Copyright (C) 2021 XXX, Inc. All rights reserved.
 * <p>
 * Company: 成都呐喊信息技术有限公司
 * <p>
 *
 * @author manailin
 * @since 2021/9/26 16:30
 */
@Data
public class TaskInfo {
    /** 任务类型(1) */
    private Integer task_type;
    /** 更改类型 1 添加 2 更新 3 删除 */
    private Integer CtlType;
    /** 任务 */
    private TaskDetail talk;
}
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/listener/OrderListener.java
New file
@@ -0,0 +1,54 @@
package com.panzhihua.service_property.listener;
import java.util.Date;
import javax.annotation.Resource;
import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component;
import com.alibaba.fastjson.JSONObject;
import com.panzhihua.service_property.dao.ComPropertyAlarmDao;
import com.panzhihua.service_property.dto.TaskInfo;
import com.panzhihua.service_property.entity.ComPropertyAlarm;
import lombok.extern.slf4j.Slf4j;
/**
 * @author manailin
 * @version 1.0
 * @description kafka 消息消费者
 * @date 2021/9/26 15:33
 */
@Slf4j
@Component
public class OrderListener {
    @Resource
    private ComPropertyAlarmDao comPropertyAlarmDao;
    /** 用于监听kafka,符合条件的消息能够即时消费 */
    @KafkaListener(topics = {"${kafka.topic.kafka-demo-topic}"}, autoStartup = "${kafka.topic.autoCreate:true}")
    public void processing(String message) throws Exception {
        log.info("监控来消息了:{}", message);
        try {
            TaskInfo task = JSONObject.parseObject(message, TaskInfo.class);
            if (task.getCtlType() == 1) {
                saveTask(task);
            }
        } catch (Exception e) {
            throw new Exception();
        }
    }
    @Async
    void saveTask(TaskInfo task) {
        ComPropertyAlarm comPropertyAlarm = new ComPropertyAlarm();
        comPropertyAlarm.setSerialNo(task.getTalk().getCallerGuid());
        comPropertyAlarm.setStatus(1);
        comPropertyAlarm.setCreateTime(new Date());
        comPropertyAlarmDao.insert(comPropertyAlarm);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/message/AlarmMessage.java
@@ -30,6 +30,7 @@
        if(!stringRedisTemplate.hasKey(comPropertyEquipment.getSerialNo())){
            ComPropertyAlarm comPropertyAlarm=new ComPropertyAlarm();
            comPropertyAlarm.setCreateTime(DateUtil.date());
            comPropertyAlarm.setPhone(comPropertyEquipment.getPhone());
            comPropertyAlarm.setSerialNo(comPropertyEquipment.getSerialNo());
            comPropertyAlarm.setType(ComPropertyAlarm.type.one);
            comPropertyAlarm.setCommunityId(comPropertyEquipment.getCommunityId());
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/resources/bootstrap.yml
@@ -1,6 +1,25 @@
spring:
  application:
    name: property
  kafka:
    bootstrap-servers: 182.151.37.143:9092 #kafka地址
    consumer:
      group-id: order-consumer
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer #kafkaTemplate.send()方法参数类型
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      auto-offset-reset: earliest
      security:
        protocol: PLAINTEXT
    producer:
      batch-size: 16384
      buffer-memory: 33554432
      retries: 0
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      properties:
        linger.ms: 1
      security:
        protocol: PLAINTEXT
  cloud:
    config:
      discovery:
@@ -21,6 +40,7 @@
    service-url:
      defaultZone: http://${EUREKA_URL:localhost}:8192/eureka
#实体加密、解密、字段脱敏拦截设置
domain:
  decrypt: true
@@ -40,4 +60,11 @@
  metrics:
    tags:
      application: property
      application: property
# kafka自定义消息发送配置
kafka:
  topic:
    kafka-demo-topic: Task_Info
    kafka-demo-key: order-key
    autoCreate: false
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -1068,6 +1068,8 @@
                throw new ServiceException("手机号已经存在");
            } else if (e.getMessage().contains("union_account_type")) {
                throw new ServiceException("账户已经存在");
            }else if(e.getMessage().contains("23000")){
                throw new ServiceException("手机号已存在");
            }
        }
@@ -2671,7 +2673,7 @@
    @Override
    public R disableOrEnableMerchantUsers(DisableOrEnableConvenientMerchantDTO disableOrEnableConvenientMerchantDTO) {
        userDao.disableOrEnableMerchantUsers(disableOrEnableConvenientMerchantDTO.getType(), disableOrEnableConvenientMerchantDTO.getIds());
        userDao.disableOrEnableMerchantUsers(disableOrEnableConvenientMerchantDTO.getType(), disableOrEnableConvenientMerchantDTO.getUserIds());
        return R.ok();
    }
}
springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/ConvenientApi.java
@@ -1,12 +1,19 @@
package com.panzhihua.shop_backstage.api;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.TreeSet;
import java.util.UUID;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import com.panzhihua.common.model.dtos.community.convenient.ConvenientProductSpecificationDTO;
import com.panzhihua.common.model.vos.community.convenient.ConvenientProductShelfVO;
import org.apache.commons.io.FilenameUtils;
import org.springframework.beans.BeanUtils;
@@ -234,6 +241,12 @@
    @ApiOperation(value = "便民服务商家后台新增产品")
    @PostMapping("/product/add")
    public R addProduct(@RequestBody @Validated(AddGroup.class) ConvenientProductDTO convenientProductDTO) {
        List<ConvenientProductSpecificationDTO> specificationDTOList = convenientProductDTO.getProductSpecificationDTOList();
        ArrayList<ConvenientProductSpecificationDTO> filteredSpecificationList = specificationDTOList.stream()
                .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(ConvenientProductSpecificationDTO::getName))), ArrayList::new));
        if (specificationDTOList.size() != filteredSpecificationList.size()) {
            return R.fail("规格名称重复!");
        }
        Long userId = this.getUserId();
        convenientProductDTO.setCreatedBy(userId);
        R<ConvenientMerchantVO> merchantInfo = communityService.getUserConvenientMerchantInfo(userId);
@@ -249,6 +262,12 @@
    @ApiOperation(value = "便民服务商家后台编辑产品")
    @PutMapping("/product/put")
    public R putProduct(@RequestBody @Validated(PutGroup.class) ConvenientProductDTO convenientProductDTO) {
        List<ConvenientProductSpecificationDTO> specificationDTOList = convenientProductDTO.getProductSpecificationDTOList();
        ArrayList<ConvenientProductSpecificationDTO> filteredSpecificationList = specificationDTOList.stream()
                .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(ConvenientProductSpecificationDTO::getName))), ArrayList::new));
        if (specificationDTOList.size() != filteredSpecificationList.size()) {
            return R.fail("规格名称重复!");
        }
        Long userId = this.getUserId();
        convenientProductDTO.setUpdatedBy(userId);
        R<ConvenientMerchantVO> merchantInfo = communityService.getUserConvenientMerchantInfo(userId);
springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/filter/StoreValidFilter.java
@@ -53,8 +53,9 @@
        boolean convenientLogin = "/convenient/login".equals(uri);
        boolean isConvenientReq = uri.contains("/convenient");
        boolean storeLogin = "/login".equals(uri);
        boolean isUpload = "/convenient/upload/file".equals(uri);
        if (isDoc) {
        if (isDoc || isUpload) {
            //放过swagger请求
        } else {
            if (!storeLogin && !isConvenientReq) {
springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java
@@ -260,6 +260,7 @@
                noLoginUrl.add("/api/applets/convenient/merchant/incr-consult");
                noLoginUrl.add("/api/applets/convenient/merchant/incr-view");
                noLoginUrl.add("/api/applets/convenient/product/incr-view");
                noLoginUrl.add("/api/shopbackstage/convenient/upload/file");
                if (noLoginUrl.contains(requestURI)) {
                    List<SimpleGrantedAuthority> authorities = new ArrayList<>();
                    authorities.add(new SimpleGrantedAuthority(SecurityConstants.ROLE_APPLETS));