孙永军 1 년 전
부모
커밋
33b708a37d

+ 2 - 0
src/main/java/com/smcic/api/epg/dto/DisableDTO.java

@@ -12,6 +12,8 @@ public class DisableDTO {
 
     private Integer channelId;
 
+    private String title;
+
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime startTime;
 

+ 1 - 1
src/main/java/com/smcic/api/epg/mapper/ProgramMapper.java

@@ -12,5 +12,5 @@ public interface ProgramMapper extends BaseMapper<Program> {
 
     List<Program> listByChannel(Integer channelId, LocalDateTime startTime, LocalDateTime endTime);
 
-    Program byStartAndChannel(Integer channelId, LocalDateTime startTime);
+    Program byStartAndChannel(Integer channelId, LocalDateTime startTime, String title);
 }

+ 5 - 3
src/main/java/com/smcic/api/epg/service/impl/EpgDisableConfigService.java

@@ -37,21 +37,23 @@ public class EpgDisableConfigService extends ServiceImpl<EpgDisableConfigMapper,
         if(null == channel){
             throw new APIException("不存在的频率频道");
         }
-        Program program = programService.getBaseMapper().byStartAndChannel(disableDTO.getChannelId(), disableDTO.getStartTime());
+        Program program = programService.getBaseMapper().byStartAndChannel(disableDTO.getChannelId(), disableDTO.getStartTime(), disableDTO.getTitle());
 
         if(null == program){
             throw new APIException("不存在的节目");
         }
         EpgDisableConfig epgDisableConfig;
 
-        epgDisableConfig = lambdaQuery().eq(EpgDisableConfig::getChannelId, disableDTO.getChannelId()).eq(EpgDisableConfig::getStartTime, disableDTO.getStartTime()).one();
+        epgDisableConfig = lambdaQuery().eq(EpgDisableConfig::getChannelId, disableDTO.getChannelId())
+                .eq(EpgDisableConfig::getStartTime, disableDTO.getStartTime())
+                .eq(EpgDisableConfig::getProgram, disableDTO.getTitle()).one();
 
         if(epgDisableConfig == null){
             epgDisableConfig = new EpgDisableConfig();
             epgDisableConfig.setChannelId(disableDTO.getChannelId());
             epgDisableConfig.setChannelName(channel.getTitle());
             epgDisableConfig.setStartTime(disableDTO.getStartTime());
-            epgDisableConfig.setProgram(program.getTitle());
+            epgDisableConfig.setProgram(disableDTO.getTitle());
             epgDisableConfig.setStatus(disableDTO.getStatus());
             save(epgDisableConfig);
         }else {

+ 1 - 1
src/main/resources/com/smcic/ProgramMapper.xml

@@ -10,6 +10,6 @@
 
     <select id="byStartAndChannel" resultType="com.smcic.api.epg.entity.Program">
         select p.id, p.Title, p.Category, p.start_time, p.end_time, p.Broadcast_Date, c.Title channelName from channel_s4_a_j p, channel_s76_a_a c
-        where c.GlobalId = #{channelId} and c.epgchannelid = p.Category and p.start_time = #{startTime}
+        where c.GlobalId = #{channelId} and c.epgchannelid = p.Category and p.start_time = #{startTime} and p.Title = #{title}
     </select>
 </mapper>