From 43f0e69715099cfc8c8b8ea5284b874bfad14400 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期二, 19 八月 2025 10:49:28 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/main/java/org/jeecg/modules/andon/service/impl/AndonResponseConfigServiceImpl.java | 44 +++++++++++++++++++++++++++++++++++++++----- 1 files changed, 39 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/jeecg/modules/andon/service/impl/AndonResponseConfigServiceImpl.java b/src/main/java/org/jeecg/modules/andon/service/impl/AndonResponseConfigServiceImpl.java index c895470..5129363 100644 --- a/src/main/java/org/jeecg/modules/andon/service/impl/AndonResponseConfigServiceImpl.java +++ b/src/main/java/org/jeecg/modules/andon/service/impl/AndonResponseConfigServiceImpl.java @@ -3,7 +3,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang.StringUtils; +import org.apache.shiro.SecurityUtils; +import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.andon.dto.AndonButtonDTO; +import org.jeecg.modules.andon.dto.AndonOrdeDto; import org.jeecg.modules.andon.entity.AndonButtonConfig; import org.jeecg.modules.andon.entity.AndonOrder; import org.jeecg.modules.andon.entity.AndonResponseConfig; @@ -50,12 +53,34 @@ } @Override - public List<AndonButtonDTO> queryAndonButtonList(String factoryId) { - return Collections.emptyList(); + public String getProductionLineIdByButtonId(String buttonId) { + QueryWrapper<AndonResponseConfig> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("button_id", buttonId); + AndonResponseConfig config = this.getOne(queryWrapper); + return config != null ? config.getFactoryId() : null; } @Override - public void sendAndonNotification(AndonButtonDTO andonButtonDTO) { + public String getResponderByButtonId(String buttonId,String factoryId) { + QueryWrapper<AndonResponseConfig> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("button_id", buttonId); + queryWrapper.eq("factory_id", factoryId); // 鍋囪factory_id瀵瑰簲浜х嚎ID + AndonResponseConfig config = this.getOne(queryWrapper, false); + return config != null ? config.getFirsterResponder() : null; + } + + @Override + public AndonResponseConfig getResponseConfigByButtonIdAndFactoryId(String buttonId, String factoryId) { + QueryWrapper<AndonResponseConfig> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("button_id", buttonId); + queryWrapper.eq("factory_id", factoryId); + // 浣跨敤false鍙傛暟锛屽綋鏌ヨ鍒板鏉¤褰曟椂涓嶄細鎶涘嚭寮傚父锛岃�屾槸杩斿洖绗竴鏉� + return this.getOne(queryWrapper, false); + } + + + @Override + public void sendAndonNotification(AndonOrdeDto andonButtonDTO) { /** * 1. 楠岃瘉宸ュ崟鐘舵�� */ @@ -63,16 +88,25 @@ log.warn("璇锋眰鍙傛暟涓虹┖"); throw new IllegalArgumentException("璇锋眰鍙傛暟涓嶈兘涓虹┖"); } + /** * 2. 鑾峰彇鍝嶅簲閰嶇疆 */ - AndonResponseConfig andonResponseConfig = this.getById(andonButtonDTO.getId()); + AndonResponseConfig andonResponseConfig = getResponseConfigByButtonIdAndFactoryId(andonButtonDTO.getButtonId(), andonButtonDTO.getFactoryId()); - AndonOrder andonOrder = andonOrderService.getById(andonButtonDTO.getOrderIds()); + AndonOrder andonOrder = andonOrderService.getById(andonButtonDTO.getId()); if (andonOrder == null) { log.warn("鏈壘鍒癐D涓篬{}]鐨勫畨鐏鍗�"); throw new IllegalArgumentException("鏈壘鍒板搴旂殑瀹夌伅璁㈠崟"); } + // 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛 + LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + if (loginUser != null) { + log.warn("鏈壘鍒板綋鍓嶇敤鎴�"); + + } + assert loginUser != null; + andonOrder.setResponder(loginUser.getId()); String orderStatus = andonOrder.getOrderStatus(); andonButtonDTO.setOrderStatus(orderStatus); if (andonResponseConfig == null) { -- Gitblit v1.9.3