发送用户自定义字段

master
赵嘉伟 4 years ago
parent 81d84df254
commit d11becff71

@ -80,6 +80,10 @@
<groupId>com.foreverwin.mesnac</groupId>
<artifactId>quality</artifactId>
</dependency>
<dependency>
<groupId>com.foreverwin.mesnac</groupId>
<artifactId>listener</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-quartz</artifactId>

@ -27,6 +27,7 @@ import com.foreverwin.mesnac.common.service.*;
import com.foreverwin.mesnac.common.util.ActiveMQUtil;
import com.foreverwin.mesnac.common.util.DateUtil;
import com.foreverwin.mesnac.common.util.StringUtil;
import com.foreverwin.mesnac.listener.mapper.UsrMapper;
import com.foreverwin.mesnac.meapi.dto.NcCodeDto;
import com.foreverwin.mesnac.meapi.mapper.*;
import com.foreverwin.mesnac.meapi.model.*;
@ -155,6 +156,9 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
@Autowired
private InspectionTaskService inspectionTaskService;
@Autowired
private UsrMapper usrMapper;
@Override
public IPage<AbnormalBill> selectPage(FrontPage<AbnormalBill> frontPage, AbnormalBill abnormalBill) {
@ -1056,12 +1060,16 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
if(nwaUsers != null && nwaUsers.size() <= 0){
throw new BaseException("消息发送失败,发送的用户组下面没有用户");
}
List<String> customFieldByUserId = usrMapper.findCustomFieldByUserId(site, nwaUsers);
if(customFieldByUserId != null && customFieldByUserId.size() <= 0){
throw new BaseException("消息发送失败,发送的用户组下面的自定义数据没有维护");
}
StringBuilder sendUsers = new StringBuilder();
for (int i = 0; i < nwaUsers.size(); i++) {
if(i == (nwaUsers.size() - 1)){
sendUsers.append(nwaUsers.get(i).getUserName());
for (int i = 0; i < customFieldByUserId.size(); i++) {
if(i == (customFieldByUserId.size() - 1)){
sendUsers.append(customFieldByUserId.get(i));
}else{
sendUsers.append(nwaUsers.get(i).getUserName()).append("|");
sendUsers.append(customFieldByUserId.get(i)).append("|");
}
}
activeMQUtil.wechatSendMessage(sendUsers.toString(),abnormalMessage.getContent());

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.foreverwin.mesnac.common.dto.UsrDto;
import com.foreverwin.mesnac.listener.model.SysUser;
import com.foreverwin.mesnac.listener.model.Usr;
import com.foreverwin.mesnac.meapi.model.NwaUser;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
@ -27,4 +28,7 @@ public interface UsrMapper extends BaseMapper<Usr> {
IPage findPage(IPage page,@Param("site")String site,@Param("user")String user);
List<String> findCustomFieldByUserId(@Param("site")String site, @Param("userList")List<NwaUser> userList);
}

@ -32,6 +32,7 @@
<resultMap id="usrDto" type="com.foreverwin.mesnac.common.dto.UsrDto">
<result column="USER_NAME" property="userName"/>
<result column="FULL_NAME" property="fullName"/>
<result column="WECHAT_ID" property="wechatId"/>
</resultMap>
@ -636,4 +637,18 @@
)
</if>
</select>
<select id="findCustomFieldByUserId" resultType="String">
SELECT cf.VALUE WECHAT_ID
FROM USR u
LEFT JOIN CUSTOM_FIELDS cf ON cf.HANDLE = u.HANDLE
<where>
u.SITE = #{site} AND
cf.VALUE IS NOT NULL AND
u.USER_ID IN
<foreach item="item" index="index" collection="userList" separator="," open="(" close=")">
UPPER(#{item.userName})
</foreach>
</where>
</select>
</mapper>

Loading…
Cancel
Save