Commit 92e9b1e6 authored by 李成龙's avatar 李成龙

Merge branch 'develop' into 'master'

Develop See merge request !1
parents 2530bcb4 91e763fb
node_modules/
\ No newline at end of file
...@@ -9,25 +9,21 @@ ...@@ -9,25 +9,21 @@
// 普通http // 普通http
httpURI: { httpURI: {
// 根url // 根url
baseURI: 'http://39.100.239.237:10005/', baseURI: 'http://172.16.11.20:10005/',
// baseURI: 'http://localhost:9000/',
// 安全模块api地址 // 安全模块api地址
//securityBaseURI: 'http://39.100.239.237:7800/', securityBaseURI: 'http://172.16.10.72:10005/',
securityBaseURI: 'http://47.108.89.109:10005/', //APP图片
//预控系统 picURI: 'http://172.16.11.20:8080',
// preControl: 'http://172.16.10.91:8083/', //业务表导出地址
//APP图片 ureportURI: ' http://172.16.11.41:8099/renren-admin/ureport/excel',
picURI: 'http://39.100.239.237:9999/',
//loginURI: 'http://39.100.239.237:3000/'//基础平台
// loginURI: 'http://47.108.89.109:5000/'//基础平台
}, },
// websocket 地址 // websocket 地址
wsURI: { wsURI: {
securityBaseURI: 'ws://47.103.14.66:10600/' securityBaseURI: 'ws://172.16.11.20:10600/'
}, },
// 外部链接地址 // 外部链接地址
outterURI: { outterURI: {
publish: '/main/morphic/publish?appId={appId}&id={id}&token={token}&isPublish={isPublish}' publish: '/main/morphic/publish?appId={appId}&id={id}&token={token}&isPublish={isPublish}'
}, },
// 系统配置信息 主要是为了区分各子系统 // 系统配置信息 主要是为了区分各子系统
......
...@@ -53,8 +53,9 @@ ...@@ -53,8 +53,9 @@
"ray-eventpool": "^1.0.0", "ray-eventpool": "^1.0.0",
"ray-mediaquery": "^1.0.0", "ray-mediaquery": "^1.0.0",
"ray-progress": "^1.0.0", "ray-progress": "^1.0.0",
"react": "~16.0.0", "react": "~16.7.0",
"react-dom": "~16.0.0" "react-dom": "~16.7.0",
"react-transition-group": "^4.4.1"
}, },
"devDependencies": { "devDependencies": {
"amos-build": "^3.x", "amos-build": "^3.x",
......
This diff is collapsed.
...@@ -36,6 +36,7 @@ import CompletionSituation from './../view/patrol/statistics/completionSituation ...@@ -36,6 +36,7 @@ import CompletionSituation from './../view/patrol/statistics/completionSituation
import InspectionSituation from './../view/patrol/statistics/inspectionSituation'; import InspectionSituation from './../view/patrol/statistics/inspectionSituation';
import TaskArrangement from './../view/patrol/statistics/taskArrangement'; import TaskArrangement from './../view/patrol/statistics/taskArrangement';
import PersonStatistics from './../view/patrol/statistics/personstatistics'; import PersonStatistics from './../view/patrol/statistics/personstatistics';
import MonthSituation from './../view/patrol/statistics/monthSituation';
import CheckDetail from './../view/patrol/check/checkDetail'; import CheckDetail from './../view/patrol/check/checkDetail';
/** /**
...@@ -74,6 +75,7 @@ const customRoutes = [ ...@@ -74,6 +75,7 @@ const customRoutes = [
{ path: 'inspectionSituation', parent: 'patrol', component: InspectionSituation }, { path: 'inspectionSituation', parent: 'patrol', component: InspectionSituation },
{ path: 'taskArrangement', parent: 'patrol', component: TaskArrangement }, { path: 'taskArrangement', parent: 'patrol', component: TaskArrangement },
{ path: 'personStatistics', parent: 'patrol', component: PersonStatistics }, { path: 'personStatistics', parent: 'patrol', component: PersonStatistics },
{ path: 'monthSituation', parent: 'patrol', component: MonthSituation },
{ path: '/main/patrol/checkDetail', parent: 'patrol', component: CheckDetail } { path: '/main/patrol/checkDetail', parent: 'patrol', component: CheckDetail }
]; ];
...@@ -129,6 +131,7 @@ export const pathMapping = { ...@@ -129,6 +131,7 @@ export const pathMapping = {
inspectionSituation: '/main/patrol/inspectionSituation', inspectionSituation: '/main/patrol/inspectionSituation',
taskArrangement: '/main/patrol/taskArrangement', taskArrangement: '/main/patrol/taskArrangement',
personStatistics: '/main/patrol/personStatistics', personStatistics: '/main/patrol/personStatistics',
monthSituation: '/main/patrol/monthSituation',
checkDetail: '/main/patrol/checkDetail' checkDetail: '/main/patrol/checkDetail'
}; };
/** /**
......
import formatUrl from 'amos-processor/lib/utils/urlFormat'; import formatUrl from 'amos-processor/lib/utils/urlFormat';
import { patrolUrls, secExtUrl } from './../consts/urlConsts'; import { patrolUrls, secExtUrl } from './../consts/urlConsts';
import { commonGet, commonPost, commonDelete, commonPut } from './../utils/request'; import { commonGet, commonPost, commonDelete, commonPut } from './../utils/request';
import { Store } from 'amos-tool'; import { Store } from 'amos-tool';
const selectedRole = Store.lsTool.read('selectedRole');
const lsTool = Store.lsTool;
export const queryInputItemAction = (filter, page, size) => { export const queryInputItemAction = (filter, page, size) => {
return commonPost(formatUrl(patrolUrls.inputItemTablesUrl, { page, size }), filter); return commonPost(formatUrl(patrolUrls.inputItemTablesUrl, { page, size }), filter);
}; };
export const batchDelInputItemAction = (ids) => { export const batchDelInputItemAction = ids => {
return commonDelete(formatUrl(patrolUrls.inputItemBatchDelUrl, { ids })); return commonDelete(formatUrl(patrolUrls.inputItemBatchDelUrl, { ids }));
}; };
export const saveAsInputItemAction = (ids) => { export const saveAsInputItemAction = ids => {
return commonGet(formatUrl(patrolUrls.inputItemSaveAsUrl, { ids })); return commonGet(formatUrl(patrolUrls.inputItemSaveAsUrl, { ids }));
}; };
export const saveInputItemAction = (body) => { export const saveInputItemAction = body => {
return commonPost(patrolUrls.inputItemSaveUrl, body); return commonPost(patrolUrls.inputItemSaveUrl, body);
}; };
...@@ -25,22 +25,22 @@ export const queryPlanInfoAction = (filter, page, size) => { ...@@ -25,22 +25,22 @@ export const queryPlanInfoAction = (filter, page, size) => {
return commonPost(formatUrl(patrolUrls.planInfoTablesUrl, { page, size }), filter); return commonPost(formatUrl(patrolUrls.planInfoTablesUrl, { page, size }), filter);
}; };
export const queryInputItemDetailAction = (itemID) => { export const queryInputItemDetailAction = itemID => {
return commonGet(formatUrl(patrolUrls.inputItemDetailUrl, { itemID })); return commonGet(formatUrl(patrolUrls.inputItemDetailUrl, { itemID }));
}; };
export const btnAuthAction = routePath => { export const btnAuthAction = routePath => {
const menuAgent = 'WEB'; const menuAgent = 'WEB';
const url = formatUrl(secExtUrl.buttonAuthUrl, { menuAgent, path: routePath,roleSeq:selectedRole}); const selectedRole = lsTool.read('selectedRole');
const url = formatUrl(secExtUrl.buttonAuthUrl, { menuAgent, path: routePath, roleSeq: selectedRole });
return commonGet(url); return commonGet(url);
}; };
/** /**
* *
* @param {*巡检计划新增} body * @param {*巡检计划新增} body
*/ */
export const createPlanAction = (body) => { export const createPlanAction = body => {
return commonPost(patrolUrls.planSaveUrl, body); return commonPost(patrolUrls.planSaveUrl, body);
}; };
...@@ -54,8 +54,7 @@ export const queryDeptByOrgCodeAction2 = () => { ...@@ -54,8 +54,7 @@ export const queryDeptByOrgCodeAction2 = () => {
return commonGet(formatUrl(patrolUrls.deptByOrgCodeUrl2, {})); return commonGet(formatUrl(patrolUrls.deptByOrgCodeUrl2, {}));
}; };
export const queryUserByDeptIdAction = deptId => {
export const queryUserByDeptIdAction = (deptId) => {
return commonGet(formatUrl(patrolUrls.userInfoByDeptIdUrl, { deptId })); return commonGet(formatUrl(patrolUrls.userInfoByDeptIdUrl, { deptId }));
}; };
...@@ -63,19 +62,19 @@ export const queryTaskAction = (filter, page, size) => { ...@@ -63,19 +62,19 @@ export const queryTaskAction = (filter, page, size) => {
return commonPost(formatUrl(patrolUrls.taskPageUrl, { page, size }), filter); return commonPost(formatUrl(patrolUrls.taskPageUrl, { page, size }), filter);
}; };
export const batchDelTaskAction = (ids) => { export const batchDelTaskAction = ids => {
return commonDelete(formatUrl(patrolUrls.taskBatchDelUrl, { ids })); return commonDelete(formatUrl(patrolUrls.taskBatchDelUrl, { ids }));
}; };
export const queryTaskDetailAction = ( id ) => { export const queryTaskDetailAction = id => {
return commonGet(formatUrl(patrolUrls.taskDetailUrl, { id })); return commonGet(formatUrl(patrolUrls.taskDetailUrl, { id }));
}; };
export const handleTaskAction = (ids, status) => { export const handleTaskAction = (ids, status) => {
return commonPut(formatUrl(patrolUrls.taskHandleUrl, { ids , status })); return commonPut(formatUrl(patrolUrls.taskHandleUrl, { ids, status }));
}; };
export const saveTaskAction = (body) => { export const saveTaskAction = body => {
return commonPost(patrolUrls.taskAddUrl, body); return commonPost(patrolUrls.taskAddUrl, body);
}; };
...@@ -83,7 +82,7 @@ export const queryDeptUserTree = () => { ...@@ -83,7 +82,7 @@ export const queryDeptUserTree = () => {
return commonGet(patrolUrls.deptUserTreeUrl2); return commonGet(patrolUrls.deptUserTreeUrl2);
}; };
export const feedbackTaskAction = (body) => { export const feedbackTaskAction = body => {
return commonPost(patrolUrls.taskFeedbackTaskUrl, body); return commonPost(patrolUrls.taskFeedbackTaskUrl, body);
}; };
...@@ -91,19 +90,19 @@ export const queryRouteAction = (filter, page, size) => { ...@@ -91,19 +90,19 @@ export const queryRouteAction = (filter, page, size) => {
return commonPost(formatUrl(patrolUrls.routePageUrl, { page, size }), filter); return commonPost(formatUrl(patrolUrls.routePageUrl, { page, size }), filter);
}; };
export const batchDelRouteAction = (ids) => { export const batchDelRouteAction = ids => {
return commonDelete(formatUrl(patrolUrls.routeBatchDelUrl, { ids })); return commonDelete(formatUrl(patrolUrls.routeBatchDelUrl, { ids }));
}; };
export const saveRouteAction = (body) => { export const saveRouteAction = body => {
return commonPost(patrolUrls.routeAddUrl, body); return commonPost(patrolUrls.routeAddUrl, body);
}; };
export const queryRouteDetailAction = (id) => { export const queryRouteDetailAction = id => {
return commonGet(formatUrl(patrolUrls.routeDetailUrl, { id })); return commonGet(formatUrl(patrolUrls.routeDetailUrl, { id }));
}; };
export const updateRouteAction = (body) => { export const updateRouteAction = body => {
return commonPut(patrolUrls.routeUpdateUrl, body); return commonPut(patrolUrls.routeUpdateUrl, body);
}; };
...@@ -111,7 +110,7 @@ export const queryRoutePointAction = (filter, page, size, id) => { ...@@ -111,7 +110,7 @@ export const queryRoutePointAction = (filter, page, size, id) => {
return commonPost(formatUrl(patrolUrls.routePointPageUrl, { id, page, size }), filter); return commonPost(formatUrl(patrolUrls.routePointPageUrl, { id, page, size }), filter);
}; };
export const queryPlanDetByIdAction = (planId) => { export const queryPlanDetByIdAction = planId => {
return commonGet(formatUrl(patrolUrls.planDetByPlanIdUrl, { planId })); return commonGet(formatUrl(patrolUrls.planDetByPlanIdUrl, { planId }));
}; };
...@@ -127,11 +126,11 @@ export const queryAllRouteAction = () => { ...@@ -127,11 +126,11 @@ export const queryAllRouteAction = () => {
return commonGet(patrolUrls.routeUrl); return commonGet(patrolUrls.routeUrl);
}; };
export const queryInputItemByConditionAction = (searchParams) => { export const queryInputItemByConditionAction = searchParams => {
return commonPost(formatUrl(patrolUrls.inputItemQueryByConditionUrl, {}), searchParams); return commonPost(formatUrl(patrolUrls.inputItemQueryByConditionUrl, {}), searchParams);
}; };
export const queryInputItemByConditionAction1 = (searchParams) => { export const queryInputItemByConditionAction1 = searchParams => {
return commonPost(formatUrl(patrolUrls.inputItemQueryByConditionUrl1, {}), searchParams); return commonPost(formatUrl(patrolUrls.inputItemQueryByConditionUrl1, {}), searchParams);
}; };
...@@ -139,50 +138,47 @@ export const queryAuthPointAction = (code = '', name = '') => { ...@@ -139,50 +138,47 @@ export const queryAuthPointAction = (code = '', name = '') => {
return commonGet(formatUrl(patrolUrls.routePointsAuthUrl, { code, name })); return commonGet(formatUrl(patrolUrls.routePointsAuthUrl, { code, name }));
}; };
export const addRoutePointAction = (routeId, pointIds) => { export const addRoutePointAction = (routeId, pointIds) => {
return commonPost(formatUrl(patrolUrls.routePointAddUrl, { routeId, pointIds })); return commonPost(formatUrl(patrolUrls.routePointAddUrl, { routeId, pointIds }));
}; };
export const queryPointInputItemAction = (pointId,body) => { export const queryPointInputItemAction = (pointId, body) => {
return commonPost(formatUrl(patrolUrls.pointInputItemUrl, { pointId }),body); return commonPost(formatUrl(patrolUrls.pointInputItemUrl, { pointId }), body);
}; };
export const saveAsPlanAction = (body) => { export const saveAsPlanAction = body => {
return commonPost(patrolUrls.planSaveAsUrl, body); return commonPost(patrolUrls.planSaveAsUrl, body);
}; };
export const batchDetPlanAction = body => {
export const batchDetPlanAction = (body) => {
return commonPost(patrolUrls.planBatchDetUrl, body); return commonPost(patrolUrls.planBatchDetUrl, body);
}; };
export const endplanAction = (body) => { export const endplanAction = body => {
return commonPost(patrolUrls.endplan, body); return commonPost(patrolUrls.endplan, body);
}; };
export const startplanAction = (body) => { export const startplanAction = body => {
return commonPost(patrolUrls.startplan, body); return commonPost(patrolUrls.startplan, body);
}; };
export const queryPlanTaskInfoAction = (filter, page, size) => { export const queryPlanTaskInfoAction = (filter, page, size) => {
return commonPost(formatUrl(patrolUrls.planTaskTablesUrl, { page, size }), filter); return commonPost(formatUrl(patrolUrls.planTaskTablesUrl, { page, size }), filter);
}; };
export const reGenPlanTaskAction = (body) => { export const reGenPlanTaskAction = body => {
var params = {timeout: 40000}//设置超时时间 var params = { timeout: 40000 }; //设置超时时间
return commonPost(patrolUrls.reGenplanTaskUrl, body, params); return commonPost(patrolUrls.reGenplanTaskUrl, body, params);
}; };
export const deleteplanTaskAction = (body) => { export const deleteplanTaskAction = body => {
return commonPost(patrolUrls.deleteplanTaskUrl, body); return commonPost(patrolUrls.deleteplanTaskUrl, body);
}; };
export const queryPlanByOrgNoPageAction = (body) => { export const queryPlanByOrgNoPageAction = body => {
return commonPost(patrolUrls.planInfoNoPageUrl, body); return commonPost(patrolUrls.planInfoNoPageUrl, body);
}; };
export const printTaskDetailAction = (taskID) => { export const printTaskDetailAction = taskID => {
return commonGet(formatUrl(patrolUrls.taskPrintUrl, { taskID })); return commonGet(formatUrl(patrolUrls.taskPrintUrl, { taskID }));
}; };
...@@ -190,7 +186,7 @@ export const queryCheckInfoAction = (filter, page, size) => { ...@@ -190,7 +186,7 @@ export const queryCheckInfoAction = (filter, page, size) => {
return commonPost(formatUrl(patrolUrls.checkTablesUrl, { page, size }), filter); return commonPost(formatUrl(patrolUrls.checkTablesUrl, { page, size }), filter);
}; };
export const batchDeCheckAction = (body) => { export const batchDeCheckAction = body => {
return commonPost(patrolUrls.checkBatchDetUrl, body); return commonPost(patrolUrls.checkBatchDetUrl, body);
}; };
...@@ -198,11 +194,11 @@ export const queryCatalogTreeAction = () => { ...@@ -198,11 +194,11 @@ export const queryCatalogTreeAction = () => {
return commonGet(formatUrl(patrolUrls.catalogTreeUrl, {})); return commonGet(formatUrl(patrolUrls.catalogTreeUrl, {}));
}; };
export const addCatalogTreeAction = (body) => { export const addCatalogTreeAction = body => {
return commonPost(patrolUrls.catalogTreeSaveUrl, body); return commonPost(patrolUrls.catalogTreeSaveUrl, body);
}; };
export const batDelCatalogTreeAction = (body) => { export const batDelCatalogTreeAction = body => {
return commonPost(patrolUrls.catalogTreeBatDelUrl, body); return commonPost(patrolUrls.catalogTreeBatDelUrl, body);
}; };
...@@ -210,23 +206,20 @@ export const queryCatalogTreePageAction = (filter, page, size) => { ...@@ -210,23 +206,20 @@ export const queryCatalogTreePageAction = (filter, page, size) => {
return commonPost(formatUrl(patrolUrls.catalogTreeListUrl, { page, size }), filter); return commonPost(formatUrl(patrolUrls.catalogTreeListUrl, { page, size }), filter);
}; };
export const queryCatalogTreeByIdAction = ( id ) => { export const queryCatalogTreeByIdAction = id => {
return commonGet(formatUrl(patrolUrls.catalogTreeDetByIdUrl, { id })); return commonGet(formatUrl(patrolUrls.catalogTreeDetByIdUrl, { id }));
}; };
export const forwardTaskAction = (userId, taskID) => {
export const forwardTaskAction = ( userId, taskID ) => {
return commonGet(formatUrl(patrolUrls.forwardTaskUrl, { userId, taskID })); return commonGet(formatUrl(patrolUrls.forwardTaskUrl, { userId, taskID }));
}; };
export const queryCheckDetailAction = checkId => {
export const queryCheckDetailAction = (checkId) => {
return commonGet(formatUrl(patrolUrls.checkDetailUrl, { checkId })); return commonGet(formatUrl(patrolUrls.checkDetailUrl, { checkId }));
}; };
export const exportCheckRecordAction = (filter) => { export const exportCheckRecordAction = filter => {
return commonPost(formatUrl(patrolUrls.exportCheckRecordUrl), filter); return commonPost(formatUrl(patrolUrls.exportCheckRecordUrl), filter);
}; };
export const seachPermissionAction = () => { export const seachPermissionAction = () => {
...@@ -237,21 +230,18 @@ export const exchangeOrderNumberAction = (src, target) => { ...@@ -237,21 +230,18 @@ export const exchangeOrderNumberAction = (src, target) => {
return commonPut(formatUrl(patrolUrls.exchangeOrderNumberUrl, { src, target })); return commonPut(formatUrl(patrolUrls.exchangeOrderNumberUrl, { src, target }));
}; };
export const fetchCheckDetailById = (data) => { export const fetchCheckDetailById = data => {
return commonPost(patrolUrls.SpecCheckDetailUrl, data); return commonPost(patrolUrls.SpecCheckDetailUrl, data);
}; };
export const fetchCheckInputById = (data) => { export const fetchCheckInputById = data => {
return commonPost(patrolUrls.SpecCheckInputById, data); return commonPost(patrolUrls.SpecCheckInputById, data);
}; };
export const fetchShortByCheckIdAndCheckInputId = (checkId, checkInputId, classifyId) => { export const fetchShortByCheckIdAndCheckInputId = (checkId, checkInputId, classifyId) => {
return commonGet(formatUrl(patrolUrls.searchCheckShortUrl, { checkId, checkInputId, classifyId})); return commonGet(formatUrl(patrolUrls.searchCheckShortUrl, { checkId, checkInputId, classifyId }));
}; };
export const queryAllItemNoAction = (itemId) => { export const queryAllItemNoAction = itemId => {
return commonGet(formatUrl(patrolUrls.itemNoQueryUrl, { itemId })); return commonGet(formatUrl(patrolUrls.itemNoQueryUrl, { itemId }));
}; };
...@@ -62,6 +62,13 @@ export const personStatisticsAction = (data) => { ...@@ -62,6 +62,13 @@ export const personStatisticsAction = (data) => {
}; };
/** /**
* 月度巡检情况-表格
*/
export const monthSituationAction = (body) => {
return commonPost(patrolUrls.monthSituationUrl, body);
};
/**
* 巡检首页-获取公司名、巡检点数、完成/计划、累计巡检次数、未完/已完任务数和巡检点数 * 巡检首页-获取公司名、巡检点数、完成/计划、累计巡检次数、未完/已完任务数和巡检点数
*/ */
export const homeNumberAction = () => { export const homeNumberAction = () => {
......
...@@ -55,6 +55,22 @@ ...@@ -55,6 +55,22 @@
height: 100%; height: 100%;
overflow: auto; overflow: auto;
.right-btn {
position: absolute;
z-index: 1;
right: 320px;
margin-top: -30px;
display: flex;
.row-btn {
padding-left: 25px;
img {
cursor: pointer;
}
}
}
.grid-content { .grid-content {
height: calc(100% - 40px); height: calc(100% - 40px);
......
...@@ -2,7 +2,6 @@ export default function(data, delRequest){ ...@@ -2,7 +2,6 @@ export default function(data, delRequest){
window.setLoading && window.setLoading(false); window.setLoading && window.setLoading(false);
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
if (data) { if (data) {
debugger
if (data.dataList || data.dataList === null){ if (data.dataList || data.dataList === null){
if(data.result==='SUCCESS'){ if(data.result==='SUCCESS'){
resolve(data.dataList); resolve(data.dataList);
......
...@@ -240,10 +240,8 @@ export const exportExcel = ({ url, method, body }, fileName) => { ...@@ -240,10 +240,8 @@ export const exportExcel = ({ url, method, body }, fileName) => {
'Content-Type': 'application/json; charset=utf-8', 'Content-Type': 'application/json; charset=utf-8',
'X-Access-Token': window.localStorage.getItem(token), 'X-Access-Token': window.localStorage.getItem(token),
'token': window.localStorage.getItem(token), 'token': window.localStorage.getItem(token),
'appKey': 'YH-PATROL', 'appKey': 'YH-PATROL',
'product': 'YH-PATROL_WEB' 'product': 'YH-PATROL_WEB'
}, },
body: body ? JSON.stringify(body) : undefined body: body ? JSON.stringify(body) : undefined
}).then((e) => { }).then((e) => {
......
...@@ -9,20 +9,19 @@ import { seachPermissionAction } from './../../../services/checkService'; ...@@ -9,20 +9,19 @@ import { seachPermissionAction } from './../../../services/checkService';
* @class ToolBar * @class ToolBar
* @extends {Component} * @extends {Component}
*/ */
class ToolBar extends Component{ class ToolBar extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
this.state = { this.state = {
navs: [], navs: [],
isWriteable: false, isWriteable: false,
dropnavs:[] dropnavs: []
}; };
} }
componentWillReceiveProps(nextProps) { componentWillReceiveProps(nextProps) {
const { dropnavs } = nextProps; const { dropnavs } = nextProps;
if (dropnavs && dropnavs.length > 0) {
if(dropnavs&&dropnavs.length>0){
this.setState({ dropnavs: dropnavs }); this.setState({ dropnavs: dropnavs });
const permissionsMenus = window.localStorage.getItem('permissionsMenus'); const permissionsMenus = window.localStorage.getItem('permissionsMenus');
let data = []; let data = [];
...@@ -32,26 +31,20 @@ class ToolBar extends Component{ ...@@ -32,26 +31,20 @@ class ToolBar extends Component{
let children = []; let children = [];
if (data && dropnavs) { if (data && dropnavs) {
data.find(item => { data.find(item => {
if(item.permissionName === '巡检业务'){ if (item.permissionName === '巡检业务') {
children = item.children; children = item.children;
let menu = children.find(item => { let menu = children.find(item => {
if(dropnavs&&dropnavs.length>0){ if (dropnavs && dropnavs.length > 0) {
if (void 0 === dropnavs[0].frontComponent) { if (void 0 === dropnavs[0].frontComponent) {
return true; return true;
} }
return dropnavs[0].frontComponent === item.permissionCode; return dropnavs[0].frontComponent === item.permissionCode;
} }
}); });
if (!menu) { if (!menu) {
this.setState({ navs: [], isWriteable: false }); this.setState({ navs: [], isWriteable: false });
return; return;
} }
let navs = dropnavs.filter(item => { let navs = dropnavs.filter(item => {
if (!item.isWriteable) { if (!item.isWriteable) {
return true; return true;
...@@ -64,14 +57,9 @@ class ToolBar extends Component{ ...@@ -64,14 +57,9 @@ class ToolBar extends Component{
} }
}); });
} }
} }
} }
componentWillMount() { componentWillMount() {
const { dropnavs } = this.state; const { dropnavs } = this.state;
const permissionsMenus = window.localStorage.getItem('permissionsMenus'); const permissionsMenus = window.localStorage.getItem('permissionsMenus');
...@@ -82,26 +70,20 @@ class ToolBar extends Component{ ...@@ -82,26 +70,20 @@ class ToolBar extends Component{
let children = []; let children = [];
if (data && dropnavs) { if (data && dropnavs) {
data.find(item => { data.find(item => {
if(item.permissionName === '巡检业务'){ if (item.permissionName === '巡检业务') {
children = item.children; children = item.children;
let menu = children.find(item => { let menu = children.find(item => {
if(dropnavs&&dropnavs.length>0){ if (dropnavs && dropnavs.length > 0) {
if (void 0 === dropnavs[0].frontComponent) { if (void 0 === dropnavs[0].frontComponent) {
return true; return true;
} }
return dropnavs[0].frontComponent === item.permissionCode; return dropnavs[0].frontComponent === item.permissionCode;
} }
}); });
if (!menu) { if (!menu) {
this.setState({ navs: [], isWriteable: false }); this.setState({ navs: [], isWriteable: false });
return; return;
} }
let navs = dropnavs.filter(item => { let navs = dropnavs.filter(item => {
if (!item.isWriteable) { if (!item.isWriteable) {
return true; return true;
...@@ -146,7 +128,7 @@ class ToolBar extends Component{ ...@@ -146,7 +128,7 @@ class ToolBar extends Component{
getMenuItems = (subSys) => { getMenuItems = (subSys) => {
let { callBack } = this.props; let { callBack } = this.props;
let items = new Array(); let items = new Array();
for ( let i = 0; i < subSys.length; i++) { for (let i = 0; i < subSys.length; i++) {
let sub = subSys[i]; let sub = subSys[i];
items.push(<Menu.Item onClick={() => callBack(sub.key)}>{sub.text}</Menu.Item>); items.push(<Menu.Item onClick={() => callBack(sub.key)}>{sub.text}</Menu.Item>);
} }
...@@ -156,15 +138,15 @@ class ToolBar extends Component{ ...@@ -156,15 +138,15 @@ class ToolBar extends Component{
getDropnav = (record) => { getDropnav = (record) => {
let arr = new Array(); let arr = new Array();
arr.push(record); arr.push(record);
return (<DropNav navs={arr} theme="light" />); return (<DropNav navs={arr} theme="light" />);
} }
handlerOnClick = (navItem, e) =>{ handlerOnClick = (navItem, e) => {
let { callBack } = this.props; let { callBack } = this.props;
if (!navItem.href.startsWith('jacascript::void(0)')) { if (!navItem.href.startsWith('jacascript::void(0)')) {
return true; return true;
} }
callBack(navItem.key,navItem.href); callBack(navItem.key, navItem.href);
return false; return false;
} }
...@@ -178,7 +160,7 @@ class ToolBar extends Component{ ...@@ -178,7 +160,7 @@ class ToolBar extends Component{
render() { render() {
const { navs } = this.state; const { navs } = this.state;
let context = navs.map( item => { let context = navs.map(item => {
if (item.subSys) { if (item.subSys) {
return this.getNavMenu(item); return this.getNavMenu(item);
} else if (!item.href.startsWith('jacascript::void(0)')) { } else if (!item.href.startsWith('jacascript::void(0)')) {
......
...@@ -93,16 +93,16 @@ class RootView extends Component { ...@@ -93,16 +93,16 @@ class RootView extends Component {
} }
onPermissionFetch = () => { onPermissionFetch = () => {
const { onMenuLoadCompleted } = this.props; const { onMenuLoadCompleted } = this.props;
let roleSeq = lsTool.read('selectedRole'); let roleSeq = lsTool.read('selectedRole');
const token = lsTool.read(SysConsts.token); const token = lsTool.read(SysConsts.token);
searchMenusByRoleAction(roleSeq).then(res =>{ searchMenusByRoleAction(roleSeq).then(res =>{
console.log('searchMenusByRoleAction'); console.log('searchMenusByRoleAction');
let menus =this.get(res); let menus =this.get(res);
if(menus!=null&&menus.length>0){ if(menus!=null&&menus.length>0){
var arr2 = [] var arr2 = []
...@@ -123,20 +123,20 @@ class RootView extends Component { ...@@ -123,20 +123,20 @@ class RootView extends Component {
get= (res) =>{ get= (res) =>{
let tmp=[] let tmp=[]
for(var item11 of res){ for(var item11 of res){
if(item11.children!=null&&item11.children.length>0){ if(item11.children!=null&&item11.children.length>0){
if(item11.children[0].permissionType==='BUTTON'){ if(item11.children[0].permissionType==='BUTTON'){
item11.children=[] item11.children=[]
}else{ }else{
item11.children=this.get(item11.children); item11.children=this.get(item11.children);
} }
} }
tmp.push(item11) tmp.push(item11)
} }
return tmp; return tmp;
} }
...@@ -247,7 +247,7 @@ class RootView extends Component { ...@@ -247,7 +247,7 @@ class RootView extends Component {
!isSub ? ( !isSub ? (
<header className="patrol-view-header" > <header className="patrol-view-header" >
{/* <Icon icon="logo" /> */} {/* <Icon icon="logo" /> */}
<img src='/src/assets/auth/logs.jpg'></img> {/* <img src='/src/assets/auth/logs.jpg'></img> */}
<span>{company +depname|| ''}</span> <span>{company +depname|| ''}</span>
{window.isDisplayQR ? <div className="patrol-view-header-img"> {window.isDisplayQR ? <div className="patrol-view-header-img">
<Icon prefix='amosicon' icon="shouji" style={{ display: 'inline-block',fontSize: 15, color: 'white' }} /> <Icon prefix='amosicon' icon="shouji" style={{ display: 'inline-block',fontSize: 15, color: 'white' }} />
......
...@@ -52,8 +52,8 @@ class CatalogTreeInput extends Component { ...@@ -52,8 +52,8 @@ class CatalogTreeInput extends Component {
queryCatalogTree = () => { queryCatalogTree = () => {
queryCatalogTreeAction().then(data => { queryCatalogTreeAction().then(data => {
let treeData = data; let treeData = data;
data.push({key: '0',value: '0',label: '',children: []}); data.push({ key: '0', value: '0', label: '', children: [] });
console.log('queryCatalogTree',data); console.log('queryCatalogTree', data);
this.setState({ treeData }); this.setState({ treeData });
}); });
}; };
...@@ -64,8 +64,7 @@ class CatalogTreeInput extends Component { ...@@ -64,8 +64,7 @@ class CatalogTreeInput extends Component {
let { form } = this.state; let { form } = this.state;
addCatalogTreeAction(form).then( addCatalogTreeAction(form).then(
data => { data => {
debugger if (data === null) {
if(data===null){
AmosAlert.success('提示', '保存成功'); AmosAlert.success('提示', '保存成功');
} else { } else {
AmosAlert.error('提示', '添加分类失败:目录名称已存在'); AmosAlert.error('提示', '添加分类失败:目录名称已存在');
...@@ -88,7 +87,7 @@ class CatalogTreeInput extends Component { ...@@ -88,7 +87,7 @@ class CatalogTreeInput extends Component {
render() { render() {
const { form, treeData, rules } = this.state; const { form, treeData, rules } = this.state;
console.log('form',form); console.log('form', form);
const formItemLayout = { const formItemLayout = {
labelCol: { labelCol: {
xs: { span: 24 }, xs: { span: 24 },
......
...@@ -6,13 +6,13 @@ import { browserHistory } from 'amos-react-router'; ...@@ -6,13 +6,13 @@ import { browserHistory } from 'amos-react-router';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { pathMapping } from './../../../routes/customRoutes'; import { pathMapping } from './../../../routes/customRoutes';
import ToolBar from './../../component/toolbar'; import ToolBar from './../../component/toolbar';
import { batDelCatalogTreeAction,btnAuthAction } from '../../../services/checkService'; import { batDelCatalogTreeAction, btnAuthAction } from '../../../services/checkService';
const inputUrl = () => pathMapping.catalogTreeInput; const inputUrl = () => pathMapping.catalogTreeInput;
const dropnavs1 = { key: '1', text: '添加', icon: 'add', href: 'jacascript::void(0)', permissionCode: 'catalogtree', isWriteable: true }; const dropnavs1 = { key: '1', text: '添加', icon: 'add', href: 'jacascript::void(0)', permissionCode: 'catalogtree', isWriteable: true };
const dropnavs2 = { key: '2', text: '修改', icon: 'edit', href: 'jacascript::void(0)', permissionCode: 'catalogtree', isWriteable: true }; const dropnavs2 = { key: '2', text: '修改', icon: 'edit', href: 'jacascript::void(0)', permissionCode: 'catalogtree', isWriteable: true };
const dropnavs3 = { key: '3', text: '删除', icon: 'delete', href: 'jacascript::void(0)', permissionCode: 'catalogtree', isWriteable: true }; const dropnavs3 = { key: '3', text: '删除', icon: 'delete', href: 'jacascript::void(0)', permissionCode: 'catalogtree', isWriteable: true };
const getColumns = () => { const getColumns = () => {
return [ return [
...@@ -80,7 +80,7 @@ class CheckTable extends Component { ...@@ -80,7 +80,7 @@ class CheckTable extends Component {
selectedRows: [], selectedRows: [],
selectedRowKeys: [], selectedRowKeys: [],
data: [], data: [],
dropnavs:[] dropnavs: []
}; };
} }
...@@ -89,34 +89,26 @@ class CheckTable extends Component { ...@@ -89,34 +89,26 @@ class CheckTable extends Component {
*/ */
componentWillMount = () => { componentWillMount = () => {
this.reloadButtonAuth(); this.reloadButtonAuth();
}; };
reloadButtonAuth = () => { reloadButtonAuth = () => {
// const _path = this.calcRoutes(); // const _path = this.calcRoutes();
btnAuthAction('/main/patrol/catalogtree').then(data => { btnAuthAction('/main/patrol/catalogtree').then(data => {
let { dropnavs } = this.state; let { dropnavs } = this.state;
if(data){ if (data) {
if ('tj' in data && data.tj.hasPermission) {
if("tj" in data&&data.tj.hasPermission){ dropnavs.push(dropnavs1);
}
dropnavs.push( dropnavs1); if ('xg' in data && data.xg.hasPermission) {
} dropnavs.push(dropnavs2);
if("xg" in data&&data.xg.hasPermission){ }
dropnavs.push( dropnavs2); if ('sc' in data && data.sc.hasPermission) {
dropnavs.push(dropnavs3);
} }
if("sc" in data&&data.sc.hasPermission){
dropnavs.push( dropnavs3);
} }
this.setState({ dropnavs });
}
this.setState({ dropnavs});
}); });
} };
/** /**
* 分页设置参数 * 分页设置参数
*/ */
...@@ -182,8 +174,7 @@ class CheckTable extends Component { ...@@ -182,8 +174,7 @@ class CheckTable extends Component {
// 确定删除 // 确定删除
batDelCatalogTreeAction(ids).then( batDelCatalogTreeAction(ids).then(
data => { data => {
debugger if (data === null) {
if(data===null){
AmosAlert.success('提示', '删除成功'); AmosAlert.success('提示', '删除成功');
} else { } else {
AmosAlert.error('提示', '删除分类失败:请先删除子节点'); AmosAlert.error('提示', '删除分类失败:请先删除子节点');
...@@ -238,7 +229,7 @@ class CheckTable extends Component { ...@@ -238,7 +229,7 @@ class CheckTable extends Component {
}; };
render() { render() {
let { pagination, isChecked, modal, selectedRowKeys,dropnavs } = this.state; let { pagination, isChecked, modal, selectedRowKeys, dropnavs } = this.state;
let { dataList, fetchData, count } = this.props; let { dataList, fetchData, count } = this.props;
let defaultPageConfig = this.pageConfig; let defaultPageConfig = this.pageConfig;
return ( return (
......
...@@ -9,9 +9,7 @@ import { pathMapping } from './../../../routes/customRoutes'; ...@@ -9,9 +9,7 @@ import { pathMapping } from './../../../routes/customRoutes';
import AmosGridTable from '../../component/table/table/AmosGridTable'; import AmosGridTable from '../../component/table/table/AmosGridTable';
import { patrolUrls } from './../../../consts/urlConsts'; import { patrolUrls } from './../../../consts/urlConsts';
import ToolBar from './../../component/toolbar'; import ToolBar from './../../component/toolbar';
import { batchDeCheckAction, queryCheckDetailAction ,btnAuthAction} from '../../../services/checkService'; import { batchDeCheckAction, queryCheckDetailAction, btnAuthAction } from '../../../services/checkService';
const ls = _amosTool.Store.lsTool; const ls = _amosTool.Store.lsTool;
const apiKey = SysConsts.api_key; const apiKey = SysConsts.api_key;
...@@ -22,21 +20,21 @@ const checkDetail = pathMapping.checkDetail; ...@@ -22,21 +20,21 @@ const checkDetail = pathMapping.checkDetail;
const okStatusEnum = { '1': '正常', '2': '异常', '3': '漏检' }; const okStatusEnum = { '1': '正常', '2': '异常', '3': '漏检' };
const statusDataEnum = { '0': '计划外完成', '1': '按时完成', '2': '未执行' }; const statusDataEnum = { '0': '计划外完成', '1': '按时完成', '2': '未执行' };
const dropnavs1={ key: '1', text: '查看明细', icon: 'jiancha', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false }; const dropnavs1 = { key: '1', text: '查看明细', icon: 'jiancha', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false };
const dropnavs2={ key: '2', text: '删除记录', icon: 'delete', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: true }; const dropnavs2 = { key: '2', text: '删除记录', icon: 'delete', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: true };
const dropnavs3= { const dropnavs3 = {
key: '3', key: '3',
text: '导出记录', text: '导出记录',
icon: 'user', icon: 'user',
href: 'jacascript::void(0)', href: 'jacascript::void(0)',
subSys: [ subSys: [
{ key: '3-1', text: '导出选中数据', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false }, { key: '3-1', text: '导出选中数据', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false },
{ key: '3-2', text: '导出全部数据', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false }, { key: '3-2', text: '导出全部数据', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false },
{ key: '3-3', text: '导出选中图片', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false }, { key: '3-3', text: '导出选中图片', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false },
{ key: '3-4', text: '导出全部图片', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false } { key: '3-4', text: '导出全部图片', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: false }
] ]
}; };
const dropnavs4 = { key: '4', text: '业务报表', icon: 'file', href: 'jacascript::void(0)', permissionCode: 'check', isWriteable: true };
const getColumns = () => { const getColumns = () => {
return [ return [
...@@ -156,11 +154,11 @@ const getHeaders = () => { ...@@ -156,11 +154,11 @@ const getHeaders = () => {
'Content-Type': 'application/json; charset=utf-8', 'Content-Type': 'application/json; charset=utf-8',
'X-Api-Key': _amosTool.Store.getCookieByName(apiKey), 'X-Api-Key': _amosTool.Store.getCookieByName(apiKey),
'X-Access-Token': ls.read(token), 'X-Access-Token': ls.read(token),
'token': ls.read(token), token: ls.read(token),
'appKey': 'YH-PATROL', appKey: 'YH-PATROL',
'product': 'YH-PATROL_WEB' product: 'YH-PATROL_WEB'
} };
} };
/** /**
* 计划执行 * 计划执行
...@@ -187,7 +185,8 @@ class CheckTable extends Component { ...@@ -187,7 +185,8 @@ class CheckTable extends Component {
selectedRows: [], selectedRows: [],
selectedRowKeys: [], selectedRowKeys: [],
data: [], data: [],
dropnavs:[] dropnavs: [],
showType: ''
}; };
} }
...@@ -202,41 +201,30 @@ class CheckTable extends Component { ...@@ -202,41 +201,30 @@ class CheckTable extends Component {
this.reloadButtonAuth(); this.reloadButtonAuth();
}; };
/****按钮权限 */
/****按钮权限 */ reloadButtonAuth = () => {
// const _path = this.calcRoutes();
reloadButtonAuth = () => { btnAuthAction('/main/patrol/check').then(data => {
// const _path = this.calcRoutes(); let { dropnavs } = this.state;
btnAuthAction('/main/patrol/check').then(data => { if (data) {
if ('jiancha' in data && data.jiancha.hasPermission) {
let { dropnavs } = this.state; dropnavs.push(dropnavs1);
if(data){ }
if ('delete' in data && data.delete.hasPermission) {
if("jiancha" in data&&data.jiancha.hasPermission){ dropnavs.push(dropnavs2);
}
dropnavs.push( dropnavs1); if ('user' in data && data.user.hasPermission) {
} dropnavs.push(dropnavs3);
if("delete" in data&&data.delete.hasPermission){ }
dropnavs.push( dropnavs2); if ('ureport' in data && data.ureport.hasPermission) {
dropnavs.push(dropnavs4);
} }
if("user" in data&&data.user.hasPermission){ }
dropnavs.push( dropnavs3);
}
}
this.setState({ dropnavs});
});
}
this.setState({ dropnavs });
});
};
/** /**
* 分页设置参数 * 分页设置参数
...@@ -329,6 +317,8 @@ reloadButtonAuth = () => { ...@@ -329,6 +317,8 @@ reloadButtonAuth = () => {
this.exportSelectImgs(); this.exportSelectImgs();
} else if (type === '3-4') { } else if (type === '3-4') {
this.exportAllDataImgs(); this.exportAllDataImgs();
} else if (type === '4') {
this.onClickIcon('check');
} }
window.setLoading && window.setLoading(false); window.setLoading && window.setLoading(false);
}; };
...@@ -344,7 +334,8 @@ reloadButtonAuth = () => { ...@@ -344,7 +334,8 @@ reloadButtonAuth = () => {
fetch(url, { fetch(url, {
method: 'get', method: 'get',
headers: getHeaders() headers: getHeaders()
}).then(e => { })
.then(e => {
e.blob().then(blob => { e.blob().then(blob => {
const a = window.document.createElement('a'); const a = window.document.createElement('a');
const downUrl = window.URL.createObjectURL(blob); const downUrl = window.URL.createObjectURL(blob);
...@@ -372,7 +363,8 @@ reloadButtonAuth = () => { ...@@ -372,7 +363,8 @@ reloadButtonAuth = () => {
fetch(url, { fetch(url, {
method: 'get', method: 'get',
headers: getHeaders() headers: getHeaders()
}).then(e => { })
.then(e => {
e.blob().then(blob => { e.blob().then(blob => {
const a = window.document.createElement('a'); const a = window.document.createElement('a');
const downUrl = window.URL.createObjectURL(blob); const downUrl = window.URL.createObjectURL(blob);
...@@ -447,8 +439,6 @@ reloadButtonAuth = () => { ...@@ -447,8 +439,6 @@ reloadButtonAuth = () => {
}); });
}; };
getDetCheckInfo = () => { getDetCheckInfo = () => {
let { selectedRows } = this.state; let { selectedRows } = this.state;
if (selectedRows === undefined || selectedRows.length <= 0) { if (selectedRows === undefined || selectedRows.length <= 0) {
...@@ -459,16 +449,16 @@ reloadButtonAuth = () => { ...@@ -459,16 +449,16 @@ reloadButtonAuth = () => {
AmosAlert.warning('提示', '至多可以选择一条巡检记录'); AmosAlert.warning('提示', '至多可以选择一条巡检记录');
return; return;
} }
// for (let i = 0; i < selectedRows.length; i++) { // for (let i = 0; i < selectedRows.length; i++) {
let id = selectedRows[0].id; let id = selectedRows[0].id;
let path = { let path = {
pathname: checkDetail, pathname: checkDetail,
state: { checkID: id } state: { checkID: id }
}; };
browserHistory.push(path); browserHistory.push(path);
// queryCheckDetailAction(id).then(data => { // queryCheckDetailAction(id).then(data => {
// this.showCheckDetail(data); // this.showCheckDetail(data);
// }); // });
// } // }
}; };
...@@ -491,14 +481,37 @@ reloadButtonAuth = () => { ...@@ -491,14 +481,37 @@ reloadButtonAuth = () => {
// }); // });
}; };
onClickIcon = value => {
const { showType } = this.state;
if (showType === value) {
value = '';
}
this.props.setShowType(value);
this.setState({ showType: value });
};
render() { render() {
let { pagination,dropnavs, isChecked, selectedRowKeys } = this.state; let { pagination, dropnavs, isChecked, selectedRowKeys } = this.state;
let { dataList, fetchData, count } = this.props; let { dataList, fetchData, count } = this.props;
let defaultPageConfig = this.pageConfig; let defaultPageConfig = this.pageConfig;
return ( return (
<div className="patrol-page-table"> <div className="patrol-page-table">
<ToolBar dropnavs={dropnavs} callBack={this.onClickBootBar} /> <ToolBar dropnavs={dropnavs} callBack={this.onClickBootBar} />
<div className="right-btn">
{/* <div className="row-btn">
<img src="/src/assets/fsc/check/export.png" onClick={() => this.onClickIcon('check')} />
<span>&nbsp;&nbsp;业务报表</span>
</div> */}
<div className="row-btn">
<img src="/src/assets/fsc/check/export.png" onClick={() => this.onClickIcon('export')} />
<span>&nbsp;&nbsp;报表生成</span>
</div>
<div className="row-btn">
<img src="/src/assets/fsc/check/filter.png" onClick={() => this.onClickIcon('search')} />
<span>&nbsp;&nbsp;筛选条件</span>
</div>
</div>
<AmosGridTable <AmosGridTable
rowKey="id" rowKey="id"
columns={getColumns()} columns={getColumns()}
...@@ -520,6 +533,8 @@ reloadButtonAuth = () => { ...@@ -520,6 +533,8 @@ reloadButtonAuth = () => {
} }
} }
CheckTable.propTypes = {}; CheckTable.propTypes = {
setShowType: PropTypes.func
};
export default CheckTable; export default CheckTable;
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { DatePicker } from 'amos-antd';
import moment from 'moment';
import { Form, Button, Select } from 'amos-framework';
import { queryDeptByOrgCodeAction1 } from '../../../services/checkService';
import { exportExcel } from 'UTILS/tools';
import { patrolUrls } from 'CONSTS/urlConsts';
const FormItem = Form.Item;
const Option = Select.Option;
/**
* 生成报表条件
*
* @class ExportSearch
* @extends {Component}
*/
class ExportSearch extends Component {
constructor(props) {
super(props);
this.state = {
form: {
deptId: {
name: 'deptId',
value: ''
},
beginDate: {
name: 'beginDate',
value: moment()
.startOf('day')
.format('YYYY-MM-DD HH:mm:ss')
},
endDate: {
name: 'endDate',
value: moment()
.endOf('day')
.format('YYYY-MM-DD HH:mm:ss')
},
statement: { name: 'statement', value: 'technology' }
},
rules: {
deptId: [
{ required: true, message: '巡检部门不能为空!' }
],
statement: [
{ required: true, message: '报表模板不能为空!' }
],
beginDate: [
{ required: true, message: '开始时间不能为空!' }
],
endDate: [
{ required: true, message: '结束时间不能为空!' }
]
},
deptData: [],
statementList: [
{ name: '技术', value: 'technology' },
{ name: '业务', value: 'business' }
]
};
}
componentWillMount = () => {
this.queryDeptByOrgCode(); // 查询部门
};
queryDeptByOrgCode = () => {
queryDeptByOrgCodeAction1().then(data => {
this.setState({ deptData: data });
});
};
onExportExcel = () => {
let { form } = this.state;
let quest = [];
if (form) {
for (let key in form) {
let obj = form[key];
quest.push(obj);
}
}
const millisecond = moment().format('YYYYMMDDHHmmss');
exportExcel({ url: patrolUrls.daySituationExportUrl, method: 'post', body: quest }, '每日巡检情况报表' + millisecond);
}
onChange = (key, e) => {
let { form } = this.state;
form[key].value = e.target.value;
this.setState(form);
};
onDateChange = (key, date) => {
const { form } = this.state;
form[key].value = moment(date).format('YYYY-MM-DD HH:mm:ss');
this.setState({ form });
};
onSelectChange = (key, value) => {
let { form } = this.state;
form[key].value = value;
this.setState(form);
};
onDeptChange = (key, value) => {
const { form } = this.state;
form[key].value = value;
this.setState({ form });
};
render() {
const { form, rules, deptData, statementList } = this.state;
const formItemLayout = {
labelCol: {
xs: { span: 24 },
sm: { span: 4 },
className: 'colspanlab'
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 14 },
className: 'colspan'
}
};
return (
<Form style={{ padding: '30px 0 0 0' }} className="basic-demo" model={form} rules={rules}>
<FormItem label="巡检部门" field="deptId" {...formItemLayout} >
<Select
className="search_Input"
data={deptData ? deptData : []}
style={{ height: 30 }}
renderOption={item => item && <Option value={item.sequenceNbr}>{item.departmentName}</Option>}
defaultOption={<Option>全部</Option>}
value={form.deptId.value}
onChange={(e) => this.onDeptChange('deptId', e)}
/>
</FormItem>
<FormItem label={<span>报表模板</span>} field="statement" {...formItemLayout}>
<Select
data={statementList}
renderOption={item => <Option value={item.value}>{item.name}</Option>}
value={form.statement.value}
className="search_Input"
onChange={e => this.onSelectChange('statement', e)}
/>
</FormItem>
<FormItem label={<span>开始日期</span>} field="beginDate" {...formItemLayout}>
<DatePicker
style={{ width: 178 }}
className="search_Input"
value={moment(form.beginDate.value)}
allowClear={false}
format="YYYY-MM-DD HH:mm:ss"
onChange={e => this.onDateChange('beginDate', e)}
//允许选择时间
showTime={{ defaultValue: moment('00:00:00', 'HH:mm:ss') }}
/>
</FormItem>
<FormItem label={<span>结束日期</span>} field="endDate" {...formItemLayout}>
<DatePicker
style={{ width: 178 }}
className="search_Input"
value={moment(form.endDate.value)}
allowClear={false}
format="YYYY-MM-DD HH:mm:ss"
onChange={e => this.onDateChange('endDate', e)}
showTime={{ defaultValue: moment('00:00:00', 'HH:mm:ss') }}
/>
</FormItem>
<FormItem className="search-btn">
<Button onClick={this.onExportExcel}>生成报表</Button>
<Button onClick={this.onResetFields}>重置</Button>
</FormItem>
</Form>
);
}
}
ExportSearch.propTypes = {
};
export default ExportSearch;
import { Icon, Button } from 'amos-framework';
import React, { Component } from 'react';
import '../../../styles/view/component/drawer.scss';
import PropTypes from 'prop-types';
/**
* 巡检项
*
* @class InputItemSearch
* @extends {Component}
*/
class SplitLayout extends Component{
state = {
content: {
right: '0px',
display: 'block'
},
client: {
right: '300px',
display: 'none'
}
};
changeStatus = (e) => {
const { content } = this.state;
if (content.right !== '0px') {
let ClientContent = {
right: '0px',
display: 'block'
};
let newClient = {
right: '300px',
display: 'none'
};
this.setState({ content: ClientContent, client: newClient });
} else {
let ClientContent = {
right: '-250px',
opacity: 'block'
};
let newClient = {
right: '0px',
opacity: 'show',
display: 'block'
};
this.setState({ content: ClientContent, client: newClient });
}
}
render() {
const { content, client } = this.state;
const { title } = this.props;
return (
<div className="qq-client-body">
<div style={client} className="qq-client">
<a onClick={this.changeStatus} className="qq-client-open" style={client} >
<Icon size="1x" prefix="amosicon" icon="gengduo2" />
</a>
</div>
<div className="qq-client-content" style={content}>
<h2>
{title}
</h2>
<div className="qq-client-open-content">
{this.props.children}
</div>
</div>
</div>
);
}
}
SplitLayout.propTypes = {
children: PropTypes.node,
title: PropTypes.string
};
export default SplitLayout;
...@@ -2,8 +2,11 @@ import React, { Component } from 'react'; ...@@ -2,8 +2,11 @@ import React, { Component } from 'react';
import moment from 'moment'; import moment from 'moment';
import CheckTable from './CheckTable'; import CheckTable from './CheckTable';
import CheckSearch from './CheckSearch'; import CheckSearch from './CheckSearch';
import ExportSearch from './ExportSearch';
import ExportCheckSearch from './ExportCheckSearch';
import { queryCheckInfoAction } from '../../../services/checkService'; import { queryCheckInfoAction } from '../../../services/checkService';
import SplitterLayout from '../../component/SplitLayout'; import SplitterLayout from './SplitLayout';
/** /**
* 巡检记录 * 巡检记录
...@@ -19,7 +22,8 @@ class Check extends Component { ...@@ -19,7 +22,8 @@ class Check extends Component {
statisticsData: [], statisticsData: [],
totalCount: 0, totalCount: 0,
planId: '', planId: '',
pointNo: '' pointNo: '',
showType: ''
}; };
} }
componentWillMount = () => { componentWillMount = () => {
...@@ -35,7 +39,7 @@ class Check extends Component { ...@@ -35,7 +39,7 @@ class Check extends Component {
} }
if (pointNo) { if (pointNo) {
searchParam.push({ name: 'pointNo', value: pointNo }); searchParam.push({ name: 'pointNo', value: pointNo });
this.setState({ searchParam, pointNo }); this.setState({ searchParam, pointNo });
} }
}; };
...@@ -73,14 +77,38 @@ class Check extends Component { ...@@ -73,14 +77,38 @@ class Check extends Component {
}); });
} }
setShowType = value => {
this.setState({ showType: value });
};
render() { render() {
let { statisticsData, totalCount, planId, pointNo, searchParam } = this.state; let { statisticsData, totalCount, planId, pointNo, searchParam, showType } = this.state;
console.log(showType);
return ( return (
<div className="patrol-page-content"> <div className="patrol-page-content">
<SplitterLayout> {showType === 'search' && (
<CheckSearch search={this.onSearchDataSyn} planId={planId} pointNo={pointNo} /> <SplitterLayout title="查询条件">
</SplitterLayout> <CheckSearch search={this.onSearchDataSyn} planId={planId} pointNo={pointNo} />
<CheckTable count={totalCount} fetchData={this.questStatistiscData} searchParam={searchParam} dataList={statisticsData} planId={planId} /> </SplitterLayout>
)}
{showType === 'export' && (
<SplitterLayout title="报表生成">
<ExportSearch search={this.onSearchDataSyn} planId={planId} pointNo={pointNo} />
</SplitterLayout>
)}
{showType === 'check' && (
<SplitterLayout title="业务报表">
<ExportCheckSearch />
</SplitterLayout>
)}
<CheckTable
count={totalCount}
fetchData={this.questStatistiscData}
searchParam={searchParam}
dataList={statisticsData}
planId={planId}
setShowType={this.setShowType}
/>
</div> </div>
); );
} }
......
...@@ -22,7 +22,7 @@ class PatrolChart extends Component { ...@@ -22,7 +22,7 @@ class PatrolChart extends Component {
right: '30px', right: '30px',
left: '70px', left: '70px',
top: '25px', top: '25px',
bottom: '60px' bottom: '30px'
}, },
tooltip: { tooltip: {
trigger: 'axis', trigger: 'axis',
......
import React, { Component } from 'react'; import React, { Component } from 'react';
import { DatePicker } from 'amos-antd'; import { DatePicker,TimePicker } from 'amos-antd';
import moment from 'moment'; import moment from 'moment';
import { browserHistory } from 'amos-react-router'; import { browserHistory } from 'amos-react-router';
import { Form, AmosAlert, MultiSelect, Input, Radio, Button, Select, Checkbox, InputNumber } from 'amos-framework'; import { Form, AmosAlert, MultiSelect, Input, Radio, Button, Select, Checkbox, InputNumber } from 'amos-framework';
...@@ -16,7 +16,8 @@ import YearPicker from '../../common/YearPicker'; ...@@ -16,7 +16,8 @@ import YearPicker from '../../common/YearPicker';
import { Store } from 'amos-tool'; import { Store } from 'amos-tool';
const lsTool = Store.lsTool; const lsTool = Store.lsTool;
const format = 'HH:mm';
const formatValue = 'HH:mm:ss';
const { WeekPicker, MonthPicker } = DatePicker; const { WeekPicker, MonthPicker } = DatePicker;
...@@ -128,10 +129,9 @@ class PlanInput extends Component { ...@@ -128,10 +129,9 @@ class PlanInput extends Component {
this.setState({ form }); this.setState({ form });
}; };
onTimeChange = (key, e) => { onTimeChange = (key, date) => {
const { form } = this.state; const { form } = this.state;
const value = e.target.value + ':00'; form[key] = date ? moment(date).format(formatValue) : null;
form[key] = value;
this.dynamicCreatRemark(form); this.dynamicCreatRemark(form);
}; };
...@@ -148,7 +148,7 @@ class PlanInput extends Component { ...@@ -148,7 +148,7 @@ class PlanInput extends Component {
}; };
onDeptChange = (key, value) => { onDeptChange = (key, value) => {
let keyd= lsTool.read('departmentdate'); let keyd= lsTool.read('departmentdate');
const { form } = this.state; const { form } = this.state;
...@@ -157,23 +157,23 @@ class PlanInput extends Component { ...@@ -157,23 +157,23 @@ class PlanInput extends Component {
this.setState({ form }); this.setState({ form });
// if(keyd!='null'){ // if(keyd!='null'){
// if(value!=keyd){ // if(value!=keyd){
// AmosAlert.error('提示', '只能选择本部门'); // AmosAlert.error('提示', '只能选择本部门');
// form[key] = ''; // form[key] = '';
// this.setState({ userData: [] }); // this.setState({ userData: [] });
// this.setState({ form }); // this.setState({ form });
// }else{ // }else{
// form[key] = value; // form[key] = value;
// this.queryUserByDept(value); // this.queryUserByDept(value);
// this.setState({ form }); // this.setState({ form });
// } // }
// }else{ // }else{
// form[key] = value; // form[key] = value;
// this.queryUserByDept(value); // this.queryUserByDept(value);
// this.setState({ form }); // this.setState({ form });
// } // }
...@@ -233,10 +233,13 @@ class PlanInput extends Component { ...@@ -233,10 +233,13 @@ class PlanInput extends Component {
let tempArry = htmlArray; let tempArry = htmlArray;
let { dayRate } = this.state.form; let { dayRate } = this.state.form;
let { form } = this.state; let { form } = this.state;
console.log(moment(form.dayTime, 'HH:mm'));
//value={moment(form.dayTime).format('HH:mm')}
if (dayRate === 0) { if (dayRate === 0) {
tempArry.push( tempArry.push(
<FormItem label={<span>时间为</span>} field="dayTime" {...formItemLayout}> <FormItem label={<span>时间为</span>} field="dayTime" {...formItemLayout}>
<Input className="plan_info_input" type="time" required value={form.dayTime} onChange={e => this.onTimeChange('dayTime', e)} /> <TimePicker value={moment(form.dayTime, 'HH:mm')} format={format} className="plan_info_input" required onChange={e => this.onTimeChange('dayTime', e)} />
</FormItem> </FormItem>
); );
} else if (dayRate === 1) { } else if (dayRate === 1) {
...@@ -258,10 +261,10 @@ class PlanInput extends Component { ...@@ -258,10 +261,10 @@ class PlanInput extends Component {
/> />
</FormItem> </FormItem>
<FormItem label={<span>开始时间</span>} field="dayBegin" {...formItemLayout}> <FormItem label={<span>开始时间</span>} field="dayBegin" {...formItemLayout}>
<Input className="plan_info_input" type="time" required value={form.dayBegin} onChange={e => this.onTimeChange('dayBegin', e)} /> <TimePicker value={moment(form.dayBegin, 'HH:mm')} format={format} className="plan_info_input" required onChange={e => this.onTimeChange('dayBegin', e)} />
</FormItem> </FormItem>
<FormItem label={<span>结束时间</span>} field="dayEnd" {...formItemLayout}> <FormItem label={<span>结束时间</span>} field="dayEnd" {...formItemLayout}>
<Input className="plan_info_input" value={form.dayEnd} required type="time" onChange={e => this.onTimeChange('dayEnd', e)} /> <TimePicker value={moment(form.dayEnd, 'HH:mm')} format={format} className="plan_info_input" required onChange={e => this.onTimeChange('dayEnd', e)} />
</FormItem> </FormItem>
</div> </div>
); );
...@@ -637,6 +640,7 @@ class PlanInput extends Component { ...@@ -637,6 +640,7 @@ class PlanInput extends Component {
onChange={e => this.onDateChange('planEnd', e)} onChange={e => this.onDateChange('planEnd', e)}
/> : <DatePicker /> : <DatePicker
format="YYYY-MM-DD" format="YYYY-MM-DD"
value={form.planEnd}
className="plan_task_gen_select" className="plan_task_gen_select"
onChange={e => this.onDateChange('planEnd', e)} onChange={e => this.onDateChange('planEnd', e)}
/>; />;
...@@ -648,6 +652,7 @@ class PlanInput extends Component { ...@@ -648,6 +652,7 @@ class PlanInput extends Component {
onChange={e => this.onWeekDateChange('planEnd', e)} onChange={e => this.onWeekDateChange('planEnd', e)}
/> : <WeekPicker /> : <WeekPicker
className="plan_task_gen_select" className="plan_task_gen_select"
value={form.planEnd}
onChange={e => this.onWeekDateChange('planEnd', e)} onChange={e => this.onWeekDateChange('planEnd', e)}
/>; />;
case '3': case '3':
...@@ -660,6 +665,7 @@ class PlanInput extends Component { ...@@ -660,6 +665,7 @@ class PlanInput extends Component {
/> : <MonthPicker /> : <MonthPicker
className="plan_task_gen_select" className="plan_task_gen_select"
format="YYYY-MM" format="YYYY-MM"
value={form.planEnd}
onChange={e => this.onMonthDateChange('planEnd', e)} onChange={e => this.onMonthDateChange('planEnd', e)}
/>; />;
case '4': case '4':
...@@ -670,6 +676,7 @@ class PlanInput extends Component { ...@@ -670,6 +676,7 @@ class PlanInput extends Component {
onChange={e => this.onYearDateChange('planEnd', e)} onChange={e => this.onYearDateChange('planEnd', e)}
/> : <YearPicker /> : <YearPicker
isEmpty isEmpty
value={form.planEnd}
onChange={e => this.onYearDateChange('planEnd', e)} onChange={e => this.onYearDateChange('planEnd', e)}
/>; />;
} }
......
...@@ -52,7 +52,7 @@ class PointBasicInfo extends Component { ...@@ -52,7 +52,7 @@ class PointBasicInfo extends Component {
chargePersonId: '', chargePersonId: '',
remark: '', remark: '',
riskSourceId: 0 riskSourceId: 0
}, },
riskLevelList: [], riskLevelList: [],
inputItemTableData: [], inputItemTableData: [],
...@@ -109,12 +109,12 @@ class PointBasicInfo extends Component { ...@@ -109,12 +109,12 @@ class PointBasicInfo extends Component {
} }
onPointInfoInit(pointId) { onPointInfoInit(pointId) {
// 根据ID查询点信息 // 根据ID查询点信息
pointId && pointId &&
queryPointByIdAction(pointId).then(data => { queryPointByIdAction(pointId).then(data => {
let deptId = data.chargeDeptId; let deptId = data.chargeDeptId;
deptId && this.queryUserByDept(deptId); deptId && this.queryUserByDept(deptId);
this.setState({ this.setState({
form: data form: data
...@@ -206,34 +206,31 @@ class PointBasicInfo extends Component { ...@@ -206,34 +206,31 @@ class PointBasicInfo extends Component {
} }
onSelectChange = (key, value) => { onSelectChange = (key, value) => {
let { form } = this.state; let { form } = this.state;
if('chargePersonId' == key){ if ('chargePersonId' == key) {
let str; let str;
for(var i=0;i<value.length;i++){ for (var i = 0; i < value.length; i++) {
if(i === 0 ){ if (i === 0) {
str=value[i]; str = value[i];
}else{ } else {
str=str+','+value[i]; str = str + ',' + value[i];
} }
} }
form[key] = str; form[key] = str;
console.log('chargePersonId',str); console.log('chargePersonId', str);
}else{ } else {
form[key] = value; form[key] = value;
} }
console.log('chargePersonId',value); console.log('chargePersonId', value);
this.setState(form); this.setState(form);
}; };
onTreeExpand = expandedKeys => { onTreeExpand = expandedKeys => {
console.log('onExpand', arguments);
// if not set autoExpandParent to false, if children expanded, parent can not collapse.
// or, you can remove all expanded children keys.
this.setState({ this.setState({
treeConfig: { treeConfig: {
expandedKeys, expandedKeys,
...@@ -345,8 +342,8 @@ class PointBasicInfo extends Component { ...@@ -345,8 +342,8 @@ class PointBasicInfo extends Component {
queryUserByDept = deptId => { queryUserByDept = deptId => {
queryUserByDeptIdAction(deptId).then(data => { queryUserByDeptIdAction(deptId).then(data => {
console.log('pointInfo queryUserByDept',data); console.log('pointInfo queryUserByDept', data);
this.setState({ userData: data }); this.setState({ userData: data });
}); });
}; };
...@@ -400,28 +397,28 @@ class PointBasicInfo extends Component { ...@@ -400,28 +397,28 @@ class PointBasicInfo extends Component {
/** /**
* 查询风险等级 * 查询风险等级
*/ */
querryRiskLevel=()=>{ querryRiskLevel = () => {
gerRiskLevel().then(res=>{ gerRiskLevel().then(res => {
console.log('pointBasicInfos',res); console.log('pointBasicInfos', res);
const riskLevelList=res; const riskLevelList = res;
this.setState({riskLevelList}); this.setState({ riskLevelList });
}) })
} }
/** /**
* 渲染风险等级 * 渲染风险等级
*/ */
rendRiskLevel = () => { rendRiskLevel = () => {
const {riskLevelList}=this.state; const { riskLevelList } = this.state;
console.log('pointBasicInfos pointBasicInfos',riskLevelList); console.log('pointBasicInfos pointBasicInfos', riskLevelList);
if (!utils.isEmpty(riskLevelList) && utils.isArray(riskLevelList)) { if (!utils.isEmpty(riskLevelList) && utils.isArray(riskLevelList)) {
return (<div> return (<div>
{ {
riskLevelList.map(e => { riskLevelList.map(e => {
return <Option key={e.orderNum} value={e.orderNum}>{e.dictDataValue}</Option> return <Option key={e.orderNum} value={e.orderNum}>{e.dictDataValue}</Option>
}) })
} }
</div>) </div>)
} }
...@@ -429,26 +426,26 @@ class PointBasicInfo extends Component { ...@@ -429,26 +426,26 @@ class PointBasicInfo extends Component {
/** /**
* 渲染默认责任人 * 渲染默认责任人
*/ */
renderCurrentPersonData=(data)=>{ renderCurrentPersonData = (data) => {
console.log('arrayData1',data) console.log('arrayData1', data)
if(!utils.isEmpty(data) ){ if (!utils.isEmpty(data)) {
let array=[]; let array = [];
let arrayData=data.split(','); let arrayData = data.split(',');
arrayData.map(e=>{ arrayData.map(e => {
array.push(e) array.push(e)
}) })
console.log('arrayData',arrayData) console.log('arrayData', arrayData)
console.log('array',array) console.log('array', array)
return array; return array;
}else{ } else {
return []; return [];
} }
} }
render() { render() {
const { form, rules, catalogData, deptData, userData, riskLevelList,currentPersonData } = this.state; const { form, rules, catalogData, deptData, userData, riskLevelList, currentPersonData } = this.state;
console.log('form.chargePersonId',form.chargePersonId); console.log('form.chargePersonId', form.chargePersonId);
console.log('form.userData',userData); console.log('form.userData', userData);
const formItemLayout = { const formItemLayout = {
labelCol: { labelCol: {
xs: { span: 24 }, xs: { span: 24 },
...@@ -560,11 +557,11 @@ class PointBasicInfo extends Component { ...@@ -560,11 +557,11 @@ class PointBasicInfo extends Component {
<Option value="3">3级</Option> <Option value="3">3级</Option>
<Option value="4">4级</Option> */} <Option value="4">4级</Option> */}
{ {
(!utils.isEmpty(riskLevelList) && utils.isArray(riskLevelList)) ? riskLevelList.map(e => ( (!utils.isEmpty(riskLevelList) && utils.isArray(riskLevelList)) ? riskLevelList.map(e => (
<Option key={e.dictDataKey} value={e.dictDataKey}>{e.dictDataValue}</Option> <Option key={e.dictDataKey} value={e.dictDataKey}>{e.dictDataValue}</Option>
)) : null )) : null
} }
</Select> </Select>
</FormItem> </FormItem>
<FormItem label={<span>归属区域/部门</span>} field="chargeDeptId" {...formItemLayout}> <FormItem label={<span>归属区域/部门</span>} field="chargeDeptId" {...formItemLayout}>
...@@ -586,16 +583,16 @@ class PointBasicInfo extends Component { ...@@ -586,16 +583,16 @@ class PointBasicInfo extends Component {
value={form.chargePersonId} value={form.chargePersonId}
onChange={e => this.onSelectChange('chargePersonId', e)} onChange={e => this.onSelectChange('chargePersonId', e)}
/> */} /> */}
<MultiSelect <MultiSelect
className="point-info-input" className="point-info-input"
//defaultValues={this.renderCurrentPersonData(form.chargePersonId)} //defaultValues={this.renderCurrentPersonData(form.chargePersonId)}
//defaultValues={["1569413","1533588","1559667"]} //defaultValues={["1569413","1533588","1559667"]}
data={userData} data={userData}
renderOption={item => <Option key={item.id} value={item.id}>{item.name }</Option>} renderOption={item => <Option key={item.id} value={item.id}>{item.name}</Option>}
onChange={e => this.onSelectChange('chargePersonId', e)} onChange={e => this.onSelectChange('chargePersonId', e)}
values={this.renderCurrentPersonData(form.chargePersonId)} values={this.renderCurrentPersonData(form.chargePersonId)}
/> />
</FormItem> </FormItem>
<FormItem label={<span>所属分类目录</span>} field="catalogId" {...formItemLayout}> <FormItem label={<span>所属分类目录</span>} field="catalogId" {...formItemLayout}>
......
This diff is collapsed.
...@@ -55,7 +55,6 @@ class NewRoute extends Component { ...@@ -55,7 +55,6 @@ class NewRoute extends Component {
}; };
onDeptChange = (key, value) => { onDeptChange = (key, value) => {
debugger
const { form } = this.state; const { form } = this.state;
form[key] = value; form[key] = value;
this.queryUserByDept(value); this.queryUserByDept(value);
...@@ -85,14 +84,14 @@ class NewRoute extends Component { ...@@ -85,14 +84,14 @@ class NewRoute extends Component {
}; };
queryDeptByOrgCode = () => { queryDeptByOrgCode = () => {
queryDeptByOrgCodeAction().then(data => { queryDeptByOrgCodeAction().then(data => {
this.setState({ deptData: data }); this.setState({ deptData: data });
}); });
}; };
queryUserByDept = deptId => { queryUserByDept = deptId => {
queryUserByDeptIdAction(deptId).then(data => { queryUserByDeptIdAction(deptId).then(data => {
this.setState({ userData: data }); this.setState({ userData: data });
}); });
......
...@@ -35,9 +35,8 @@ class RouteInfo extends Component { ...@@ -35,9 +35,8 @@ class RouteInfo extends Component {
forword && this.setState({ forword }); forword && this.setState({ forword });
} }
onClickBootBar = (type) => { onClickBootBar = (type) => {
debugger
if (type === '1') { if (type === '1') {
browserHistory.goBack(); browserHistory.goBack();
} else if (type === '2') { } else if (type === '2') {
...@@ -45,7 +44,7 @@ class RouteInfo extends Component { ...@@ -45,7 +44,7 @@ class RouteInfo extends Component {
} }
}; };
setRoutePoint =(dataList)=>{ setRoutePoint =(dataList)=>{
this.setState({ dataList }); this.setState({ dataList });
......
...@@ -32,9 +32,8 @@ class RouteInfoxq extends Component { ...@@ -32,9 +32,8 @@ class RouteInfoxq extends Component {
forword && this.setState({ forword }); forword && this.setState({ forword });
} }
onClickBootBar = (type) => { onClickBootBar = (type) => {
debugger
if (type === '1') { if (type === '1') {
browserHistory.goBack(); browserHistory.goBack();
} else if (type === '2') { } else if (type === '2') {
...@@ -42,7 +41,7 @@ class RouteInfoxq extends Component { ...@@ -42,7 +41,7 @@ class RouteInfoxq extends Component {
} }
}; };
setRoutePoint =(dataList)=>{ setRoutePoint =(dataList)=>{
this.setState({ dataList }); this.setState({ dataList });
...@@ -97,7 +96,7 @@ class RouteInfoxq extends Component { ...@@ -97,7 +96,7 @@ class RouteInfoxq extends Component {
return ( return (
<div className='route-info'> <div className='route-info'>
{/* <BootBar dropnavs={dropnavs} callBack={this.onClickBootBar} /> */} {/* <BootBar dropnavs={dropnavs} callBack={this.onClickBootBar} /> */}
<RouteMainxq routeId={routeId} ref={component => this.routeMain = component} /> <RouteMainxq routeId={routeId} ref={component => this.routeMain = component} />
<RoutePointTablexq routeId={routeId} forword={forword} ref={component =>this.routePoint = component} /> <RoutePointTablexq routeId={routeId} forword={forword} ref={component =>this.routePoint = component} />
</div> </div>
......
...@@ -9,7 +9,7 @@ import { ...@@ -9,7 +9,7 @@ import {
} from '../../../services/checkService'; } from '../../../services/checkService';
import { AmosAlert } from 'amos-framework'; import { AmosAlert } from 'amos-framework';
import { Store } from 'amos-tool'; import { Store } from 'amos-tool';
const lsTool = Store.lsTool; const lsTool = Store.lsTool;
...@@ -64,7 +64,7 @@ class RouteMain extends Component { ...@@ -64,7 +64,7 @@ class RouteMain extends Component {
onInit = id => { onInit = id => {
queryRouteDetailAction(id).then(data => { queryRouteDetailAction(id).then(data => {
let deptId = data.deptId; let deptId = data.deptId;
deptId && this.queryUserByDept(deptId); deptId && this.queryUserByDept(deptId);
this.setState({ form: data }); this.setState({ form: data });
...@@ -78,36 +78,35 @@ class RouteMain extends Component { ...@@ -78,36 +78,35 @@ class RouteMain extends Component {
}; };
onDeptChange = (key, value) => { onDeptChange = (key, value) => {
let keyd= lsTool.read('departmentdate'); let keyd = lsTool.read('departmentdate');
const { form } = this.state; const { form } = this.state;
debugger // if(keyd!='null'){
// if(keyd!='null'){ // if(value!=keyd){
// if(value!=keyd){
// AmosAlert.error('提示', '只能选择本部门');
// AmosAlert.error('提示', '只能选择本部门'); // form[key] = '';
// form[key] = ''; // this.setState({ userData: [] });
// this.setState({ userData: [] }); // this.setState({ form });
// this.setState({ form });
// }else{
// }else{ // form[key] = value;
// form[key] = value; // this.queryUserByDept(value);
// this.queryUserByDept(value); // this.setState({ form });
// this.setState({ form }); // }
// }
// }else{
// }else{
form[key] = value; form[key] = value;
this.queryUserByDept(value); this.queryUserByDept(value);
this.setState({ form }); this.setState({ form });
//} //}
}; };
handleExecutorsChange = (userId, user) => { handleExecutorsChange = (userId, user) => {
...@@ -149,7 +148,7 @@ debugger ...@@ -149,7 +148,7 @@ debugger
<Form model={form} rules={rules} ref={component => this.form = component}> <Form model={form} rules={rules} ref={component => this.form = component}>
<div className="input-item-div-left"> <div className="input-item-div-left">
<FormItem label={<span>路线名称</span>} field="name" {...formItemLayout}> <FormItem label={<span>路线名称</span>} field="name" {...formItemLayout}>
<Input className="input-item-input" value={form.name} maxLength = "50" onChange={e => this.onChange('name', e.target.value)} /> <Input className="input-item-input" value={form.name} maxLength="50" onChange={e => this.onChange('name', e.target.value)} />
</FormItem> </FormItem>
<FormItem label={<span>责任人</span>} field="boss" {...formItemLayout}> <FormItem label={<span>责任人</span>} field="boss" {...formItemLayout}>
<Select <Select
...@@ -169,7 +168,7 @@ debugger ...@@ -169,7 +168,7 @@ debugger
<FormItem label={<span>责任部门</span>} field="deptId" {...formItemLayout}> <FormItem label={<span>责任部门</span>} field="deptId" {...formItemLayout}>
<Select <Select
className="input-item-input" className="input-item-input"
searchable searchable
data={deptData ? deptData : []} data={deptData ? deptData : []}
defaultValue={<Option value=''>请选择</Option>} defaultValue={<Option value=''>请选择</Option>}
renderOption={item => <Option value={item.sequenceNbr}>{item.departmentName}</Option>} renderOption={item => <Option value={item.sequenceNbr}>{item.departmentName}</Option>}
......
...@@ -87,7 +87,6 @@ class TableContent extends Component { ...@@ -87,7 +87,6 @@ class TableContent extends Component {
return col; return col;
}); });
const columns = [titleCol, ...cols]; const columns = [titleCol, ...cols];
console.log(columns, JSON.stringify(columns));
return columns; return columns;
} }
......
...@@ -9,7 +9,7 @@ import Table from './Table'; ...@@ -9,7 +9,7 @@ import Table from './Table';
const ten = 10; const ten = 10;
const mouth = 12; const mouth = 12;
/** /**
* 巡检完成情况月报表 * 年度巡检情况报表
* *
* @class CompletionSituation * @class CompletionSituation
* @extends {Component} * @extends {Component}
......
...@@ -16,9 +16,10 @@ class Statistics extends Component { ...@@ -16,9 +16,10 @@ class Statistics extends Component {
{ key: '2', name: '任务安排统计分析', href: pathMapping.taskArrangement }, { key: '2', name: '任务安排统计分析', href: pathMapping.taskArrangement },
// { key: '3', name: '检查项目查询', href: '' }, // { key: '3', name: '检查项目查询', href: '' },
// { key: '4', name: '检查项目统计分析', href: '' }, // { key: '4', name: '检查项目统计分析', href: '' },
{ key: '5', name: '巡检完成情况月报表', href: pathMapping.completionsituation }, { key: '5', name: '年度巡检情况报表', href: pathMapping.completionsituation },
// { key: '6', name: '巡检评分情况月报表', href: '' }, // { key: '6', name: '巡检评分情况月报表', href: '' },
{ key: '7', name: '人员综合统计分析', href: pathMapping.personStatistics } { key: '7', name: '人员综合统计分析', href: pathMapping.personStatistics },
{ key: '8', name: '月度巡检情况报表', href: pathMapping.monthSituation }
// { key: '8', name: '计划执行情况查询', href: '' }, // { key: '8', name: '计划执行情况查询', href: '' },
// { key: '9', name: '数字检查项日报表', href: '' }, // { key: '9', name: '数字检查项日报表', href: '' },
// { key: '10', name: '数字检查项统计分析', href: '' } // { key: '10', name: '数字检查项统计分析', href: '' }
......
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { DatePicker } from 'amos-antd';
import moment from 'moment';
import { Form, Button, Select, Input } from 'amos-framework';
import {
planListAction,
lineListAction,
executeStateListAction
} from './../../../../services/statisticsService';
const { MonthPicker } = DatePicker;
const FormItem = Form.Item;
const Option = Select.Option;
const FORMAT = 'YYYY-MM-DD HH:mm:ss';
/**
* 巡检情况统计分析-查询
*
* @class NewsSearch
* @extends {Component}
*/
class NewsSearch extends Component {
constructor(props) {
super(props);
this.state = {
form: {
startTime: {
name: 'startTime',
value: moment()
.startOf('month')
.format(FORMAT)
},
queryMonth: {
name: 'queryMonth',
value: moment()
.endOf('month')
.format('YYYY-MM')
},
endTime: {
name: 'endTime',
value: moment()
.endOf('month')
.format(FORMAT)
},
statisticsTyle: { name: 'statisticsTyle', value: '2' }
},
caliberList: [
{ name: '巡检计划', value: '0' },
{ name: '巡检点', value: '2' }
]
};
}
componentWillMount() {
this.handleSubmit();
}
onChange = (key, e) => {
let { form } = this.state;
form[key].value = e.target.value;
this.setState(form);
}
onDateChange = (key, date) => {
const { form } = this.state;
form[key].value = moment(date).format(FORMAT);
if (key === 'queryMonth'){
form.startTime.value = moment(date).startOf('month').format(FORMAT);
form.endTime.value = moment(date).endOf('month').format(FORMAT);
}
this.setState({ form });
}
onSelectChange = (key, value) => {
let { form } = this.state;
form[key].value = value;
this.setState(form);
}
handleSubmit = () => {
let { form } = this.state;
const obj = {};
Object.keys(form).map(e => {
obj[e] = form[e].value;
});
this.props.search(obj);
}
onResetFields = () => {
let { form } = this.state;
form.queryMonth.value = moment().format(FORMAT);
form.startTime.value = moment().startOf('month').format(FORMAT);
form.endTime.value = moment().endOf('month').format(FORMAT);
const obj = {};
Object.keys(form).map(e => {
obj[e] = form[e].value;
});
this.props.search(obj);
}
render() {
const { form, caliberList } = this.state;
const formItemLayout = {
labelCol: {
xs: { span: 24 },
sm: { span: 4 },
className: 'colspanlab'
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 14 },
className: 'colspan'
}
};
return (
<Form style={{ padding: '30px 0 0 0' }} className="basic-demo" model={form}>
<FormItem label={<span>统计口径</span>} field="statisticsTyle" {...formItemLayout}>
<Select
data={caliberList}
renderOption={item => <Option value={item.value}>{item.name}</Option>}
value={form.statisticsTyle.value}
className="search_Input"
onChange={e => this.onSelectChange('statisticsTyle', e)}
/>
</FormItem>
<FormItem label={<span>月份</span>} field="queryMonth" {...formItemLayout}>
<MonthPicker
className="search_Input"
value={moment(form.queryMonth.value)}
allowClear={false}
format="YYYY-MM"
onChange={e => this.onDateChange('queryMonth', e)}
/>
</FormItem>
<FormItem label={<span>开始日期</span>} field="startTime" {...formItemLayout}>
<DatePicker
className="search_Input"
value={moment(form.startTime.value)}
allowClear={false}
format={FORMAT}
onChange={e => this.onDateChange('startTime', e)}
/>
</FormItem>
<FormItem label={<span>结束日期</span>} field="endTime" {...formItemLayout}>
<DatePicker
className="search_Input"
value={moment(form.endTime.value)}
allowClear={false}
format={FORMAT}
onChange={e => this.onDateChange('endTime', e)}
/>
</FormItem>
<FormItem className="search-btn">
<Button icon="search" onClick={this.handleSubmit}>查询</Button>
<Button onClick={this.onResetFields}>重置</Button>
</FormItem>
</Form>
);
}
}
NewsSearch.propTypes = {
search: PropTypes.func
};
export default NewsSearch;
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import formatUrl from 'amos-processor/lib/utils/urlFormat';
import { Table } from 'amos-antd';
import { exportExcel } from 'UTILS/tools';
import { patrolUrls } from 'CONSTS/urlConsts';
import ToolBar from './../../../component/toolbar';
import './../../../../styles/view/patrol/statistics.scss';
import { utils } from 'amos-tool';
import moment from 'moment';
const dropnavs = [
{
key: '1',
text: '导出Excel',
icon: 'user',
href: 'jacascript::void(0)'
}
];
/**
* 月度巡检情况报表-表格
*
* @class TableContent
* @extends {Component}
*/
class MonthSituationTable extends Component {
constructor(props) {
super(props);
this.state = {
};
}
onExportExcel = () => {
const { searchParam } = this.props;
const millisecond = moment().format('YYYYMMDDHHmmss');
exportExcel({ url: patrolUrls.monthSituationExportUrl, method: 'post', body: searchParam }, '月度巡检情况报表' + millisecond);
}
onClickBootBar = type => {
if (type === '1') {
this.onExportExcel();
}
};
renderTitle = (titles) => {
let titleCol = {
title: '巡检日期',
dataIndex: '0',
key: 'month',
className: 'uant-table-thead',
width: 25,
render: (text, record)=><strong>{record.month}</strong>
};
let index = 0;
let cols = titles && titles.map( e => {
let children = new Array();
index = index + 1;
children.push({
title: '计划巡检次数',
dataIndex: index,
key: `planTaskCount${e.key}`,
width: 20,
render: (text, record) => {
let num = utils.isEmpty(record[`planTaskCount${e.key}`]) ? 0 : record[`planTaskCount${e.key}`];
return <strong>{num}</strong>;
}
});
index = index + 1;
children.push({
title: '实际巡检次数',
dataIndex: index,
key: `checkCount${e.key}`,
width: 20,
render: (text, record) => {
let num = utils.isEmpty(record[`checkCount${e.key}`]) ? 0 : record[`checkCount${e.key}`];
return <strong>{num}</strong>;
}
});
index = index + 1;
children.push({
title: '漏检次数',
dataIndex: index,
key: `missed${e.key}`,
width: 20,
render: (text, record) => {
let num = utils.isEmpty(record[`missed${e.key}`]) ? 0 : record[`missed${e.key}`];
return <strong>{num}</strong>;
}
});
index = index + 1;
children.push({
title: '异常次数',
dataIndex: index,
key: `faild${e.key}`,
width: 20,
render: (text, record) => {
let num = utils.isEmpty(record[`faild${e.key}`]) ? 0 : record[`faild${e.key}`];
return <strong>{num}</strong>;
}
});
let col = {
title: `${e.label}`,
children
};
return col;
});
const columns = [titleCol, ...cols];
return columns;
}
render() {
const { data, titles } = this.props;
const _pagination_ = false;
return (
<div className="patrol-page-table">
<ToolBar dropnavs={dropnavs} callBack={this.onClickBootBar} />
<div className="completion-situation-table">
<Table
rowKey={(record, index) => record.index}
columns={this.renderTitle(titles)}
pagination={_pagination_}
bordered
dataSource={data}
scroll={{ x: true, y: 500 }}
/>
</div>
</div>
);
}
}
MonthSituationTable.propTypes = {
searchParam: PropTypes.array,
data: PropTypes.any,
titles: PropTypes.array
};
export default MonthSituationTable;
import React, { Component } from 'react';
import SplitterLayout from './../../../component/SplitLayout';
import {
monthSituationAction
} from './../../../../services/statisticsService';
import Search from './Search';
import Table from './Table';
/**
* 巡检情况统计分析
*
* @class InspectionSituation
* @extends {Component}
*/
class MonthSituation extends Component {
constructor(props) {
super(props);
this.state = {
tableData: [],
searchParam: [],
titles: []
};
}
onQueryTableData = () => {
const { searchParam } = this.state;
monthSituationAction(searchParam).then(d => {
this.setState({ tableData: d.content, titles: d.titles });
});
}
onSearchDataSyn = (searchParam) => {
this.setState({ searchParam }, this.onQueryTableData);
};
render() {
const { tableData, searchParam, titles } = this.state;
return (
<div className="patrol-page-content">
<SplitterLayout>
<Search search={this.onSearchDataSyn} />
</SplitterLayout>
<Table data={tableData} searchParam={searchParam} titles={titles} />
</div>
);
}
}
export default MonthSituation;
import React, { Component } from 'react'; import React, { Component } from 'react';
import moment from 'moment'; import moment from 'moment';
import { Form, Input, AmosAlert, Button, Checkbox, InputNumber , Select} from 'amos-framework'; import { Form, Input, AmosAlert, Button, Checkbox, InputNumber, Select } from 'amos-framework';
import { TreeSelect, DatePicker } from 'amos-antd'; import { TreeSelect, DatePicker } from 'amos-antd';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { browserHistory } from 'amos-react-router'; import { browserHistory } from 'amos-react-router';
...@@ -96,15 +96,15 @@ class NewTask extends Component { ...@@ -96,15 +96,15 @@ class NewTask extends Component {
text ? ( text ? (
text text
) : ( ) : (
'否' '否'
) )
) : ( ) : (
<Checkbox <Checkbox
onChange={e => this.onChangePicCheckBox(record, e.target.checked)} onChange={e => this.onChangePicCheckBox(record, e.target.checked)}
checked={text === undefined || text === '否' ? false : true} checked={text === undefined || text === '否' ? false : true}
defaultChecked={text === undefined || text === '否' ? false : true} defaultChecked={text === undefined || text === '否' ? false : true}
/> />
); );
} }
} }
]; ];
...@@ -112,7 +112,7 @@ class NewTask extends Component { ...@@ -112,7 +112,7 @@ class NewTask extends Component {
loadexecutor = () => { loadexecutor = () => {
queryDeptUserTree().then(data => { queryDeptUserTree().then(data => {
let deptPersons = data.filter(item => item.children !== null); let deptPersons = data.filter(item => item.children !== null);
deptPersons.map(item => { deptPersons.map(item => {
if (item.children.length > 0) { if (item.children.length > 0) {
...@@ -134,10 +134,10 @@ class NewTask extends Component { ...@@ -134,10 +134,10 @@ class NewTask extends Component {
onSelectChange = (value, item) => { onSelectChange = (value, item) => {
const { form } = this.state; const { form } = this.state;
form.executor =item.name; form.executor = item.name;
form.executorId = parseInt(value); form.executorId = parseInt(value);
this.setState({ form }); this.setState({ form });
} }
...@@ -180,12 +180,12 @@ class NewTask extends Component { ...@@ -180,12 +180,12 @@ class NewTask extends Component {
// obj.name = item.name; // obj.name = item.name;
// return obj; // return obj;
// }); // });
taskInfo.finishTime = moment(taskInfo.finishTime).format('YYYY-MM-DD HH:mm:ss') ; taskInfo.finishTime = moment(taskInfo.finishTime).format('YYYY-MM-DD HH:mm:ss');
if (taskInfo.warnTime !== ''){ if (taskInfo.warnTime !== '') {
taskInfo.warnTime = moment(taskInfo.warnTime).format('YYYY-MM-DD HH:mm:ss') ; taskInfo.warnTime = moment(taskInfo.warnTime).format('YYYY-MM-DD HH:mm:ss');
} }
let pic = new Object(); let pic = new Object();
let config =new Array(); let config = new Array();
pic.start = form.shotMinNumber; pic.start = form.shotMinNumber;
pic.end = form.shotMaxNumber; pic.end = form.shotMaxNumber;
if (form.isPicture === true) { if (form.isPicture === true) {
...@@ -193,27 +193,26 @@ class NewTask extends Component { ...@@ -193,27 +193,26 @@ class NewTask extends Component {
} else { } else {
pic.isMust = '否'; pic.isMust = '否';
} }
// pic.isMust = form.isPicture; // pic.isMust = form.isPicture;
config.push(pic); config.push(pic);
let requestBody = new Object(); let requestBody = new Object();
requestBody.taskInfo = taskInfo; requestBody.taskInfo = taskInfo;
requestBody.taskInfo.config = config; requestBody.taskInfo.config = config;
// JSON.stringify(config); // JSON.stringify(config);
saveTaskAction(requestBody).then( saveTaskAction(requestBody).then(
data => { data => {
if(data===null){ if (data === null) {
AmosAlert.success('提示', '保存成功'); AmosAlert.success('提示', '保存成功');
}else{ } else {
if(data.result==="FAILURE"){ if (data.result === "FAILURE") {
AmosAlert.error('提示', data.message ); AmosAlert.error('提示', data.message);
} else { } else {
AmosAlert.success('提示', '保存成功'); AmosAlert.success('提示', '保存成功');
} }
} }
debugger
browserHistory.goBack('/main/patrol/task'); browserHistory.goBack('/main/patrol/task');
}, },
err => { err => {
...@@ -263,14 +262,14 @@ class NewTask extends Component { ...@@ -263,14 +262,14 @@ class NewTask extends Component {
<div className="input_item_div"> <div className="input_item_div">
<Form model={form} rules={rules} ref={component => this.form = component}> <Form model={form} rules={rules} ref={component => this.form = component}>
<FormItem label={<span>任务标题</span>} field="title" {...formItemLayout}> <FormItem label={<span>任务标题</span>} field="title" {...formItemLayout}>
<Input className="input_item_Input" value={form.title} maxLength = "50" placeholder="请输入任务标题" onChange={e => this.onChange('title', e.target.value)} /> <Input className="input_item_Input" value={form.title} maxLength="50" placeholder="请输入任务标题" onChange={e => this.onChange('title', e.target.value)} />
</FormItem> </FormItem>
<FormItem label={<span>说明</span>} field="remark" {...formItemLayout}> <FormItem label={<span>说明</span>} field="remark" {...formItemLayout}>
<TextArea className="input_item_Input" rows={6} disableResize onChange={e => this.onChange('remark', e.target.value)} /> <TextArea className="input_item_Input" rows={6} disableResize onChange={e => this.onChange('remark', e.target.value)} />
</FormItem> </FormItem>
<FormItem label={<span>执行人</span>} field="executor" {...formItemLayout}> <FormItem label={<span>执行人</span>} field="executor" {...formItemLayout}>
{/* <Select data={executors} {/* <Select data={executors}
renderOption={item => <Option value={item.id}>{item.name}</Option>} renderOption={item => <Option value={item.id}>{item.name}</Option>}
defaultOption={<Option>执行人选择</Option>} defaultOption={<Option>执行人选择</Option>}
onChange={this.onSelectChange}/> */} onChange={this.onSelectChange}/> */}
......
...@@ -4,7 +4,7 @@ import PropTypes from 'prop-types'; ...@@ -4,7 +4,7 @@ import PropTypes from 'prop-types';
import { browserHistory } from 'amos-react-router'; import { browserHistory } from 'amos-react-router';
import { Select, Form, Button } from 'amos-framework'; import { Select, Form, Button } from 'amos-framework';
import { Store } from 'amos-tool'; import { Store } from 'amos-tool';
import { getCurrentUser, regionSelectAction} from './../../services/securityService'; import { getCurrentUser, regionSelectAction } from './../../services/securityService';
const lsTool = Store.lsTool; const lsTool = Store.lsTool;
const FormItem = Form.Item; const FormItem = Form.Item;
...@@ -32,27 +32,22 @@ class RegionSelect extends Component { ...@@ -32,27 +32,22 @@ class RegionSelect extends Component {
onClick = () => { onClick = () => {
const { reginParams } = this.state; const { reginParams } = this.state;
lsTool.remove('selectedRole'); lsTool.remove('selectedRole');
const { sequenceNbr } = reginParams.role || {}; const { sequenceNbr } = reginParams.role || {};
lsTool.write('selectedRole', sequenceNbr); lsTool.write('selectedRole', sequenceNbr);
lsTool.write('curCompanyName', reginParams.company.companyName); lsTool.write('curCompanyName', reginParams.company.companyName);
debugger
if ('department' in reginParams && reginParams.department != null) {
if('department' in reginParams&&reginParams.department!=null ){ lsTool.write('departmentdate', reginParams.department.sequenceNbr);
lsTool.write('departmentdate', reginParams.department.sequenceNbr); lsTool.write('departmentname', reginParams.department.departmentName);
lsTool.write('departmentname', reginParams.department.departmentName); } else {
}else{ lsTool.write('departmentdate', null);
lsTool.write('departmentdate', null); lsTool.write('departmentname', null);
lsTool.write('departmentname', null);
} }
regionSelectAction(reginParams).then( regionSelectAction(reginParams).then(
data => { data => {
browserHistory.push('/main/patrol'); browserHistory.push('/main/patrol');
} }
); );
} }
...@@ -64,25 +59,18 @@ class RegionSelect extends Component { ...@@ -64,25 +59,18 @@ class RegionSelect extends Component {
let { departments = [], roles = [] } = this.state; let { departments = [], roles = [] } = this.state;
if (key === 'company') { if (key === 'company') {
reginParams.company = companys.find(item => item.sequenceNbr === value); reginParams.company = companys.find(item => item.sequenceNbr === value);
departments = companyDepartments[value];
departments = companyDepartments[value];
roles = orgRoles[value]; roles = orgRoles[value];
} }
if (key === 'department') { if (key === 'department') {
debugger if (value) {
if(value){ reginParams.department = departments.find(item =>
reginParams.department = departments.find(item => item != null && item.sequenceNbr === value
item!=null&&item.sequenceNbr === value );
);
roles = orgRoles[value]; roles = orgRoles[value];
}else{ } else {
roles = orgRoles[reginParams.company.sequenceNbr]; roles = orgRoles[reginParams.company.sequenceNbr];
} }
} }
if (key === 'role') { if (key === 'role') {
reginParams.role = roles.find(item => item.sequenceNbr === value); reginParams.role = roles.find(item => item.sequenceNbr === value);
...@@ -90,23 +78,23 @@ class RegionSelect extends Component { ...@@ -90,23 +78,23 @@ class RegionSelect extends Component {
this.setState({ reginParams, departments, roles }); this.setState({ reginParams, departments, roles });
} }
getCurrentUser =()=>{ getCurrentUser = () => {
getCurrentUser().then(data => { getCurrentUser().then(data => {
const { reginParams } = this.state; const { reginParams } = this.state;
const { companys = [], companyDepartments = {}, orgRoles = {} } = data; const { companys = [], companyDepartments = {}, orgRoles = {} } = data;
if (companys.length === 1) { if (companys.length === 1) {
let company = companys[0]; let company = companys[0];
let departments = companyDepartments[company.sequenceNbr] || []; let departments = companyDepartments[company.sequenceNbr] || [];
if (departments.length === 1 && ((orgRoles[company.sequenceNbr] || orgRoles[departments[0].sequenceNbr]) || []).length === 1 ) { if (departments.length === 1 && ((orgRoles[company.sequenceNbr] || orgRoles[departments[0].sequenceNbr]) || []).length === 1) {
reginParams.company = company; reginParams.company = company;
reginParams.department = departments[0]; reginParams.department = departments[0];
reginParams.role = orgRoles[company.sequenceNbr] ? orgRoles[company.sequenceNbr][0] : orgRoles[departments[0].sequenceNbr] ? orgRoles[departments[0].sequenceNbr][0] : {}; reginParams.role = orgRoles[company.sequenceNbr] ? orgRoles[company.sequenceNbr][0] : orgRoles[departments[0].sequenceNbr] ? orgRoles[departments[0].sequenceNbr][0] : {};
this.setState({ reginParams },()=>this.onClick()); this.setState({ reginParams }, () => this.onClick());
} else if (departments.length === 0 && (orgRoles[company.sequenceNbr] || []).length === 1){ } else if (departments.length === 0 && (orgRoles[company.sequenceNbr] || []).length === 1) {
reginParams.company = company; reginParams.company = company;
reginParams.department = {}; reginParams.department = {};
reginParams.role = orgRoles[company.sequenceNbr][0]; reginParams.role = orgRoles[company.sequenceNbr][0];
this.setState({ reginParams },()=>this.onClick()); this.setState({ reginParams }, () => this.onClick());
} else { } else {
this.setState({ userInfo: data }); this.setState({ userInfo: data });
} }
...@@ -117,31 +105,26 @@ class RegionSelect extends Component { ...@@ -117,31 +105,26 @@ class RegionSelect extends Component {
} }
uniq=(array)=>{ uniq = (array) => {
debugger if (array && array.length > 0) {
if(array&&array.length>0){
array.sort(); array.sort();
var temp=[array[0]]; var temp = [array[0]];
for(var i = 1; i < array.length; i++){ for (var i = 1; i < array.length; i++) {
if( array[i].sequenceNbr !== temp[temp.length-1].sequenceNbr){ if (array[i].sequenceNbr !== temp[temp.length - 1].sequenceNbr) {
temp.push(array[i]); temp.push(array[i]);
} }
} }
return temp; return temp;
} else {
}else{
return []; return [];
} }
}
}
renderItem = (item) => { renderItem = (item) => {
const { userId, companys = [] } = item; const { userId, companys = [] } = item;
let { departments = [], roles = [] } = this.state; let { departments = [], roles = [] } = this.state;
let newDepartments = departments.filter(d => d != null && void 0 !== d); let newDepartments = departments.filter(d => d != null && void 0 !== d);
const formItemLayout = { const formItemLayout = {
wrapperCol: { wrapperCol: {
xs: { span: 24 }, xs: { span: 24 },
...@@ -195,7 +178,7 @@ class RegionSelect extends Component { ...@@ -195,7 +178,7 @@ class RegionSelect extends Component {
render() { render() {
const { userInfo } = this.state; const { userInfo } = this.state;
return Object.keys(userInfo).length > 0 ? ( return Object.keys(userInfo).length > 0 ? (
<div className="region-select"> <div className="region-select">
{ {
this.renderItem(userInfo) this.renderItem(userInfo)
......
...@@ -169,7 +169,6 @@ ...@@ -169,7 +169,6 @@
-webkit-box-flex: 1; } -webkit-box-flex: 1; }
.checkDetail-root .amos-layout-content { .checkDetail-root .amos-layout-content {
-webkit-box-flex: 2; -webkit-box-flex: 2;
-ms-flex: 2 0 70%;
flex: 2 0 70%; flex: 2 0 70%;
padding-top: 5px; padding-top: 5px;
background: #333; background: #333;
...@@ -300,14 +299,12 @@ ...@@ -300,14 +299,12 @@
line-height: 40px; } line-height: 40px; }
.check-detail-table .check-detail-table-row1 { .check-detail-table .check-detail-table-row1 {
display: -webkit-box; display: -webkit-box;
display: -ms-flexbox;
display: flex; display: flex;
border: 1px solid #deddde; border: 1px solid #deddde;
border-bottom: 0; border-bottom: 0;
border-left: 0; } border-left: 0; }
.check-detail-table .check-detail-table-row2 { .check-detail-table .check-detail-table-row2 {
display: -webkit-box; display: -webkit-box;
display: -ms-flexbox;
display: flex; display: flex;
border: 1px solid #deddde; border: 1px solid #deddde;
border-top: 0; border-top: 0;
...@@ -321,17 +318,14 @@ ...@@ -321,17 +318,14 @@
background: #f2f2f2; background: #f2f2f2;
border-bottom: 1px solid #deddde; border-bottom: 1px solid #deddde;
border-left: 1px solid #deddde; border-left: 1px solid #deddde;
-webkit-box-sizing: border-box; box-sizing: border-box;
box-sizing: border-box;
-webkit-box-flex: 1; -webkit-box-flex: 1;
-ms-flex: 1;
flex: 1; } flex: 1; }
.check-detail-table .colValue { .check-detail-table .colValue {
float: left; float: left;
width: 131px; width: 131px;
height: 40px; height: 40px;
-webkit-box-flex: 1; -webkit-box-flex: 1;
-ms-flex: 1;
flex: 1; flex: 1;
background: white; background: white;
border-bottom: 1px solid #deddde; border-bottom: 1px solid #deddde;
...@@ -376,7 +370,6 @@ ...@@ -376,7 +370,6 @@
position: absolute; position: absolute;
bottom: 10px; bottom: 10px;
display: -webkit-box; display: -webkit-box;
display: -ms-flexbox;
display: flex; display: flex;
height: 60px; height: 60px;
-webkit-transition: left 0.5s; -webkit-transition: left 0.5s;
......
...@@ -167,7 +167,6 @@ ...@@ -167,7 +167,6 @@
-webkit-box-flex: 1; } -webkit-box-flex: 1; }
.checkDetail-root .amos-layout-content { .checkDetail-root .amos-layout-content {
-webkit-box-flex: 2; -webkit-box-flex: 2;
-ms-flex: 2 0 70%;
flex: 2 0 70%; flex: 2 0 70%;
padding-top: 5px; padding-top: 5px;
background: #333; background: #333;
...@@ -298,14 +297,12 @@ ...@@ -298,14 +297,12 @@
line-height: 40px; } line-height: 40px; }
.check-detail-table .check-detail-table-row1 { .check-detail-table .check-detail-table-row1 {
display: -webkit-box; display: -webkit-box;
display: -ms-flexbox;
display: flex; display: flex;
border: 1px solid #deddde; border: 1px solid #deddde;
border-bottom: 0; border-bottom: 0;
border-left: 0; } border-left: 0; }
.check-detail-table .check-detail-table-row2 { .check-detail-table .check-detail-table-row2 {
display: -webkit-box; display: -webkit-box;
display: -ms-flexbox;
display: flex; display: flex;
border: 1px solid #deddde; border: 1px solid #deddde;
border-top: 0; border-top: 0;
...@@ -319,17 +316,14 @@ ...@@ -319,17 +316,14 @@
background: #f2f2f2; background: #f2f2f2;
border-bottom: 1px solid #deddde; border-bottom: 1px solid #deddde;
border-left: 1px solid #deddde; border-left: 1px solid #deddde;
-webkit-box-sizing: border-box; box-sizing: border-box;
box-sizing: border-box;
-webkit-box-flex: 1; -webkit-box-flex: 1;
-ms-flex: 1;
flex: 1; } flex: 1; }
.check-detail-table .colValue { .check-detail-table .colValue {
float: left; float: left;
width: 131px; width: 131px;
height: 40px; height: 40px;
-webkit-box-flex: 1; -webkit-box-flex: 1;
-ms-flex: 1;
flex: 1; flex: 1;
background: white; background: white;
border-bottom: 1px solid #deddde; border-bottom: 1px solid #deddde;
...@@ -374,7 +368,6 @@ ...@@ -374,7 +368,6 @@
position: absolute; position: absolute;
bottom: 10px; bottom: 10px;
display: -webkit-box; display: -webkit-box;
display: -ms-flexbox;
display: flex; display: flex;
height: 60px; height: 60px;
-webkit-transition: left 0.5s; -webkit-transition: left 0.5s;
......
...@@ -30,7 +30,7 @@ var alias = { ...@@ -30,7 +30,7 @@ var alias = {
// 入口点 // 入口点
// ------------------------------------ // ------------------------------------
const prodEntry = { const prodEntry = {
app: './src/entry/index.prod.js' app: './src/entry/index.js'
}; };
const devEntry = { const devEntry = {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment