作者 钟来

模块整理

... ... @@ -10,7 +10,10 @@ import com.zhonglai.luhui.dao.service.PublicService;
import com.zhonglai.luhui.openai.dto.GptMessage;
import com.zhonglai.luhui.openai.dto.UserFlowPacketRemainLog;
import com.zhonglai.luhui.openai.utils.UnitPriceCountUtil;
import com.zhonglai.luhui.security.dto.OpenAiLoginUser;
import com.zhonglai.luhui.security.dto.OpenAiUserInfo;
import com.zhonglai.luhui.security.service.TokenService;
import com.zhonglai.luhui.security.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
... ... @@ -26,6 +29,10 @@ public class CompleteCallbackImpl implements CompleteCallback {
@Autowired
private VipServiceImpl vipService;
@Autowired
private TokenService tokenService;
@Override
public void sseChatEnd(int recordId,long tokens,String contents) {
BigDecimal[] bs = vipService.getUnitprice();
... ... @@ -66,8 +73,9 @@ public class CompleteCallbackImpl implements CompleteCallback {
stringBuffer.append(gptMessage.getCompletion_tokens());
stringBuffer.append(";");
OpenAiUserInfo openAiUserInfo = publicService.getObjectForTableName(OpenAiUserInfo.class,"id",gptMessage.getUser_id()+"","`lk_openai`.`user_info`");
openAiUserInfo.setFlow_packet_remain(openAiUserInfo.getFlow_packet_remain()-upGptMessage.getTotal_tokens().intValue());
stringBuffer.append("剩余代币:");
stringBuffer.append(openAiUserInfo.getFlow_packet_remain()-upGptMessage.getTotal_tokens());
stringBuffer.append(openAiUserInfo.getFlow_packet_remain());
UserFlowPacketRemainLog userFlowPacketRemainLog = new UserFlowPacketRemainLog();
userFlowPacketRemainLog.setDescribe(stringBuffer.toString());
... ... @@ -79,6 +87,9 @@ public class CompleteCallbackImpl implements CompleteCallback {
publicService.updateBySql("UPDATE `lk_openai`.`user_info` SET flow_packet_remain=flow_packet_remain-" + userFlowPacketRemainLog.getTotal_tokens() + " WHERE id=" + gptMessage.getUser_id());
OpenAiLoginUser userInfo = (OpenAiLoginUser) SecurityUtils.getLoginUser();
userInfo.setOpenAiUserInfo(openAiUserInfo);
tokenService.setLoginUser(userInfo);
}
@Override
... ...