main
姜玉琦 2024-03-17 16:19:31 +08:00
parent f1e8f21275
commit 695b51f46f
121 changed files with 2171 additions and 1534 deletions

8
.idea/.gitignore vendored
View File

@ -1,8 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/construction.iml" filepath="$PROJECT_DIR$/.idea/construction.iml" />
</modules>
</component>
</project>

View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@ -1,7 +0,0 @@
{
"permissions": {
"openapi": [
"customerServiceMessage.send"
]
}
}

View File

@ -1,26 +0,0 @@
const cloud = require('wx-server-sdk')
cloud.init({
// API 调用都保持和云函数当前所在环境一致
env: cloud.DYNAMIC_CURRENT_ENV
})
// 云函数入口函数
exports.main = async (event, context) => {
console.log(event)
const { OPENID } = cloud.getWXContext()
const result = await cloud.openapi.customerServiceMessage.send({
touser: OPENID,
msgtype: 'text',
text: {
content: '收到:' + event.Content,
}
})
console.log(result)
return result
}

View File

@ -1,14 +0,0 @@
{
"name": "callback",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"wx-server-sdk": "~2.1.2"
}
}

View File

@ -1,5 +0,0 @@
{
"permissions": {
"openapi": []
}
}

View File

@ -1,8 +0,0 @@
const cloud = require('wx-server-sdk')
exports.main = async (event, context) => {
// event.userInfo 是已废弃的保留字段,在此不做展示
// 获取 OPENID 等微信上下文请使用 cloud.getWXContext()
delete event.userInfo
return event
}

View File

@ -1,14 +0,0 @@
{
"name": "echo",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"wx-server-sdk": "~2.1.2"
}
}

View File

@ -1,5 +0,0 @@
{
"permissions": {
"openapi": []
}
}

View File

@ -1,36 +0,0 @@
// 云函数模板
// 部署:在 cloud-functions/login 文件夹右击选择 “上传并部署”
const cloud = require('wx-server-sdk')
// 初始化 cloud
cloud.init({
// API 调用都保持和云函数当前所在环境一致
env: cloud.DYNAMIC_CURRENT_ENV
})
/**
* 这个示例将经自动鉴权过的小程序用户 openid 返回给小程序端
*
* event 参数包含小程序端调用传入的 data
*
*/
exports.main = async (event, context) => {
console.log(event)
console.log(context)
// 可执行其他自定义逻辑
// console.log 的内容可以在云开发云函数调用日志查看
// 获取 WX Context (微信调用上下文),包括 OPENID、APPID、及 UNIONID需满足 UNIONID 获取条件)等信息
const wxContext = cloud.getWXContext()
return {
event,
openid: wxContext.OPENID,
appid: wxContext.APPID,
unionid: wxContext.UNIONID,
env: wxContext.ENV,
}
}

View File

@ -1,14 +0,0 @@
{
"name": "login",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"wx-server-sdk": "~2.1.2"
}
}

View File

@ -1,15 +0,0 @@
{
"permissions": {
"openapi": [
"wxacode.get",
"subscribeMessage.send",
"subscribeMessage.addTemplate",
"templateMessage.send",
"templateMessage.addTemplate",
"templateMessage.deleteTemplate",
"templateMessage.getTemplateList",
"templateMessage.getTemplateLibraryById",
"templateMessage.getTemplateLibraryList"
]
}
}

View File

@ -1,87 +0,0 @@
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
console.log(event)
switch (event.action) {
case 'requestSubscribeMessage': {
return requestSubscribeMessage(event)
}
case 'sendSubscribeMessage': {
return sendSubscribeMessage(event)
}
case 'getWXACode': {
return getWXACode(event)
}
case 'getOpenData': {
return getOpenData(event)
}
default: {
return
}
}
}
async function requestSubscribeMessage(event) {
// 此处为模板 ID开发者需要到小程序管理后台 - 订阅消息 - 公共模板库中添加模板,
// 然后在我的模板中找到对应模板的 ID填入此处
return '请到管理后台申请模板 ID 然后在此替换' // 如 'N_J6F05_bjhqd6zh2h1LHJ9TAv9IpkCiAJEpSw0PrmQ'
}
async function sendSubscribeMessage(event) {
const { OPENID } = cloud.getWXContext()
const { templateId } = event
const sendResult = await cloud.openapi.subscribeMessage.send({
touser: OPENID,
templateId,
miniprogram_state: 'developer',
page: 'pages/openapi/openapi',
// 此处字段应修改为所申请模板所要求的字段
data: {
thing1: {
value: '咖啡',
},
time3: {
value: '2020-01-01 00:00',
},
}
})
return sendResult
}
async function getWXACode(event) {
// 此处将获取永久有效的小程序码,并将其保存在云文件存储中,最后返回云文件 ID 给前端使用
const wxacodeResult = await cloud.openapi.wxacode.get({
path: 'pages/openapi/openapi',
})
const fileExtensionMatches = wxacodeResult.contentType.match(/\/([^\/]+)/)
const fileExtension = (fileExtensionMatches && fileExtensionMatches[1]) || 'jpg'
const uploadResult = await cloud.uploadFile({
// 云文件路径,此处为演示采用一个固定名称
cloudPath: `wxacode_default_openapi_page.${fileExtension}`,
// 要上传的文件内容可直接传入图片 Buffer
fileContent: wxacodeResult.buffer,
})
if (!uploadResult.fileID) {
throw new Error(`upload failed with empty fileID and storage server status code ${uploadResult.statusCode}`)
}
return uploadResult.fileID
}
async function getOpenData(event) {
return cloud.getOpenData({
list: event.openData.list,
})
}

View File

@ -1,14 +0,0 @@
{
"name": "openapi",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"wx-server-sdk": "~2.1.2"
}
}

View File

@ -0,0 +1,161 @@
import {request} from '../utils/request'
// 获取流程申请类型
export function myDefinitionList(data) {
return request({
url: '/wxApi/flowTask/myDefinitionList',
method: 'get',
data: data
})
}
// 启动流程实例
export function startProcessInstance(data) {
return request({
url: '/wxApi/flowTask/startProcessInstance',
method: 'post',
data: data
})
}
// 查询流程节点
export function readDeployNotes(deployId) {
return request({
url: '/wxApi/flowTask/readNotes/'+deployId,
method: 'get'
})
}
// 取消流程申请
export function stopProcess(data) {
return request({
url: '/wxApi/flowTask/stopProcess',
method: 'post',
data: data
})
}
// 撤回流程办理
export function revokeProcess(data) {
return request({
url: '/wxApi/flowTask/revokeProcess',
method: 'post',
data: data
})
}
// 审批任务流程
export function complete(data) {
return request({
url: '/wxApi/flowTask/complete',
method: 'post',
data: data
})
}
// 驳回任务流程
export function reject(data) {
return request({
url: '/wxApi/flowTask/reject',
method: 'post',
data: data
})
}
// 退回任务流程
export function returnTask(data) {
return request({
url: '/wxApi/flowTask/return',
method: 'post',
data: data
})
}
// 委派任务流程
export function delegateTask(data) {
return request({
url: '/wxApi/flowTask/delegateTask',
method: 'post',
data: data
})
}
// 转办任务流程
export function assignTask(data) {
return request({
url: '/wxApi/flowTask/assignTask',
method: 'post',
data: data
})
}
// 删除流程实例
export function deleteInstance(instanceId) {
return request({
url: '/wxApi/flowTask/delete/'+instanceId,
method: 'get'
})
}
// 获取所有可回退的节点
export function returnList(data) {
return request({
url: '/wxApi/flowTask/returnList',
method: 'post',
data: data
})
}
// 根据流程Id查询操作日志
export function findCommentByProcInsId(data) {
return request({
url: '/wxApi/flowTask/findCommentByProcInsId',
method: 'get',
data: data
})
}
// 根据条件查询我的代办任务
export function myAwaitFlowTaskList(data) {
return request({
url: '/wxApi/flowTask/myAwaitFlowTaskList',
method: 'post',
data: data
})
}
// 根据条件查询我的已办任务
export function myFinishedFlowTaskList(data) {
return request({
url: '/wxApi/flowTask/myFinishedFlowTaskList',
method: 'get',
data: data
})
}
// 根据条件查询所有流申请
export function allInstanceList(data) {
return request({
url: '/wxApi/flowTask/allList',
method: 'get',
data: data
})
}
// 根据条件统计所有流程任务
export function queryTaskCount(data) {
return request({
url: '/wxApi/flowTask/queryCount',
method: 'get',
data: data
})
}
// 根据条件统计分类流程任务
export function queryTaskCountByCategory(data){
return request({
url: '/wechat/flowTask/findAwaitCountGroupByCategory',
method: 'post',
data: data
})
}

View File

@ -0,0 +1,35 @@
import {request} from '../utils/request'
// 获取验证码
export function getCodeImg() {
return request({
url: '/wechat/captchaImage',
method: 'get',
})
}
// 登录方法
export function login(data) {
return request({
url: '/wxApi/login',
method: 'post',
data: data,
})
}
// 登录方法
export function updatePwd(data) {
return request({
url: '/wxApi/updatePwd',
method: 'post',
data: data,
})
}
// 用户退出方法
export function loginOut() {
return request({
'url': '/wxApi/loginOut',
'method': 'get'
})
}

View File

@ -0,0 +1,10 @@
import {request} from '../utils/request'
// 根据条件统计项目标准化类型
export function queryCountByType(data){
return request({
url: '/wechat/projectStandard/findCountByType',
method: 'get',
data: data
})
}

View File

