app-base-react
Version:
react development common base package.
906 lines (835 loc) • 27.8 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _modal = require('antd/lib/modal');
var _modal2 = _interopRequireDefault(_modal);
var _form = require('antd/lib/form');
var _form2 = _interopRequireDefault(_form);
var _table = require('antd/lib/table');
var _table2 = _interopRequireDefault(_table);
var _divider = require('antd/lib/divider');
var _divider2 = _interopRequireDefault(_divider);
var _row = require('antd/lib/row');
var _row2 = _interopRequireDefault(_row);
var _col = require('antd/lib/col');
var _col2 = _interopRequireDefault(_col);
var _button = require('antd/lib/button');
var _button2 = _interopRequireDefault(_button);
var _regenerator = require('babel-runtime/regenerator');
var _regenerator2 = _interopRequireDefault(_regenerator);
var _message2 = require('antd/lib/message');
var _message3 = _interopRequireDefault(_message2);
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
require('antd/lib/modal/style/css');
require('antd/lib/form/style/css');
require('antd/lib/table/style/css');
require('antd/lib/divider/style/css');
require('antd/lib/row/style/css');
require('antd/lib/col/style/css');
require('antd/lib/button/style/css');
require('antd/lib/message/style/css');
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _utilAxios = require('../../../library/util-axios');
var _utilAxios2 = _interopRequireDefault(_utilAxios);
var _utilDic = require('../../../library/util-dic');
var _utilDic2 = _interopRequireDefault(_utilDic);
var _utilModal = require('../../../library/util-modal');
var _utilModal2 = _interopRequireDefault(_utilModal);
var _utilString = require('../../../library/util-string');
var _utilString2 = _interopRequireDefault(_utilString);
var _wangEditor = require('../../../library/wang-editor');
var _wangEditor2 = _interopRequireDefault(_wangEditor);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
// 项目申报-项目申报管理
var title = '项目申报管理';
var url = 'ProjectApplicationManagement/';
var FormView = (0, _react.lazy)(function () {
return import('./ProjectApplicationManagementView');
});
var FormEdit = (0, _react.lazy)(function () {
return import('./ProjectApplicationManagementEdit');
});
var FormQuery = (0, _react.lazy)(function () {
return import('./ProjectApplicationManagementQuery');
});
var ProjectApplicationManagementList = function (_React$Component) {
_inherits(ProjectApplicationManagementList, _React$Component);
function ProjectApplicationManagementList(props) {
_classCallCheck(this, ProjectApplicationManagementList);
var _this = _possibleConstructorReturn(this, (ProjectApplicationManagementList.__proto__ || Object.getPrototypeOf(ProjectApplicationManagementList)).call(this, props));
_this.onChange = function (pagination, filters, sorter) {
var params = _this.state.params;
params.pageSize = pagination.pageSize;
params.pageIndex = pagination.current;
_this.onLoad(params);
};
_this.onSearch = function (values) {
var params = _extends({}, _this.state.params, values);
_this.onLoad(params);
};
_this.onAdd = function () {
var values = {};
Object.keys(_this.state.values).forEach(function (key) {
return values[key] = undefined;
});
_this.setState({
showView: false,
showEdit: true,
values: values
});
};
_this.onView = function (values) {
_this.setState({
showView: true,
loading: false,
values: values
});
};
_this.onEdit = function (values) {
var me = _this;
if ('2' == values.declarationStatus || '5' == values.declarationStatus) {
_message3.default.info(values.state == '2' ? '不能编辑审核通过的记录!' : '不能编辑结果公布的记录!');
return;
}
_utilAxios2.default.get(url + 'getModel?id=' + values.id, {}, function (rs) {
me.setState({
showEdit: true,
showView: false,
values: rs.data
});
});
};
_this.onSave = function (values) {
_this.onLoad(_this.state.params);
};
_this.onDel = function () {
var me = _this;
if (me.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
_utilModal2.default.confirm({
content: '确定删除?',
okText: '确认',
cancelText: '取消',
onOk: function onOk() {
_utilAxios2.default.delete(url + 'delete?id=' + me.state.selected).then(function (rs) {
if (rs.success) {
_message3.default.info(rs.msg);
me.onLoad(me.state.params || {});
} else {
_message3.default.error(rs.msg);
}
});
}
});
};
_this.onAudit = function (values) {
var me = _this;
if (me.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
var content = '';
var state = '';
if (_this.state.curDeclarationStatus == '2') {
content = '确定审核通过?';
state = '5';
if (!values.declarationOpinions || values.declarationOpinions == "<p><br></p>") {
_message3.default.error("请输入审核意见");
return;
}
} else if (_this.state.curDeclarationStatus == '3') {
content = '确定审核不通过?';
state = '5';
if (!values.declarationOpinions || values.declarationOpinions == "<p><br></p>") {
_message3.default.error("请输入审核意见");
return;
}
} else if (_this.state.curDeclarationStatus == '4') {
content = '确定审核退回?';
state = '2';
if (!values.declarationOpinions || values.declarationOpinions == "<p><br></p>") {
_message3.default.error("请输入审核意见");
return;
}
}
_utilModal2.default.confirm({
// title: '警告',
content: content,
okText: '确认',
cancelText: '取消',
onOk: function onOk() {
_utilAxios2.default.post(url + 'setState?state=' + state + '&id=' + me.state.selected, {
declarationStatus: me.state.curDeclarationStatus,
declarationOpinions: values.declarationOpinions || '',
declarationResults: ''
}).then(function (rs) {
if (rs.success) {
_message3.default.info(rs.msg);
me.onLoad(me.state.params || {});
me.formRef1.current.resetFields();
} else {
_message3.default.error(rs.msg);
}
});
}
});
};
_this.onResult = function (values) {
var me = _this;
if (me.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
var content = '';
var state = '';
if (_this.state.curDeclarationStatus == 5) {
content = '确定设置为完结?';
state = '6';
if (!values.declarationResults || values.declarationResults == "<p><br></p>") {
_message3.default.error("请输入申报结果");
return;
}
} else if (_this.state.curDeclarationStatus == 6) {
content = '确定设置为终止?';
state = '6';
if (!values.declarationResults || values.declarationResults == "<p><br></p>") {
_message3.default.error("请输入申报结果");
return;
}
} else if (_this.state.curDeclarationStatus == 7) {
content = '确定设置为中止?';
state = '6';
if (!values.declarationResults || values.declarationResults == "<p><br></p>") {
_message3.default.error("请输入申报结果");
return;
}
}
_utilModal2.default.confirm({
// title: '警告',
content: content,
okText: '确认',
cancelText: '取消',
onOk: function onOk() {
_utilAxios2.default.post(url + 'setState?state=' + state + '&id=' + me.state.selected, {
declarationStatus: me.state.curDeclarationStatus,
declarationOpinions: '',
declarationResults: values.declarationResults || ''
}).then(function (rs) {
if (rs.success) {
_message3.default.info(rs.msg);
me.onLoad(me.state.params || {});
me.formRef2.current.resetFields();
} else {
_message3.default.error(rs.msg);
}
});
}
});
};
_this.state = {
params: {},
data: [],
pagination: {},
loading: false,
selected: [], //Table checked
selectedRows: [],
//显藏控制
showView: false,
showEdit: false,
//values
values: {},
openAudit: false,
openResult: false,
curDeclarationStatus: 0,
curModalTitle: "",
isFold: false,
tableKey: '1'
};
_this.formRef1 = _react2.default.createRef();
_this.formRef2 = _react2.default.createRef();
_this.columns = [{
title: '序号',
width: 50,
fixed: 'left',
render: function render(text, record, index) {
return index + 1;
}
}, {
title: '事项年度',
dataIndex: 'eventYear',
width: 100,
render: function render(text, record) {
return _react2.default.createElement(
'a',
{ className: 'btn-detail', onClick: function onClick() {
return _this.onView(record);
} },
text
);
}
}, {
title: '事项名称',
dataIndex: 'projectName',
width: 100,
render: function render(text, record) {
return _react2.default.createElement(
'a',
{ className: 'btn-detail', onClick: function onClick() {
return _this.onView(record);
} },
text
);
}
}, {
title: ' 所属区域',
dataIndex: 'region',
width: 100
}, {
title: '事项类型',
dataIndex: 'eventType',
width: 100,
render: function render(text, record) {
return _utilDic2.default.json('project', '事项类型')[text];
}
}, {
title: '申报编号',
dataIndex: 'num',
width: 100,
render: function render(text, record) {
return _react2.default.createElement(
'a',
{ className: 'btn-detail', onClick: function onClick() {
return _this.onView(record);
} },
text
);
}
},
// {
// title: "申报方式",
// dataIndex: "declarationMethod",
// width: 100
// },
// {
// title: "评审方式",
// dataIndex: "reviewMethod",
// width: 100
// },
// {
// title: "实施主体/部门",
// dataIndex: "implementingEntity",
// width: 100
// },
{
title: '申报单位',
dataIndex: 'declarationUnit',
width: 100,
render: function render(text, record) {
return _react2.default.createElement(
'a',
{ className: 'btn-detail', onClick: function onClick() {
return _this.onView(record);
} },
text
);
}
},
// {
// title: "统一社会信用代码",
// dataIndex: "credit",
// width: 100
// },
{
title: '单位类型',
dataIndex: 'unitType',
width: 100
},
// {
// title: "单位地址",
// dataIndex: "address",
// width: 100
// },
{
title: '联系人名称',
dataIndex: 'contactName',
width: 100
}, {
title: '联系人电话',
dataIndex: 'phone',
width: 100
}, {
title: '联系人邮箱',
dataIndex: 'email',
width: 100
},
// {
// title: "开户银行名称",
// dataIndex: "bankName",
// width: 100
// },
// {
// title: "开户银行账号",
// dataIndex: "bankAccount",
// width: 100
// },
// {
// title: "其他信息",
// dataIndex: "others",
// width: 100
// },
// {
// title: "填报文档材料",
// dataIndex: "fillInDocumentMaterials",
// width: 100
// },
{
title: '申报状态',
dataIndex: 'declarationStatus',
width: 100,
render: function render(text, record) {
return _utilDic2.default.json('project', '申报状态')[text];
}
// },
// {
// title: "申报意见",
// dataIndex: "declarationOpinions",
// width: 100
// },
// {
// title: "申报结果",
// dataIndex: "declarationResults",
// width: 100
}];
return _this;
}
_createClass(ProjectApplicationManagementList, [{
key: 'componentDidMount',
value: function componentDidMount() {
this.onLoad(this.state.params);
}
/*** Table ***/
}, {
key: 'onLoad',
value: function () {
var _ref = _asyncToGenerator( /*#__PURE__*/_regenerator2.default.mark(function _callee(params) {
var rs, pagination;
return _regenerator2.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
this.setState({ loading: true });
_context.next = 3;
return _utilAxios2.default.get(url + 'getList', params);
case 3:
rs = _context.sent;
pagination = {
pageSizeOptions: ['20', '100', '200', '500', '1000'],
pageSize: params.pageSize || 20,
defaultPageSize: params.pageSize || 20,
showSizeChanger: true,
showQuickJumper: true,
total: rs.total,
showTotal: function showTotal(total) {
return '\u603B\u8BB0\u5F55 ' + total + ' ';
}
};
this.setState({
loading: false,
showEdit: false,
params: params,
data: rs.data,
pagination: pagination,
tableKey: _utilString2.default.uuid(),
openAudit: false,
openResult: false,
selected: [],
selectedRows: []
});
case 6:
case 'end':
return _context.stop();
}
}
}, _callee, this);
}));
function onLoad(_x) {
return _ref.apply(this, arguments);
}
return onLoad;
}()
}, {
key: 'render',
value: function render() {
var _this2 = this;
var tableCfg = {
scroll: { y: this.props.height - 210 },
size: 'middle',
rowKey: 'id',
columns: this.columns,
rowSelection: {
selectedRowKeys: this.state.selected,
onChange: function onChange(selectedRowKeys, selectedRows) {
_this2.setState({
selected: selectedRowKeys,
selectedRows: selectedRows
});
}
},
rowClassName: function rowClassName(record) {
return record.id === _this2.state.selectedRowId ? 'row-selected' : '';
},
onRow: function onRow(record) {
return {
onClick: function onClick(event) {
_this2.setState({ selectedRowId: record.id });
}
};
},
dataSource: this.state.data,
pagination: this.state.pagination,
loading: this.state.loading,
onChange: this.onChange
};
return _react2.default.createElement(
'div',
{ className: 'app-admin' },
_react2.default.createElement(
'div',
{ className: this.state.showView || this.state.showEdit ? 'hide' : '' },
_react2.default.createElement(
_row2.default,
null,
_react2.default.createElement(
_col2.default,
{ className: 'main-title' },
_react2.default.createElement('i', { className: 'iconfont icon-title' }),
title,
_react2.default.createElement(
_button2.default,
{
className: 'btn-filter',
onClick: function onClick() {
_this2.setState({ isFold: !_this2.state.isFold });
} },
_react2.default.createElement('i', { className: this.state.isFold ? 'iconfont icon-filter' : 'iconfont icon-upfilter' }),
'\u7B5B\u9009\u9879'
)
)
),
_react2.default.createElement(
'div',
{ style: { display: this.state.isFold ? 'none' : '' } },
_react2.default.createElement(FormQuery, { onSearch: this.onSearch, values: this.state.params })
),
_react2.default.createElement(
_row2.default,
{ className: 'main-toolbar' },
_react2.default.createElement(
_col2.default,
{ xs: 24 },
_react2.default.createElement(
_button2.default,
{ className: 'btn-del', onClick: this.onDel },
_react2.default.createElement('i', { className: 'iconfont icon-del' }),
'\u5220\u9664'
),
_react2.default.createElement(
_button2.default,
{ className: 'btn-pass',
onClick: function onClick() {
if (_this2.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
for (var i = 0; i < _this2.state.selected.length; i++) {
if (_this2.state.selectedRows[i].declarationStatus == '5') {
_message3.default.error("不能审核已完结项目!");
return;
}
if (_this2.state.selectedRows[i].declarationStatus == '6') {
_message3.default.error("不能审核已终止项目!");
return;
}
}
_this2.setState({
openAudit: true,
curDeclarationStatus: 2,
curModalTitle: "项目审核 - 审核通过"
});
} },
_react2.default.createElement('i', { className: 'iconfont icon-submit' }),
'\u5BA1\u6838\u901A\u8FC7'
),
_react2.default.createElement(
_button2.default,
{ className: 'btn-revoke',
onClick: function onClick() {
if (_this2.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
for (var i = 0; i < _this2.state.selected.length; i++) {
if (_this2.state.selectedRows[i].declarationStatus == '5') {
_message3.default.error("不能审核已完结项目!");
return;
}
if (_this2.state.selectedRows[i].declarationStatus == '6') {
_message3.default.error("不能审核已终止项目!");
return;
}
}
_this2.setState({
openAudit: true,
curDeclarationStatus: 3,
curModalTitle: "项目审核 - 审核不通过"
});
} },
_react2.default.createElement('i', { className: 'iconfont icon-revoke' }),
'\u5BA1\u6838\u4E0D\u901A\u8FC7'
),
_react2.default.createElement(
_button2.default,
{ className: 'btn-sendemail',
onClick: function onClick() {
if (_this2.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
for (var i = 0; i < _this2.state.selected.length; i++) {
if (_this2.state.selectedRows[i].declarationStatus == '5') {
_message3.default.error("不能审核已完结项目!");
return;
}
if (_this2.state.selectedRows[i].declarationStatus == '6') {
_message3.default.error("不能审核已终止项目!");
return;
}
}
_this2.setState({
openAudit: true,
curDeclarationStatus: 4,
curModalTitle: "项目审核 - 审核退回"
});
} },
_react2.default.createElement('i', { className: 'iconfont icon-close' }),
'\u5BA1\u6838\u9000\u56DE'
),
_react2.default.createElement(_divider2.default, { type: 'vertical' }),
_react2.default.createElement(
_button2.default,
{ className: 'btn-pass',
onClick: function onClick() {
if (_this2.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
_this2.setState({
openResult: true,
curDeclarationStatus: 5,
curModalTitle: "申报结果 - 设为完结" //申报成功
});
} },
_react2.default.createElement('i', { className: 'iconfont icon-pass' }),
'\u8BBE\u4E3A\u5B8C\u7ED3'
),
_react2.default.createElement(
_button2.default,
{ className: 'btn-revoke',
onClick: function onClick() {
if (_this2.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
_this2.setState({
openResult: true,
curDeclarationStatus: 7,
curModalTitle: "申报结果 - 设为中止"
});
} },
_react2.default.createElement('i', { className: 'iconfont icon-set' }),
'\u8BBE\u4E3A\u4E2D\u6B62'
),
_react2.default.createElement(
_button2.default,
{ className: 'btn-nopass',
onClick: function onClick() {
if (_this2.state.selected.length == 0) {
_message3.default.error('请选择记录!');
return;
}
_this2.setState({
openResult: true,
curDeclarationStatus: 6,
curModalTitle: "申报结果 - 设为终止"
});
} },
_react2.default.createElement('i', { className: 'iconfont icon-nopass' }),
'\u8BBE\u4E3A\u7EC8\u6B62'
),
_react2.default.createElement(_divider2.default, { type: 'vertical' }),
_react2.default.createElement(
_button2.default,
{ className: 'btn-export', onClick: function onClick() {
return _utilAxios2.default.onExport(_this2, title);
} },
_react2.default.createElement('i', { className: 'iconfont icon-export' }),
'\u5BFC\u51FA'
)
)
),
_react2.default.createElement(_table2.default, _extends({}, tableCfg, { key: this.state.tableKey }))
),
_react2.default.createElement(
_react.Suspense,
{ fallback: _react2.default.createElement('div', null) },
this.state.showView ? _react2.default.createElement(FormView, {
height: this.props.height - 80,
values: this.state.values,
onEdit: this.onEdit,
onReturn: function onReturn() {
_this2.setState({ showView: false });
}
}) : '',
this.state.showEdit ? _react2.default.createElement(FormEdit, {
height: this.props.height - 80,
values: this.state.values,
onSave: this.onSave,
onCancel: function onCancel() {
_this2.setState({ showEdit: false });
},
onEditReturn: function onEditReturn() {
_this2.setState({ showEdit: false, showView: true });
}
}) : ''
),
_react2.default.createElement(
_modal2.default,
{
open: this.state.openAudit,
visible: this.state.openAudit,
title: this.state.curModalTitle,
footer: null,
width: '90%',
onCancel: function onCancel() {
_this2.setState({ openAudit: false });
} },
_react2.default.createElement(
'div',
{ className: 'form-content' },
_react2.default.createElement(
_form2.default,
{ ref: this.formRef1, onFinish: this.onAudit, className: 'form-edit', layout: 'vertical' },
_react2.default.createElement(
_row2.default,
null,
_react2.default.createElement(
_col2.default,
{ xs: 24 },
_react2.default.createElement(
_form2.default.Item,
{ name: 'declarationOpinions' },
_react2.default.createElement(_wangEditor2.default, null)
)
)
),
_react2.default.createElement(
_row2.default,
null,
_react2.default.createElement(
_col2.default,
{ xs: 24, align: 'center' },
_react2.default.createElement(
_button2.default,
{ className: 'btn-submit', htmlType: 'submit' },
' ',
_react2.default.createElement('i', { className: 'iconfont icon-submit' }),
'\u63D0\u4EA4 '
),
'\xA0\xA0\xA0',
_react2.default.createElement(
_button2.default,
{ className: 'btn-reset', onClick: function onClick() {
_this2.setState({ openAudit: false });
} },
' ',
_react2.default.createElement('i', { className: 'iconfont icon-reset' }),
'\u53D6\u6D88 '
)
)
)
)
)
),
_react2.default.createElement(
_modal2.default,
{
open: this.state.openResult,
visible: this.state.openResult,
title: this.state.curModalTitle,
footer: null,
width: '90%',
onCancel: function onCancel() {
_this2.setState({ openResult: false });
} },
_react2.default.createElement(
'div',
{ className: 'form-content' },
_react2.default.createElement(
_form2.default,
{ ref: this.formRef2, onFinish: this.onResult, className: 'form-edit', layout: 'vertical' },
_react2.default.createElement(
_row2.default,
null,
_react2.default.createElement(
_col2.default,
{ xs: 24 },
_react2.default.createElement(
_form2.default.Item,
{ name: 'declarationResults' },
_react2.default.createElement(_wangEditor2.default, null)
)
)
),
_react2.default.createElement(
_row2.default,
null,
_react2.default.createElement(
_col2.default,
{ xs: 24, align: 'center' },
_react2.default.createElement(
_button2.default,
{ className: 'btn-submit', htmlType: 'submit' },
' ',
_react2.default.createElement('i', { className: 'iconfont icon-submit' }),
'\u63D0\u4EA4 '
),
'\xA0\xA0\xA0',
_react2.default.createElement(
_button2.default,
{ className: 'btn-reset', onClick: function onClick() {
_this2.setState({ openResult: false });
} },
' ',
_react2.default.createElement('i', { className: 'iconfont icon-reset' }),
'\u53D6\u6D88 '
)
)
)
)
)
)
);
}
}]);
return ProjectApplicationManagementList;
}(_react2.default.Component);
exports.default = ProjectApplicationManagementList;