Bladeren bron

语音素材1-10

三七 1 week geleden
bovenliggende
commit
507116d171

+ 1 - 1
fs-service/src/main/java/com/fs/company/service/impl/CompanyUserServiceImpl.java

@@ -490,7 +490,7 @@ public class CompanyUserServiceImpl implements ICompanyUserService
         //新增用户需要修改密码
         redisCache.setCacheObject("newCompanyUser:" + user.getCompanyId() + ":" +user.getUserName(),user.getUserId());
         //语音素材1-10
-        voiceService.insertQwSopTempVoiceModel(user.getUserId());
+        voiceService.insertQwSopTempVoiceModelNewCompanyUser(user.getUserId());
 
         return rows;
     }

+ 4 - 0
fs-service/src/main/java/com/fs/sop/mapper/QwSopTempVoiceMapper.java

@@ -5,6 +5,8 @@ import com.fs.common.annotation.DataSource;
 import com.fs.common.enums.DataSourceType;
 import com.fs.sop.domain.QwSopTempVoice;
 import org.apache.ibatis.annotations.Param;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -76,6 +78,7 @@ public interface QwSopTempVoiceMapper extends BaseMapper<QwSopTempVoice>{
 
     List<QwSopTempVoice> listVoice(@Param("tempId") String tempId, @Param("salesIds") List<Long> salesIds);
 
+    @DataSource(DataSourceType.SOP)
     void insertBatch(@Param("list") List<QwSopTempVoice> list);
 
     List<QwSopTempVoice> getVoice(@Param("companyUserId") Long companyUserId, @Param("companyId") Long companyId, @Param("tempId") String tempId, @Param("rulesId") Long rulesId);
@@ -88,6 +91,7 @@ public interface QwSopTempVoiceMapper extends BaseMapper<QwSopTempVoice>{
 
     List<QwSopTempVoice> selectAllByUserIds(@Param("userIdList") List<Long> userIdList);
 
+    @DataSource(DataSourceType.SOP)
     QwSopTempVoice selectQwSopTempVoiceByCompanyUserIdAndVoiceTxt(@Param("companyUserId") Long companyUserId,@Param("voiceTxt") String voiceTxt);
 
     QwSopTempVoice selectQwSopTempVoiceByCompanyUserIdAndQwUserId(@Param("companyUserId") Long companyUserId,@Param("qwUserId") Long qwUserId);

+ 1 - 0
fs-service/src/main/java/com/fs/sop/service/IQwSopTempVoiceService.java

@@ -93,6 +93,7 @@ public interface IQwSopTempVoiceService extends IService<QwSopTempVoice>{
     List<QwSopTempVoice> selectQwSopTempVoiceListLimit(QwSopTempVoice sopTempVoice);
 
     void insertQwSopTempVoiceModel(Long userId);
+    void insertQwSopTempVoiceModelNewCompanyUser(Long userId);
 
     QwSopTempVoice selectQwSopTempVoiceByIdAndUserVoiceUrl(Long id);
 

+ 28 - 0
fs-service/src/main/java/com/fs/sop/service/impl/QwSopTempVoiceServiceImpl.java

@@ -374,6 +374,34 @@ public class QwSopTempVoiceServiceImpl extends ServiceImpl<QwSopTempVoiceMapper,
         }
     }
 
+    /**
+     * 在用户上传声纹时生成语音模板
+     * @param userId
+     */
+    @Override
+    @DataSource(DataSourceType.SOP)
+    @Transactional(propagation = Propagation.REQUIRES_NEW)
+    public void insertQwSopTempVoiceModelNewCompanyUser(Long userId) {
+        List<SysDictData> dictCache = getDictCache("sys_fastgpt_voice_model");
+        if(dictCache != null){
+            List<QwSopTempVoice> qwUserIdList = new ArrayList<>();
+
+            for (SysDictData sysDictData : dictCache) {
+                QwSopTempVoice qwSopTempVoice = new QwSopTempVoice();
+                qwSopTempVoice.setVoiceTxt(sysDictData.getDictLabel());
+                qwSopTempVoice.setCompanyUserId(userId);
+                QwSopTempVoice sopTempVoice = qwSopTempVoiceMapper.selectQwSopTempVoiceByCompanyUserIdAndVoiceTxt(userId, sysDictData.getDictLabel());
+                if(sopTempVoice == null){
+                    qwSopTempVoice.setRecordType(2);
+                    qwUserIdList.add(qwSopTempVoice);
+                }
+            }
+            if(!qwUserIdList.isEmpty()){
+                qwSopTempVoiceMapper.insertBatch(qwUserIdList);
+            }
+        }
+    }
+
     @Override
     @DataSource(DataSourceType.SOP)
     public QwSopTempVoice selectQwSopTempVoiceByIdAndUserVoiceUrl(Long id) {