Commit 4f06a8f0 by zhangxingda

初始化

parent c57fca5b
MIT License
Copyright (c) 2017 iView
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
# 2024-iview-jilin-sscgsdp
#### Description
吉林省社会治安综合治理服务数据平台
#### Software Architecture
Software architecture description
#### Installation
1. xxxx
2. xxxx
3. xxxx
#### Instructions
1. xxxx
2. xxxx
3. xxxx
#### Contribution
1. Fork the repository
2. Create Feat_xxx branch
3. Commit your code
4. Create Pull Request
#### Gitee Feature
1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4. The most valuable open source project [GVP](https://gitee.com/gvp)
5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
# 2024-iview-jilin-sscgsdp
#### 介绍
吉林省社会治安综合治理服务数据平台
#### 软件架构
软件架构说明
#### 安装教程
1. xxxx
2. xxxx
3. xxxx
#### 使用说明
1. xxxx
2. xxxx
3. xxxx
#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
#### 特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
/**
* 由于 Vue CLI 3 不再使用传统的 webpack 配置文件,故 WebStorm 无法识别别名
* 本文件对项目无任何作用,仅作为 WebStorm 识别别名用
* 进入 WebStorm preferences -> Language & Framework -> JavaScript -> Webpack,选择这个文件即可
* */
const resolve = dir => require('path').join(__dirname, dir)
module.exports = {
resolve: {
alias: {
'@': resolve('src')
}
}
}
{
"pluginsFile": "tests/e2e/plugins/index.js"
}
This source diff could not be displayed because it is too large. You can view the blob instead.
{
"name": "iview-admin",
"version": "2.0.0",
"author": "Lison<lison.modern@gmail.com>",
"private": false,
"scripts": {
"dev": "vue-cli-service serve --open",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint",
"test:unit": "vue-cli-service test:unit",
"test:e2e": "vue-cli-service test:e2e"
},
"dependencies": {
"@turf/turf": "^7.0.0",
"axios": "^0.18.0",
"clipboard": "^2.0.0",
"codemirror": "^5.46.0",
"countup": "^1.8.2",
"cropperjs": "^1.5.1",
"dayjs": "^1.8.13",
"echarts": "^4.2.1",
"html2canvas": "^1.0.0-rc.7",
"image-conversion": "^2.1.1",
"iview": "^3.4.0",
"iview-area": "^1.5.17",
"iview-layout-themes": "^0.6.43",
"im-plugin-vue2-iview": "^0.1.2",
"js-cookie": "^2.2.0",
"qr-image": "^3.2.0",
"qrcode2": "^1.2.3",
"qrcodejs2": "^0.0.2",
"qs": "^6.7.0",
"safe-buffer": "^5.2.1",
"simplemde": "^1.11.2",
"sortablejs": "^1.9.0",
"tree-table-vue": "^1.1.0",
"turf": "^3.0.14",
"v-org-tree": "^1.0.12",
"video.js": "^7.15.4",
"view-design": "^4.1.3",
"vue": "^2.6.10",
"vue-qr": "^4.0.9",
"vue-amap": "0.5.8",
"vue-i18n": "^7.8.0",
"vue-json-views": "^1.3.0",
"vue-pdf": "^4.0.6",
"vue-photo-preview": "^1.1.3",
"vue-print-nb": "^1.0.3",
"vue-router": "^3.0.6",
"vue-scroll-ad": "^1.1.0",
"vuedraggable": "^2.20.0",
"vuex": "^3.1.0",
"wangeditor": "^3.1.1",
"worker-loader": "^2.0.0",
"xe-utils": "^2.3.0",
"xlsx": "^0.13.3"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.7.0",
"@vue/cli-plugin-eslint": "^3.7.0",
"@vue/cli-plugin-unit-mocha": "^3.7.0",
"@vue/cli-service": "^3.7.0",
"@vue/eslint-config-standard": "^3.0.0-beta.10",
"@vue/test-utils": "^1.0.0-beta.29",
"chai": "^4.1.2",
"eslint-plugin-cypress": "^2.2.1",
"esri-loader": "^2.15.0",
"iview-loader": "^1.2.2",
"less": "^2.7.3",
"less-loader": "^4.0.5",
"lint-staged": "^6.0.0",
"mockjs": "^1.0.1-beta3",
"vue-template-compiler": "^2.6.10"
},
"browserslist": [
"> 1%",
"last 2 versions",
"not ie <= 8"
],
"gitHooks": {
"pre-commit": "lint-staged"
},
"lint-staged": {
"*.js": [
"vue-cli-service lint",
"git add"
],
"*.vue": [
"vue-cli-service lint",
"git add"
]
}
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<meta http-equiv="Expires" content="0">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-control" content="no-cache">
<meta http-equiv="Cache" content="no-cache">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<!-- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.6/js/dojo/dijit/themes/tundra/tundra.css"> -->
<title></title>
</head>
<body>
<noscript>
<strong>We're sorry but iview-admin doesn't work properly without JavaScript enabled. Please enable it to
continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
<!-- <script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=0lPULNZ5PmrFVg76kFuRjezF"></script> -->
<script type="text/javascript" src="<% BASE_URL %>/static/js/camera.js"></script>
<script type="text/javascript" src="<% BASE_URL %>/static/js/DSPrinterIFace.js"></script>
<script type="text/javascript" src="<% BASE_URL %>/static/js/DSWebsocketEngine.js"></script>
<script type="text/javascript" src="<% BASE_URL %>/static/js/Imports.js"></script>
<script type="text/javascript" src="<% BASE_URL %>/static/layui/layui.js"></script>
<script type="text/javascript" src="<% BASE_URL %>/static/gaopaiyi/OcxUtil.js"></script>
<!-- <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.6"></script> -->
<!--<script src="https://cdn.ronghub.com/RongIMLib-2.4.0.min.js"></script>-->
<script>
function evil(fn) {
var Fn = Function; //一个变量指向Function,防止有些前端编译工具报错
return new Fn('return ' + fn)();
}
</script>
</body>
</html>
// /* 得实条码打印机接口 */
//
// /*
// 使用示例(以web_DSOpenPrinter为例):
//
// */
// function testWeb_DSOpenPrinter () {
// var printerName = document.getElementById('printerName').value
// web_DSOpenPrinter(printerName, callBackFun)
// function callBackFun (retVal) {
// if (retVal.RtnCode == 0) {
// output('打开打印机成功')
// }
// }
// }
// var DSPrinterIFace = {
//
// /*
// 功能:枚举打印机
// 参数【printerType】:打印机类型;类型:数值。
// 1--USB打印机,2网络打印机。
// 返回值:打印机列表;类型:字符串;格式:json。
// 示例:其中RtnVal中的值代表枚举到的打印机
// {
// "RtnCode":0,
// "Remarks":"web_DSEnumPrinter",
// "SEQ":896,
// "RtnVal":["1#DASCOMDL-206@USB005","2#DASCOMDL-628@USB006"]
// }
// */
// web_DSEnumPrinter: function () {
// },
//
// /*
// 功能:打开打印机
// 参数【printerName】:打印机名称;类型:字符串。
// 如上述枚举回来的xxx@USB005,应该以@后面的部分传入本接口,如:USB005
// 返回值:成功--true,失败--false
// */
// web_DSOpenPrinter: function (printerName) {
// },
//
// /*
// 功能:打印文本
// 参数【byCommand】:参数2为开始绘制 类型:数值
// 参数0为绘制
// 参数3为结束绘制
// 参数【byDarkness】:打印浓度 范围0-30 类型:数值
// 参数【dXPos】:打印位置x坐标 单位毫米 类型:浮点
// 参数【dYPos】:打印位置y坐标 单位毫米 类型:浮点
// 参数【centre】:居中 类型:布尔型
// 参数【size】:打印文字大小 单位dots 类型:数值
// 参数【data】:文本内容 类型:字符串
// 返回值:成功--true,失败--false
// */
// web_DSZPLPrintText: function (byCommand, byDarkness, dXPos, dYPos, centre, size, data) {
// },
//
// /*
// 功能:打印图片
// 参数【byCommand】:参数2为开始绘制 类型:数值
// 参数0为绘制
// 参数3为结束绘制
// 参数【byDarkness】:打印浓度 范围0-30 类型:数值
// 参数【dXPos】:打印位置x坐标 单位毫米 类型:浮点
// 参数【dYPos】:打印位置y坐标 单位毫米 类型:浮点
// 参数【xScale】:图片宽 单位毫米 类型:浮点
// 参数【yScale】:图片高 单位毫米 类型:浮点
// 参数【picPath】:图片路径 类型:字符串
// 返回值:成功--true,失败--false
// */
// web_DSZPLPrintImage: function (byCommand, dXPos, dYPos, xScale, yScale, picPath) {
// },
//
// /*
// 功能:打印二维码
// 参数【byCommand】:参数2为开始绘制 类型:数值
// 参数0为绘制
// 参数3为结束绘制
// 参数【byDarkness】:打印浓度 范围0-30 类型:数值
// 参数【dXPos】:打印位置x坐标 单位毫米 类型:浮点
// 参数【dYPos】:打印位置y坐标 单位毫米 类型:浮点
// 参数【QrSize】:二维码大小 单位毫米 类型:浮点
// 参数【byErrLevel】:容错级别 类型:数值
// 参数【data】:文本内容 类型:字符串
// 返回值:成功--true,失败--false
// */
// web_DSZPLPrintImage: function (byCommand, byDarkness, dXPos, dYPos, QrSize, byErrLevel, data) {
// },
//
// /*
// 功能:打印条形码Code128
// 参数【byCommand】:参数2为开始绘制 类型:数值
// 参数0为绘制
// 参数3为结束绘制
// 参数【byDarkness】:打印浓度 范围0-30 类型:数值
// 参数【dXPos】:打印位置x坐标 单位毫米 类型:浮点
// 参数【dYPos】:打印位置y坐标 单位毫米 类型:浮点
// 参数【centre】:居中 类型:布尔型
// 参数【dBarcodeHeight】:条码高度 单位毫米 类型:数值
// 参数【size】:注释大小
// 参数【bFlagHumanRead】:是否打印注释 类型:布尔值
// true打印
// false不打
// 参数【data】:条码内容 类型:字符串
// 参数【scale】:放大倍数 类型:数值2或3
// 返回值:成功--true,失败--false
// */
// web_DSZPLBarCode128: function (byCommand, byDarkness, dXPos, dYPos, centre, dBarcodeHeight, size, bFlagHumanRead, bPosHumanRead, data, scale) {
// },
//
// /*
// 功能:设置字体
// 参数【fontFace】:字体 类型:字符串
// 返回值:成功--true,失败--false
// */
// web_DSZPLSetFont: function (fontFace) {
// },
//
// /*
// 功能:打印直线
// 参数【byCommand】:参数2为开始绘制 类型:数值
// 参数0为绘制
// 参数3为结束绘制
// 参数【byDarkness】:打印浓度 范围0-30 类型:数值
// 参数【dXPos】:打印位置x坐标 单位毫米 类型:浮点
// 参数【dYPos】:打印位置y坐标 单位毫米 类型:浮点
// 参数【byDirection】:方向 类型:数值
// 参数【dLineLen】:长度 单位毫米 类型:浮点
// 参数【dBorderThickness】:粗细 类型:浮点
// 返回值:成功--true,失败--false
// */
// web_DSZPLPrintLine: function (byCommand, byDarkness, dXPos, dYpos, byDirection, dLineLen, dBorderThickness) {
// },
//
// /*
// 功能:设置页长
// 参数【length】:长度 单位毫米 类型浮点
// 返回值:成功--true,失败--false
// */
// web_DSZPLSetPageLength: function (length) {
// },
//
// /*
// 功能:关闭打印机
// 参数:无
// 返回值:成功--true,失败--false
// */
// web_DSClosePrinter: function () {
// }
//
// } // end of var DSPrinterIFace
// /// /////////////////////////////////////得实网页模板编辑 websocket 通讯组件,请勿擅自修改本文件内容!!!////////////////////////////////////////////////////
//
// var ds_res = ''
// var WebsocketSever = '127.0.0.1:7999'
// var t1 = null// 废除
// var t2 = null// 废除
// var t3 = null
// var lastHeartBeat = null// 废除
// var flag = 0 // 当前调用状态:0:未调用,1:调用中(等待),2:成功调用,3:超时
// var flagConment = null// 当前状态的任务信息
// var currentJob = null
// var reqQueue = new Array()// 请求队列
// var processQueue = new Array()// 处理队列
// var resQueue = new Array()// 结果队列
// var seq = 0// 包序列号
// var timebase = 0
// var StatusMachineSpeed = 1// 废除
// var hooker_packinfo = null
// var g_invoke_result = null
// var iterator = null
// var StatusMachine_running = false
// function closeMe () {
// window.opener = null
// window.open('', '_self')
// window.close()
// }
// function StatusMachine () {
// if (StatusMachine_running) { return }
// StatusMachine_running = true
// if (flag == 0) {
// ds_res = ''
// if (reqQueue.length != 0) {
// currentJob = reqQueue.pop()
// processQueue.unshift(currentJob)
// var callback = currentJob.CALLBACK[0]
// delete currentJob['CALLBACK'] // 服务器不需要回调函数信息,删除之
// ds_sendToPrinter(JSON.stringify(currentJob))
// currentJob.CALLBACK = new Array()
// currentJob.CALLBACK[0] = callback
// timebase = Date.now()
// flag = 1
// }
// } else if (flag == 1) {
// var packtype = currentJob.PackType
// var overtime = packtype == 10 ? 1500 : (packtype == 11 ? 60000 : 1000)
// if (Date.now() - timebase > overtime) { flag = 3 }
// if (ds_res != '') { flag = 2 }
// var o = { 'RtnCode': -1002, 'Remarks': currentJob.ReqInfo.FunName, 'SEQ': currentJob.SEQ }
// flagConment = o
// } else if (flag == 2) {
// flag = 0
// var o = eval('(' + ds_res + ')')
// resQueue.unshift(o)
// for (var i = 0; i < processQueue.length; i++) {
// var obj = processQueue[i]
// if (obj.ReqInfo.FunName == o.Remarks && obj.SEQ == o.SEQ) {
// processQueue.splice(i, 1)
// break
// }
// }
// currentJob = null
// flagConment = o
// var callback = obj.CALLBACK[0]
// if (callback != null) {
// window.setTimeout(callback(o), 1)
// }
// } else if (flag == 3) {
// flag = 0; var obj = null
// var o = { 'RtnCode': -1003, 'Remarks': currentJob.ReqInfo.FunName, 'SEQ': currentJob.SEQ }
// for (var i = 0; i < processQueue.length; i++) {
// var obj = processQueue[i]
// if (obj.ReqInfo.FunName == o.Remarks && obj.SEQ == o.SEQ) {
// obj = processQueue.splice(i, 1)[0]
// break
// }
// }
// // resQueue.unshift(o);
// currentJob = null
// flagConment = o
// try {
// var callback = obj.CALLBACK[0]
// if (callback != null) {
// window.setTimeout(callback(o), 1)
// }
// } catch (e) {
//
// }
// }
// StatusMachine_running = false
// }
//
// function ConnectionTest () {
// hooker_packinfo = { 'PackType': 12, 'ReqInfo': { 'FunName': 'InvalidFunction', 'Parameters': [] }, 'SEQ': seq, 'CALLBACK': [] }
// }
// var websocket = null
// var FirstTime = true
// var serviceRunning = false
// var t_statusmachine = null
// var t_connect = null
// var s_requestOk = false
//
// function InitService () {
// s_requestOk = false
// serviceRunning = false
// if (FirstTime) {
// WebsocketSever = arguments[0]
// FirstTime = false
// t_statusmachine = window.setInterval(StatusMachine, 5)
// }
// var pt = 'ws://'
// try {
// if ('WebSocket' in window) {
// websocket = new WebSocket(pt + WebsocketSever)
// } else if ('MozWebSocket' in window) {
// websocket = new MozWebSocket(pt + WebsocketSever)
// } else {
// alert('当前浏览器不支持WebSocket')
// // closeMe();
// return
// }
// } catch (e) {
// alert('创建WebSocket失败')
// return false
// }
//
// s_requestOk = true
//
// websocket.onopen = function (evt) {
// if (t_connect != null) {
// window.clearTimeout(t_connect)
// t_connect = null
// }
// serviceRunning = true
// StatusMachine_running = false
//
// KeepAlive(1)
// }
//
// websocket.onmessage = function (evt) {
// var o = msgCheck(evt.data) ? eval('(' + evt.data + ')') : Object.create(Object.prototype)
// if (o.hasOwnProperty('Remarks')) {
// var str = o.Remarks
// if (str != 'KeepAlive') {
// console.log('websocket onmessage:' + evt.data)
// }
// ds_res = evt.data
// }
// }
//
// websocket.onerror = function (evt) {
// // console.log("websocket err!");
// // alert("websocket.onerror");
// websocket.close()
// if (currentJob != null) {
// var s = { 'RtnCode': -1004, 'Remarks': currentJob.ReqInfo.FunName, 'SEQ': currentJob.SEQ }
// ds_res = JSON.stringify(s)
// }
//
// serviceRunning = false
// KeepAlive(0)
// websocket = null
// // t_connect = window.setTimeout(InitService(WebsocketSever),1000);
// }
//
// websocket.onclose = function () {
// // console.log("websocket close!");
// // websocket = null;
// // alert("websocket close!");
// serviceRunning = false
// KeepAlive(0)
// websocket = null
// t_connect = window.setTimeout(InitService(WebsocketSever), 1000)
// }
// }
//
// function msgCheck (str) {
// if (typeof str === 'string') {
// try {
// var obj = JSON.parse(str)
// if (typeof obj === 'object' && obj) {
// return true
// } else {
// return false
// }
// } catch (e) {
// return false
// }
// }
// }
//
// function KeepAlive (s) {
// if (s == 1) {
// if (t3 != null) { window.clearInterval(t3) }
// t3 = window.setInterval(__KeepAlive, 3000)
// } else if (s == 0) {
// if (t3 != null) { window.clearInterval(t3) }
// }
// function __KeepAlive () {
// hooker_packinfo = { 'PackType': 13, 'ReqInfo': { 'FunName': 'KeepAlive', 'Parameters': [] }, 'SEQ': seq, 'CALLBACK': [] }
// Invoke('KeepAlive')
// }
// }
//
// function Invoke () {
// if (arguments.length == 0) { // console.log("The paramenter list can not be empty!");return;
// }
//
// var callback = null; var funname = ''
// var data = hooker_packinfo == null ? { 'PackType': 11, 'ReqInfo': { 'FunName': 'InvalidFunction', 'Parameters': [] }, 'SEQ': seq, 'CALLBACK': [] } : hooker_packinfo
// hooker_packinfo = null
// var parlen = 0; var obj = null
// if (typeof arguments[0] !== 'object') {
// funname = arguments[0] + ''
// obj = new Array()
// for (var i = 1; i < arguments.length; i++) { obj[i - 1] = arguments[i] }
// } else {
// obj = arguments[0]
// funname = obj.callee + ''
// funname = funname.substring(funname.indexOf(' ') + 1, funname.indexOf('('))
// }
// data.ReqInfo.FunName = funname
// parlen = obj.length
// if (parlen > 0) {
// var tempCallback = obj[parlen - 1]
// if (typeof tempCallback === 'function') {
// callback = obj[parlen - 1]
// parlen = parlen - 1
// }
// for (var i = 0; i < parlen; i++) {
// data.ReqInfo.Parameters[i] = obj[i]
// }
// }
//
// data.SEQ = seq
// seq++
// // if(data.ReqInfo.FunName=="web_DSEnumPrinter")alert("xcvbbbnn"+JSON.stringify(currentJob));
// data.CALLBACK[0] = callback
// reqQueue.unshift(data)
// }
//
// function ds_sendToPrinter (sdata) {
// var obj = JSON.parse(sdata)
// if(JSON.parse(sdata).PackType != 13) {
// console.log('websocket send:' + sdata)
// }
// if (serviceRunning && t_statusmachine != null) { websocket.send(sdata) } else {
// var s = { 'RtnCode': -1005, 'Remarks': obj.ReqInfo.FunName, 'SEQ': obj.SEQ }
// ds_res = JSON.stringify(s)
// }
// }
//
// function ds_isConnectOn () {
// return serviceRunning
// }
//
// function Sleep (timeout, cb) {
// var T = Date.now()
// innerSleep()
// function innerSleep () {
// if (serviceRunning) {
// cb(serviceRunning)
// return
// }
// if (Date.now() - T < timeout) {
// window.setTimeout(innerSleep, 100)
// } else { cb(serviceRunning) }
// }
// }
// document.write("<script language=javascript src='DSWebsocketEngine.js'></script>")
//
// function web_DSConnectionCheck () { ConnectionTest(); Invoke(arguments) }
// function web_DSInitService (){ InitService('127.0.0.1:7999') }
// function web_DSisConnectOn (){ return ds_isConnectOn() }
// function web_Wait (timeout, cb){ Sleep(timeout, cb) }
// function web_DSQuitSvc () { Invoke(arguments) }
//
// /// //////////////////////////////
//
// function web_DSEnumPrinter () { Invoke(arguments) }
// function web_DSOpenPrinter () { Invoke(arguments) }
// function web_DSGetPrinterModel (){ Invoke(arguments) }
// function web_DSClosePrinter (){ Invoke(arguments) }
// function web_DSGetPrinterSN (){ Invoke(arguments) }
// function web_DSPrintTraceInfo (){ Invoke(arguments) }
// function web_DSDownloadFile () { Invoke(arguments) }
// function web_DSPrintIssuePermit () { Invoke(arguments) }
// function web_DSZPLPrintText () { Invoke(arguments) }
// function web_DSZPLPrintCode128 () { Invoke(arguments) }
// function web_DSZPLSetFont (){ Invoke(arguments) }
// function web_DSZPLBarCode128 () { Invoke(arguments) }
// function web_DSZPLPrintQrCode () { Invoke(arguments) }
// function web_DSZPLPrintImage (){ Invoke(arguments) }
// function web_DSZPLPrintLine (){ Invoke(arguments) }
// function web_DSZPLSetPageLength (){ Invoke(arguments) }
// function web_DSGetDeviceStatus (){ Invoke(arguments) }
// function web_DSGetDevice (){ Invoke(arguments) }
// function web_DSGetPrintModel (){ Invoke(arguments) }
// function web_DSGetPrintEnd (){ Invoke(arguments) }
// function web_DSGetPrintNumber (){ Invoke(arguments) }
// function web_DSOldSetPageLen (){ Invoke(arguments) }
// function web_DSPrintQrCodeA (){ Invoke(arguments) }
// function web_DSPrintCode128A (){ Invoke(arguments) }
// function web_DSAutoPageLoad (){ Invoke(arguments) }
// function web_DSLineFeed (){ Invoke(arguments) }
// function web_DSSetFontBold (){ Invoke(arguments) }
// function web_DSSetFontItalic (){ Invoke(arguments) }
// function web_DSSetLocation (){ Invoke(arguments) }
// function web_DSSetAbsoluteLocation (){ Invoke(arguments) }
// function web_DSFormFeed (){ Invoke(arguments) }
// function web_DSScaleCharacters (){ Invoke(arguments) }
// function web_DSPrintDataA (){ Invoke(arguments) }
// /// ////////////////////////////
//
// /// ///////////////////////////////////
// function web_DSZPLPrintImageExA_SizeScalable () { Invoke(arguments) }
// /// ///////////////////////////////////
// function test_fun () { Invoke('test_fun', 1, 2, 3, [1, 2], arguments[0]) }
//
// function DSInitService () {
// web_DSInitService()
// }
//
// function DSLaunchApp () {
// web_DSLaunchApp()
// }
//
// function web_DSLaunchApp () {
// var a = document.createElement('a')
// // a.href="dsdraw:none";
// a.href = 'a1:none'
// // a.href="www.baidu.com";
// // a.display="none";
// document.body.appendChild(a)
// a.click()
//
// var c = arguments.length
// if (c > 0) {
// if (typeof arguments[0] === 'object') {
// var cb = arguments[0]
// Sleep(5000, cb)
// }
// }
// }
//
// function web_DSNewLaunchApp () {
// var e = document.createElement('a')
// var reg = RegExp('^[A-Za-z0-9]+(://){1}$')
// if (arguments[0] &&
// typeof arguments[0] === 'string' && reg.test(arguments[0])) { e.href = arguments[0] } else e.href = 'DSWebPrtSvc://'// alert("error");
// e.innerHTML = ''
// document.getElementsByTagName('body')[0].appendChild(e)
//
// var userAgent = navigator.userAgent // 取得浏览器的userAgent字符串
// var isIE = userAgent.indexOf('compatible') > -1 && userAgent.indexOf('MSIE') > -1 // 判断是否IE<11浏览器
// var isEdge = userAgent.indexOf('Edge') > -1 && !isIE // 判断是否IE的Edge浏览器
// var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf('rv:11.0') > -1
// var myHref
// if (isIE || isIE11) {
// // window.history.back(-1);
// myHref = window.location.href
// }
// e.click()
// if (isIE || isIE11) {
// // window.history.back(-1);
// var textHref = window.location.href
// if (myHref != window.location.href) { window.history.back(-1) }
// }
//
// document.getElementsByTagName('body')[0].removeChild(e)
// }
//
// function web_DSPrtEngineStartup1 () {
// DSInitService()
// web_Wait(1000, function (res) {
// if (!res) {
// alert('服务未启动,请启动服务;')
// DSLaunchApp()
// web_Wait(15000, function (res) {
// if (!res) { output('启动服务失败') } else { output('启动服务成功') }
// })
// } else { output('启动服务成功') }
// })
// }
//
// function web_DSPrtEngineStartup (callBackFun, ifOpen) {
// if (typeof arguments[0] !== 'function') return
// DSInitService()
//
// web_Wait(1000, function (res) {
// if (!res) {
// callBackFun(-1)
// if (ifOpen == true)web_DSNewLaunchApp('DSWebPrtSvc://')
// web_Wait(15000, callBackFun)
// } else { callBackFun(true) }
// })
// }
/** layui-v2.4.5 MIT License By https://www.layui.com */
blockquote,body,button,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,input,legend,li,ol,p,td,textarea,th,ul{margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0)}html{font:12px 'Helvetica Neue','PingFang SC',STHeitiSC-Light,Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}a,button,input{-webkit-tap-highlight-color:rgba(255,0,0,0)}a{text-decoration:none;background:0 0}a:active,a:hover{outline:0}table{border-collapse:collapse;border-spacing:0}li{list-style:none}b,strong{font-weight:700}h1,h2,h3,h4,h5,h6{font-weight:500}address,cite,dfn,em,var{font-style:normal}dfn{font-style:italic}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}img{border:0;vertical-align:bottom}.layui-inline,input,label{vertical-align:middle}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0;outline:0}button,select{text-transform:none}select{-webkit-appearance:none;border:none}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}@font-face{font-family:layui-icon;src:url(../font/iconfont.eot?v=1.0.7);src:url(../font/iconfont.eot?v=1.0.7#iefix) format('embedded-opentype'),url(../font/iconfont.woff?v=1.0.7) format('woff'),url(../font/iconfont.ttf?v=1.0.7) format('truetype'),url(../font/iconfont.svg?v=1.0.7#iconfont) format('svg')}.layui-icon{font-family:layui-icon!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layui-box,.layui-box *{-webkit-box-sizing:content-box!important;-moz-box-sizing:content-box!important;box-sizing:content-box!important}.layui-border-box,.layui-border-box *{-webkit-box-sizing:border-box!important;-moz-box-sizing:border-box!important;box-sizing:border-box!important}.layui-inline{position:relative;display:inline-block;*display:inline;*zoom:1}.layui-edge,.layui-upload-iframe{position:absolute;width:0;height:0}.layui-edge{border-style:dashed;border-color:transparent;overflow:hidden}.layui-elip{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-unselect{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-disabled,.layui-disabled:active{background-color:#d2d2d2!important;color:#fff!important;cursor:not-allowed!important}.layui-circle{border-radius:100%}.layui-show{display:block!important}.layui-hide{display:none!important}.layui-upload-iframe{border:0;visibility:hidden}.layui-upload-enter{border:1px solid #009E94;background-color:#009E94;color:#fff;-webkit-transform:scale(1.1);transform:scale(1.1)}@-webkit-keyframes layui-m-anim-scale{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes layui-m-anim-scale{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.layui-m-anim-scale{animation-name:layui-m-anim-scale;-webkit-animation-name:layui-m-anim-scale}@-webkit-keyframes layui-m-anim-up{0%{opacity:0;-webkit-transform:translateY(800px);transform:translateY(800px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes layui-m-anim-up{0%{opacity:0;-webkit-transform:translateY(800px);transform:translateY(800px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.layui-m-anim-up{-webkit-animation-name:layui-m-anim-up;animation-name:layui-m-anim-up}@-webkit-keyframes layui-m-anim-left{0%{-webkit-transform:translateX(100%);transform:translateX(100%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes layui-m-anim-left{0%{-webkit-transform:translateX(100%);transform:translateX(100%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}.layui-m-anim-left{-webkit-animation-name:layui-m-anim-left;animation-name:layui-m-anim-left}@-webkit-keyframes layui-m-anim-right{0%{-webkit-transform:translateX(-100%);transform:translateX(-100%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes layui-m-anim-right{0%{-webkit-transform:translateX(-100%);transform:translateX(-100%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}.layui-m-anim-right{-webkit-animation-name:layui-m-anim-right;animation-name:layui-m-anim-right}@-webkit-keyframes layui-m-anim-lout{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@keyframes layui-m-anim-lout{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{-webkit-transform:translateX(-100%);transform:translateX(-100%)}}.layui-m-anim-lout{-webkit-animation-name:layui-m-anim-lout;animation-name:layui-m-anim-lout}@-webkit-keyframes layui-m-anim-rout{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{-webkit-transform:translateX(100%);transform:translateX(100%)}}@keyframes layui-m-anim-rout{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{-webkit-transform:translateX(100%);transform:translateX(100%)}}.layui-m-anim-rout{-webkit-animation-name:layui-m-anim-rout;animation-name:layui-m-anim-rout}.layui-m-layer{position:relative;z-index:19891014}.layui-m-layer *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.layui-m-layermain,.layui-m-layershade{position:fixed;left:0;top:0;width:100%;height:100%}.layui-m-layershade{background-color:rgba(0,0,0,.7);pointer-events:auto}.layui-m-layermain{display:table;font-family:Helvetica,arial,sans-serif;pointer-events:none}.layui-m-layermain .layui-m-layersection{display:table-cell;vertical-align:middle;text-align:center}.layui-m-layerchild{position:relative;display:inline-block;text-align:left;background-color:#fff;font-size:14px;border-radius:5px;box-shadow:0 0 8px rgba(0,0,0,.1);pointer-events:auto;-webkit-overflow-scrolling:touch;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.2s;animation-duration:.2s}.layui-m-layer0 .layui-m-layerchild{width:90%;max-width:640px}.layui-m-layer1 .layui-m-layerchild{border:none;border-radius:0}.layui-m-layer2 .layui-m-layerchild{width:auto;max-width:260px;min-width:40px;border:none;background:0 0;box-shadow:none;color:#fff}.layui-m-layerchild h3{padding:0 10px;height:60px;line-height:60px;font-size:16px;font-weight:400;border-radius:5px 5px 0 0;text-align:center}.layui-m-layerbtn span,.layui-m-layerchild h3{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.layui-m-layercont{padding:50px 30px;line-height:22px;text-align:center}.layui-m-layer1 .layui-m-layercont{padding:0;text-align:left}.layui-m-layer2 .layui-m-layercont{text-align:center;padding:0;line-height:0}.layui-m-layer2 .layui-m-layercont i{width:25px;height:25px;margin-left:8px;display:inline-block;background-color:#fff;border-radius:100%;-webkit-animation:layui-m-anim-loading 1.4s infinite ease-in-out;animation:layui-m-anim-loading 1.4s infinite ease-in-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}.layui-m-layerbtn,.layui-m-layerbtn span{position:relative;text-align:center;border-radius:0 0 5px 5px}.layui-m-layer2 .layui-m-layercont p{margin-top:20px}@-webkit-keyframes layui-m-anim-loading{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}@keyframes layui-m-anim-loading{0%,100%,80%{transform:scale(0);-webkit-transform:scale(0)}40%{transform:scale(1);-webkit-transform:scale(1)}}.layui-m-layer2 .layui-m-layercont i:first-child{margin-left:0;-webkit-animation-delay:-.32s;animation-delay:-.32s}.layui-m-layer2 .layui-m-layercont i.layui-m-layerload{-webkit-animation-delay:-.16s;animation-delay:-.16s}.layui-m-layer2 .layui-m-layercont>div{line-height:22px;padding-top:7px;margin-bottom:20px;font-size:14px}.layui-m-layerbtn{display:box;display:-moz-box;display:-webkit-box;width:100%;height:50px;line-height:50px;font-size:0;border-top:1px solid #D0D0D0;background-color:#F2F2F2}.layui-m-layerbtn span{display:block;-moz-box-flex:1;box-flex:1;-webkit-box-flex:1;font-size:14px;cursor:pointer}.layui-m-layerbtn span[yes]{color:#40AFFE}.layui-m-layerbtn span[no]{border-right:1px solid #D0D0D0;border-radius:0 0 0 5px}.layui-m-layerbtn span:active{background-color:#F6F6F6}.layui-m-layerend{position:absolute;right:7px;top:10px;width:30px;height:30px;border:0;font-weight:400;background:0 0;cursor:pointer;-webkit-appearance:none;font-size:30px}.layui-m-layerend::after,.layui-m-layerend::before{position:absolute;left:5px;top:15px;content:'';width:18px;height:1px;background-color:#999;transform:rotate(45deg);-webkit-transform:rotate(45deg);border-radius:3px}.layui-m-layerend::after{transform:rotate(-45deg);-webkit-transform:rotate(-45deg)}body .layui-m-layer .layui-m-layer-footer{position:fixed;width:95%;max-width:100%;margin:0 auto;left:0;right:0;bottom:10px;background:0 0}.layui-m-layer-footer .layui-m-layercont{padding:20px;border-radius:5px 5px 0 0;background-color:rgba(255,255,255,.8)}.layui-m-layer-footer .layui-m-layerbtn{display:block;height:auto;background:0 0;border-top:none}.layui-m-layer-footer .layui-m-layerbtn span{background-color:rgba(255,255,255,.8)}.layui-m-layer-footer .layui-m-layerbtn span[no]{color:#FD482C;border-top:1px solid #c2c2c2;border-radius:0 0 5px 5px}.layui-m-layer-footer .layui-m-layerbtn span[yes]{margin-top:10px;border-radius:5px}body .layui-m-layer .layui-m-layer-msg{width:auto;max-width:90%;margin:0 auto;bottom:-150px;background-color:rgba(0,0,0,.7);color:#fff}.layui-m-layer-msg .layui-m-layercont{padding:10px 20px}
\ No newline at end of file
/** layui-v2.4.5 MIT License By https://www.layui.com */
html #layuicss-skincodecss{display:none;position:absolute;width:1989px}.layui-code-h3,.layui-code-view{position:relative;font-size:12px}.layui-code-view{display:block;margin:10px 0;padding:0;border:1px solid #e2e2e2;border-left-width:6px;background-color:#F2F2F2;color:#333;font-family:Courier New}.layui-code-h3{padding:0 10px;height:32px;line-height:32px;border-bottom:1px solid #e2e2e2}.layui-code-h3 a{position:absolute;right:10px;top:0;color:#999}.layui-code-view .layui-code-ol{position:relative;overflow:auto}.layui-code-view .layui-code-ol li{position:relative;margin-left:45px;line-height:20px;padding:0 5px;border-left:1px solid #e2e2e2;list-style-type:decimal-leading-zero;*list-style-type:decimal;background-color:#fff}.layui-code-view pre{margin:0}.layui-code-notepad{border:1px solid #0C0C0C;border-left-color:#3F3F3F;background-color:#0C0C0C;color:#C2BE9E}.layui-code-notepad .layui-code-h3{border-bottom:none}.layui-code-notepad .layui-code-ol li{background-color:#3F3F3F;border-left:none}
\ No newline at end of file
/** layui-v2.4.5 MIT License By https://www.layui.com */
.laydate-set-ym,.layui-laydate,.layui-laydate *,.layui-laydate-list{box-sizing:border-box}html #layuicss-laydate{display:none;position:absolute;width:1989px}.layui-laydate *{margin:0;padding:0}.layui-laydate{position:absolute;z-index:66666666;margin:5px 0;border-radius:2px;font-size:14px;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:laydate-upbit;animation-name:laydate-upbit}.layui-laydate-main{width:272px}.layui-laydate-content td,.layui-laydate-header *,.layui-laydate-list li{transition-duration:.3s;-webkit-transition-duration:.3s}@-webkit-keyframes laydate-upbit{from{-webkit-transform:translate3d(0,20px,0);opacity:.3}to{-webkit-transform:translate3d(0,0,0);opacity:1}}@keyframes laydate-upbit{from{transform:translate3d(0,20px,0);opacity:.3}to{transform:translate3d(0,0,0);opacity:1}}.layui-laydate-static{position:relative;z-index:0;display:inline-block;margin:0;-webkit-animation:none;animation:none}.laydate-ym-show .laydate-next-m,.laydate-ym-show .laydate-prev-m{display:none!important}.laydate-ym-show .laydate-next-y,.laydate-ym-show .laydate-prev-y{display:inline-block!important}.laydate-time-show .laydate-set-ym span[lay-type=month],.laydate-time-show .laydate-set-ym span[lay-type=year],.laydate-time-show .layui-laydate-header .layui-icon,.laydate-ym-show .laydate-set-ym span[lay-type=month]{display:none!important}.layui-laydate-header{position:relative;line-height:30px;padding:10px 70px 5px}.laydate-set-ym span,.layui-laydate-header i{padding:0 5px;cursor:pointer}.layui-laydate-header *{display:inline-block;vertical-align:bottom}.layui-laydate-header i{position:absolute;top:10px;color:#999;font-size:18px}.layui-laydate-header i.laydate-prev-y{left:15px}.layui-laydate-header i.laydate-prev-m{left:45px}.layui-laydate-header i.laydate-next-y{right:15px}.layui-laydate-header i.laydate-next-m{right:45px}.laydate-set-ym{width:100%;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.laydate-time-text{cursor:default!important}.layui-laydate-content{position:relative;padding:10px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.layui-laydate-content table{border-collapse:collapse;border-spacing:0}.layui-laydate-content td,.layui-laydate-content th{width:36px;height:30px;padding:5px;text-align:center}.layui-laydate-content td{position:relative;cursor:pointer}.laydate-day-mark{position:absolute;left:0;top:0;width:100%;height:100%;line-height:30px;font-size:12px;overflow:hidden}.laydate-day-mark::after{position:absolute;content:'';right:2px;top:2px;width:5px;height:5px;border-radius:50%}.layui-laydate-footer{position:relative;height:46px;line-height:26px;padding:10px 20px}.layui-laydate-footer span{margin-right:15px;display:inline-block;cursor:pointer;font-size:12px}.layui-laydate-footer span:hover{color:#5FB878}.laydate-footer-btns{position:absolute;right:10px;top:10px}.laydate-footer-btns span{height:26px;line-height:26px;margin:0 0 0 -1px;padding:0 10px;border:1px solid #C9C9C9;background-color:#fff;white-space:nowrap;vertical-align:top;border-radius:2px}.layui-laydate-list>li,.layui-laydate-range .layui-laydate-main{display:inline-block;vertical-align:middle}.layui-laydate-list{position:absolute;left:0;top:0;width:100%;height:100%;padding:10px;background-color:#fff}.layui-laydate-list>li{position:relative;width:33.3%;height:36px;line-height:36px;margin:3px 0;text-align:center;cursor:pointer}.laydate-month-list>li{width:25%;margin:17px 0}.laydate-time-list>li{height:100%;margin:0;line-height:normal;cursor:default}.laydate-time-list p{position:relative;top:-4px;line-height:29px}.laydate-time-list ol{height:181px;overflow:hidden}.laydate-time-list>li:hover ol{overflow-y:auto}.laydate-time-list ol li{width:130%;padding-left:33px;line-height:30px;text-align:left;cursor:pointer}.layui-laydate-hint{position:absolute;top:115px;left:50%;width:250px;margin-left:-125px;line-height:20px;padding:15px;text-align:center;font-size:12px}.layui-laydate-range{width:546px}.layui-laydate-range .laydate-main-list-0 .laydate-next-m,.layui-laydate-range .laydate-main-list-0 .laydate-next-y,.layui-laydate-range .laydate-main-list-1 .laydate-prev-m,.layui-laydate-range .laydate-main-list-1 .laydate-prev-y{display:none}.layui-laydate-range .laydate-main-list-1 .layui-laydate-content{border-left:1px solid #e2e2e2}.layui-laydate,.layui-laydate-hint{border:1px solid #d2d2d2;box-shadow:0 2px 4px rgba(0,0,0,.12);background-color:#fff;color:#666}.layui-laydate-header{border-bottom:1px solid #e2e2e2}.layui-laydate-header i:hover,.layui-laydate-header span:hover{color:#5FB878}.layui-laydate-content{border-top:none 0;border-bottom:none 0}.layui-laydate-content th{font-weight:400;color:#333}.layui-laydate-content td{color:#666}.layui-laydate-content td.laydate-selected{background-color:#00F7DE}.laydate-selected:hover{background-color:#00F7DE!important}.layui-laydate-content td:hover,.layui-laydate-list li:hover{background-color:#eaeaea;color:#333}.laydate-time-list li ol{margin:0;padding:0;border:1px solid #e2e2e2;border-left-width:0}.laydate-time-list li:first-child ol{border-left-width:1px}.laydate-time-list>li:hover{background:0 0}.layui-laydate-content .laydate-day-next,.layui-laydate-content .laydate-day-prev{color:#d2d2d2}.laydate-selected.laydate-day-next,.laydate-selected.laydate-day-prev{background-color:#f8f8f8!important}.layui-laydate-footer{border-top:1px solid #e2e2e2}.layui-laydate-hint{color:#FF5722}.laydate-day-mark::after{background-color:#5FB878}.layui-laydate-content td.layui-this .laydate-day-mark::after{display:none}.layui-laydate-footer span[lay-type=date]{color:#5FB878}.layui-laydate .layui-this{background-color:#009688!important;color:#fff!important}.layui-laydate .laydate-disabled,.layui-laydate .laydate-disabled:hover{background:0 0!important;color:#d2d2d2!important;cursor:not-allowed!important;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.laydate-theme-molv{border:none}.laydate-theme-molv.layui-laydate-range{width:548px}.laydate-theme-molv .layui-laydate-main{width:274px}.laydate-theme-molv .layui-laydate-header{border:none;background-color:#009688}.laydate-theme-molv .layui-laydate-header i,.laydate-theme-molv .layui-laydate-header span{color:#f6f6f6}.laydate-theme-molv .layui-laydate-header i:hover,.laydate-theme-molv .layui-laydate-header span:hover{color:#fff}.laydate-theme-molv .layui-laydate-content{border:1px solid #e2e2e2;border-top:none;border-bottom:none}.laydate-theme-molv .laydate-main-list-1 .layui-laydate-content{border-left:none}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li,.laydate-theme-grid .layui-laydate-content td,.laydate-theme-grid .layui-laydate-content thead,.laydate-theme-molv .layui-laydate-footer{border:1px solid #e2e2e2}.laydate-theme-grid .laydate-selected,.laydate-theme-grid .laydate-selected:hover{background-color:#f2f2f2!important;color:#009688!important}.laydate-theme-grid .laydate-selected.laydate-day-next,.laydate-theme-grid .laydate-selected.laydate-day-prev{color:#d2d2d2!important}.laydate-theme-grid .laydate-month-list,.laydate-theme-grid .laydate-year-list{margin:1px 0 0 1px}.laydate-theme-grid .laydate-month-list>li,.laydate-theme-grid .laydate-year-list>li{margin:0 -1px -1px 0}.laydate-theme-grid .laydate-year-list>li{height:43px;line-height:43px}.laydate-theme-grid .laydate-month-list>li{height:71px;line-height:71px}
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>聊天记录</title>
<link rel="stylesheet" href="http://local.res.layui.com/layui/src/css/layui.css">
<style>
body .layim-chat-main{height: auto;}
</style>
</head>
<body>
<div class="layim-chat-main">
<ul id="LAY_view"></ul>
</div>
<div id="LAY_page" style="margin: 0 10px;"></div>
<textarea title="消息模版" id="LAY_tpl" style="display:none;">
{{# layui.each(d.data, function(index, item){
if(item.id == parent.layui.layim.cache().mine.id){ }}
<li class="layim-chat-mine"><div class="layim-chat-user"><img src="{{ item.avatar }}"><cite><i>{{ layui.data.date(item.timestamp) }}</i>{{ item.username }}</cite></div><div class="layim-chat-text">{{ layui.layim.content(item.content) }}</div></li>
{{# } else { }}
<li><div class="layim-chat-user"><img src="{{ item.avatar }}"><cite>{{ item.username }}<i>{{ layui.data.date(item.timestamp) }}</i></cite></div><div class="layim-chat-text">{{ layui.layim.content(item.content) }}</div></li>
{{# }
}); }}
</textarea>
<!--
上述模版采用了 laytpl 语法,不了解的同学可以去看下文档:http://www.layui.com/doc/modules/laytpl.html
-->
<script src="http://local.res.layui.com/layui/src/layui.js"></script>
<script>
layui.use(['layim', 'laypage'], function(){
var layim = layui.layim
,layer = layui.layer
,laytpl = layui.laytpl
,$ = layui.jquery
,laypage = layui.laypage;
//聊天记录的分页此处不做演示,你可以采用laypage,不了解的同学见文档:http://www.layui.com/doc/modules/laypage.html
//开始请求聊天记录
var param = location.search //获得URL参数。该窗口url会携带会话id和type,他们是你请求聊天记录的重要凭据
//实际使用时,下述的res一般是通过Ajax获得,而此处仅仅只是演示数据格式
,res = {
code: 0
,msg: ''
,data: [{
username: '纸飞机'
,id: 100000
,avatar: 'http://tva3.sinaimg.cn/crop.0.0.512.512.180/8693225ajw8f2rt20ptykj20e80e8weu.jpg'
,timestamp: 1480897882000
,content: 'face[抱抱] face[心] 你好啊小美女'
}, {
username: 'Z_子晴'
,id: 108101
,avatar: 'http://tva3.sinaimg.cn/crop.0.0.512.512.180/8693225ajw8f2rt20ptykj20e80e8weu.jpg'
,timestamp: 1480897892000
,content: '你没发错吧?face[微笑]'
},{
username: 'Z_子晴'
,id: 108101
,avatar: 'http://tva3.sinaimg.cn/crop.0.0.512.512.180/8693225ajw8f2rt20ptykj20e80e8weu.jpg'
,timestamp: 1480897898000
,content: '你是谁呀亲。。我爱的是贤心!我爱的是贤心!我爱的是贤心!重要的事情要说三遍~'
},{
username: 'Z_子晴'
,id: 108101
,avatar: 'http://tva3.sinaimg.cn/crop.0.0.512.512.180/8693225ajw8f2rt20ptykj20e80e8weu.jpg'
,timestamp: 1480897908000
,content: '注意:这些都是模拟数据,实际使用时,需将其中的模拟接口改为你的项目真实接口。\n该模版文件所在目录(相对于layui.js):\n/css/modules/layim/html/chatlog.html'
}]
}
//console.log(param)
var html = laytpl(LAY_tpl.value).render({
data: res.data
});
$('#LAY_view').html(html);
});
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>发现</title>
<link rel="stylesheet" href="../../../layui.css">
<style>
.lyx-flex {
display: flex;
align-items: center;
justify-content: center;
margin: 2px;
}
</style>
</head>
<body>
<div style="margin: 15px;">
<div class="layui-row">
<div class="layui-col-xs12 layui-col-sm12 layui-col-md12">
<form class="layui-form" action="">
<div class="layui-form-item">
<label class="layui-form-label">搜索好友</label>
<div class="layui-input-inline">
<input type="text" name="title" required lay-verify="required" placeholder="输入好友姓名"
autocomplete="off" class="layui-input">
</div>
<div class="layui-input-inline">
<button class="layui-btn" lay-submit lay-filter="*">查找</button>
</div>
</div>
</form>
</div>
<div class="layui-col-xs12 layui-col-sm12 layui-col-md12 layui-row" id="friendHtml">
</div>
</div>
</div>
<script src="../../../../layui.js"></script>
<script>
var base_url = 'https://txy.sylyx.cn/Api/Api/'
function itemx (data) {
console.log(data)
var html = ['<div class="layui-col-xs8 layui-col-sm8 layui-col-md8 layui-row lyx-flex">',
' <div class="layui-col-xs3 layui-col-sm3 layui-col-md3">',
' <img src="' + data.avatar + '"',
' class="layui-circle" style="width: 50px;height: 50px">',
' </div>',
' <div class="layui-col-xs3 layui-col-sm3 layui-col-md3">',
' <p>' + data.name + '</p>',
' </div>',
' <div class="layui-col-xs3 layui-col-sm3 layui-col-md3">',
' <button class="layui-btn layui-btn-sm add-friend" data-avatar="' + data.avatar + '" data-name="' + data.name + '" data-id="' + data.user_id + '">添加</button>',
' </div>',
' </div>',
' <hr class="layui-bg-gray">'].join("");
return html;
}
layui.use(['layim', 'laypage', 'form'], function () {
var layim = layui.layim
, layer = layui.layer
, laytpl = layui.laytpl
, $ = layui.jquery
, laypage = layui.laypage
, form = layui.form;
function addFriendAction () {
$(".add-friend").off().on('click', function () {
var id = $(this).data('id');
var name = $(this).data('name');
var avatar = $(this).data('avatar');
layim.add({
type: 'friend' //friend:申请加好友、group:申请加群
, username: name //好友昵称,若申请加群,参数为:groupname
, avatar: avatar //头像
, submit: function (group, remark, index) { //一般在此执行Ajax和WS,以通知对方
console.log(group); //获取选择的好友分组ID,若为添加群,则不返回值
console.log(remark); //获取附加信息
sendAddFriend(id, group, remark)
layer.close(index); //关闭改面板
}
});
})
}
function sendAddFriend (id, group, remark) {
var self_user = localStorage.getItem('rong_current_user');
$.ajax({
url: base_url + 'addRongCloudUser',
data: { friend_id: id, self_user: self_user, remark: remark, group: group },
type: 'post',
dataType: 'json',
success: function (ret) {
if (ret.status == 1) {
layer.msg('申请发送成功');
}else{
layim.msg(ret.msg);
}
}
})
}
//一些添加好友请求之类的交互参见文档
form.on('submit(*)', function (data) {
console.log(data.field) //当前容器的全部表单字段,名值对形式:{name: value}
var in_html = '';
$.ajax({
url: base_url + 'selectRongCloudUsers',
data: { name: data.field.title },
dataType: 'json',
success: function (ret) {
if (ret.status == 1) {
$.each(ret.result, function (index, item) {
in_html += itemx(item);
})
} else {
in_html = '没有搜索到用户!'
}
$('#friendHtml').html(in_html);
if (in_html !== '没有搜索到用户')
addFriendAction()
}
})
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
});
});
</script>
</body>
</html>
{
"code": 0,
"pages": 1,
"data": [
{
"id": 76,
"content": "申请添加你为好友",
"uid": 168,
"from": 166488,
"from_group": 0,
"type": 1,
"remark": "有问题要问",
"href": null,
"read": 1,
"time": "刚刚",
"user": {
"id": 166488,
"avatar": "http://q.qlogo.cn/qqapp/101235792/B704597964F9BD0DB648292D1B09F7E8/100",
"username": "李彦宏",
"sign": null
}
},
{
"id": 75,
"content": "申请添加你为好友",
"uid": 168,
"from": 347592,
"from_group": 0,
"type": 1,
"remark": "你好啊!",
"href": null,
"read": 1,
"time": "刚刚",
"user": {
"id": 347592,
"avatar": "http://q.qlogo.cn/qqapp/101235792/B78751375E0531675B1272AD994BA875/100",
"username": "麻花疼",
"sign": null
}
},
{
"id": 62,
"content": "雷军 拒绝了你的好友申请",
"uid": 168,
"from": null,
"from_group": null,
"type": 1,
"remark": null,
"href": null,
"read": 1,
"time": "10天前",
"user": {
"id": null
}
},
{
"id": 60,
"content": "马小云 已经同意你的好友申请",
"uid": 168,
"from": null,
"from_group": null,
"type": 1,
"remark": null,
"href": null,
"read": 1,
"time": "10天前",
"user": {
"id": null
}
},
{
"id": 61,
"content": "贤心 已经同意你的好友申请",
"uid": 168,
"from": null,
"from_group": null,
"type": 1,
"remark": null,
"href": null,
"read": 1,
"time": "10天前",
"user": {
"id": null
}
}
]
}
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>消息盒子</title>
<link rel="stylesheet" href="../../../layui.css?v=1">
<style>
.layim-msgbox {
margin: 15px;
}
.layim-msgbox li {
position: relative;
margin-bottom: 10px;
padding: 0 130px 10px 60px;
padding-bottom: 10px;
line-height: 22px;
border-bottom: 1px dotted #e2e2e2;
}
.layim-msgbox .layim-msgbox-tips {
margin: 0;
padding: 10px 0;
border: none;
text-align: center;
color: #999;
}
.layim-msgbox .layim-msgbox-system {
padding: 0 10px 10px 10px;
}
.layim-msgbox li p span {
padding-left: 5px;
color: #999;
}
.layim-msgbox li p em {
font-style: normal;
color: #FF5722;
}
.layim-msgbox-avatar {
position: absolute;
left: 0;
top: 0;
width: 50px;
height: 50px;
}
.layim-msgbox-user {
padding-top: 5px;
}
.layim-msgbox-content {
margin-top: 3px;
}
.layim-msgbox .layui-btn-small {
padding: 0 15px;
margin-left: 0px;
}
.layim-msgbox-btn {
position: absolute;
right: 0;
top: 12px;
color: #999;
}
</style>
</head>
<body>
<ul class="layim-msgbox" id="LAY_view"></ul>
<div style="margin: 0 15px;">
<blockquote class="layui-elem-quote">注意:这些都是模拟数据,实际使用时,需将其中的模拟接口改为你的项目真实接口。
<br>该模版文件所在目录(相对于layui.js):/css/modules/layim/html/msgbox.html
</blockquote>
</div>
<textarea title="消息模版" id="LAY_tpl" style="display:none;">
{{# layui.each(d.data, function(index, item){
if(item.from){ }}
<li data-uid="{{ item.from }}" data-fromGroup="{{ item.from_group }}" data-noticeid="{{item.id}}">
<a href="/u/{{ item.from }}/" target="_blank">
<img src="{{ item.user.avatar }}" class="layui-circle layim-msgbox-avatar">
</a>
<p class="layim-msgbox-user">
<a href="/u/{{ item.from }}/" target="_blank">{{ item.user.username||'' }}</a>
<span>{{ item.time }}</span>
</p>
<p class="layim-msgbox-content">
{{ item.content }}
<span>{{ item.remark ? '附言: '+item.remark : '' }}</span>
</p>
<p class="layim-msgbox-btn">
<button class="layui-btn layui-btn-small" data-type="agree">同意</button>
<button class="layui-btn layui-btn-small layui-btn-primary" data-type="refuse">拒绝</button>
</p>
</li>
{{# } else { }}
<li class="layim-msgbox-system">
<p><em>系统:</em>{{ item.content }}<span>{{ item.time }}</span></p>
</li>
{{# }
}); }}
</textarea>
<!--
上述模版采用了 laytpl 语法,不了解的同学可以去看下文档:http://www.layui.com/doc/modules/laytpl.html
-->
<script src="../../../../layui.js"></script>
<script>
var base_url = 'https://txy.sylyx.cn/Api/Api/'
layui.use(['layim', 'flow'], function () {
var layim = layui.layim
, layer = layui.layer
, laytpl = layui.laytpl
, $ = layui.jquery
, flow = layui.flow;
var cache = {}; //用于临时记录请求到的数据
//请求消息
var renderMsg = function (page, callback) {
//实际部署时,请将下述 getmsg.json 改为你的接口地址
var self_user = localStorage.getItem('rong_current_user');
$.ajax({
url: base_url + 'sysNoticeList',
data: {
page: page || 1,
self_user: self_user
},
dataType: 'json',
success: function (res) {
if (res.status != 1) {
return layer.msg(res.msg);
}
//记录来源用户信息
layui.each(res.result, function (index, item) {
cache[item.from] = item.user;
});
callback && callback(res.result, res.pages);
}
});
};
//消息信息流
flow.load({
elem: '#LAY_view' //流加载容器
, isAuto: false
, end: '<li class="layim-msgbox-tips">暂无更多新消息</li>'
, done: function (page, next) { //加载下一页
renderMsg(page, function (data, pages) {
var html = laytpl(LAY_tpl.value).render({
data: data
, page: page
});
next(html, page < pages);
});
}
});
//打开页面即把消息标记为已读
/*
$.post('/message/read', {
type: 1
});
*/
//操作
var active = {
//同意
agree: function (othis) {
var li = othis.parents('li')
, uid = li.data('uid')
, noticeid = li.data('noticeid')
, from_group = li.data('fromGroup')
, user = cache[uid];
//选择分组
parent.layui.layim.setFriendGroup({
type: 'friend'
, username: user.username
, avatar: user.avatar
, group: parent.layui.layim.cache().friend //获取好友分组数据
, submit: function (group, index) {
//将好友追加到主面板
//parent.layui.layim.addList({
// type: 'friend'
// , avatar: user.avatar //好友头像
// , username: user.username //好友昵称
// , groupid: group //所在的分组id
// , id: uid //好友ID
// , sign: user.sign //好友签名
//});
//parent.layer.close(index);
//othis.parent().html('已同意');
//实际部署时,请开启下述注释,并改成你的接口地址
$.ajax({
url: base_url + 'agreeOrRefuse',
type: 'post',
data: {
noticeid: noticeid,
type: 'agree',
uid: uid //对方用户ID
, from_group: from_group //对方设定的好友分组
, group: group //我设定的好友分组
},
dataType: 'json',
success: function (res) {
if (res.status != 1) {
return layer.msg(res.msg);
}
//将好友追加到主面板
parent.layui.layim.addList({
type: 'friend'
, avatar: user.avatar //好友头像
, username: user.username //好友昵称
, groupid: group //所在的分组id
, id: uid //好友ID
, sign: user.sign //好友签名
});
parent.layer.close(index);
othis.parent().html('已同意');
}
});
}
});
}
//拒绝
, refuse: function (othis) {
var li = othis.parents('li')
, uid = li.data('uid'),
noticeid = li.data('noticeid');
layer.confirm('确定拒绝吗?', function (index) {
$.ajax({
url: base_url + 'agreeOrRefuse',
type: 'post',
data: {
noticeid: noticeid,
type: 'refuse',
uid: uid //对方用户ID
},
dataType: 'json',
success: function (res) {
if (res.code != 1) {
return layer.msg(res.msg);
}
layer.close(index);
othis.parent().html('<em>已拒绝</em>');
}
});
});
}
};
$('body').on('click', '.layui-btn', function () {
var othis = $(this), type = othis.data('type');
active[type] ? active[type].call(this, othis) : '';
});
});
</script>
</body>
</html>
/** layui-v2.4.5 MIT License By https://www.layui.com */
.layim-tab-content li h5,.layui-layim-list li{border-bottom:1px solid #f2f2f2;cursor:pointer}html #layuicss-skinlayim-mobilecss{display:none;position:absolute;width:1989px}.layim-tab-content li h5 *,.layui-layim-skin li,.layui-layim-tab li,.layui-layim-tool li{display:inline-block;vertical-align:top;*zoom:1;*display:inline}.layim-tab-content li h5 span,.layui-layim-list li p,.layui-layim-list li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layui-layim-tab{position:absolute;bottom:0;left:0;right:0;height:50px;border-top:1px solid #f2f2f2;background-color:#fff}.layui-layim-tab li{position:relative;width:33.33%;height:50px;text-align:center;color:#666;color:rgba(0,0,0,.6);cursor:pointer}.layui-layim-tab li .layui-icon{position:relative;top:7px;font-size:25px}.layui-layim-tab li span{position:relative;bottom:-3px;display:block;font-size:12px}.layui-layim-tab li[lay-type=more] .layui-icon{top:4px;font-size:22px}.layui-layim-tab li.layim-this{color:#3FDD86}.layim-new{display:none;position:absolute;top:5px;left:50%;margin-left:15px;width:10px;height:10px;border-radius:10px;background-color:#F74C31;color:#fff}.layim-list-top .layim-new{position:relative;vertical-align:top;top:10px;left:initial;margin-left:5px}.layim-list-top i.layui-show{display:inline-block!important}.layim-tab-content,.layim-tab-content li ul{display:none}.layui-layim{position:fixed;left:0;right:0;top:50px;bottom:50px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.layim-tab-content li h5{position:relative;padding-left:35px;height:45px;line-height:45px;font-size:0;white-space:nowrap;overflow:hidden}.layim-tab-content li h5 *{font-size:17px}.layim-tab-content li h5 span{max-width:80%}.layim-tab-content li h5 i{position:absolute;left:12px;top:0;color:#C9BDBB}.layim-tab-content li h5 em{padding-left:5px;color:#999}.layim-list-friend,.layim-list-group{background-color:#fff}.layui-layim-list li{position:relative;height:42px;padding:5px 15px 5px 60px;font-size:0}.layui-layim-list li:active{background-color:#F2F2F2;background-color:rgba(0,0,0,.05)}.layui-layim-list li.layim-null{height:20px;line-height:20px;padding:10px 0;color:#999;text-align:center;cursor:default;font-size:14px}.layim-list-history li.layim-null{padding:30px 0;border-bottom:none;background-color:#eee}.layui-layim-list li *{display:inline-block;*display:inline;*zoom:1;vertical-align:top;font-size:17px}.layui-layim-list li span{margin-top:2px;max-width:155px;font-size:17px}.layui-layim-list li img{position:absolute;left:12px;top:8px;width:36px;height:36px;border-radius:100%}.layui-layim-list li p{display:block;padding-right:30px;line-height:18px;font-size:13px;color:#999}.layui-layim-list li .layim-msg-status{display:none;position:absolute;right:10px;bottom:7px;padding:0 5px;height:17px;line-height:17px;border-radius:17px;text-align:center;font-size:10px;background-color:#F74C31;color:#fff}.layim-list-gray{-webkit-filter:grayscale(100%);-ms-filter:grayscale(100%);filter:grayscale(100%);filter:gray}.layim-list-top{background-color:#fff;font-size:17px}.layim-list-top li{position:relative;padding:0 15px 0 50px;line-height:45px;border-bottom:1px solid #f2f2f2;cursor:pointer}.layim-list-top li:last-child{margin-bottom:10px;border-bottom:none}.layim-list-top li .layui-icon{position:absolute;left:12px;top:0;margin-right:10px;color:#36373C;font-size:24px}.layim-list-top li[layim-event=newFriend] .layui-icon{left:15px}.layim-panel,.layim-title{position:fixed;left:0;right:0;top:0}.layim-list-top li[layim-event=group] .layui-icon{font-size:20px}.layim-list-top li[layim-event=about] .layui-icon{font-size:25px}.layim-panel{bottom:0;background-color:#eee;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.2s;animation-duration:.2s}.layim-title{height:50px;line-height:50px;padding:0 15px;background-color:#36373C;color:#fff;font-size:18px}.layim-chat-status{padding-left:15px;font-size:14px;opacity:.7}.layim-title .layim-chat-back{display:inline-block;vertical-align:middle;position:relative;padding:0 15px;margin-left:-10px;top:0;font-size:24px;cursor:pointer}.layim-chat-detail{position:absolute;right:0;top:0;padding:0 15px;font-size:18px;cursor:pointer}.layim-chat-main,.layim-content{position:fixed;top:50px;left:0;right:0;overflow-y:auto;overflow-x:hidden}.layim-chat-detail:active,.layim-title .layim-chat-back:active{opacity:.8}.layui-layim .layim-title{text-align:left}.layui-layim .layim-title p{padding:0 15px}.layim-content{bottom:0}.layim-chat-main{width:100%;bottom:85px;padding:15px;-webkit-box-sizing:border-box!important;-moz-box-sizing:border-box!important;box-sizing:border-box!important}.layim-chat-main ul{overflow-x:hidden}.layim-chat-main ul li{position:relative;font-size:0;margin-bottom:10px;padding-left:60px;min-height:68px}.layim-chat-text,.layim-chat-user{display:inline-block;*display:inline;*zoom:1;vertical-align:top;font-size:15px}.layim-chat-user{position:absolute;left:3px}.layim-chat-user img{width:40px;height:40px;border-radius:100%}.layim-chat-user cite{position:absolute;left:60px;top:-2px;width:500px;line-height:24px;font-size:12px;white-space:nowrap;color:#999;text-align:left;font-style:normal}.layim-chat-user cite i{padding-left:15px;font-style:normal}.layim-chat-text{position:relative;min-height:22px;line-height:22px;margin-top:25px;padding:8px 15px;background-color:#fff;border-radius:3px;color:#333;word-break:break-all}.layim-chat-text:after{content:'';position:absolute;left:-10px;top:13px;width:0;height:0;border-style:solid dashed dashed;border-color:#fff transparent transparent;overflow:hidden;border-width:10px}.layim-chat-text a{color:#33DF83}.layim-chat-text img{max-width:100%;vertical-align:middle}.layim-chat-text .layui-layim-file,.layui-layim-file{display:block;text-align:center}.layim-chat-text .layui-layim-file{color:#333}.layui-layim-file:active{opacity:.9}.layui-layim-file i{font-size:80px;line-height:80px}.layui-layim-file cite{display:block;line-height:20px;font-size:17px}.layui-layim-audio{text-align:center;cursor:pointer}.layui-layim-audio .layui-icon{position:relative;top:5px;font-size:24px}.layui-layim-audio p{margin-top:3px}.layui-layim-video{width:120px;height:80px;line-height:80px;background-color:#333;text-align:center;border-radius:3px}.layui-layim-video .layui-icon{font-size:36px;cursor:pointer;color:#fff}.layim-chat-main ul .layim-chat-mine{text-align:right;padding-left:0;padding-right:60px}.layim-chat-mine .layim-chat-user{left:auto;right:3px}.layim-chat-mine .layim-chat-user cite{left:auto;right:60px;text-align:right}.layim-chat-mine .layim-chat-user cite i{padding-left:0;padding-right:15px}.layim-chat-mine .layim-chat-text{margin-left:0;text-align:left;background-color:#5FB878;color:#fff}.layim-chat-mine .layim-chat-text:after{left:auto;right:-10px;border-top-color:#5FB878}.layim-chat-mine .layim-chat-text a{color:#fff}.layim-chat-main ul .layim-chat-system{min-height:0;margin:20px 0 5px;padding:0}.layim-chat-system{margin:10px 0;text-align:center}.layim-chat-system span{display:inline-block;line-height:30px;padding:0 15px;border-radius:3px;background-color:#ddd;color:#fff;font-size:14px;cursor:pointer}.layim-chat-footer{position:fixed;bottom:0;left:10px;right:10px;height:80px}.layim-chat-send{display:-webkit-box;display:-webkit-flex;display:flex}.layim-chat-send input{-webkit-box-flex:1;-webkit-flex:1;flex:1;height:40px;padding-left:5px;border:0;background-color:#fff;border-radius:3px}.layim-chat-send button{border-radius:3px;height:40px;padding:0 20px;border:0;margin-left:10px;background-color:#5FB878;color:#fff}.layim-chat-tool{position:relative;width:100%;overflow-x:auto;padding:0;height:38px;line-height:38px;margin-top:3px;font-size:0;white-space:nowrap}.layim-chat-tool span{position:relative;margin:0 15px;display:inline-block;*display:inline;*zoom:1;vertical-align:top;font-size:28px;cursor:pointer}.layim-chat-tool .layim-tool-log{position:absolute;right:5px;font-size:14px}.layim-tool-log i{position:relative;top:2px;margin-right:5px;font-size:20px;color:#999}.layim-tool-image input{position:absolute;font-size:0;left:0;top:0;width:100%;height:100%;opacity:.01;filter:Alpha(opacity=1);cursor:pointer}.layim-layer{position:fixed;bottom:85px;left:10px;right:10px;margin:0 auto}.layui-layim-face{position:relative;max-height:180px;overflow:auto;padding:10px;font-size:0}.layui-layim-face li{cursor:pointer;display:inline-block;vertical-align:bottom;padding:5px 2px;text-align:center;width:10%;-webkit-box-sizing:border-box!important;-moz-box-sizing:border-box!important;box-sizing:border-box!important}.layui-layim-face li img{width:22px;height:22px}.layim-about{font-size:17px}.layim-about .layui-m-layercont{text-align:left}.layim-about .layui-m-layercont p{line-height:30px}.layim-about .layui-m-layercont a{color:#01AAED}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
差异被折叠。 点击展开。
This source diff could not be displayed because it is too large. You can view the blob instead.
差异被折叠。 点击展开。
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论