GPT相关代码提交
This commit is contained in:
parent
b9625a5207
commit
6f090d7ee3
Binary file not shown.
29
com.awspaas.user.apps.gpt_interface/manifest.xml
Normal file
29
com.awspaas.user.apps.gpt_interface/manifest.xml
Normal file
@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<app xmlns="http://www.actionsoft.com.cn/app">
|
||||
<name>伊利GPT接口对接</name>
|
||||
<version>1.0</version>
|
||||
<buildNo>12</buildNo>
|
||||
<developer id="00000000000000000000000000000000" tablePrefix="EU" url="http://www.awspaas.com">AWSPaaS-EndUser</developer>
|
||||
<categoryVisible>true</categoryVisible>
|
||||
<description><![CDATA[对接伊利GPT接口应用]]></description>
|
||||
<details><![CDATA[]]></details>
|
||||
<installListener/>
|
||||
<pluginListener/>
|
||||
<startListener/>
|
||||
<stopListener/>
|
||||
<upgradeListener/>
|
||||
<uninstallListener/>
|
||||
<reloadable>true</reloadable>
|
||||
<requires/>
|
||||
<properties/>
|
||||
<allowStartup>true</allowStartup>
|
||||
<allowUpgradeByStore>true</allowUpgradeByStore>
|
||||
<depend versions="6.5" env="">com.actionsoft.apps.coe.pal</depend>
|
||||
<modelAdministrator/>
|
||||
<installDate>2024-09-30 15:25:40</installDate>
|
||||
<icon code="&#xe64f;" color="#009688"/>
|
||||
<productId/>
|
||||
<releaseDate>2024-09-30</releaseDate>
|
||||
<upgradeDate>2024-09-29 12:00:57</upgradeDate>
|
||||
</app>
|
||||
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<mobile-profile xmlns="http://www.actionsoft.com.cn/app">
|
||||
<osType></osType>
|
||||
<deviceType>universal</deviceType>
|
||||
<realAppId></realAppId>
|
||||
<realVersion>1.0</realVersion>
|
||||
<resourceType>common</resourceType>
|
||||
<resourceURI></resourceURI>
|
||||
<ssoType>sid</ssoType>
|
||||
<backupable>false</backupable>
|
||||
<cascadeRemove>true</cascadeRemove>
|
||||
<autoDistribute>false</autoDistribute>
|
||||
<trackId></trackId>
|
||||
</mobile-profile>
|
||||
@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<ccModel>
|
||||
<id>51d44dfa-b7c2-4422-9e51-fbd7b43e0218</id>
|
||||
<createUser>admin</createUser>
|
||||
<createTime>2024-09-23 15:23:09</createTime>
|
||||
<updateUser>admin</updateUser>
|
||||
<updateTime>2024-09-23 15:23:52</updateTime>
|
||||
<signature>tGOmxiTgjT/77UoYpSlq8Vc+hHPRoJWHdZexXc7zEpYuMNdhvSICeJnlc/RzRHGrnAnDbDtRxYtOiGaYhu68Qpdguiwbwk9rZfmMRYUv7FwmvS8qgI5pTyPJabB/ltDF</signature>
|
||||
<managed>false</managed>
|
||||
<name>GPT初始化接口</name>
|
||||
<type>httpApi</type>
|
||||
<group>service</group>
|
||||
<log>false</log>
|
||||
<properties>{"serviceId":"","serverType":"Java注解","ptype":"webapi","serviceImpl":"com.awspaas.user.apps.gpt_interface.restful.GPTRestFul","safetyCert":[],"flowControl":"","accessControl":"","desc":"","isSupportCors":true,"isAudit":true,"isLog":false,"apiData":[],"isSLA":false,"status.effect":true}</properties>
|
||||
<desc></desc>
|
||||
</ccModel>
|
||||
@ -1,8 +1,15 @@
|
||||
package com.awspaas.user.apps.gpt_interface.controller;
|
||||
|
||||
import com.actionsoft.apps.coe.pal.pal.repository.dao.CoeProcessLevelDaoFacotory;
|
||||
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryModel;
|
||||
import com.actionsoft.bpms.commons.htmlframework.HtmlPageTemplate;
|
||||
import com.actionsoft.bpms.commons.login.constant.LoginConst;
|
||||
import com.actionsoft.bpms.org.model.UserModel;
|
||||
import com.actionsoft.bpms.server.SSOUtil;
|
||||
import com.actionsoft.bpms.server.bind.annotation.Controller;
|
||||
import com.actionsoft.bpms.server.bind.annotation.Mapping;
|
||||
import com.actionsoft.bpms.util.DBSql;
|
||||
import com.actionsoft.sdk.local.SDK;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@ -20,6 +27,30 @@ public class GPTController {
|
||||
public String openRepositoryHome(String repositoryId){
|
||||
Map<String,Object> map = new HashMap<>();
|
||||
map.put("repositoryId", repositoryId);
|
||||
|
||||
//获取用户会话ID
|
||||
PALRepositoryModel plModel = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(repositoryId);
|
||||
String sid="";
|
||||
if(plModel!=null){
|
||||
String createUser = plModel.getCreateUser();
|
||||
UserModel userModel=SDK.getORGAPI().getUser(createUser);
|
||||
if(userModel.isClosed()==false){
|
||||
sid = new SSOUtil().registerClientSessionNoPassword(userModel.getUID(), "cn", "", LoginConst.DEVICE_PC, null);
|
||||
}else{
|
||||
String modifyUser = plModel.getModifyUser();
|
||||
UserModel modifyUserModel=SDK.getORGAPI().getUser(modifyUser);
|
||||
if(modifyUserModel.isClosed()==false){
|
||||
sid = new SSOUtil().registerClientSessionNoPassword(modifyUserModel.getUID(), "cn", "", LoginConst.DEVICE_PC, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
String url = SDK.getPortalAPI().getPortalUrl()+"/r/w?cmd=com.actionsoft.apps.coe.pal.publisher_publish_file_open&uuid="+repositoryId+"&sid="+sid+"&taskId="+getLastPublishTaskIdByModelId(repositoryId);
|
||||
map.put("linkUrl",url);
|
||||
return HtmlPageTemplate.merge("com.awspaas.user.apps.gpt_interface", "repositoryHome.html", map);
|
||||
}
|
||||
|
||||
public String getLastPublishTaskIdByModelId(String repositoryId) {
|
||||
String sql = "SELECT pl.TASKID FROM APP_ACT_COE_PAL_PUBLISH p, APP_ACT_COE_PAL_PUBLISH_LIST pl WHERE pl.pid = p.id AND pl.palrepositoryid = ? ORDER BY publishdate DESC";
|
||||
return DBSql.getString(sql,new Object[]{repositoryId});
|
||||
}
|
||||
}
|
||||
|
||||
@ -28,6 +28,8 @@ import javax.ws.rs.GET;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.QueryParam;
|
||||
import java.io.File;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.net.URLEncoder;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@ -57,19 +59,22 @@ public class GPTRestFul {
|
||||
String queryListSql = "";
|
||||
List<RowMap> maps = null;
|
||||
if(UtilString.isNotEmpty(repositoryId)){//如果查询Id参数不为空
|
||||
queryListSql= " SELECT ID,PLNAME,PLORDERINDEX FROM APP_ACT_COE_PAL_REPOSITORY WHERE ISPUBLISH = '1' AND ISUSE = '1' AND ID = ?";
|
||||
queryListSql= " SELECT ID,PLNAME,PLORDERINDEX FROM APP_ACT_COE_PAL_REPOSITORY WHERE ISPUBLISH = '1' AND ISUSE = '1' AND ID = ? AND PLMETHODID!='process.evc' AND PLMETHODID!='org.role' AND PLMETHODID!='control.kpi' ";
|
||||
maps = DBSql.getMaps(queryListSql, new Object[]{repositoryId});
|
||||
}else{
|
||||
queryListSql= " SELECT ID,PLNAME,PLORDERINDEX FROM APP_ACT_COE_PAL_REPOSITORY WHERE ISPUBLISH = '1' AND ISUSE = '1'";
|
||||
queryListSql= " SELECT ID,PLNAME,PLORDERINDEX FROM APP_ACT_COE_PAL_REPOSITORY WHERE ISPUBLISH = '1' AND ISUSE = '1' AND PLMETHODID!='process.evc' AND PLMETHODID!='org.role' AND PLMETHODID!='control.kpi' ";
|
||||
queryListSql = SQLPagination.getPaginitionSQL(queryListSql, (page - 1) * pageSize, pageSize);
|
||||
maps = DBSql.getMaps(queryListSql, new Object[]{});
|
||||
}
|
||||
for (RowMap map : maps) {
|
||||
JSONObject repositoryModel = new JSONObject();
|
||||
String thisRepositoryId = map.getString("ID");
|
||||
System.out.println("thisRepositoryId=========="+thisRepositoryId);
|
||||
repositoryModel.put("id",thisRepositoryId);
|
||||
repositoryModel.put("palName",map.getString("PLNAME"));
|
||||
System.out.println("palName============"+map.getString("PLNAME"));
|
||||
String taskId = getLastPublishTaskIdByModelId(thisRepositoryId);
|
||||
System.out.println("taskId============"+taskId);
|
||||
//String downloadUrlData= CallASLPUtil.callTranslateDocASLP(thisRepositoryId,taskId);
|
||||
repositoryModel.put("fileDownLoadUrl",outputReportDownload(uc,taskId,thisRepositoryId));
|
||||
repositoryModel.put("fileLinkText",map.getString("PLNAME"));
|
||||
@ -152,8 +157,16 @@ public class GPTRestFul {
|
||||
}
|
||||
String filename = docFile.getName();
|
||||
DCContext sourceDc = new DCContext(_uc, DCProfileManager.getDCProfile(sourceAppId, "output"), sourceAppId, model.getWsId(), taskId, filename);
|
||||
String downUrl = SDK.getConfAPI().getPortalUrl() + "/r/" + sourceDc.getDownloadURL().replace("./", "");
|
||||
return downUrl;
|
||||
String downUrl = SDK.getConfAPI().getPortalUrl() + "/r/" + sourceDc.getDownloadURL().replace("./", "").trim()+"&lastModified=0";
|
||||
|
||||
String downUrl2=SDK.getConfAPI().getPortalUrl() + "/r/df?groupValue="+sourceDc.getGroupValue()+"&fileValue="+ sourceDc.getFileValue().trim()+"&sid="+ _uc.getSessionId()+"&repositoryName=output&appId="+sourceAppId+"&attachment=true&fileNameShow="+sourceDc.getFileName()+"&fileName="+sourceDc.getFileName()+"&lastModified=0";
|
||||
|
||||
|
||||
System.out.println("1111111111"+URLEncoder.encode(downUrl2,"UTF-8"));
|
||||
|
||||
//System.out.println("downUrl2====="+downUrl2);
|
||||
|
||||
return downUrl2;
|
||||
|
||||
}
|
||||
}
|
||||
@ -168,4 +181,28 @@ public class GPTRestFul {
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 对中文字符进行UTF-8编码
|
||||
* @param source 要转义的字符串
|
||||
* @return
|
||||
* @throws UnsupportedEncodingException
|
||||
*/
|
||||
public static String tranformStyle(String source) throws UnsupportedEncodingException
|
||||
{
|
||||
char[] arr = source.toCharArray();
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for(int i = 0; i < arr.length; i++)
|
||||
{
|
||||
char temp = arr[i];
|
||||
sb.append(URLEncoder.encode("" + temp, "UTF-8"));
|
||||
continue;
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,30 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>模型文件</title>
|
||||
<!-- JQuery -->
|
||||
<script type="text/javascript" src="../commons/js/jquery/scripts/jquery.js"></script>
|
||||
<script type="text/javascript" src="../commons/js/jquery/scripts/jquery.textchange.js"></script>
|
||||
<script type="text/javascript" src="../commons/js/jquery/scripts/jquery.mousewheel.js"></script>
|
||||
<!-- AWS UI -->
|
||||
<link rel="stylesheet" type="text/css" href="../commons/css/awsui.css">
|
||||
<script type="text/javascript" src="../commons/js/awsui.js"></script>
|
||||
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
var repositoryId = '<#repositoryId>';
|
||||
var linkUrl='<#linkUrl>';
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="notificationCenterLayer" class="notification-container-outter">
|
||||
<#repositoryId>
|
||||
</div>
|
||||
</body>
|
||||
<script>
|
||||
$(function () {
|
||||
window.open(linkUrl);
|
||||
})
|
||||
</script>
|
||||
</html>
|
||||
@ -0,0 +1,42 @@
|
||||
/* style.css */
|
||||
#floatingChatIcon {
|
||||
position: fixed;
|
||||
bottom: 100px;
|
||||
right: 20px;
|
||||
cursor: pointer;
|
||||
z-index: 1000; /* 确保图标在内容之上 */
|
||||
}
|
||||
|
||||
#floatingChatIcon img {
|
||||
width: 50px; /* 根据你的图标大小调整 */
|
||||
height: auto;
|
||||
}
|
||||
|
||||
#chatWindow {
|
||||
position: fixed;
|
||||
bottom: 100px; /* 根据需要调整 */
|
||||
right: 20px;
|
||||
width: 300px; /* 聊天窗口的宽度 */
|
||||
background-color: white;
|
||||
border: 1px solid #ccc;
|
||||
padding: 20px;
|
||||
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
|
||||
z-index: 1001; /* 确保聊天窗口在图标之上 */
|
||||
}
|
||||
|
||||
.chatWindowContent {
|
||||
/* 可以添加更多样式来美化聊天窗口 */
|
||||
}
|
||||
|
||||
.sidebar {
|
||||
position: fixed;
|
||||
right: -300px; /* 初始位置在屏幕右侧之外 */
|
||||
top: 0;
|
||||
width: 300px;
|
||||
height: 100%;
|
||||
background-color: #fff;
|
||||
transition: right 0.3s ease; /* 平滑过渡效果 */
|
||||
}
|
||||
.sidebar.visible {
|
||||
right: 0; /* 滑入屏幕 */
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 950 B |
Loading…
Reference in New Issue
Block a user