Skip to content

本文以演示环境如下:

操作系统系统类型作者
kylinOSx86_64张世平

安装准备

  • IOS,安卓手机协作通下载二维码:

①前期准备

1.一个映射到外网的端口;
2.已部署好mis系统,且可以正常进入首页;
3.准备要部署的移动端代码,示例:PMwise6-202403;
Advert:移动端首页顶部的滑动图片,静态图片文件
PDFviewer:PDFviewer预览插件源码
CorpResFolder:移动端图片新闻列表生成缩略图的存放路径
Login:钉钉/企业微信单点登录静态页面
Interface:移动端api发布后代码文件
menuIcons:移动端首页菜单图标
officemobile:移动端前端页面【如果为空,联系张世平,提供移动端地址】
userIcons:协作通生成头像存放目录

②工具准备(连接访问linux系统的工具)

WindTerm,远程访问Linux系统,输入命令使用;
下载地址:https://sh.goodwaysoft.com:8257/WindTerm_2.6.0_Prerelease_2_Windows_Portable_x86_64.zip
WinSCP,远程访问Linux系统,复制代码文件、修改Nginx配置项使用;
下载地址:https://sh.goodwaysoft.com:8257/WinSCP-6.1.1-Setup.exe
使用方法:
用WindTerm、WinSCP远程连接Linux系统
解压WindTerm后,双击运行WindTerm.exe
在会话页面,右键‘新建会话’
主机:(H) Linux系统IP地址;端口:(P) 22 默认端口,可修改;OneKey:设置Linux系统的用户名,密码
添加完成后,双击会话列表中的linux系统地址,进入linux命令页面;
注意:双击linux系统地址时,此处需要下拉选择设置的密码;
WinSCP远程连接Linux系统,在‘新建标签页’,添加Linux的访问方式,配置方式同WindTerm一样

③开放端口

提供移动端的端口,加入到防火墙出入站中,示例:8001

firewall-cmd --zone=public --add-port=**8001**/tcp --permanent

重启防火墙:

systemctl restart firewalld

查看端口:

firewall-cmd --zone=public --list-ports

搭建移动端

①复制代码到Linux

使用WinSCP远程工具,把代码复制到linux系统中,示例:/product/PMwise6.0/YDD/publish
interface:移动端发布后的api代码
officemobile:移动端前端页面,静态页面文件

②修改接口配置文件

修改interface下的appsettings.json文件,注意只需修改红框中的内容。

③PMwise相关配置

"IsDotnet6PMWise": true, //是否为6.0平台
"FlowApiUrl": "http://10.10.1.112:8253/WorkFlow/api/", //流程API服务器(审批任务)
"ListDefApiHost": "http://10.10.1.112:8253/", //列表定义服务器(台账权限过滤)
"UserResApiUrl": "http://10.10.1.112:8253/Base/api/ResApi/", //用户权限服务器 (面板功能权限使用)
"HRApiUrl": "http://10.10.1.112:8253/HR/api/", //人力API服务器(考勤)
"ImageStore": "http://10.10.1.112:8253", //获取新闻详情页面图片
"FileStoreApiUrl": "http://10.10.1.112:8253/MvcConfig/api/FileStoreAPI/",
"FileStore": "http://10.10.1.112:8253/FileStore/Services/OuterService.asmx",
"FileStoreHost": "http://10.10.1.112:8253", //FileStore服务器地址

④首页图标配置路径/日志/绑定码

"IconUrl": "", //Nginx反向代理使用,指向移动端Nginx监听端口
"Log4NetPath": "D://YDT4.0Logs", //日志地址
"BindCode": "gbcs",//协作通登录时绑定码,提供移动端地址,联系张世平申请

⑤数据库配置

"DBType": "SqlServer",//数据库类型SqlServer
"Base": "data source=10.10.1.242,1408\SQL2008;Initial Catalog=PMWise_Base;User ID=sa;PWD=123.zxc;Encrypt=True;TrustServerCertificate=True;Pooling=true;Min Pool Size=1;",
10.10.1.242,1408\SQL2008,SqlServer数据库服务器名称,注意此处用\斜杠
PMWise_Base,数据库库名称
Sa,数据库登录名
123.zxc,数据库登录密码
其它数据库连接,请参考Base库配置方式修改

⑥协作通配置

"SSOFrom": "ydt",
协作通使用,嵌入平台: ydt

修改Nginx配置

1.查看Nginx安装路径

whereis nginx

/etc/nginx,Nginx配置文件所在路径
/usr/sbin,Nginx启动文件所在路径
2.使用WinSCP远程工具,进入到/etc/nginx文件夹,双击打开nginx.conf文件,增加配置项

    #PMwise6.0-移动端;
    server {
        listen       8100;
        server_name  localhost;

		location / { 
			root /product/PMwise6.0/YDD/publish; #指向移动端代码路径
			index index.html index.htm; 
		}

		# 代理自己的项目
		location /officemobile {
			alias	/product/PMwise6.0/YDD/publish/officemobile;#指向移动端【前端】代码路径
			index	index.html;
			# autoindex on;
			try_files  $uri $uri/ /officemobile/index.html;   #解决刷新404
		}
			
		# 配置代理vite中的跨域
		location /interface {
			rewrite "^/interface/(.*)$" /$1 break ; 
			proxy_pass	http://localhost:8002;#指向移动端API接口地址
		}
        
    }