@ -0,0 +1,59 @@
import {request} from '../utils/request'
// 获取用户详细信息
export function getUserInfo() {
return request({
url: '/wxApi/publics/user/info',
method: 'get'
})
}
// 查询用户菜单信息
export function selectRoleMenuList(data) {
return request({
url: '/wxApi/publics/v1/selectRoleMenuList',
method: 'get',
data: data
})
}
// 查询用户待办信息
export function findMyTask(data) {
return request({
url: '/wxApi/flowTask/myAwaitFlowTaskListCount',
method: 'post',
data:data
})
}
// 查询用户部门信息
export function findMyDeptList(){
return request({
url: '/wxApi/publics/v1/findMyDeptList',
method: 'get'
})
}
// 查询用户项目信息
export function findMyProjectList(){
return request({
url: '/wxApi/publics/v1/findMyProjectList',
method: 'get'
})
}
// 查询部门资产列表信息
export function findAllByCategory(category){
return request({
url: '/wxApi/publics/v1/findAllByCategory/'+category,
method: 'get'
})
}
// 获取项目申请详细信息
export function findProjectApplyData(id){
return request({
url: '/wxApi/publics/projectApply/'+id,
method: 'get'
})
}

View File

@ -23,17 +23,16 @@
App({
globalData: {
category:'',
standard:'',
paramDeptId:'',
userProjectId:'',
appId: "wxc44b5d588f599758",
appId: "wx9997d071b4996f23",
// 智慧工地后台接口访问域名
// reqUrl:"http://wxw.ngrok.makalu.cc",
//reqUrl:'https://jaapplets.makalu.cc',
//reqUrl:'https://sxyanzhu.com/jhwxapp',
reqUrl:'https://cf.makalu.cc',
//reqUrl:'http://127.0.0.1:8091',
uploadUrl:"https://cf.makalu.cc/wechat",
//uploadUrl:'http://127.0.0.1:8091/wechat',
//reqUrl:'https://szgcwx.jhncidg.com',
reqUrl:'http://127.0.0.1:8091',
//uploadUrl:"https://szgcwx.jhncidg.com/wechat",
uploadUrl:'http://192.168.43.53:8091/wechat',
//御景路数字化集成管控平台接口访问域名
szhUrl:'https://szh.makalu.cc',

View File

@ -1462,6 +1462,14 @@ swiper-item video{
align-items: center;
}
.module_see_info_switct{
font-size: 26rpx;
font-weight: 600;
color: greenyellow;
display: flex;
align-items: center;
}
.inspect_new_issues_max{
padding: 30rpx 0;
}
@ -1630,6 +1638,20 @@ swiper-item video{
margin-left: 110rpx;
margin-top: 16rpx;
}
.tabNum_defalut{
position: absolute;
background-color: blueviolet;
border-radius: 10px;
color: #fff;
display: inline-block;
font-size: 12px;
height: 18px;
line-height: 18px;
padding: 0 6px;
text-align: center;
white-space: nowrap;
margin-left: 110rpx;
}
.van-col--18{
word-wrap:break-word;
}

View File

@ -0,0 +1,8 @@
// 应用全局配置
module.exports = {
timeout: 60000,
appId: "wx9997d071b4996f23",
//baseUrl: 'https://szgcwx.jhncidg.com',
baseUrl: 'http://127.0.0.1:8091',
noSecuritys:['/wechat/captchaImage','/wxApi/login']
};

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -1,7 +1,3 @@
/* newComponents/select-person/index.wxss */
page{
height:100%
}
.rectifier_add_to{
width: 100rpx;
height: 100rpx;
@ -16,10 +12,11 @@ page{
}
.rectifier_max{
width: 100%;
height: 100%;
background: #232a44;
border-radius: 15rpx;
position: relative;
height: 100%;
margin-bottom: -57rpx;
}
.rectifier_title{
position: relative;

View File

@ -43,7 +43,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="/images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>

View File

@ -82,7 +82,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -106,7 +106,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -50,7 +50,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -58,7 +58,7 @@
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>新增</view>
</view>
</view></view>

View File

@ -42,7 +42,7 @@
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -41,7 +41,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -49,7 +49,7 @@
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>变更</view>
</view>
</view></view>

View File

@ -50,7 +50,7 @@
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -39,7 +39,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -47,7 +47,7 @@
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>新增</view>
</view>
</view></view>

View File

@ -83,7 +83,7 @@
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -112,7 +112,7 @@
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -46,7 +46,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -54,7 +54,7 @@
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>新增</view>
</view>
</view></view>

View File

@ -84,7 +84,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -105,7 +105,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -46,7 +46,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -54,7 +54,7 @@
</view>
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>新增</view>
</view>
</view>

View File

@ -87,7 +87,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../../images/loding2.gif"></image>
<image src="/../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -152,7 +152,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../../images/loding2.gif"></image>
<image src="/../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -53,7 +53,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../../images/loding2.gif"></image>
<image src="/../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -57,19 +57,19 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="../https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
<view class="inspect_add_to_darft" bindtap="skipAddDarft">
<view style="padding-top: 22rpx;">
<image src="../../../../images/new_add.png"></image>
<image src="/../images/new_add.png"></image>
<view>草稿</view>
</view>
</view>
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../../images/new_add.png"></image>
<image src="/../images/new_add.png"></image>
<view>新增</view>
</view>
</view>

View File

@ -148,7 +148,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../../images/loding2.gif"></image>
<image src="/../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -87,7 +87,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../../images/loding2.gif"></image>
<image src="/../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -152,7 +152,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../../images/loding2.gif"></image>
<image src="/../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -53,7 +53,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../../images/loding2.gif"></image>
<image src="/../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -56,19 +56,19 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="../https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
<view class="inspect_add_to_darft" bindtap="skipAddDarft">
<view style="padding-top: 22rpx;">
<image src="../../../../images/new_add.png"></image>
<image src="/../images/new_add.png"></image>
<view>草稿</view>
</view>
</view>
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../../images/new_add.png"></image>
<image src="/../images/new_add.png"></image>
<view>新增</view>
</view>
</view>

View File

@ -147,7 +147,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../../images/loding2.gif"></image>
<image src="/../images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -112,7 +112,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -39,7 +39,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -47,7 +47,7 @@
<view wx:if="{{addFlag}}" class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>新增</view>
</view>
</view></view>

View File

@ -68,7 +68,7 @@
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -40,7 +40,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -48,7 +48,7 @@
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>新增</view>
</view>
</view></view>

View File

@ -47,7 +47,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -1,143 +1,238 @@
// pageage/safetyManagement/securityCheckGR/index.js
import config from '../../../config'
import {
queryCountByType
} from '../../../api/projectStandard'
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
deptId:"",
loginName:"",
projectId:"",
minRoleId:"",
projectData:{},
initData: {},
show:false,
listData:[],
request:app.globalData.reqUrl
},
/**
* 页面的初始数据
*/
data: {
deptId: "",
loginName: "",
projectId: "",
minRoleId: "",
projectData: {},
initData: {},
show: false,
listData: [],
standard: null,
standardName: '',
standardActive: '',
typeList: [{
id: 1,
name: '作业标准化',
icon: config.baseUrl + '/staticFiles/img/zybzh.png',
count: 0,
}, {
id: 2,
name: '现场管理标准',
icon: config.baseUrl + '/staticFiles/img/xcglbzh.png',
count: 0,
},
{
id: 3,
name: '安全技术标准',
icon: config.baseUrl + '/staticFiles/img/aqjsbzh.png',
count: 0,
}, {
id: 4,
name: '设备管理标准',
icon: config.baseUrl + '/staticFiles/img/sbglbzh.png',
count: 0,
}, {
id: 5,
name: '文明施工标准',
icon: config.baseUrl + '/staticFiles/img/wmsgbzh.png',
count: 0,
}, {
id: 6,
name: '环境保护标准',
icon: config.baseUrl + '/staticFiles/img/hjbhbzh.png',
count: 0,
}
],
},
skipAdd(){
wx.redirectTo({
url: `../add/index?projectId=${this.data.initData.id}&projectName=`+this.data.initData.text,
})
},
skipAdd() {
wx.redirectTo({
url: `../add/index?projectId=${this.data.initData.id}&projectName=` + this.data.initData.text,
})
},
getInfo(e){
let {id} = e.currentTarget.dataset.set
wx.redirectTo({
url: `../info/index?id=${id}`
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
//获取缓存数据
wx.getStorage({
key: 'userinfo',
success:res=>{
this.setData({
deptId:res.data.deptId,
loginName:res.data.loginName,
userName:res.data.userName,
projectId:app.globalData.projectId,
minRoleId:res.data.minRoleId,
initData:{text:app.globalData.projectName,id:app.globalData.projectId}
})
this.getListData(app.globalData.projectId,res.data.deptId,res.data.minRoleId);
}
})
},
getInfo(e) {
let {
id
} = e.currentTarget.dataset.set
wx.redirectTo({
url: `../info/index?id=${id}`
})
},
/**
* 查询项目举牌验收数据
*/
getListData(projectId,deptId,minRoleId) {
* 生命周期函数--监听页面加载
*/
onLoad(options) {
let standard;
if (options && options.standard) {
standard = options.standard;
app.globalData.standard = options.standard;
} else {
standard = app.globalData.standard;
}
//获取缓存数据
wx.getStorage({
key: 'userinfo',
success: res => {
this.setData({
deptId: res.data.deptId,
loginName: res.data.loginName,
userName: res.data.userName,
projectId: app.globalData.projectId,
minRoleId: res.data.minRoleId,
initData: {
text: app.globalData.projectName,
id: app.globalData.projectId
},
standard: standard,
standardName: this.data.typeList[standard - 1].name,
standardActive: this.data.typeList[standard - 1].id,
listData: [],
})
this.getListData(app.globalData.projectId, res.data.deptId, res.data.minRoleId);
}
})
},
/**
* 切换页签
* @param {*} e
*/
standardActive: function (e) {
let {
id,
name
} = e.currentTarget.dataset.set
this.setData({
standard: id,
standardName: name,
standardActive: id
})
app.globalData.standard = id;
this.onLoad()
},
/**
* 查询项目举牌验收数据
*/
getListData(projectId, deptId, minRoleId) {
var that = this;
//判断角色,
if(minRoleId==2||minRoleId==3||minRoleId==4){
deptId=0;
//判断角色,
if (minRoleId == 2 || minRoleId == 3 || minRoleId == 4) {
deptId = 0;
}
let param = {
"projectId": projectId,
"deptId":deptId,
"standardType": this.data.standard,
"projectId": projectId,
"deptId": deptId,
}
this.queryCountByType(param);
wx.request({
url: app.globalData.reqUrl + '/wechat/projectStandard/list',
data:param,
data: param,
method: "get",
success: function (res) {
that.setData({
listData:res.data.data
listData: res.data.data
})
}
});
},
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
returnToPage: function () {
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
wx.redirectTo({
url: '../../../pages/gengduogongneng/gengduogongneng',
/**
* 根据条件查询类型数量统计
*/
queryCountByType: function (data) {
queryCountByType(data).then(res => {
let typeList = this.data.typeList;
typeList.forEach(type => {
res.data.forEach(item => {
if (type.id == item.standardType) {
if (item.total) {
type.count = item.total;
}
}
})
});
this.setData({
typeList
})
},
});
},
//项目切换 返回值
onProjectSelect(e){
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
returnToPage: function () {
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
wx.redirectTo({
url: '../../../pages/gengduogongneng/gengduogongneng',
})
},
//项目切换 返回值
onProjectSelect(e) {
let projectId = e.detail.id;
let projectName = e.detail.text;
app.globalData.projectId = projectId;
app.globalData.projectName = projectName;
app.globalData.projectName = projectName;
this.onLoad();
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
}
})

View File

@ -1,7 +1,8 @@
{
"usingComponents": {
"van-overlay": "@vant/weapp/overlay/index" ,
"van-popup": "@vant/weapp/popup/index"
"van-popup": "@vant/weapp/popup/index",
"van-divider":"@vant/weapp/divider/index"
},
"navigationStyle":"custom"
}

View File

@ -12,6 +12,20 @@
</view>
<view class="max_content">
<project-select init="{{initData}}" bindchange="onProjectSelect"></project-select>
<view class="gd_max" style="margin-top: 20rpx;">
<van-row class="demo clearfix">
<van-col span="8" wx:for="{{typeList}}" wx:key="index">
<view class="gd_min {{standardActive==item.id?'gd_min_active':''}}" data-set="{{item}}" bindtap="standardActive">
<span class="tabNum_defalut" wx:if="{{item.count>0}}">{{item.count}}</span>
<image class="gd_img" src="{{item.icon}}"></image>
<view>{{item.name}}</view>
</view>
</van-col>
</van-row>
</view>
<van-divider content-position="left" :style="{padding:'90px 60px'}">
{{standardName}}
</van-divider>
<view class="inspect_max">
<view class="inspect_list">
<view class="inspect_for" v-if="{{ listData.length>0 }}" wx:for="{{listData}}" wx:key="index" data-set="{{item}}" bindtap="getInfo">
@ -19,24 +33,17 @@
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{index < 9 ?'0'+(index+1):(index+1)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">{{item.standardTypeName}}</view>
<view class="module_title module_title_flex inspect_list_title_text color_blue">{{item.standardDesc}}</view>
</view>
</view>
<view class="inspect_list_info">
<view class="inspect_list_info_details">
<view class="inspect_list_info_img">
<van-image width="120rpx" height="120rpx" fit="cover" src="{{request+item.imageFile+'.min.jpg'}}"/>
</view>
<view class="inspect_list_info_data">
<view class="inspect_list_info_data_prop"><text class="color_blue">{{item.standardDesc}}</text></view>
</view>
</view>
<image class="inspect_list_info_imgs" src="{{config.baseUrl+item.imageFile+'.min.jpg'}}"/>
</view>
</view>
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -44,7 +51,7 @@
</view>
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>新增</view>
</view>
</view>

View File

@ -1 +1,36 @@
/* pageage/project_checking_list/project_checking_list.wxss */
.inspect_list_info_imgs{
width: 100%;
height: 250rpx;
}
.gd_max{
padding:10rpx 50rpx 0;
}
.gd_min{
padding: 30rpx 0;
text-align: center;
}
.gd_min image{
width: 150rpx;
height: 150rpx;
}
.gd_min view{
padding: 10rpx;
color: #89a4eb;
}
.van-divider--left{
padding: 0 35rpx !important;
color: #866cff !important;
border-color: #89a4eb !important;
}
.gd_img{
width: 100rpx !important;
height: 100rpx !important;
}
.gd_min_active image{
background: #513abdb0;
border-radius: 80rpx;
}
.gd_min_active view{
color: #866cff;
}

View File

@ -85,7 +85,7 @@
</van-popup>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -41,7 +41,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
@ -49,7 +49,7 @@
<view class="inspect_add_to" bindtap="skipAdd">
<view style="padding-top: 22rpx;">
<image src="../../../images/new_add.png"></image>
<image src="/images/new_add.png"></image>
<view>新增</view>
</view>
</view></view>

View File

@ -79,7 +79,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -116,7 +116,7 @@
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -5,6 +5,10 @@ Component({
* 组件的属性列表
*/
properties: {
fileType:{
type:String,
value:"all",
},
fileUrlArray:{
type:Array
},
@ -63,6 +67,7 @@ Component({
}
var that = this;
wx.chooseMessageFile({
type:that.data.fileType,
count: that.data.quantity - that.data.uploaderNum, // 默认9
success: function(res) {
// 返回选定照片的本地文件路径列表tempFilePath可以作为img标签的src属性显示图片

View File

@ -5,7 +5,7 @@
<input class="celect_frame_min" placeholder="{{placeholder}}" placeholder-style="color:#6777aa;" value="{{value}}" disabled="true"/>
</view>
<view class="voucher_select_icon">
<image src="../../../images/web_select_date.png"></image>
<image src="/images/web_select_date.png"></image>
</view>
</view>

View File

@ -5,7 +5,7 @@
<input class="celect_frame_min" placeholder="{{placeholder}}" placeholder-style="color:#6777aa;" value="{{value}}" disabled="true"/>
</view>
<view class="voucher_select_icon">
<image src="../../../images/web_select_date.png"></image>
<image src="/images/web_select_date.png"></image>
</view>
</view>

View File

@ -26,7 +26,7 @@
<view class="left_info_dept">{{deptName}}</view>
</van-col>
<van-col span="10">
<view class="left_head"><image src="../../images/user_3.png"></image></view>
<view class="left_head"><image src="https://szgcwx.jhncidg.com/staticFiles/images/user_avatar.png"></image></view>
</van-col>
<van-col span="14">
<view class="left_info">

View File

@ -1,4 +1,12 @@
// pages/login/login.js
import {
getToken,
setToken
} from '../../utils/auth'
import {
login,
getCodeImg,
} from '../../api/login'
const app = getApp();
Page({
@ -6,89 +14,104 @@ Page({
* 页面的初始数据
*/
data: {
username:'',
password:'',
show:false,
openId:'',
username: '',
password: '',
show: false,
openId: '',
code: '',
uuid: '',
usercode: '',
},
//获取填写的账号信息
name:function(even){
name: function (even) {
this.setData({
username:even.detail.value
username: even.detail.value
})
},
//获取填写的密码信息
psw:function(even){
pass: function (even) {
this.setData({
password:even.detail.value
password: even.detail.value
})
},
//获取填写的密码信息
code: function (even) {
this.setData({
usercode: even.detail.value
})
},
onClickShow() {
this.setData({ show: true });
this.setData({
show: true
});
},
onClickHide() {
this.setData({ show: false });
this.setData({
show: false
});
},
onLoad: function (option) {
this.getOPenId();
this.loadCodeImage();
this.getOPenId();
},
/**
* 获取用户openid
*/
getOPenId:function () {
getOPenId: function () {
wx.login({
success :res=>{
//启动蒙版
let oid = wx.getStorageSync("openId");
if(!oid){
this.onClickShow();
wx.request({
url: app.globalData.reqUrl+'/wechat/getOpenId',
data:{
"code": res.code,
"appId": app.globalData.appId,
},
success:(res)=>{
res = res.data;
this.onClickHide();
this.setData({
openId:res.data.openid,
})
wx.setStorageSync('openId', res.data.openid)
//验证登录用户
this.selectUserInfoByOpenId(res.data.openid);
}
success: res => {
//启动蒙版
let oid = wx.getStorageSync("openId");
if (!oid) {
this.onClickShow();
wx.request({
url: app.globalData.reqUrl + '/wechat/getOpenId',
data: {
"code": res.code,
"appId": app.globalData.appId,
},
success: (res) => {
res = res.data;
this.onClickHide();
this.setData({
openId: res.data.openid,
})
wx.setStorageSync('openId', res.data.openid)
//验证登录用户
this.selectUserInfoByOpenId(res.data.openid);
}
})
}else{
//验证登录用户
this.selectUserInfoByOpenId(oid);
}
} else {
//验证登录用户
this.selectUserInfoByOpenId(oid);
}
}
})
},
},
//验证用户是否是第一次登陆
selectUserInfoByOpenId:function(openId){
selectUserInfoByOpenId: function (openId) {
//跳转页面
let isRelogin=wx.getStorageSync("isReload");
if(isRelogin){
let isRelogin = wx.getStorageSync("isReload");
if (isRelogin) {
return;
}
this.onClickShow();
var that = this;
wx.request({
url: app.globalData.reqUrl+'/wechat/openIdLogin',
data:{
"openId":openId
url: app.globalData.reqUrl + '/wechat/openIdLogin',
data: {
"openId": openId
},
method:"POST",
success:function(res){
if(res.data.code == '200'){
method: "POST",
success: function (res) {
if (res.data.code == '200') {
//把数据存到缓存中
wx.setStorage({
key: 'userinfo',
@ -101,48 +124,68 @@ Page({
that.onClickHide();
let rd = res.data.data;
//只有一个项目时直接跳转详情页
if(rd.projectInfo!=null || rd.projectInfo!=undefined){
if (rd.projectInfo != null || rd.projectInfo != undefined) {
//赋值到公共参数
app.globalData.projectId = rd.projectInfo.projectId;
app.globalData.projectName = rd.projectInfo.projectName;
app.globalData.projectInfoList = [];
app.globalData.projectInfoList.push(rd.projectInfo);
app.globalData.value1 = rd.projectInfo.shengName;
app.globalData.value2 = rd.projectInfo.shiName+'/'+rd.projectInfo.quName;
app.globalData.value2 = rd.projectInfo.shiName + '/' + rd.projectInfo.quName;
app.globalData.value3 = rd.projectInfo.logCompanyName;
wx.redirectTo({
url: '../xiangmugaikuang/xiangmugaikuang',
})
}else{
} else {
//跳转页面
wx.redirectTo({
url: '../map/map',
})
}
}else{
} else {
that.onClickHide();
}
}
})
},
},
/**
* 获取验证码
*/
loadCodeImage: function () {
getCodeImg().then(res => {
let captchaEnabled = res.captchaEnabled === undefined ? true : res.captchaEnabled
if (captchaEnabled) {
this.setData({
code: 'data:image/gif;base64,' + res.img,
uuid: res.uuid
})
}
});
},
//登录
userLogin:function(openid){
userLogin: function (openid) {
var that = this;
var username = that.data.username;
var password = that.data.password;
if(username == ""){
var usercode = this.data.usercode;
if (username == "") {
app.toast("账号不能为空");
return;
}
if(password == ""){
if (password == "") {
app.toast("密码不能为空");
return;
}
if (usercode == "") {
app.toast("验证码不能为空");
return;
}
let openId = that.data.openId
if(openId==""){
if (openId == "") {
openId = wx.getStorageSync("openId");
if(openId==""){
if (openId == "") {
app.toast("获取微信授权失败,请卸载后重新进入应用!!");
return;
}
@ -151,50 +194,50 @@ Page({
that.onClickShow();
//发送请求
wx.request({
url: app.globalData.reqUrl+'/wechat/login',
data:{
"username":username,
"password":password,
"openId":openId,
url: app.globalData.reqUrl + '/wechat/login',
data: {
"username": username,
"password": password,
"openId": openId,
"code": usercode,
"uuid": this.data.uuid,
},
method:"POST",
success(res){
//关闭蒙版
that.onClickHide();
if(res.data.code=='200'){
//把数据存到缓存中
wx.setStorage({
key: 'userinfo',
data: res.data.data.userinfo
});
// wx.setStorageSync({
// key: 'token',
// data: res.data.token
// });
wx.setStorageSync('isReload', "");
let rd = res.data.data;
//只有一个项目时直接跳转详情页
if(rd.projectInfo!=null || rd.projectInfo!=undefined){
//赋值到公共参数
app.globalData.projectId = rd.projectInfo.projectId;
app.globalData.projectName = rd.projectInfo.projectName;
app.globalData.projectInfoList = [];
app.globalData.projectInfoList.push(rd.projectInfo);
app.globalData.value1 = rd.projectInfo.shengName;
app.globalData.value2 = rd.projectInfo.shiName+'/'+rd.projectInfo.quName;
app.globalData.value3 = rd.projectInfo.logCompanyName;
wx.redirectTo({
url: '../xiangmugaikuang/xiangmugaikuang',
})
}else{
//跳转页面
wx.redirectTo({
url: '../map/map',
})
}
}else{
app.toast(res.data.msg);
method: "POST",
success(res) {
//关闭蒙版
that.onClickHide();
if (res.data.code == '200') {
//把数据存到缓存中
wx.setStorage({
key: 'userinfo',
data: res.data.data.userinfo
});
setToken(res.data.token);
let rd = res.data.data;
wx.setStorageSync('isReload', "");
//只有一个项目时直接跳转详情页
if (rd.projectInfo != null || rd.projectInfo != undefined) {
//赋值到公共参数
app.globalData.projectId = rd.projectInfo.projectId;
app.globalData.projectName = rd.projectInfo.projectName;
app.globalData.projectInfoList = [];
app.globalData.projectInfoList.push(rd.projectInfo);
app.globalData.value1 = rd.projectInfo.shengName;
app.globalData.value2 = rd.projectInfo.shiName + '/' + rd.projectInfo.quName;
app.globalData.value3 = rd.projectInfo.logCompanyName;
wx.redirectTo({
url: '../xiangmugaikuang/xiangmugaikuang',
})
} else {
//跳转页面
wx.redirectTo({
url: '../map/map',
})
}
} else {
that.loadCodeImage();
app.toast(res.data.msg);
}
}
})
},

View File

@ -2,60 +2,39 @@
<view class="login_logo">
<image src="https://cf.makalu.cc/profile/wechat/logo4.png"></image>
</view>
<view class="login_bg">
<view class="login_title">
<text>产发工程数字管理平台</text>
</view>
<view class="login_bg">
<view class="login_ex">请使用手机号登录</view>
<view class="login_input">
<input placeholder="输入登录手机" placeholder-style="color:#5e6ea2" bindinput="name"/>
<input placeholder="输入登录手机" placeholder-style="color:#5e6ea2" bindinput="name" class="name" />
</view>
<view class="login_input">
<input placeholder="输入登录密码" placeholder-style="color:#5e6ea2" password="true" bindinput="psw"/>
<input placeholder="输入登录密码" placeholder-style="color:#5e6ea2" password="true" class="pass" bindinput="pass" />
</view>
<view class="login_btn" bindtap="userLogin">
确 定
</view>
<van-overlay show="{{show}}">
<view class="gif">
<image src="../../images/loding2.gif"></image>
<view>正在登陆中!请稍后...</view>
</view>
</van-overlay>
<van-row>
<van-col span="14">
<view class="login_input">
<input placeholder="请输入验证码" placeholder-style="color:#5e6ea2" bindinput="code" class="code" maxlength="5" />
</view>
</van-col>
<van-col span="10">
<view class="login_code">
<image src="{{ code }}" bindtap="loadCodeImage" />
</view>
</van-col>
</van-row>
</view>
<view class="login_btn" bindtap="userLogin">
确 定
</view>
<van-overlay show="{{show}}">
<view class="gif">
<image src="../../images/loding2.gif"></image>
<view>正在登陆中!请稍后...</view>
</view>
</van-overlay>

View File

@ -5,10 +5,11 @@ page{
.login_title{
height: 180rpx;
line-height: 180rpx;
color: #728ce3;
color: #DDDDDD;
font-size: 41rpx;
font-weight: bold;
text-align: center;
background: url("http://62.234.3.186/profile/static/yanzhu_title.png") no-repeat left/100% 100%;
}
.login_title text{
border-bottom: 3px solid #728ce3;
@ -20,28 +21,29 @@ page{
margin-top: 10rpx;
}
.login_dl{
color: #ffffff;
color: #728ce3;
font-size: 40rpx;
font-weight: bold;
}
.login_ex{
padding:20rpx 0;
font-size: 30rpx;
border-bottom: 20rpx dashed #ffffff;
border-bottom: 20rpx dashed #728ce3;
width: 50%;
}
.login_input{
margin-top: 50rpx;
}
.login_input input{
.login_input .name{
background: url("http://62.234.3.186/profile/static/login_name.png") no-repeat left/40rpx;
border-bottom: 1px solid #5e6ea2;
height: 100rpx;
width: 93%;
color: #728ce3;
padding: 0 20rpx;
padding: 0 50rpx;
}
.login_btn{
margin:80rpx 50rpx 0;
margin:80rpx;
height: 80rpx;
background-image: linear-gradient(#5b9fff, #7655fc);
border-radius: 80rpx;
@ -62,6 +64,31 @@ page{
height: 65rpx;
}
.login_input .pass {
background: url("http://62.234.3.186/profile/static/login_pass.png") no-repeat left/40rpx;
border-bottom: 1px solid #5e6ea2;
height: 100rpx;
width: 85%;
color: #728ce3;
padding: 0 50rpx;
}
.login_input .code {
background: url("http://62.234.3.186/profile/static/login_code.png") no-repeat left/40rpx;
border-bottom: 1px solid #5e6ea2;
height: 100rpx;
width: 74%;
color: #728ce3;
padding: 0 50rpx;
}
.login_code image{
margin-top: 50rpx;
margin-left: 12rpx;
width: 100%;
height: 100rpx;
}

View File

@ -219,7 +219,7 @@
</view>
<!-- <view class="map_ding_wei" bindtap="selectUserLocation" data-type="1">
<image src="/images/dingwei.png" ></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/dingwei.png" ></image>
</view> -->
<!-- 当掏钱了就解开这个封印将下面的封印上 -->

View File

@ -43,7 +43,7 @@
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="/images/nodata.png" style="width: 130px;height: 105px;"></image>
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>

View File

@ -113,7 +113,7 @@
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -1,4 +1,4 @@
// pageage/safetyManagement/addSafetyInspect/index.js
import config from '../../../config'
const app = getApp()
Page({
@ -20,8 +20,8 @@ Page({
activeName:"",
flowNodeList:[],
flowNodes:[],
fileNames:[],
fileUrls:[],
imageList:[],
filesData:[],
comment:"",
taskId:"",
procInsId:"",
@ -31,6 +31,8 @@ Page({
taskName:"",
passState:true,
backName:"",
imageType:["png","jpg","jpeg"],
fileType:["pdf"],
},
/**
@ -177,19 +179,23 @@ Page({
that.setData({
infoData:res.data
})
let fileNames = [];
let fileUrls = [];
let filesData = [];
let imageList = [];
//判断附件
if(res.data.files){
res.data.files.split(',').forEach(element => {
let it = element.split('/');
fileNames.push(it[it.length-1]);
fileUrls.push(element);
let ft = element.split('.');
if(that.data.imageType.indexOf(ft[ft.length-1].toLowerCase())>-1){
imageList.push({minPath:config.baseUrl+element,path:element});
}else{
let it = element.split('/');
filesData.push({name:it[it.length-1],path:element});
}
});
}
that.setData({
fileNames,
fileUrls
filesData,
imageList
})
}else{
app.toast(res.msg);
@ -521,12 +527,24 @@ Page({
})
},
//展示图片详细
showImg:function(e){
let {path} = e.currentTarget.dataset.set
wx.previewImage({
urls: this.data.imageList,
current: path
})
},
/**
* 下载并打开文档
* @param {*} e
*/
downFile:function(e){
let idx = e.currentTarget.dataset['index'];
let that = this;
let {path} = e.currentTarget.dataset.set
wx.downloadFile({
// 示例 url并非真实存在
url: app.globalData.uploadUrl+'/common/download/resource?resource='+that.data.fileUrls[idx],
url: app.globalData.uploadUrl+'/common/download/resource?resource='+path,
success: function (res) {
const filePath = res.tempFilePath
wx.openDocument({

View File

@ -1,162 +1,138 @@
<!--pageage/safetyManagement/addSafetyInspect/index.wxml-->
<view class="header_title">
<view class="header_title_row">
<van-row>
<van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col>
<van-col span="15">
<view class="header_name">审批流程申请</view>
</van-col>
</van-row>
</view>
</view>
<view class="max_content inspect_overview_max">
<view class="inspect_overview">
<view class="module_title module_title_flex">
<view>{{projectName}}</view>
</view>
<view class="gk_open" style="margin-top: 20rpx;border: 1px solid transparent;">
<van-collapse value="{{activeName}}" bind:change="onChange">
<van-collapse-item title="申请流程" name="1">
<view class="left_manage2" wx:for="{{flowNodes}}" wx:key="index">
<text class="safety_issue_number {{item.state}}">{{item.name}}</text>
</view>
</van-collapse-item>
<van-collapse-item title="审批日志" name="2">
<view class="inspect_list">
<view class="inspect_for" wx:for="{{flowRecordList}}" wx:key="index">
<view class="inspect_for_bgd">
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}{{item.commentResult}}
<text wx:if="{{item.commentResult=='通过'}}" class="timeline_for_state_1 color_green">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='驳回'}}" class="timeline_for_state_2 color_purple">{{item.commentResult}}</text>
</view>
</view>
</view>
<view class="inspect_list_info gk_open_con">
<view wx:if="{{item.assigneeName}}"><image src="/images/lw_3.png"></image>办理用户:<text>{{item.assigneeName}}</text></view>
<view wx:if="{{item.assigneeName}}"><image src="/images/s_1.png"></image>办理单位:<text class="color_blue">{{item.deptName}}</text></view>
<view wx:if="{{item.candidate}}"><image src="/images/s_2.png"></image>候选办理:<text>{{item.candidate}}</text></view>
<view wx:if="{{item.deleteReason}}"><image src="/images/s_18.png"></image>驳回节点:<text>{{item.deleteReason}}</text></view>
<view><image src="/images/s_6.png"></image>接收时间:<text>{{item.startTime}}</text></view>
<view wx:if="{{item.endTime}}"><image src="/images/lw_8.png"></image>处理时间:<text>{{item.endTime}}</text></view>
<view wx:if="{{item.duration}}"><image src="/images/img_11.png"></image>处理耗时:<text>{{item.duration}}</text></view>
<view wx:if="{{item.message}}"><image src="/images/s_7.png"></image>处理意见:<text>{{item.message}}</text></view>
</view>
</view>
</view>
</view>
</van-collapse-item>
</van-collapse>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">发起单位</text></van-col>
<van-col span="18" class="color_blue">{{deptName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">发起用户</text></van-col>
<van-col span="18">{{nickName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">审批事项</text></van-col>
<van-col span="18">{{procDefName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" style="width: 100%;">
<van-row>
<van-col span="6"><text class="color_purple">审批内容</text></van-col>
<van-col span="18" class="color_blue">
<view class="files" wx:for="{{fileNames}}" wx:key="index">
<text data-index="{{index}}" style="word-wrap: break-word;" bindtap='downFile'>{{item}}</text>
<view class="header_title_row">
<van-row>
<van-col span="4">
<view class="header_img" bindtap="returnToPage">
<image src="/images/left.png"></image>
</view>
</van-col>
<van-col span="15">
<view class="header_name">审批流程申请</view>
</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">申请说明</text></van-col>
<van-col span="18">{{infoData.remark}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<view class="inspect_overview_title" style="padding: 20rpx 0 10rpx;">审批意见</view>
<view class="inspect_overview_content">
<textarea class="add_textarea" placeholder="请填写审批意见500字内"
placeholder-style="color:#6777aa;" maxlength="500" bindinput="commentInput"/>
</view>
<view class="max_content inspect_overview_max">
<view class="inspect_overview">
<view class="module_title module_title_flex">
<view>{{projectName}}</view>
</view>
<view class="gk_open" style="margin-top: 20rpx;border: 1px solid transparent;">
<van-collapse value="{{activeName}}" bind:change="onChange">
<van-collapse-item title="申请流程" name="1">
<view class="left_manage2" wx:for="{{flowNodes}}" wx:key="index">
<text class="safety_issue_number {{item.state}}">{{item.name}}</text>
</view>
</van-collapse-item>
<van-collapse-item title="审批日志" name="2">
<view class="inspect_list">
<view class="inspect_for" wx:for="{{flowRecordList}}" wx:key="index">
<view class="inspect_for_bgd">
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}{{item.commentResult}}
<text wx:if="{{item.commentResult=='通过'}}" class="timeline_for_state_1 color_green">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='驳回'}}" class="timeline_for_state_2 color_purple">{{item.commentResult}}</text>
</view>
</view>
</view>
<view class="inspect_list_info gk_open_con">
<view wx:if="{{item.assigneeName}}">
<image src="/images/lw_3.png"></image>办理用户:<text>{{item.assigneeName}}</text>
</view>
<view wx:if="{{item.assigneeName}}">
<image src="/images/s_1.png"></image>办理单位:<text class="color_blue">{{item.deptName}}</text>
</view>
<view wx:if="{{item.candidate}}">
<image src="/images/s_2.png"></image>候选办理:<text>{{item.candidate}}</text>
</view>
<view wx:if="{{item.deleteReason}}">
<image src="/images/s_18.png"></image>驳回节点:<text>{{item.deleteReason}}</text>
</view>
<view>
<image src="/images/s_6.png"></image>接收时间:<text>{{item.startTime}}</text>
</view>
<view wx:if="{{item.endTime}}">
<image src="/images/lw_8.png"></image>处理时间:<text>{{item.endTime}}</text>
</view>
<view wx:if="{{item.duration}}">
<image src="/images/img_11.png"></image>处理耗时:<text>{{item.duration}}</text>
</view>
<view wx:if="{{item.message}}">
<image src="/images/s_7.png"></image>处理意见:<text>{{item.message}}</text>
</view>
</view>
</view>
</view>
</view>
</van-collapse-item>
</van-collapse>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">发起单位</text></van-col>
<van-col span="18" class="color_blue">{{deptName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">发起用户</text></van-col>
<van-col span="18">{{nickName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">审批事项</text></van-col>
<van-col span="18">{{procDefName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" style="width: 100%;">
<van-row>
<van-col span="6"><text class="color_purple">审批内容</text></van-col>
<van-col span="18">
<view class="problem_list_info_con in-img-max" wx:if="{{imageList.length>0}}">
<view class="in-img-div" wx:for="{{imageList}}" wx:key="index">
<image bindtap='showImg' data-set="{{item}}" src='{{item.minPath}}'></image>
</view>
</view>
<view class="color_blue" wx:if="{{filesData.length>0}}">
<view class="files" wx:for="{{filesData}}" wx:key="index">
<text data-set="{{item}}" style="word-wrap: break-word;" bindtap='downFile'>{{item.name}}</text>
</view>
</view>
</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">申请说明</text></van-col>
<van-col span="18">{{infoData.remark}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<view class="inspect_overview_title" style="padding: 20rpx 0 10rpx;">审批意见</view>
<view class="inspect_overview_content">
<textarea class="add_textarea" placeholder="请填写审批意见500字内" placeholder-style="color:#6777aa;" maxlength="500" bindinput="commentInput" />
</view>
</view>
<view class="inspect_overview_list" wx:if="{{backShow}}">
</view>
<view class="inspect_overview_list" wx:if="{{backShow}}">
<view class="inspect_overview_title" style="padding: 20rpx 0 10rpx;">退回节点</view>
<view class="inspect_overview_content">
<voucher-select columns="{{targetKeyList}}" placeholder="请选择退回节点" bindchange="onSelectTargetKey"></voucher-select>
</view>
</view>
</view>
</view>
<view class="problem_submit_to">
<view class="problem_submit_to_btn problem_submit_to_warning" bindtap="onBack">审批退回</view>
<view class="problem_submit_to_btn problem_submit_to_delete" bindtap="onReject">审批驳回</view>
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onPass">审批通过</view>
</view>
</view>
<view class="problem_submit_to">
<view class="problem_submit_to_btn problem_submit_to_warning" bindtap="onBack">审批退回</view>
<view class="problem_submit_to_btn problem_submit_to_delete" bindtap="onReject">审批驳回</view>
<view class="problem_submit_to_btn problem_submit_to_save" bindtap="onPass">审批通过</view>
</view>
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>
</van-overlay>

View File

@ -1,4 +1,28 @@
/* pageage/safetyManagement/addSafetyInspect/index.wxss */
.problem_list_info_con{
padding-right: 10rpx !important;
}
.in-img-max:after{
display:block;
clear:both;
content:"";
visibility:hidden;
height:0
}
.in-img-max{
width: auto;
zoom:1
}
.in-img-div{
position: relative;
float: left;
}
.in-img-div image{
width: 180rpx;
height: 180rpx;
border-radius: 15rpx;
position: relative;
}
.van-popup{
background: none !important;
}

View File

@ -1,180 +1,282 @@
// pageage/safetyManagement/securityCheckGR/index.js
import config from '../../../config'
import { queryTaskCountByCategory } from '../../../api/flowable'
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
deptId:"",
userId:"",
loginName:"",
projectId:"",
minRoleId:"",
projectData:{},
initData: {},
show:false,
listData:[],
request:app.globalData.reqUrl
},
/**
* 页面的初始数据
*/
data: {
deptId: "",
userId: "",
loginName: "",
projectId: "",
minRoleId: "",
projectData: {},
initData: {},
show: false,
listData: [],
category: null,
categoryName: '',
categoryActive:'',
request: app.globalData.reqUrl,
typeList: [{
id: 1,
name: '程序及质量类',
icon: config.baseUrl + '/staticFiles/img/cxjzll.png',
todoDB:0,
}, {
id: 2,
name: '安全类',
icon: config.baseUrl + '/staticFiles/img/aql.png',
todoDB:0,
},
{
id: 3,
name: '认价类',
icon: config.baseUrl + '/staticFiles/img/rjl.png',
todoDB:0,
}, {
id: 4,
name: '图纸类',
icon: config.baseUrl + '/staticFiles/img/tzl.png',
todoDB:0,
}, {
id: 5,
name: '项目管理制度',
icon: config.baseUrl + '/staticFiles/img/xmglzdl.png',
todoDB:0,
}, {
id: 6,
name: '索赔类',
icon: config.baseUrl + '/staticFiles/img/spl.png',
todoDB:0,
}, {
id: 7,
name: '特殊事项确认',
icon: config.baseUrl + '/staticFiles/img/tssxqrl.png',
todoDB:0,
}
],
},
getInfo(e){
let {deployId,procInsId,taskId,taskName,procDefKey,startDeptName,startUserName,procDefName,businessKeyName} = e.currentTarget.dataset.set
if(taskName=="提交申请"){
if(procDefKey=="flow_xmglzdl_qjspb"){
wx.redirectTo({
url: `../editLeaveTask/index?deployId=${deployId}&procInsId=${procInsId}&nickName=${startUserName}&deptName=${startDeptName}&procDefName=${procDefName}&taskId=${taskId}&taskName=${taskName}&projectName=${businessKeyName}&ret=await`,
})
}else{
wx.redirectTo({
url: `../editTask/index?deployId=${deployId}&procInsId=${procInsId}&nickName=${startUserName}&deptName=${startDeptName}&procDefName=${procDefName}&taskId=${taskId}&taskName=${taskName}&projectName=${businessKeyName}&ret=await`,
})
}
}else{
//根据不同业务跳转不同表单
if(procDefKey=="flow_xmglzdl_qjspb"){
wx.redirectTo({
url: `../approveLeaveTask/index?deployId=${deployId}&procInsId=${procInsId}&nickName=${startUserName}&deptName=${startDeptName}&procDefName=${procDefName}&taskId=${taskId}&taskName=${taskName}&projectName=${businessKeyName}`,
})
}else{
wx.redirectTo({
url: `../approveTask/index?deployId=${deployId}&procInsId=${procInsId}&nickName=${startUserName}&deptName=${startDeptName}&procDefName=${procDefName}&taskId=${taskId}&taskName=${taskName}&projectName=${businessKeyName}`,
})
}
}
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
//获取缓存数据
wx.getStorage({
key: 'userinfo',
success:res=>{
this.setData({
loginName:res.data.loginName,
userId:res.data.userId,
projectId:app.globalData.projectId,
minRoleId:res.data.minRoleId,
deptId:res.data.deptId,
initData:{text:app.globalData.projectName,id:app.globalData.projectId}
})
this.getListData(res.data.loginName,res.data.userId,res.data.deptId,res.data.minRoleId);
}
})
},
getInfo(e) {
let {
deployId,
procInsId,
taskId,
taskName,
procDefKey,
startDeptName,
startUserName,
procDefName,
businessKeyName
} = e.currentTarget.dataset.set
if (taskName == "提交申请") {
if (procDefKey == "flow_xmglzdl_qjspb") {
wx.redirectTo({
url: `../editLeaveTask/index?deployId=${deployId}&procInsId=${procInsId}&nickName=${startUserName}&deptName=${startDeptName}&procDefName=${procDefName}&taskId=${taskId}&taskName=${taskName}&projectName=${businessKeyName}&ret=await`,
})
} else {
wx.redirectTo({
url: `../editTask/index?deployId=${deployId}&procInsId=${procInsId}&nickName=${startUserName}&deptName=${startDeptName}&procDefName=${procDefName}&taskId=${taskId}&taskName=${taskName}&projectName=${businessKeyName}&ret=await`,
})
}
} else {
//根据不同业务跳转不同表单
if (procDefKey == "flow_xmglzdl_qjspb") {
wx.redirectTo({
url: `../approveLeaveTask/index?deployId=${deployId}&procInsId=${procInsId}&nickName=${startUserName}&deptName=${startDeptName}&procDefName=${procDefName}&taskId=${taskId}&taskName=${taskName}&projectName=${businessKeyName}`,
})
} else {
wx.redirectTo({
url: `../approveTask/index?deployId=${deployId}&procInsId=${procInsId}&nickName=${startUserName}&deptName=${startDeptName}&procDefName=${procDefName}&taskId=${taskId}&taskName=${taskName}&projectName=${businessKeyName}`,
})
}
}
},
/**
* 查询项目举牌验收数据
*/
getListData(loginName,userId,deptId,minRoleId) {
* 生命周期函数--监听页面加载
*/
onLoad(options) {
let category;
if(options && options.category){
category = options.category;
app.globalData.category = options.category;
}else{
category = app.globalData.category;
}
//获取缓存数据
wx.getStorage({
key: 'userinfo',
success: res => {
this.setData({
loginName: res.data.loginName,
userId: res.data.userId,
projectId: app.globalData.projectId,
minRoleId: res.data.minRoleId,
deptId: res.data.deptId,
initData: {
text: app.globalData.projectName,
id: app.globalData.projectId
},
category:category,
categoryName:this.data.typeList[category-1].name,
categoryActive:this.data.typeList[category-1].id
})
this.getListData(res.data.loginName, res.data.userId, res.data.deptId, res.data.minRoleId);
}
})
},
/**
* 查询审批代办数据
*/
getListData(loginName, userId, deptId, minRoleId) {
var that = this;
//businessKey注解掉可以跨项目审批
let param = {
//"businessKey":this.data.projectId,
"nowRole":minRoleId,
"nowDept":deptId,
"nowUserName":loginName,
"nowUser":userId
"businessKey": this.data.projectId,
"nowRole": minRoleId,
"nowDept": deptId,
"nowUserName": loginName,
"nowUser": userId,
"category": this.data.category
}
this.queryCountByCategory(param);
wx.request({
url: app.globalData.reqUrl + '/wechat/flowTask/myAwaitFlowTaskList',
data:param,
data: param,
method: "post",
success: function (res) {
res = res.data;
if(res.code=="200"){
if (res.code == "200") {
that.setData({
listData:res.rows
listData: res.rows
})
}else{
} else {
app.toast(res.msg);
}
}
});
},
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
},
returnToPage: function () {
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
wx.redirectTo({
url: '../../gengduogongneng/gengduogongneng',
})
},
goFQLC:function(){
wx.redirectTo({
url: '../myFlowDefinition/index',
/**
* 根据条件查询我的代办分组数量统计
*/
queryCountByCategory:function(data){
queryTaskCountByCategory(data).then(res =>{
let typeList = this.data.typeList;
typeList.forEach(type =>{
res.data.forEach(item =>{
if(type.id==item.category){
if(item.total){
type.todoDB = item.total;
}
}
})
},
goWDSQ:function(){
wx.redirectTo({
url: '../myProcessIns/index',
});
this.setData({
typeList
})
},
});
},
goBLWC:function(){
wx.redirectTo({
url: '../finished/index',
})
},
returnToPage: function () {
/*关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面*/
wx.redirectTo({
url: '../../gengduogongneng/gengduogongneng',
})
},
//项目切换 返回值
onProjectSelect(e){
/**
* 切换页签
* @param {*} e
*/
categoryActive:function(e){
let {id} = e.currentTarget.dataset.set
this.setData({
category:id,
categoryActive: id
})
app.globalData.category = id;
this.onLoad()
},
goFQLC: function () {
wx.redirectTo({
url: '../myFlowDefinition/index?category=' + this.data.category,
})
},
goWDSQ: function () {
wx.redirectTo({
url: '../myProcessIns/index?category=' + this.data.category,
})
},
goBLWC: function () {
wx.redirectTo({
url: '../finished/index?category=' + this.data.category,
})
},
//项目切换 返回值
onProjectSelect(e) {
let projectId = e.detail.id;
let projectName = e.detail.text;
app.globalData.projectId = projectId;
app.globalData.projectName = projectName;
app.globalData.projectName = projectName;
this.onLoad();
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
}
})

View File

@ -1,7 +1,10 @@
{
"usingComponents": {
"van-overlay": "@vant/weapp/overlay/index" ,
"van-popup": "@vant/weapp/popup/index"
"van-popup": "@vant/weapp/popup/index",
"van-divider":"@vant/weapp/divider/index",
"van-sidebar":"@vant/weapp/sidebar/index",
"van-sidebar-item":"@vant/weapp/sidebar-item/index"
},
"navigationStyle":"custom"
}

View File

@ -2,7 +2,9 @@
<view class="header_title_row">
<van-row>
<van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
<view class="header_img" bindtap="returnToPage">
<image src="/images/left.png"></image>
</view>
</van-col>
<van-col span="15">
<view class="header_name">审批管理</view>
@ -10,9 +12,23 @@
</van-row>
</view>
</view>
<view class="max_content">
<project-select init="{{initData}}" bindchange="onProjectSelect"></project-select>
<view class="gd_max" style="margin-top: 20rpx;">
<view class="max_content">
<project-select init="{{initData}}" bindchange="onProjectSelect"></project-select>
<view class="gd_max" style="margin-top: 20rpx;">
<van-row class="demo clearfix">
<van-col span="8" wx:for="{{typeList}}" wx:key="index">
<view class="gd_min {{categoryActive==item.id?'gd_min_active':''}}" data-set="{{item}}" bindtap="categoryActive">
<span class="tabNum_active" wx:if="{{item.todoDB>0}}">{{item.todoDB}}</span>
<image class="gd_img" src="{{item.icon}}"></image>
<view>{{item.name}}</view>
</view>
</van-col>
</van-row>
</view>
<van-divider content-position="left" :style="{padding:'90px 60px'}">
{{categoryName}}
</van-divider>
<view class="gd_max" style="margin-top: 20rpx;">
<van-row class="demo clearfix">
<van-col span="8">
<view class="gd_min" bindtap="goFQLC">
@ -33,41 +49,40 @@
</view>
</van-col>
</van-row>
</view>
<view class="inspect_max">
<view class="inspect_list">
<view class="inspect_for" wx:for="{{listData}}" wx:key="index" data-set="{{item}}" bindtap="getInfo">
<view class="inspect_for_bgd">
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{index < 9 ?'0'+(index+1):(index+1)}}</view>
<view class="module_title module_title_flex inspect_list_title_text"><text class="color_orange">{{item.taskName}}</text>
<text wx:if="{{item.taskName!='提交申请'}}" class="timeline_for_state_1 color_green" style="font-weight: 800;">待审批</text>
<text wx:if="{{item.taskName=='提交申请'}}" class="timeline_for_state_2">审批驳回</text>
</view>
</view>
</view>
<view class="inspect_list_info">
<view class="inspect_list_info_data_prop color_purple">项目名称:{{item.businessKeyName}}</view>
<view class="inspect_list_info_data_prop color_blue">审批事项:{{item.procDefName}}</view>
<view class="inspect_list_info_data_prop color_purple">接收时间:{{item.createTime}}</view>
<view class="inspect_list_info_data_prop">申请用户:{{item.startUserName}}</view>
<view class="inspect_list_info_data_prop">申请单位:{{item.startDeptName}}</view>
</view>
</view>
</view>
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="../../../images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
<!-- <view style="position: absolute;">
<van-sidebar v-model="active" bindtap="onChange">
<van-sidebar-item wx:for="{{typeList}}" wx:key="index" title="{{item.name}}" />
</van-sidebar>
</view> -->
<view class="inspect_max">
<view class="inspect_list">
<view class="inspect_for" wx:for="{{listData}}" wx:key="index" data-set="{{item}}" bindtap="getInfo">
<view class="inspect_for_bgd">
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{index < 9 ?'0'+(index+1):(index+1)}}</view>
<view class="module_title module_title_flex inspect_list_title_text"><text class="color_orange">{{item.taskName}}</text>
<text wx:if="{{item.taskName!='提交申请'}}" class="timeline_for_state_1 color_green" style="font-weight: 800;">待审批</text>
<text wx:if="{{item.taskName=='提交申请'}}" class="timeline_for_state_2">审批驳回</text>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="inspect_list_info">
<view class="inspect_list_info_data_prop color_purple">项目名称:{{item.businessKeyName}}</view>
<view class="inspect_list_info_data_prop color_blue">审批事项:{{item.procDefName}}</view>
<view class="inspect_list_info_data_prop color_purple">接收时间:{{item.createTime}}</view>
<view class="inspect_list_info_data_prop">申请用户:{{item.startUserName}}</view>
<view class="inspect_list_info_data_prop">申请单位:{{item.startDeptName}}</view>
</view>
</view>
</view>
</view>
<view wx:if="{{listData.length==0}}">
<view style="padding-top: 70px;text-align: -webkit-center;">
<image src="https://szgcwx.jhncidg.com/staticFiles/images/nodata.png" style="width: 130px;height: 105px;"></image>
<view style="color: #a5abbb;">暂无数据</view>
</view>
</view>
</view>
</view>

View File

@ -13,4 +13,28 @@
.gd_min view{
padding: 10rpx;
color: #89a4eb;
}
}
.van-divider--left{
padding: 0 35rpx !important;
color: #866cff !important;
border-color: #89a4eb !important;
}
.gd_img{
width: 100rpx !important;
height: 100rpx !important;
}
.gd_min_active image{
background: #513abdb0;
border-radius: 80rpx;
}
.gd_min_active view{
color: #866cff;
}
.van-sidebar-item{
background: #4b5a8291 !important;
color: #89a4eb !important;
}
.van-sidebar-item--selected{
border-color: var(--sidebar-selected-border-color,#866cff) !important;
color: #866cff !important;
}

View File

@ -332,7 +332,7 @@ Page({
procInsId: this.data.procInsId,
instanceId: this.data.procInsId,
taskId:this.data.taskId,
userId:this.data.startUserId,
userId:this.data.myUserId,
assignee:this.data.nickName
}
//弹出确认

View File

@ -107,7 +107,7 @@
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>

View File

@ -1,4 +1,4 @@
// pageage/safetyManagement/addSafetyInspect/index.js
import config from '../../../config'
const app = getApp()
Page({
@ -21,8 +21,8 @@ Page({
activeName:"",
flowNodeList:[],
flowNodes:[],
fileNames:[],
fileUrls:[],
imageList:[],
filesData:[],
taskId:"",
procInsId:"",
taskName:"",
@ -34,7 +34,9 @@ Page({
finishTime:"",
ret:"",
comment:"",
stopBtnShow:false
stopBtnShow:false,
imageType:["png","jpg","jpeg"],
fileType:["pdf"],
},
/**
@ -183,19 +185,23 @@ Page({
that.setData({
infoData:res.data
})
let fileNames = [];
let fileUrls = [];
let filesData = [];
let imageList = [];
//判断附件
if(res.data.files){
res.data.files.split(',').forEach(element => {
let it = element.split('/');
fileNames.push(it[it.length-1]);
fileUrls.push(element);
let ft = element.split('.');
if(that.data.imageType.indexOf(ft[ft.length-1].toLowerCase())>-1){
imageList.push({minPath:config.baseUrl+element,path:element});
}else{
let it = element.split('/');
filesData.push({name:it[it.length-1],path:element});
}
});
}
that.setData({
fileNames,
fileUrls,
filesData,
imageList,
stopShow:!that.data.finishTime && that.data.userId==that.myUserId,
deleteShow:!that.data.finishTime && that.data.userId==that.myUserId,
revocationShow:!that.data.finishTime
@ -348,7 +354,7 @@ Page({
procInsId: this.data.procInsId,
instanceId: this.data.procInsId,
taskId:this.data.taskId,
userId:this.data.startUserId,
userId:this.data.myUserId,
assignee:this.data.nickName
}
//弹出确认
@ -474,16 +480,30 @@ Page({
}
},
//展示图片详细
showImg:function(e){
let {path} = e.currentTarget.dataset.set
wx.previewImage({
urls: this.data.imageList,
current: path
})
},
/**
* 下载并打开文档
* @param {*} e
*/
downFile:function(e){
let idx = e.currentTarget.dataset['index'];
let that = this;
let {path} = e.currentTarget.dataset.set
wx.downloadFile({
// 示例 url并非真实存在
url: app.globalData.uploadUrl+'/common/download/resource?resource='+that.data.fileUrls[idx],
url: app.globalData.uploadUrl+'/common/download/resource?resource='+path,
success: function (res) {
const filePath = res.tempFilePath
let fpt = filePath.split(".");
wx.openDocument({
filePath: filePath,
fileType: fpt[fpt.length-1],
success: function (res) {
console.log('打开文档成功')
},

View File

@ -1,156 +1,132 @@
<!--pageage/safetyManagement/addSafetyInspect/index.wxml-->
<view class="header_title">
<view class="header_title_row">
<van-row>
<van-col span="4">
<view class="header_img" bindtap="returnToPage"><image src="/images/left.png"></image></view>
</van-col>
<van-col span="15">
<view class="header_name">审批申请详情</view>
</van-col>
</van-row>
</view>
</view>
<view class="max_content inspect_overview_max">
<view class="inspect_overview">
<view class="module_title module_title_flex">
<view>{{projectName}}</view>
</view>
<view class="gk_open" style="margin-top: 20rpx;border: 1px solid transparent;">
<van-collapse value="{{activeName}}" bind:change="onChange">
<van-collapse-item title="申请流程" name="1">
<view class="left_manage2" wx:for="{{flowNodes}}" wx:key="index">
<text class="safety_issue_number {{item.state}}">{{item.name}}</text>
</view>
</van-collapse-item>
<van-collapse-item title="审批日志" name="2">
<view class="inspect_list">
<view class="inspect_for" wx:for="{{flowRecordList}}" wx:key="index">
<view class="inspect_for_bgd">
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}{{item.commentResult}}
<text wx:if="{{item.commentResult=='通过'}}" class="timeline_for_state_1 color_green">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='驳回'}}" class="timeline_for_state_2 color_purple">{{item.commentResult}}</text>
</view>
</view>
</view>
<view class="inspect_list_info gk_open_con">
<view wx:if="{{item.assigneeName}}"><image src="/images/lw_3.png"></image>办理用户:<text>{{item.assigneeName}}</text></view>
<view wx:if="{{item.assigneeName}}"><image src="/images/s_1.png"></image>办理单位:<text class="color_blue">{{item.deptName}}</text></view>
<view wx:if="{{item.candidate}}"><image src="/images/s_2.png"></image>候选办理:<text>{{item.candidate}}</text></view>
<view wx:if="{{item.deleteReason}}"><image src="/images/s_18.png"></image>驳回节点:<text>{{item.deleteReason}}</text></view>
<view><image src="/images/s_6.png"></image>接收时间:<text>{{item.startTime}}</text></view>
<view wx:if="{{item.endTime}}"><image src="/images/lw_8.png"></image>处理时间:<text>{{item.endTime}}</text></view>
<view wx:if="{{item.duration}}"><image src="/images/img_11.png"></image>处理耗时:<text>{{item.duration}}</text></view>
<view wx:if="{{item.message}}"><image src="/images/s_7.png"></image>处理意见:<text>{{item.message}}</text></view>
</view>
</view>
</view>
</view>
</van-collapse-item>
</van-collapse>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">发起单位</text></van-col>
<van-col span="18" class="color_blue">{{deptName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">发起用户</text></van-col>
<van-col span="18">{{nickName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">审批事项</text></van-col>
<van-col span="18">{{procDefName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" style="width: 100%;">
<van-row>
<van-col span="6"><text class="color_purple">审批内容</text></van-col>
<van-col span="18" class="color_blue">
<view class="files" wx:for="{{fileNames}}" wx:key="index">
<text data-index="{{index}}" style="word-wrap: break-word;" bindtap='downFile'>{{item}}</text>
<view class="header_title_row">
<van-row>
<van-col span="4">
<view class="header_img" bindtap="returnToPage">
<image src="/images/left.png"></image>
</view>
</van-col>
<van-col span="15">
<view class="header_name">审批申请详情</view>
</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">申请说明</text></van-col>
<van-col span="18">{{infoData.remark}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{stopBtnShow}}">
<view class="inspect_overview_title" style="padding: 20rpx 0 10rpx;">终止原因</view>
<view class="inspect_overview_content">
<textarea class="add_textarea" placeholder="请填写终止原因500字内"
placeholder-style="color:#6777aa;" maxlength="500" bindinput="commentblur"/>
</view>
<view class="max_content inspect_overview_max">
<view class="inspect_overview">
<view class="module_title module_title_flex">
<view>{{projectName}}</view>
</view>
<view class="gk_open" style="margin-top: 20rpx;border: 1px solid transparent;">
<van-collapse value="{{activeName}}" bind:change="onChange">
<van-collapse-item title="申请流程" name="1">
<view class="left_manage2" wx:for="{{flowNodes}}" wx:key="index">
<text class="safety_issue_number {{item.state}}">{{item.name}}</text>
</view>
</van-collapse-item>
<van-collapse-item title="审批日志" name="2">
<view class="inspect_list">
<view class="inspect_for" wx:for="{{flowRecordList}}" wx:key="index">
<view class="inspect_for_bgd">
<view class="inspect_list_title">
<view class="inspect_list_title_label inspect_list_title_width">
<view class="inspect_list_title_number">{{(flowRecordList.length-index) < 9 ?'0'+(flowRecordList.length-index):(flowRecordList.length-index)}}</view>
<view class="module_title module_title_flex inspect_list_title_text">{{item.taskName}}{{item.commentResult}}
<text wx:if="{{item.commentResult=='通过'}}" class="timeline_for_state_1 color_green">{{item.commentResult}}</text>
<text wx:if="{{item.commentResult=='驳回'}}" class="timeline_for_state_2 color_purple">{{item.commentResult}}</text>
</view>
</view>
</view>
<view class="inspect_list_info gk_open_con">
<view wx:if="{{item.assigneeName}}">
<image src="/images/lw_3.png"></image>办理用户:<text>{{item.assigneeName}}</text>
</view>
<view wx:if="{{item.assigneeName}}">
<image src="/images/s_1.png"></image>办理单位:<text class="color_blue">{{item.deptName}}</text>
</view>
<view wx:if="{{item.candidate}}">
<image src="/images/s_2.png"></image>候选办理:<text>{{item.candidate}}</text>
</view>
<view wx:if="{{item.deleteReason}}">
<image src="/images/s_18.png"></image>驳回节点:<text>{{item.deleteReason}}</text>
</view>
<view>
<image src="/images/s_6.png"></image>接收时间:<text>{{item.startTime}}</text>
</view>
<view wx:if="{{item.endTime}}">
<image src="/images/lw_8.png"></image>处理时间:<text>{{item.endTime}}</text>
</view>
<view wx:if="{{item.duration}}">
<image src="/images/img_11.png"></image>处理耗时:<text>{{item.duration}}</text>
</view>
<view wx:if="{{item.message}}">
<image src="/images/s_7.png"></image>处理意见:<text>{{item.message}}</text>
</view>
</view>
</view>
</view>
</view>
</van-collapse-item>
</van-collapse>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">发起单位</text></van-col>
<van-col span="18" class="color_blue">{{deptName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">发起用户</text></van-col>
<van-col span="18">{{nickName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">审批事项</text></van-col>
<van-col span="18">{{procDefName}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list " style="width: 100%;">
<van-row>
<van-col span="6"><text class="color_purple">审批内容</text></van-col>
<van-col span="18">
<view class="problem_list_info_con in-img-max" wx:if="{{imageList.length>0}}">
<view class="in-img-div" wx:for="{{imageList}}" wx:key="index">
<image bindtap='showImg' data-set="{{item}}" src='{{item.minPath}}'></image>
</view>
</view>
<view class="color_blue" wx:if="{{filesData.length>0}}">
<view class="files" wx:for="{{filesData}}" wx:key="index">
<text data-set="{{item}}" style="word-wrap: break-word;" bindtap='downFile'>{{item.name}}</text>
</view>
</view>
</van-col>
</van-row>
</view>
<view class="inspect_overview_list">
<van-row>
<van-col span="6"><text class="color_purple">申请说明</text></van-col>
<van-col span="18">{{infoData.remark}}</van-col>
</van-row>
</view>
<view class="inspect_overview_list" wx:if="{{stopBtnShow}}">
<view class="inspect_overview_title" style="padding: 20rpx 0 10rpx;">终止原因</view>
<view class="inspect_overview_content">
<textarea class="add_textarea" placeholder="请填写终止原因500字内" placeholder-style="color:#6777aa;" maxlength="500" bindinput="commentblur" />
</view>
</view>
</view>
<view class="problem_submit_to">
<view wx:if="{{stopShow}}" class="problem_submit_to_btn problem_submit_to_warning" bindtap="onStop">终止</view>
<view wx:if="{{false}}" class="problem_submit_to_btn problem_submit_to_delete" bindtap="onDelete">删除</view>
<view wx:if="{{revocationShow}}" class="problem_submit_to_btn problem_submit_to_save" bindtap="onRevocation">撤回</view>
</view>
</view>
<view class="problem_submit_to">
<view wx:if="{{stopShow}}" class="problem_submit_to_btn problem_submit_to_warning" bindtap="onStop">终止</view>
<view wx:if="{{false}}" class="problem_submit_to_btn problem_submit_to_delete" bindtap="onDelete">删除</view>
<view wx:if="{{revocationShow}}" class="problem_submit_to_btn problem_submit_to_save" bindtap="onRevocation">撤回</view>
</view>
</view>
<van-overlay show="{{loadShow}}">
<view class="gif">
<image src="../../../images/loding2.gif"></image>
<image src="/images/loding2.gif"></image>
<view>数据加载中!请稍后...</view>
</view>
</van-overlay>
</van-overlay>

Some files were not shown because too many files have changed in this diff Show More