Browse Source

2月7日,指定执行人收到消息

dev
wangguorui 2 weeks ago
parent
commit
b2821983d2
  1. 1
      src/main/java/com/example/demo/RabbitMQ/CoinRechargeAspect.java
  2. 2
      src/main/java/com/example/demo/config/RabbitMQConfig.java
  3. 9
      src/main/java/com/example/demo/controller/cash/MessageController.java
  4. 2
      src/main/java/com/example/demo/domain/vo/coin/Messages.java
  5. 2
      src/main/java/com/example/demo/mapper/cash/MessageMapper.java
  6. 4
      src/main/java/com/example/demo/mapper/coin/OperationLogMapper.java
  7. 2
      src/main/java/com/example/demo/service/cash/MessageService.java
  8. 9
      src/main/java/com/example/demo/serviceImpl/cash/CashRefundServiceImpl.java
  9. 4
      src/main/java/com/example/demo/serviceImpl/cash/MessageServiceImpl.java
  10. 4
      src/main/resources/cashMapper/MessageMapper.xml

1
src/main/java/com/example/demo/RabbitMQ/CoinRechargeAspect.java

@ -81,7 +81,6 @@ public class CoinRechargeAspect {
messageDTO.setName(name); messageDTO.setName(name);
messageDTO.setTitle(action); messageDTO.setTitle(action);
messageDTO.setDesc(username + "有一条金币充值消息需要处理"); messageDTO.setDesc(username + "有一条金币充值消息需要处理");
messageDTO.setQueryId(6);
// 发送消息到 RabbitMQ不等待 // 发送消息到 RabbitMQ不等待
try { try {

2
src/main/java/com/example/demo/config/RabbitMQConfig.java

@ -19,7 +19,7 @@ public class RabbitMQConfig {
public static final String LOG_EXCHANGE = "operation_log_exchange"; public static final String LOG_EXCHANGE = "operation_log_exchange";
public static final String CASH_COLLECTION_QUEUE = "cash_collection_queue"; public static final String CASH_COLLECTION_QUEUE = "cash_collection_queue";
public static final String CASH_COLLECTION_EXCHANGE = "cash_collection_exchange"; public static final String CASH_COLLECTION_EXCHANGE = "cash_collection_exchange";
public static final String CASH_REFUND_QUEUE = "cash_refund_exchange";
public static final String CASH_REFUND_QUEUE = "cash_refund_queue";
public static final String CASH_REFUND_EXCHANGE = "cash_refund_exchange"; public static final String CASH_REFUND_EXCHANGE = "cash_refund_exchange";
public static final String COIN_REFUND_QUEUE = "coin_refund_queue"; public static final String COIN_REFUND_QUEUE = "coin_refund_queue";
public static final String COIN_REFUND_EXCHANGE = "coin_refund_exchange"; public static final String COIN_REFUND_EXCHANGE = "coin_refund_exchange";

9
src/main/java/com/example/demo/controller/cash/MessageController.java

@ -56,12 +56,15 @@ public class MessageController {
List<String> userMarkets = Arrays.asList(StringUtils.split(admin.getMarkets(), ",")); List<String> userMarkets = Arrays.asList(StringUtils.split(admin.getMarkets(), ","));
List<String> markets = marketService.getMarketIds(userMarkets); List<String> markets = marketService.getMarketIds(userMarkets);
// 获取当前用户的 executor
Integer executor = Integer.valueOf(admin.getAccount());
// 解析语言代码 // 解析语言代码
String languageCode = parseLanguageCode(lang); String languageCode = parseLanguageCode(lang);
// 如果不是中文环境将查询条件中的翻译文本转换为中文简体 // 如果不是中文环境将查询条件中的翻译文本转换为中文简体
if (!"zh".equalsIgnoreCase(languageCode) && !"zh_cn".equalsIgnoreCase(languageCode)) { if (!"zh".equalsIgnoreCase(languageCode) && !"zh_cn".equalsIgnoreCase(languageCode)) {
List<com.example.demo.domain.vo.coin.Messages> messages = messageService.getMessage(markets, status.getStatus());
for (com.example.demo.domain.vo.coin.Messages message : messages) {
List<Messages> messages = messageService.getMessage(markets, status.getStatus(), executor);
for (Messages message : messages) {
convertTranslatedFieldsToChinese(message, languageCode); convertTranslatedFieldsToChinese(message, languageCode);
} }
} }
@ -71,7 +74,7 @@ public class MessageController {
markets = null; markets = null;
} }
List<com.example.demo.domain.vo.coin.Messages> messages = messageService.getMessage(markets, status.getStatus());
List<Messages> messages = messageService.getMessage(markets, status.getStatus(), executor);
// 对返回结果进行多语言转换 // 对返回结果进行多语言转换
translateMessages(messages, lang); translateMessages(messages, lang);
return Result.success(messages); return Result.success(messages);

2
src/main/java/com/example/demo/domain/vo/coin/Messages.java

@ -34,5 +34,5 @@ public class Messages {
private Integer flag; private Integer flag;
private String marketName; private String marketName;
private Integer queryId; private Integer queryId;
private Integer executor; //执行人OA号
} }

2
src/main/java/com/example/demo/mapper/cash/MessageMapper.java

@ -16,7 +16,7 @@ import java.util.List;
**/ **/
@Mapper @Mapper
public interface MessageMapper { public interface MessageMapper {
List<Messages> getMessage(List<String> markets, List<Integer> status);
List<Messages> getMessage(List<String> markets, List<Integer> status, Integer executor);
void update(Integer id); void update(Integer id);
} }

4
src/main/java/com/example/demo/mapper/coin/OperationLogMapper.java

@ -10,8 +10,8 @@ public interface OperationLogMapper {
@Insert("INSERT INTO operation_log (user_id, username, action, ip, method, args, create_time) " + @Insert("INSERT INTO operation_log (user_id, username, action, ip, method, args, create_time) " +
"VALUES (#{userId}, #{username}, #{action}, #{ip}, #{method}, #{args}, NOW())") "VALUES (#{userId}, #{username}, #{action}, #{ip}, #{method}, #{args}, NOW())")
void insertLog(OperationLog log); void insertLog(OperationLog log);
@Insert("INSERT INTO message (jwcode, name, title, `desc`, status, type, type_id, market, query_id) " +
"VALUES (#{jwcode}, #{name}, #{title}, #{desc}, #{status}, #{type}, #{typeId}, #{market}, #{queryId})")
@Insert("INSERT INTO message (jwcode, name, title, `desc`, status, type, type_id, market, query_id, executor) " +
"VALUES (#{jwcode}, #{name}, #{title}, #{desc}, #{status}, #{type}, #{typeId}, #{market}, #{queryId}, #{executor})")
void insertMessage(Messages message); void insertMessage(Messages message);
@Options( @Options(
useGeneratedKeys = true, // 告诉 MyBatis 使用数据库生成的主键 useGeneratedKeys = true, // 告诉 MyBatis 使用数据库生成的主键

2
src/main/java/com/example/demo/service/cash/MessageService.java

@ -16,7 +16,7 @@ import java.util.List;
**/ **/
@Service @Service
public interface MessageService { public interface MessageService {
List<Messages> getMessage(List<String> markets, List<Integer> status);
List<Messages> getMessage(List<String> markets, List<Integer> status, Integer executor);
void update(Integer id) throws Exception; void update(Integer id) throws Exception;
} }

9
src/main/java/com/example/demo/serviceImpl/cash/CashRefundServiceImpl.java

@ -23,6 +23,7 @@ import com.example.demo.mapper.coin.RefundMapper;
import com.example.demo.service.cash.RefundService; import com.example.demo.service.cash.RefundService;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -47,7 +48,7 @@ import static org.apache.commons.lang3.StringUtils.substring;
* @Version 1.0 * @Version 1.0
**/ **/
@Service @Service
@Slf4j
public class CashRefundServiceImpl implements RefundService { public class CashRefundServiceImpl implements RefundService {
@Autowired @Autowired
@ -447,7 +448,11 @@ public class CashRefundServiceImpl implements RefundService {
String marketName = marketMapper.getMarketNameById(String.valueOf(message.getMarket())); String marketName = marketMapper.getMarketNameById(String.valueOf(message.getMarket()));
message.setMarketName(marketName); message.setMarketName(marketName);
message.setQueryId(cashRecordDTO.getStatus() != 32 ? 115:99); message.setQueryId(cashRecordDTO.getStatus() != 32 ? 115:99);
if (cashRecordDTO.getStatus() != 32) {
log.info("Setting executor to: {}", cashRecordDTO.getExecutor());
message.setExecutor(cashRecordDTO.getExecutor());
log.info("Executor after setting: {}", message.getExecutor());
}
rabbitTemplate.convertAndSend(RabbitMQConfig.CASH_REFUND_EXCHANGE, "cash.refund.save", message); rabbitTemplate.convertAndSend(RabbitMQConfig.CASH_REFUND_EXCHANGE, "cash.refund.save", message);
} }
return (result > 0 ? Result.success("提交成功") : Result.error("提交失败")).getCode(); return (result > 0 ? Result.success("提交成功") : Result.error("提交失败")).getCode();

4
src/main/java/com/example/demo/serviceImpl/cash/MessageServiceImpl.java

@ -23,11 +23,11 @@ public class MessageServiceImpl implements MessageService {
@Autowired @Autowired
private MessageMapper messageMapper; private MessageMapper messageMapper;
@Override @Override
public List<Messages> getMessage(List<String> markets, List<Integer> status) {
public List<Messages> getMessage(List<String> markets, List<Integer> status,Integer executor) {
if(status== null|| status.size()==0){ if(status== null|| status.size()==0){
status.add(99); status.add(99);
} }
return messageMapper.getMessage(markets, status) ;
return messageMapper.getMessage(markets, status, executor) ;
} }
@Override @Override

4
src/main/resources/cashMapper/MessageMapper.xml

@ -20,6 +20,7 @@
m.flag, m.flag,
m.cz_time, m.cz_time,
m.query_id, <!-- 🔍 添加 queryId 字段 --> m.query_id, <!-- 🔍 添加 queryId 字段 -->
m.executor, <!-- 👤 添加 executor 字段 -->
mk.name AS market_name <!-- ✅ market.name --> mk.name AS market_name <!-- ✅ market.name -->
FROM message m FROM message m
LEFT JOIN market mk ON m.market = mk.id LEFT JOIN market mk ON m.market = mk.id
@ -37,6 +38,9 @@
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="executor != null">
AND m.executor = #{executor}
</if>
</where> </where>
ORDER BY m.cz_time DESC ORDER BY m.cz_time DESC
</select> </select>
Loading…
Cancel
Save