Appearance
本文以演示环境如下:
操作系统 | 系统类型 | 作者 |
---|---|---|
Windows 10 | x64 | 张世平 |
安装准备
①前期准备
1.1个映射到外网的端口,及对应的二级域名,示例:http://sh.goodwaysoft.com:8257
2.已部署好mis系统,且可以正常进入首页;
3.准备要部署的移动端代码,示例:PMwise6-202403;Advert:移动端首页顶部的滑动图片,静态图片文件
PDFviewer:PDFviewer预览插件源码
CorpResFolder:移动端图片新闻列表生成缩略图的存放路径
Login:钉钉/企业微信单点登录静态页面
Interface:移动端api发布后代码文件
menuIcons:移动端首页菜单图标
officemobile:移动端前端页面【如果为空,联系张世平,提供移动端地址】
userIcons:协作通生成头像存放目录
②开放端口
提供移动端的端口,加入到防火墙出入站中,示例:8001
搭建移动端
①复制代码到服务器
把代码复制到服务器中,示例:E:\产品代码\移动端\PMwise6.0\API\publishinterface:移动端发布后的api代码
officemobile:移动端前端页面,静态页面文件
②搭建IIS站点
1.打开IIS,选择‘网站’,右键‘添加网站’ 网站名称:一般是端口号+系统名称+移动端,示例8006PMwise6.0移动端
屋里路径:移动端代码路径,示例:E:\产品代码\移动端\PMwise6.0\API\publish
类型:默认http,可不修改
端口:移动端使用端口,需修改
2.打开IIS,选中‘应用程序池’,找到部署的移动端,双击编辑应用程序池,.NET CLR版本,修改‘无托管代码’
③修改接口配置文件
打开IIS,选中部署的移动端站点,修改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反向代理使用,指向移动端站点监听端口
"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": "weixin",//企业微信使用,嵌入平台: weixin
/企业微信配置Start***/
"WeiXin_ApiRoot": "https://qyapi.weixin.qq.com",//企业微信API接口地址,确保服务器上可以访问此地址 验证方式:ping qyapi.weixin.qq.com
如果显示来自 101.226.141.58 的回复: 字节=32 时间=9ms TTL=53说明可以访问企业微信的API接口;
"WeiXin_CorpID": "ww2f153ef83032fc2d",//企业微信中的企业ID "WeiXin_AgentID": "1000061",
"WeiXin_CorpSecret": "9O6sMAA5IzE8Su9GYDS03yDisN3tA1Qc1Y_Kp_GE9AE", "WeiXin_AutoBindUser": "true", //企业微信人员绑定,默认true
注意:如果S_A_User表的MobilePhone字段有值,当前人员在点‘应用’时,会自动根据手机号查找当前人的企业微信账号,并把企业微信账号,同步到S_A_User表的weixin字段中;
/企业微信配置End***/
配置调试地址
1.进入Mis系统,在**‘系统管理’->‘系统定义工具’->‘移动菜单定义’->‘单点登录配置’中,修改‘调试’中的地址 此处只需修改‘移动端跳转路径’,‘电脑端跳转路径’**
移动端跳转路径:修改为配置移动端站点地址,只需修改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.进入Mis系统,在**‘系统管理’->‘系统定义工具’->‘移动菜单定义’->‘单点登录配置’中,修改‘企业微信’中的地址 此处只需修改‘移动端跳转路径’,‘电脑端跳转路径’**
移动端跳转路径:修改为配置移动端站点地址,只需修改http+IP+端口号;
电脑端跳转路径:修改为电脑Mis端跳转地址,只需修改url中的http+IP+端口号,其它不动;
②修改企业微信后台配置
- 打开浏览器,访问企业微信后台地址https://work.weixin.qq.com/wework_admin/loginpage_wx?from=myhome
- 在‘应用管理’,浏览器滑动到页面底部,点击‘创建应用’,创建应用
- 在‘开发者接口’-‘网页授权及JS-SDK’,设置可信域名
注意:此处需要按照图片红框中的设置;
- 在‘开发者接口’-‘企业可信IP’,设置企业可信IP
注意:如果有多个,用英文;隔开,示例:116.228.144.166;116.228.144.165
- 在‘应用页面’-‘应用主页’,设置企业可信访问页面单点登录地址;
示例:http://sh.goodwaysoft.com:8100/interface/api/auth/login?EntryMenu=mainindexLinux
http://sh.goodwaysoft.com:8100,移动端站点监听的端口;
mainindexLinux,‘移动菜单定义’-‘单点登录配置’-‘企业微信’中对应的编号;
③验证企业微信能否正常打开
1.打开企业微信,登录企业微信;
2.在‘工作台’页面,找到创建的应用,可以正常进入移动端首页,说明企业微信部署成功;
消息、任务推送定时作业配置
- 1.修改消息、任务推送定时作业的配置文件app.json,如图:
数据库链接直接从移动端API接口的appsettings.json中复制;
①单点登录配置
"SSOFrom": "weixin",//weixin代表推送企业微信任务及消息
//移动端单点登录页面地址
"SSOUrl": "https://sh.goodwaysoft.com:8257/interface/api/auth/login",
②组织人员同步
//是否同步新增组织
"Org_IsAdd": "false",
//是否同步修改组织
"Org_IsUpdate": "false",
//是否同步删除组织
"Org_IsDelete": "false",
//组织同步最后时间
"Org_LastSyncTime": "2020-1-1",
//组织同步间隔小时
"Org_SyncPeriod": "4",
//同步的组织名称字段
"Org_NameField": "Name",
//排除要同步的组织以及组织下的组织,逗号隔开(只需填组织ID,不用填下属组织ID)
"Org_WithoutIDs": "abba0129-c0a3-4afe-807e-d33c70f1d68b",
//是否同步新增账户
"User_IsAdd": "false",
//是否同步修改账户
"User_IsUpdate": "false",
//是否同步删除账户
"User_IsDelete": "false",
//是否绑定账户
"User_IsBind": "false",
//用户是否同步所属部门(false为所属部门,true为当前部门)
"User_IsOrgIDs": "false",
//帐户同步最后时间
"User_LastSyncTime": "2020-5-25",
//帐户同步间隔小时
"User_SyncPeriod": "0",
//MIS手机号不存在时自动拼接邮箱
"User_MailboxSuffix": "",
③任务/消息推送
//是否推送任务
"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",
④企业微信配置
"WeiXin_ApiRoot": "https://qyapi.weixin.qq.com",
//企业微信CorpID
"WeiXin_CorpID": "ww2f153ef83032fc2d",
//应用agentid
"WeiXin_AgentId": "1000017",
//应用密钥
"WeiXin_AppSecret": "dRwI_AgXgXtlABoWtYmGBoOoBkNkwgO0DhES2ql6oYo",
//通讯录密钥
"WeiXin_AddressSecret": "XMfxwx7S1t2VAmYUWMXzIgR2xIRgvSRGYs9dUsld2Xs",
//获取程序的组织应用范围根节点ID 默认为1
"WeiXin_AuthOrgRootID": "1",
⑤部署任务计划服务
双击打开‘任务计划程序’,选中‘任务计划程序库’
常规配置
触发器:新版移动端定时服务,设置,选择‘一次’,服务会一起启动运行;
操作:程序或脚本选择定时作业代码所在的ScheduleJob.exe文件,示例:E:\产品代码\移动端\PMwise6.0\ScheduleJob6.0\ScheduleJob\bin\Debug\ScheduleJob.exe