设置移动端API接口开机自启

1.使用WinSCP远程工具,进入到/etc/systemd/system文件夹,新建文件YDD_interface.service
2.使用WindTerm.exe工具查看dotnet安装路径

which dotnet

输出:/usr/share/dotnet/dotnet
显示dotnet的安装路径
3.修改YDD_interface.service文件

[Unit]# Unit 文件描述
Description=YDD
[Service]# Service 配置参数
User=root
Type=simple
GuessMainPID=true
# 自启动项目所在的位置路径
WorkingDirectory=/product/PMwise6.0/YDD/publish/interface
#dotnet环境变量
Environment=DOTNET_CLI_HOME=/usr/share/dotnet/dotnet
# 启动移动端API接口,此处http://localhost:8002,对应Nginx配置项移动端的api接口
ExecStart=/usr/share/dotnet/dotnet YDDAPI.Web.Entry.dll --urls http://localhost:8002
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target

4.设置开机自启 注册并启动启动服务

sudo systemctl enable YDD_interface.service

(启动服务)

sudo systemctl start YDD_interface.service

检查服务状态:

sudo systemctl status YDD_interface.service

重启服务:

sudo systemctl restart YDD_interface.service

检查服务状态:

sudo systemctl status YDD_interface.service

关闭服务:

sudo systemctl stop YDD_interface.service

配置调试地址

1.进入Mis系统,在**‘系统管理’->‘系统定义工具’->‘移动菜单定义’->‘单点登录配置’**中,修改‘调试’中的地址
此处只需修改‘移动端跳转路径’,‘电脑端跳转路径’
移动端跳转路径:修改为配置移动端Nginx地址,只需修改http+IP+端口号;
电脑端跳转路径:修改为电脑Mis端跳转地址,只需修改url中的http+IP+端口号,其它不动;
2.修改调试地址:
https://sh.goodwaysoft.com:8257/interface/api/auth/login?EntryMenu=mainindexgbcs&SSOFrom=debug&code=gwadmin
https://sh.goodwaysoft.com:8257,移动端站点地址
EntryMenu=mainindexgbcs,移动菜单定义->单点登录配置,对应的编号字段
code=gwadmin系统Code账号

浏览器上访问效果如图:

验证协作通配置是否正常

1.打开下载的协作通,输入绑定码;
2.在登录页面,输入账号,密码,此处的账号/密码,对应Mis系统中的账号/密码;
3.登录后进入移动端首页,说明协作通部署成功;

消息、任务推送定时作业配置

1.修改消息、任务推送定时作业的配置文件app.json,如图:
数据库链接直接从移动端API接口的appsettings.json中复制;

①单点登录配置

    "SSOFrom": "ydt",//修改ydt,ydt代表推送协作通任务及消息
    //移动端单点登录页面地址
    "SSOUrl": "https://sh.goodwaysoft.com:8257/interface/api/auth/login",

②任务/消息推送

    //是否推送任务
    "Task_IsPush": "true",
    //钉钉任务推送最后时间
    "Task_LastPushTime": "2023-03-19 00:00:00 000",
    //是否推送系统消息
    "Msg_IsPush": "true",
    //通知推送最后时间
    "Msg_LastPushTime": "2023-01-29 00:00:00 000",
    //消息执行页面菜单编号
    "Msg_EntryMenu": "push_msg",
    //是否推送系统提醒
    "Alarm_IsPush": "true",
    //钉钉通知推送最后时间
    "Alarm_LastPushTime": "2020-6-19",
    "Alarm_EntryMenu": "push_alarm",

③协作通配置

	//绑定码
	"YDT_BindCode": "gbcs",
	//华为推送-华为密钥
	"YDT_HuaWei_AppSecret": "85a0283147b2bfc127a82d661e569f8a5b9b1b5b63f3447d657e88cdbef6a163",
	//华为AppId
	"YDT_HuaWei_AppId": "102528781",
	//小米密钥
	"YDT_Xiaomi_AppSecret": "5iS89PMNTqVLJBUyJK538w==",
	//极光推送
	"YDT_JPush_AppKey": "1e2851380f1c5731b1ffd6e4",
	"YDT_JPush_MasterSecret": "21ea3c1fc0568efbf4f7ee9c",
	"YDT_JPush_IsProduct": "false",
	//极光推送appstroe ios版
	"YDT_Appstroe_JPush_AppKey": "a0f05735446afdaf77e9b99d",
	"YDT_Appstroe_JPush_MasterSecret": "121abea5a4248a958dc3624f",
	"YDT_Appstroe_JPush_IsProduct": "false",
	//mobpush推送
	"YDT_Mob_AppKey": "30001b1c8916c",
	"YDT_Mob_AppSecret": "9273f7a72f6564d7f3bc70fdf3131d47",
	"YDT_Mob_IsProduct": "0"

2.设置开机自启,见移动端api接口地址的开机自启服务,配置方式一样;